user391339
user391339

Reputation: 8775

python opencv: no image

I am trying to capture from a Sony Handicam DCR-HC38, running the code below, and passing [-1 .. 3] to the CaptureFromCAM function. The code runs, but I get no image. Do I need to "wrap" the camera somehow? Skype recognizes the camera, but python/opencv won't. I'm running Windows Vista if that helps any.

import cv

cv.NamedWindow("camera", 1)

capture = cv.CaptureFromCAM(-1)

while True:
    img = cv.QueryFrame(capture)
    cv.ShowImage("camera", img)
    if cv.WaitKey(10) == 27:
        break

Upvotes: 2

Views: 1171

Answers (2)

digiphd
digiphd

Reputation: 2337

not sure if you fixed it or not. But the solution I figured out is by checking which driver OpenCv is trying to access... I have both v4l1 and v4l2, however I can only access device /dev/video0 by using gstreamer codec and the v4l2 driver on my lenovo x200 (internal webcam) using ubuntu 10.10. So I had to recompile Opencv from source, by firstly applying the patch found at:

Opencv-2.0.0.link.v4l2.patch

extract the patch to your opencv root directory: then open terminal and cd to the opencv root directory, and do the following:

patch -p0 <OpenCV-2.0.0-link-v4l2.patch

then:

make
make install

Now your opencv libraries should access the v4l2 driver instead, hope this helps someone

Upvotes: 3

Owen
Owen

Reputation: 46

try increasing the delay on the cv.WaitKey

Upvotes: 3

Related Questions