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

发布于 2021-01-29 14:58:40

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

关注者
0
被浏览
111
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

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

    image = image.astype('uint8')
    

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



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看