我正在开发一个Udoo,试图让相机拍摄一张照片,我可以在Python中操纵它。在
到目前为止,照相机还可以用
gst-launch-1.0 imxv4l2videosrc ! imxipuvideosink
我也可以和
gst-launch-1.0 imxv4l2videosrc num-buffers=1 ! video/x-raw ! jpegenc ! filesink location=output.jpg
从here看来,您可以使用OpenCV直接从Python中的gstreamer流读取。在
下面是我的python代码:
import cv2
cam = cv2.VideoCapture("imxv4l2videosrc ! video/x-raw ! appsink")
ret, image = cam.read()
然而,ret是False
,而image什么都不是。在
有些地方说这只适用于opencv3.0+,还有一些地方说是2.4.x,但我似乎找不到它在哪个版本上工作的实际答案。在
如果我需要更新到opencv3.0,我要更新哪个部分?我通过python OpenCV包下的apt存储库下载了OpenCV。那么我需要更新Python吗?我可以从源代码构建OpenCV吗?Python会自动使用最新版本吗?我很困惑。在
Ubuntu/Debian版本是旧的2.4.x,要获得最后一个版本,您需要从源代码处编译它。在
这里有两个关于如何做到这一点的教程:
第一个用于
Fedora
上的Python 2.7
,第二个用于Ubuntu
上的Python 3.4
。在相关问题 更多 >
编程相关推荐