Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

OpenCV Error: (-215:Assertion failed) VScn::contains(scn) && VDcn::contains(dcn) && VDepth::contains(depth) in function 'CvtHelper'

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'

I personally have spent a lot of time on this question, hence thought relevant to post it on Stackoverflow.

Question taken from: llSourcell/Object_Detection_demo_LIVE

like image 938
TheSHETTY-Paradise Avatar asked Oct 10 '18 11:10

TheSHETTY-Paradise


1 Answers

Even I had the same problem, and the solution was quiet easy. Remember 1 thing, if the RGB values of your image lie in the range of 0-255, make sure the values are not of data type 'float'. As OpenCV considers float only when values range from 0-1. If it finds a float value larger than 1 it clips off the value thinking floats only exists between 0-1. Hence such errors generated. So convert the data type to uint8 if values are from 0-255.

image = image.astype('uint8')

Check this Kaggle Kernel to learn more about it

like image 83
TheSHETTY-Paradise Avatar answered Oct 12 '22 12:10

TheSHETTY-Paradise