使用Opencv编辑相机设置

时间:2016-10-31 18:50:59

标签: python opencv camera-calibration

有没有办法使用OpenCV Python设置相机设置(iso,焦点等)?我们在机器人上使用计算机视觉,但每次角度或光线变化时,相机都会自行重新配置,因此无法使用SciKit Learn中的SVM。有没有办法阻止它?

1 个答案:

答案 0 :(得分:4)

是的,有一种方法可以使用OpenCV手动控制USB网络摄像头。我正在使用的网络摄像头是罗技C525,但我认为以下代码适用于所有罗技网络摄像头。

import cv2

cam = cv2.VideoCapture(0)

#       key value
cam.set(3 , 640  ) # width        
cam.set(4 , 480  ) # height       
cam.set(10, 120  ) # brightness     min: 0   , max: 255 , increment:1  
cam.set(11, 50   ) # contrast       min: 0   , max: 255 , increment:1     
cam.set(12, 70   ) # saturation     min: 0   , max: 255 , increment:1
cam.set(13, 13   ) # hue         
cam.set(14, 50   ) # gain           min: 0   , max: 127 , increment:1
cam.set(15, -3   ) # exposure       min: -7  , max: -1  , increment:1
cam.set(17, 5000 ) # white_balance  min: 4000, max: 7000, increment:1
cam.set(28, 0    ) # focus          min: 0   , max: 255 , increment:5

请注意,焦点值仅为5的倍数(0,5,10,15 ... 255)。您提到的ISO应该与“曝光”和“增益”更相关,这会影响信号强度。

祝你好运!