Numpy error:"ValueError: cannot copy sequence with size 2 to array axis with dimension 4" in python

Numpy error:"ValueError: cannot copy sequence with size 2 to array axis with dimension 4" in python

我的代码有错误,我做了测试代码。
我的测试代码的一些描述:我导入了 numpy 模块。
我为起始坐标做了变量,然后做了 array 7×4.
之后我进入循环 for 并迭代数组,其中我从变量中执行步骤 x by 10y by 5 作为起始坐标。
然后我添加了 x y in cortege and cortege in array.
Printed array:3** 当我开始编写代码时,我得到了它:

ValueError: cannot copy sequence with size 2 to array axis with dimension 4

如何解决这个错误?
这是代码:

import numpy as np

#FOR TEST

pose = (640, 154)

all_poses = np.zeros((1, 7, 4))


for i in range(0, 6):
    for j in range(0, 4):
        y = pose[1] - i * 5
        x = pose[0] - j * 10
        cortege = (x, y)
        all_poses[i, j] = cortege

print(all_poses) 

出现错误的原因是 cortege 的尺寸为 1x2,而 all_poses[i, j] 的尺寸为 1x4。所以当你做 all_poses[i, j] = cortege 时,你正在做类似 [0, 0, 0, 0] = [650, 154] 的事情。此处的尺寸不匹配,您会收到错误消息。

避免错误的一种方法是将开始时 all_poses 的尺寸设为 7x2 而不是 7x4,或者执行 all_poses[i, j] = cortege*2,这将添加 [650, 154, 650, 154 ] 到 all_poses[i, j],从而匹配维度。虽然你为避免错误所做的工作取决于你想用代码实现什么,但你的问题并不清楚。您能否解释一下您究竟希望您的代码做什么?