使用cv2 python接口捕获灰度图像到OpenCV的问题

时间:2014-10-30 21:03:35

标签: python opencv video-capture

提前感谢您的考虑。

我试图通过Python界面cv2(v 2.4.8)使用openCV从linux中的Imaging Source单色相机(DMK 23UU45)捕获灰度图像。

我可以通过cv2.VideoCapture初始化摄像头捕获类;但是,当前识别的唯一属性是图像大小和宽度:

>>> cam1 = cv2.VideoCapture(1)
>>> cam1.get(3)
>>> 1280.0
>>> cam1.get(4)
>>> 960.0

如果我尝试获取其他属性的状态,我会收到错误:

>>> cam1.get(1)
>>> HIGHGUI ERROR: V4L2: Unable to get property <unknown property string>(16) - Invalid argument
-1.0

我认为这是个问题,因为我认为默认情况下VideoCapture类的实例会尝试将图像转换为RGB3。我使用以下代码来读取和保存图像:

>>> flg, img = cam1.read()
>>> cv2.imwrite('/path/to/save/image.png', img)

保存的图片如下所示: 好吧,显然我需要更多的街头信誉来发布图片。基本上,图片有三个图像副本,并且它们没有达到完全分辨率。

不确定是否有后果,但是当我为相机初始化VideoCapture类的实例时,我得到以下内容:

libv4l2: error set_fmt gave us a different result then try_fmt!
HIGHGUI ERROR: libv4l unable convert to requested pixfmt
libv4l2: error set_fmt gave us a different result then try_fmt!

再次感谢您的时间和考虑!!

0 个答案:

没有答案