C:\projects\opencv-python\opencv\modules\core\src\arithm.cpp:229: error: (-209:Sizes of input arguments do not match) The operation is neither 'array op array' (where arrays have the same size and type), nor 'array op scalar', nor 'scalar op array' in function 'cv::binary_op'
输入以下代码时,在做与运算时报这个错误
import cv2
import numpy as np
def cv_show(img, name):
cv2.namedWindow(name, 1)
cv2.imshow(name, img)
cv2.waitKey(0)
cv2.destroyAllWindows()
def select_background(background, prospect):
img = cv2.imread(background) #背景图
oriimg = cv2.imread(prospect)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
mask = cv2.cvtColor(gray, cv2.COLOR_GRAY2BGR) #img是腐蚀膨胀完的图片
# cv_show(oriimg, "oriimg")
# cv_show(mask, "mask")
ROI = cv2.bitwise_and(mask, oriimg) #oriimg是原始图片 做与运算
cv2.imwrite("test.jpg", ROI)
if __name__ == "__main__":
select_background("timg.jpg", 'before4.jpg')
错误大概意思是我输入参数的类型和大小不一致,我就纳闷