私はPythonから私のウェブカメラにアクセスしたいと思います。Pythonでウェブカメラにアクセスするにはどうすればいいですか?
私はVideoCapture拡張子(tutorial)を使用してみましたが、それは私にとって非常にうまく動作しませんでした、私は320x230>など、それは解像度が少し遅いですとしていくつかの問題を回避しなければならなかった、そして時にはそれが無いためNone
を返します。明らかな理由。
私のWebカメラにPythonからアクセスするには良い方法はありますか?
私はPythonから私のウェブカメラにアクセスしたいと思います。Pythonでウェブカメラにアクセスするにはどうすればいいですか?
私はVideoCapture拡張子(tutorial)を使用してみましたが、それは私にとって非常にうまく動作しませんでした、私は320x230>など、それは解像度が少し遅いですとしていくつかの問題を回避しなければならなかった、そして時にはそれが無いためNone
を返します。明らかな理由。
私のWebカメラにPythonからアクセスするには良い方法はありますか?
OpenCVはウェブカメラからデータを取得する機能をサポートしており、デフォルトでPythonラッパーが付属しています。numpy
をインストールする必要があります(cv2
)。
書いている時点(2015年1月)にはまだPython 3のサポートがないので、Python 2を使用する必要があります。
More information on using OpenCV with Python
Displaying webcam feed using opencv and pythonからコピーされた例は:
import cv2
cv2.namedWindow("preview")
vc = cv2.VideoCapture(0)
if vc.isOpened(): # try to get the first frame
rval, frame = vc.read()
else:
rval = False
while rval:
cv2.imshow("preview", frame)
rval, frame = vc.read()
key = cv2.waitKey(20)
if key == 27: # exit on ESC
break
cv2.destroyWindow("preview")
ホイールからインストールする場合、Python 3のサポートがあります。私はこのチュートリアルをうまく使いました:https://www.solarianprogrammer.com/2016/09/17/install-opencv-3-with-python-3-on-windows/ –
私が使用した唯一のあなたはすでにあなたが好きではない言及したVideoCapture、である(私はそれで問題はなかったが、あなたはどのようなバグに遭遇したのですか?)
を私は見つけることができませんでしたVideoCaptureを使用するか、素敵なCライブラリを見つけてPythonラッパーを作成することができます(これは、あなたがそれに入れるよりもうまくいくかもしれません)。
私は見つけた問題を定義するために質問を編集しました。 – Rodrigo
gstreamerはウェブカメラの入力を処理できます。私がよく覚えていると、そこにはPythonバインディングがあります!
'padspストリーマ-q -c/dev/video0 -f rgb24 -Fステレオ-r 24 -s 1280x720 -t 00:10 -o test.avi'は24fpsのHDウェブカメラを10秒間記録し、 * test.avi *。 (padspは、最新のUbuntuのバージョンでオーディオを確実にキャプチャするために使用されていることに注意してください) – Pithikos
これは@ジョンモンゴメリーにコメントされている必要がありますが、私の担当者は私がコメントすることはできません。 あなたの答えは素晴らしいですが、Windows上で、少なくとも、なければ
cv2.destroyWindow("preview")
は、カメラリソースがロックされている
vc.release()
前の行が欠落している、とのpython前に再度キャプチャすることはできませんコンソールが殺される。
サポートが必要なオペレーティングシステムを明確にしてください。 –
も参照してください:[カメラの画像を撮影するためのPythonライブラリ](http://softwarerecs.stackexchange.com/q/18134/1834) –
And [なぜWebカメラの画像は暗いですか?](http:// stackoverflow .com/q/28566972/562769) –