如何使用opencv禁用网络摄像头的自动对焦

时间:2017-06-08 06:48:59

标签: c++ opencv computer-vision webcam

我正在尝试校准两台相机,但我的问题是自动对焦。我正在使用网络摄像头罗技c920。有人知道一种禁用自动对焦功能的方法吗?我在osx系统中使用C ++和opencv 2.4.9。

2 个答案:

答案 0 :(得分:3)

你可以试试这个。

cap = cv2.VideoCapture(1) // Generate camera object
cap.set(cv2.CAP_PROP_AUTOFOCUS, 0) // turn the autofocus off

您可以在这些链接中找到有关如何设置某些属性的更多信息。

VideoCapture类

http://docs.opencv.org/3.2.0/d8/dfe/classcv_1_1VideoCapture.html

VideoCapture属性

http://docs.opencv.org/3.2.0/d4/d15/group__videoio__flags__base.html#ga023786be1ee68a9105bf2e48c700294d

答案 1 :(得分:0)

试试 v4l-utils:

  1. 安装:sudo apt-get install v4l-utils
  2. 找到您的设备v4l2-ctl --list-devices
  3. 用上一个命令的输出替换 video0 并禁用自动对焦:
    v4l2-ctl -d /dev/video0 --set-ctrl=focus_auto=0