[英]Python with Gstreamer pipeline
我正在开发一个Udoo,试图让相机拍摄可以在Python中操作的图片。
到目前为止,该相机可以与
gst-launch-1.0 imxv4l2videosrc ! imxipuvideosink
我也可以用
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
,图像什么也不是。
有些地方说这仅适用于OpenCV 3.0+,而另一些地方说是2.4.x,但我似乎无法找到其适用版本的实际答案。
如果我需要更新到OpenCV 3.0,我要更新哪一部分? 我通过apt-repository在python-opencv包下下载了OpenCV。 那我需要更新Python吗? 我可以仅从源代码构建OpenCV,Python会自动使用最新版本吗? 我很混乱。
Ubuntu / Debian版本是旧的2.4.x,要获取最后一个版本,您需要从源代码进行编译。
这里有两个关于如何做到这一点的教程:
第一个用于Fedora
上的Python 2.7
,第二个用于Ubuntu
上的Python 3.4
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.