在opencv python中设置网络摄像头摄像头参数

时间:2017-06-26 19:47:55

标签: python opencv camera setting

我正在使用Windows 7 64位操作系统以及Python 3和OpenCV。我的电脑连接到以下型号的两个Logitech网络摄像头:

1)罗技HD网络摄像头C615 2)罗技QuickCam Pro 9000

在Python中我正在运行以下脚本

import cv2
cap1 = cv2.VideoCapture()
cap2 = cv2.VideoCapture()
cap1.set(cv2.CAP_PROP_AUTOFOCUS,0) # I want to change the focus manually myself
cap1.set(cv2.CAP_PROP_FOCUS,10)
cap2.set(cv2.CAP_PROP_FOCUS,10)
cap1.set(cv2.CAP_PROP_EXPOSURE,25)
cap2.set(cv2.CAP_PROP_EXPOSURE,25)

#get frame
ret, frame1 = cap1.read()
ret, frame2 = cap2.read()

#display result
cv2.imshow('cam 1',frame1)
cv2.imshow('cam 2',frame2)

问题是,无论我如何更改cv2.set中的参数,我都没有看到更改反映在捕获的图像中。

然后我去了Logitech的相机驱动程序,这个驱动程序名为Logitech Webcam Software。使用他们的软件,我可以在两个相机中进行适当的设置。关闭软件并重新启动python并运行脚本时,捕获的图像将完全根据我在Logitech网络摄像头软件中设置的设置显示。

我的问题是:

1)为什么我不能直接使用Python和OpenCV设置相机设置?

2)我应该如何更改脚本以直接从Python界面摄像机设置?

谢谢!

0 个答案:

没有答案