Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 图像的NumPy切片_Python_Image_Opencv_Numpy_Crop - Fatal编程技术网

Python 图像的NumPy切片

Python 图像的NumPy切片,python,image,opencv,numpy,crop,Python,Image,Opencv,Numpy,Crop,我一直在寻找复制图像的另一个 我编写了一个非常简单的python函数: def fromCopyTo(target, destination, x, y): h, w = target.shape destination[y:y+h,x:x+w] = target return destination 概念是获取目标图像和X和Y坐标,并将目标图像复制到该位置——而不考虑目标图像的大小(假设目标图像足够大) 我正在使用一个空掩码复制到并尝试复制一个大小为20x20的图

我一直在寻找复制图像的另一个

我编写了一个非常简单的python函数:

def fromCopyTo(target, destination, x, y):
    h, w = target.shape

    destination[y:y+h,x:x+w] = target

    return destination
概念是获取目标图像和XY坐标,并将目标图像复制到该位置——而不考虑目标图像的大小(假设目标图像足够大)

我正在使用一个空掩码复制到并尝试复制一个大小为20x20的图像-目标图像只有(0,0,0)和(255255)种颜色

问题是y:y+h,返回大小11的最大值,而不是大小20

ValueError:无法将输入数组从形状(20,20)广播到 形状(11,20)

如果我翻转函数
destination[x:x+w,y:y+h]=target
(据我所知是错误的),我得到:

ValueError:无法将输入数组从形状(20,20)广播到 形状(20,0)

通过测试,我运行了
print len(destination[y_position:y_position+30,0])
,它将所有内容返回到11,但在11之后,它只是将其最大化到11。正如示例返回的11


我做错了什么

结果是,如果我试图切割的数量超过掩码矩阵中的可用数量,我不会收到错误消息,说我溢出了,而只是将其限制在最大可能的大小