次のコードを使用して、openCV+pythonを使用してWebカメラにアクセスしています...
import cv
cv.NamedWindow('webcam_feed', cv.CV_WINDOW_AUTOSIZE)
cam = cv.CaptureFromCAM(-1)
その後、コンソールで次のエラーが発生します...
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
VIDIOC_QUERYMENU: Invalid argument
私はもともと使っていました、
cv.CaptureFromCAM(0)
同じものにアクセスし、同じ問題が発生し、-1を使用しました。これは、任意のWebカメラを取得することを想定しているためです。
また、UbuntuがWebカメラを認識しているかどうかをテストしました。ウェブカメラにv4l2を使用しています。
{編集}
次のコードを使用してビデオフィードを表示していますが、連続ビデオフィードではなく、Webカメラがキャプチャした画像を1つだけ表示しているようです...
import cv
cv.NamedWindow('webcam_feed', cv.CV_WINDOW_AUTOSIZE)
cam = cv.CaptureFromCAM(-1)
feed = cv.QueryFrame(cam)
cv.ShowImage("webcam_feed", feed)
cv.WaitKey(-1)