4

我正在使用上面提到的两个 OpenCV 函数从我的网络摄像头中检索帧。没有设置其他属性,只是使用默认参数运行。

在循环读取帧时,我可以看到图像发生变化,亮度和对比度似乎是自动调整的。这绝对看起来像是 OpenCV 的操作,因为摄像头捕捉到的图像并没有变化,而且一直亮着。

那么如何禁用这种自动更正呢?我找不到似乎能够完成这项工作的房产。

4

2 回答 2

3

您应该尝试使用以下三个参数:

CV_CAP_PROP_BRIGHTNESS 图像亮度(仅适用于相机) CV_CAP_PROP_CONTRAST 图像对比度(仅适用于相机) CV_CAP_PROP_SATURATION 图像饱和度(仅适用于相机)

尝试将它们全部设置为 50。另外(如果没有帮助)尝试从文档中更改另一个相机捕获参数。

于 2012-11-12T21:18:34.360 回答
0

为我自己回答这个问题:OpenCV 在这里是错误的或过时的。

  • 似乎不可能以相机的原始分辨率获得图像,它们总是 640x480;也通过设置宽度和高度属性将其强制为其他值不会改变任何东西
  • 似乎无法禁用自动图像校正,上面提到的属性似乎不起作用
  • 亮度/对比度属性似乎效果不佳 - 或者至少我找不到任何好的值,或者自动图像校正总是覆盖它们

总结一下:我不建议使用 OpenCV 进行一些更增强的图像捕获。

于 2013-04-11T11:12:20.347 回答