Trouble with raspberry pi and OpenCV
Question: I have a project in raspberry pi and I am using python. However I have a
problem with the OpenCV when I am trying to run this code:

    
    
    `import numpy as np
     import cv2
    
     cap = cv2.VideoCapture(0)
    
     while(True):
        # Capture frame-by-frame
        ret, frame = cap.read()
    
        # Our operations on the frame come here
        gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    
        # Display the resulting frame
        cv2.imshow('frame',gray)
        if cv2.waitKey(1) & 0xFF == ord('q'):
            break
    
    # When everything done, release the capture
    cap.release()
    cv2.destroyAllWindows()`
    

I get this error:

> OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cvtColor, file
> /home/pi/opencv-3.1.0/modules/imgproc/src/color.cpp, line 8000
    
    
    Traceback (most recent call last):
      File "test.py", line 11, in <module>
        gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    cv2.error: /home/pi/opencv-3.1.0/modules/imgproc/src/color.cpp:8000:  error: (-215) scn == 3 || scn == 4 in function cvtColor"
    

I have Python 3.4.2,OpenCV 3.1.0 and Numpy 1.8.2.


Answer: So I found an answer. All I had to do was run this code on my raspberry pi:

    
    
    sudo modprobe bcm2835-v4l2
    

Thank you for all the help.

