一尘不染

OpenCV错误:(-215:断言失败)函数'CvtHelper'中的VScn :: contains(scn)&& VDcn :: contains(dcn)&& VDepth :: contains(depth)

python

Traceback (most recent call last):
File "demo.py", line 132, in 
     `result = find_strawberry(image)`
File "demo.py", line 63, in find_strawberry
`image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)`
cv2.error: OpenCV(3.4.2) /Users/travis/build/skvark/opencv-python/opencv/modules/imgproc/src/color.hpp:253: error: (-215:Assertion failed) VScn::contains(scn) && VDcn::contains(dcn) && VDepth::contains(depth) in function 'CvtHelper'

我个人在这个问题上花了很多时间,因此认为与将其发布到Stackoverflow有关。

问题取自:llSourcell /
Object_Detection_demo_LIVE


阅读 300

收藏
2021-01-20

共1个答案

一尘不染

甚至我也遇到了同样的问题,解决方案非常简单。请记住一件事,如果图像的RGB值在0-255的范围内,请确保这些值不是数据类型“
float”。由于OpenCV仅在值范围为0-1时才考虑浮动。如果发现浮点值大于1,则会截断该值,并认为浮点仅存在于0-1之间。因此产生了这样的错误。因此,如果值介于0-255之间,则将数据类型转换为uint8。

image = image.astype('uint8')

检查此Kaggle内核以了解更多信息

2021-01-20