cv2.error: OpenCV(4.5.4-dev) :-1: error: (-5:Bad argument) in function ‘putText‘问题解决

在python调用cv2.putText的时候报错,具体报错信息如下:

Traceback (most recent call last):
  File "test.py", line 92, in
    img = cv2.putText(img, 'text', (0, 40), font, 1.2, (0, 0, 255), 2)
cv2.error: OpenCV(4.5.4-dev) :-1: error: (-5:Bad argument) in function 'putText'
> Overload resolution failed:
>  - Layout of the output array img is incompatible with cv::Mat
>  - Expected Ptr for argument 'img'

查网上资料,有人提到是浮点型的问题,需要强制改成int型。但是参数里面的(0, 40)就是int型的,就算在前面强制加上int()也还是一样报错。

实际上,这是图像本身格式导致的问题,和opencv出现了不兼容,不知道是否算bug。可通过如下两种方式来解决这个问题。

img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

img = img.copy()

问题解决。

你可能感兴趣的:(解决方案,OpenCV,指南,opencv,putText,cv2.error,python)