我如何增加摄像头的动态范围?

上次修订日期:2016 年 2 月 10 日

为便于本文说明,动态范围将定义为传感器可以测量的最大和最小光量之差。 此差上限由传感器最大深度(任何像素可以容纳的最大电子电荷)限定,下限由摄像头的读取噪音限定。 其测量方法有多种,但一种简单方法是计算可以分辨出的不同灰度级数。 摄像头的动态范围越大,最终图像中可以分辨的灰度级更多。

测量动态范围的常用方法是向摄像头展示一张上方的目标一半全黑、另一半使摄像头完全饱和的图像。 目标和摄像头中间放置减少 50% 目标图像传输的一组中等密度滤镜。 使目标的黑色部分与光线部分无法区分的所需滤镜数量代表摄像头动态范围位数。

增加摄像头的动态范围

由于摄像头的动态范围一边由传感器的最大深度限制,另一边受读取噪音限制,所以用户只能通过几种办法来增加摄像头真正的动态范围。

    1. 调整摄像头参数增加动态范围(亮度和增益)。 亮度设置或摄像头的黑度水平实际上是像素返回的最小值。 尽可能降低亮度水平,传感器用来表示进入光线的可用强度级别数量,从而增加动态范围。 除了提高像素强度,提高摄像头的增益会提高读取噪音水平。 所以,使用仍然让 A/D 达到饱和的最少量的增益将最大程度地增加摄像头的动态范围。

    2. 调整伽马增加感知动态范围。 使用伽马功能的摄像头允许用户应用非线性响应曲线。 虽然更改伽马并不会更改摄像头的动态范围,但确实会更改完整位范围映射到 8bpp 的方式。 这样用户可以跨灰度级地非线性映射接近饱和或信号很少的像素。 它改变了用户的摄像头动态范围感知,并使他们可以看到图像最亮和最暗部分的更多细节。 经验表明,这种方法对图像较暗部分比较明亮部分更为有效。 调整伽马时,用户可能会看到灰胶片样的生成图像(即图像看上去褪色了一样)。 主要是因为伽马设置过高。

    3. 调整每像素位数增加感知动态范围。 许多摄像头支持能提供高于每像素 8 个位数的视频模式。 虽然视频模式一般标了每像素 16 位数 (Y16),但这些图像通常只包含 9 到 12 位数的有用数据。 使用这些较高的位深度图像不能提高实际动态范围,但确实能提高整个图像的分辨率。 用户想要应用自定义‘伽马’算法时比较有用。

    4. 过滤击中传感器的光线。 如果摄像头是黑白的,您可以增加一个与彩色摄像头附带的滤镜相似的红外滤镜。 请参阅《Dragonfly 技术参考》第 2.4 节了解彩色摄像头附带的红外滤镜的更多信息。 客户使用偏光滤镜也可以实现目的。

    5. 增加场景的环境光。 移除点光源、增加场景的环境光,将能够降低图像的镜面反射及其他饱和部分,尽可能获得最多的图像细节。