问题描述
import cv2
import numpy as np
img = cv2.imread("Yash.jpeg")
blank = np.zeros(img.shape[:2])
cv2.imshow("YASH",img)
cv2.imshow("Blank",blank)
mask = cv2.circle(blank,(img.shape[1]//2,img.shape[0]//2),150,255,-1)
cv2.imshow("Mask",mask)
masked = cv2.bitwise_and(img,img,mask = mask) # Error in this line
cv2.imshow("MASKED",masked)
cv2.waitKey(0)
cv2.destroyAllWindows()
** 回溯(最近一次调用最后一次): 文件“D:/pythonProject1/masing.py”,第 13 行,在 掩码 = cv2.bitwise_or(img,mask = mask) cv2.error: OpenCV(4.5.1) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-i1s8y2i1\opencv\modules\core\src\arithm.cpp:250: 错误: ( -215: 断言失败) (mtype == CV_8U || mtype == CV_8S) && _mask.sameSize(*psrc1) in function 'cv::binary_op' **
解决方法
只是更正:
blank = np.zeros(img.shape[:2],dtype='uint8')
错误是数据类型错误