Python内で操作できる写真をカメラに撮らせようとしているUdooに取り組んでいます。
これまでのところ、カメラは
gst-launch-1.0 imxv4l2videosrc ! imxipuvideosink
で1枚の写真を撮ることもできます
gst-launch-1.0 imxv4l2videosrc num-buffers=1 ! video/x-raw ! jpegenc ! filesink location=output.jpg
ここから、OpenCV を使用して Python の gstreamer ストリームから直接読み取ることができるようです。
ここに私のpythonコードがあります:
import cv2
cam = cv2.VideoCapture("imxv4l2videosrc ! video/x-raw ! appsink")
ret, image = cam.read()
ただし、ret はFalse
で、image は何もありません。
これはOpenCV 3.0+でのみ機能すると言う場所もあれば、2.4.xと言う場所もありますが、どのバージョンで動作するかについての実際の答えを見つけることができないようです.
OpenCV 3.0 に更新する必要がある場合、どの部分を更新すればよいですか? パッケージpython-opencvの下のaptリポジトリを介してOpenCVをダウンロードしました。では、Python を更新する必要がありますか? ソースから OpenCV をビルドするだけで、Python は自動的に最新バージョンを使用できますか? 私は困惑している。