ValueError - 无法将输入数组从形状广播到具有OpenCV的形状

时间:2017-10-09 06:08:09

标签: python-3.x opencv numpy

我正在学习如何使用OpenCV / Numpy来编辑图像,我正在学习如何复制图像的一部分并将其移动到另一部分。

我的代码出现以下错误:

  

ValueError:无法将形状(260,260,3)的输入数组广播为形状(310,310,3)

def copy_part_of_image(image_source):
    x1 = 280
    y1 = 540
    x2 = 330
    y2 = 590

    global edited_image, ball
    rect_to_copy= image_source[x1:y1, x2:y2]
    image_source[x1-(x2-x1):y1, x1:y2] = rect_to_copy #273:533, 100:360
    edited_image = image_source

我的想法是拍摄我图像中的矩形部分,然后将其向左移动,使其“备份”到我剪切的原始部分。

据我所知,我的新形状大小相同([x1-(x2-x1):y1, x1:y2])。这个错误究竟意味着什么?

如果我使用了我注释掉的x / y,它可以工作(尽管稍微偏离)。

例如,以下是部分图片的屏幕截图。我正在尝试复制粉红色框中的内容,并将其向左移动相同的宽度。

enter image description here

0 个答案:

没有答案