报错问题
Traceback (most recent call last):
File "draw_bin_on_img.py", line 52, in <module>
img2 = cv2.addWeighted(img,0.01,img0,0.99,0)
cv2.error: OpenCV(4.1.2) /io/opencv/modules/core/src/arithm.cpp:687: error: (-5:Bad argument) When the input arrays in add/subtract/multiply/divide functions have different types, the output array type must be explicitly specified in function 'arithm_op'
网上搜索问题的原因是待合并的两张图像格式(dtype)不一致,需要强制转换成相同的格式。
我的修改方式开始是:
img2 = cv2.addWeighted(img,0.01,img0,0.99,0, CV_32F);
报错
Traceback (most recent call last):
File "draw_bin_on_img.py", line 51, in <module>
img2 = cv2.addWeighted(img,0.01,img0,0.99,0, CV_32F)
NameError: name 'CV_32F' is not defined
经过谷歌以后发现cv2的正确添加方式是
img2 = cv2.addWeighted(img,0.01,img0,0.99,0, dtype = cv2.CV_32F)
问题解决