【问题标题】:How to restore web-cam to default settings after ruining them with OpenCV settings?如何在使用 OpenCV 设置破坏网络摄像头后将其恢复为默认设置?
【发布时间】:2019-06-07 05:25:46
【问题描述】:

我需要来自网络摄像头的视频。在带有 python-3.6 和 OpenCV-3 的 Anaconda 上运行良好。然后我在 Idle 中使用 python-3.6 和 OpenCV-4.1.0 尝试了相同的代码,但它在 anaconda 中不起作用。我有两个黑色的上下边缘,我只能看到图像的中间。我尝试修改一些 OpenCV 设置,但情况变得更糟,现在我几乎看不到图像上的任何东西,除非我使用强光。两条边没有消失。

import cv2

capture = cv2.VideoCapture(0)
capture.set(cv2.CAP_PROP_SETTINGS, 0)

while(True):

    ret, frame = capture.read()
    cv2.imshow('video', frame)
    if cv2.waitKey(1) == 27:
        break

capture.release()
cv2.destroyAllWindows()

capture.set(cv2.CAP_PROP_SETTINGS, 0) 行打开一个小的设置对话框,但还有很多其他的,像这样:

  1. CV_CAP_PROP_POS_MSEC 视频文件的当前位置,以毫秒为单位。
  2. CV_CAP_PROP_POS_FRAMES 下一个要解码/捕获的帧的基于 0 的索引。
  3. CV_CAP_PROP_POS_AVI_RATIO 视频文件的相对位置
  4. CV_CAP_PROP_FRAME_WIDTH 视频流中帧的宽度。
  5. CV_CAP_PROP_FRAME_HEIGHT 视频流中帧的高度。
  6. CV_CAP_PROP_FPS 帧速率。
  7. CV_CAP_PROP_FOURCC 4 字符编解码器代码。
  8. CV_CAP_PROP_FRAME_COUNT 视频文件中的帧数。
  9. CV_CAP_PROP_FORMAT 由 retrieve() 返回的 Mat 对象的格式。
  10. CV_CAP_PROP_MODE 表示当前捕获模式的后端特定值。
  11. CV_CAP_PROP_BRIGHTNESS 图像的亮度(仅适用于相机)。
  12. CV_CAP_PROP_CONTRAST 图像对比度(仅适用于相机)。
  13. CV_CAP_PROP_SATURATION 图像饱和度(仅适用于相机)。
  14. CV_CAP_PROP_HUE 图像的色调(仅适用于相机)。
  15. CV_CAP_PROP_GAIN 图像增益(仅适用于相机)。
  16. CV_CAP_PROP_EXPOSURE 曝光(仅适用于相机)。
  17. CV_CAP_PROP_CONVERT_RGB 布尔标志,指示图像是否应转换为 RGB。
  18. CV_CAP_PROP_WHITE_BALANCE 目前不支持
  19. CV_CAP_PROP_RECTIFICATION 立体相机的校正标志(注意:目前仅支持 DC1394 v 2.x 后端)

我尝试从华硕安装一些相机驱动程序,但找不到适合我的型号:FX504GE 的驱动程序。是否有任何这些设置的组合或 smth 来恢复我的网络摄像头?我真的需要它...

【问题讨论】:

    标签: opencv python-3.6


    【解决方案1】:

    简单的方法是在启动相机时使用 v4l2-ctrl 读取所有参数。记下初始值。在你在opencv中完成之后。使用 v4l2-ctrl 设置。

    例如。尺寸

    v4l2-ctl --set-fmt-video=width=1920,height=1080,pixelformat=YUYV
    

    还有其他像自动缩放自动曝光和很多东西都读取并设置所有

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-12
      • 1970-01-01
      • 2010-10-20
      • 2015-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多