4

我正在做一个项目,我使用网络摄像头以不同的曝光值连续拍摄照片(以制作 HDR 图像流)。我一直在使用 Logitech C310 相机,并且通过将以下内容发送到命令行来设置曝光值:

"v4l2-ctl --set-ctrl=exposure_absolute=%d --device=/dev/video1",exposureValue

当我长时间将其设置为一次曝光时,效果很好,然后是另一次,但是当我尝试连续拍摄 3 帧时,每帧的曝光变化不大。

我的相机的另一个问题是,在它的最大曝光值为 10000(我不知道这是什么单位)时,帧没有像我希望的那样曝光。

1) 不断改变曝光值是否存在一些基本问题,会阻止它在大多数网络摄像头上始终如一地工作?

2) 是否有任何人都可以推荐的更适合拍摄高曝光照片的网络摄像头?

4

1 回答 1

4

的值范围exposure_absolute似乎是特定于相机和驱动程序的。大多数相机由此意味着曝光时间。许多相机还提供gain参数,该参数控制电子放大,如数码相机上的 ISO 设置。gain如果exposure_absolute已经达到上限,请继续加注。

两者可以组合使用进行曝光控制,但在任意相机上没有必要分别存在。一些相机同时提供或仅提供其中之一,或提供但忽略它们,因为它们仅提供auto模式。

所以最兼容的方法是检查是否有手动模式,设置它并检查它是否被接受,应用exposure_absolute并检查它是否被接受,否则尝试gain或者是否exposure_absolute已经最大化。

录制视频时,还有另一个警告,因为较大exposure_absolute的值会使曝光时间超过帧间隔,从而降低帧速率。应该对此进行测试以确定何时gain应该使用该点来保持恒定的帧速率。

另请注意,某些 v4l2 工具会尝试自行选择像素格式或分辨率,而忽略v4l2-ctl所选的,并且一些罕见的相机往往会在这种情况下重置其他参数。

于 2013-03-09T21:42:54.460 回答