私はopenCV(python & windows 7)の2台のカメラからキャプチャしようとしています。私は1つのカメラからちょうど良いキャプチャ、あなたはまた、私はイメージにいくつかのファンキーなものをやっていることに気づくが、それは問題ではない。これは、2つを使用しようとするコードです。2台のカメラ(OpenCV、Python)からキャプチャ
import cv
import time
cv.NamedWindow("camera", 1)
cv.NamedWindow("camera2", 1)
capture = cv.CaptureFromCAM(0)
capture2 = cv.CaptureFromCAM(1)
while True:
img = cv.GetMat(cv.QueryFrame(capture))
img2 = cv.GetMat(cv.QueryFrame(capture2))
dst_image = cv.CloneMat(img)
dst_image2 = cv.CloneMat(img2)
cv.ConvertScale(img, dst_image, 255, -59745.0)
cv.ConvertScale(img2, dst_image2, 255, -59745.0)
cv.ShowImage("camera", dst_image)
cv.ShowImage("camera2", dst_image2)
if cv.WaitKey(10) == 27:
cv.DestroyWindow("camera")
cv.DestroyWindow("camera2")
break
簡潔で簡単です。しかし、それは動作しません。 2番目のカメラ(ループの2番目のコード行)から行列を作成しようとすると、キャプチャがnullであると言われます。私が使用しているカメラはlogitechで、同じモデルです。
サイドノート:私もPythonで接続されたカメラをカウントするコマンドを見つけることができなかったので、誰かが私にそれを感謝すると私に言及することができれば。 --Ashley
EDIT: Windowsでは、使用したいカメラを選択するように指示することがよくあります。私はこの振る舞いを避けることはできません。さらに、私は、成功の両方のカメラを一度に実行するソフトウェアのようなセキュリティをダウンロードしました。それはオープンソースなどではありません。明らかに、これは可能です。
署名が削除されました。よくある質問を参照してください。 –