文章目录
- 1、曝光 & 增益
- 2、曝光 & 帧率
- 3、调参 & 加载
- 4、高级控制选项
- 5、官方文档参考
- 小结
1、曝光 & 增益
-
曝光
exposure
:英特尔 RealSense D400设备模组中的可见光 RGB 传感器和红外左右目传感器具有单独的曝光控制,对于双目红外,曝光以µs
(微秒,1e-6 秒)为单位,并且根据特定传感器的不同,范围可以从1 µs
到160 ms
左右。较低的值对应于传感器捕获的光较少,反之亦然。因此,室内场景通常可以从更高的曝光时间(通常为 5-30 ms)中受益,而室外场景则需要更低的曝光时间(通常 <1 ms)。室内外的不同曝光表现如下图所示。
-
增益
gain
:除了曝光之外,传感器的增益也可以控制。与曝光不同,增益不会影响收集的光量,而是会放大现有信号(低值时使用模拟放大,高值时使用数字放大)。不同增益表现如下图所示,增益越大,图像越亮。
-
放大就会引入噪声,它会按比例缩放图像的信号和噪声,调整这个值需要格外注意,通常增益值不是调整的首选,最重要的仍是曝光时间的控制。
-
使用较小的曝光增益的好处是它可以减少与运动相关的影响,例如运动模糊,所以要保持增益尽可能低(最好为 16)。
2、曝光 & 帧率
-
相机帧率可以设置的最大曝光时间存在限制,手动曝光模式下,将曝光时间设置为高于所选帧率允许值的值将强制降低帧率,自动曝光模式会自动控制,限制关系如下表所示。计算方式为 1 f p s × 1 0 6 \frac{1}{fps} \times 10^{6} fps1×106。
帧率 (Hz) 最大曝光时间(微秒) 90 11111 60 16666 30 33333 15 66666 6 166000 -
当启用自动曝光时,帧率决定最大曝光时间。这意味着以 90 fps 运行的室内场景在自动曝光下可能看起来比 30 fps 更暗,因为帧率将 90 fps 的曝光限制为 11.1 毫秒,但允许曝光增加到 30 fps 的 33.3 毫秒。在一些需要考虑帧率以及曝光的场景要格外注意曝光时间限制以免降帧。
3、调参 & 加载
- 对于曝光以及增益的调整可以通过
realsense-viewer
修改后导出json
文件,并在代码中导入json
预设实现每次启动的参数一致性。因为如果不这样,相机断电后重启,会使用默认的预设参数启动。
- 修改realsense-ros驱动中的launch文件,加载导出的
json
文件,如图以ros1为例,ros2同理。
- 通过launch文件启动相机后,加载json文件,部分终端显示如下图所示。正确加载后会应用设置的曝光以及增益等相机参数(帧率、分辨率)
4、高级控制选项
json
中与高级模式相关的大多数参数均未记录详细的解释。这是因为高级模式参数以复杂的方式相互作用,因此英特尔选择使用机器学习算法来控制它们。如果没有完全明白他们之间的关系,还是选择使用默认的设置。实际上,我们需要了解导出的json
中的含义并更改其值的参数非常少。其中最重要的是曝光(exposure)。
- 在自动曝光模式下,可以通过调整高级控制下的自动曝光设定点来间接控制最终曝光和增益设置。如果默认左红外图像(或左 RGB)对于特定用例来说太暗或太亮,则可以使用此方法。手动曝光则不涉及这个选项。
- 在室内外环境中依次增加设定点的效果如下图所示。
5、官方文档参考
- 英特尔® 实感™ 文档
- 调整深度相机以获得最佳性能
- 立体深度相机的高动态范围
- 英特尔® RealSense™ 深度摄像头 D435 的高速捕捉模式
小结
以上内容出自官方文档,如有其他问题,欢迎在评论区讨论!!!