2、HDR基础理论:什么是高动态范围、动态范围的计算方法、车载场景的动态范围需求(120dB+)

好,咱们正式开始啃HDR这块硬骨头。很多工程师一听到“高动态范围”就觉得玄乎,其实说白了,就是让摄像头能同时看清亮的地方和暗的地方。你想想看,人眼为什么厉害?因为它能适应从星光到正午阳光的亮度跨度。摄像头要是不做HDR,拍出来的画面要么亮部过曝一片死白,要么暗部死黑什么都看不见。

我记得刚入行那会儿,调试一款前视摄像头,大晴天车子刚出隧道,画面直接“瞎”了3秒钟。从那以后我就明白——车载摄像头不做HDR,根本没法用。

2.1 什么是高动态范围

动态范围,英文叫Dynamic Range,缩写DR。它描述的是一个系统能同时记录的最亮信号与最暗信号的比值。对于图像传感器来说,就是它能同时容纳的“最亮”和“最暗”的亮度范围。

举个例子:

  • 一个普通手机摄像头,动态范围大概60~70dB
  • 人眼在适应后,动态范围能到100dB以上
  • 车载HDR摄像头,要求至少120dB

dB这个单位怎么理解?我习惯这么记:每增加20dB,亮度范围扩大10倍。所以120dB意味着最亮和最暗相差100万倍。嗯,你没看错,100万倍。

核心概念:高动态范围(HDR)不是一种“特效”,而是一种让传感器在单帧画面中同时保留亮部和暗部细节的能力。没有HDR,车载摄像头在逆光、隧道出入口、夜间车灯场景下基本等于废了。

2.2 动态范围的计算方法

动态范围的计算公式其实不复杂:

DR = 20 × log10(最大可探测信号 / 最小可探测信号)

单位:dB(分贝)

对于图像传感器,最大信号通常由满阱容量(Full Well Capacity, FWC)决定,最小信号由噪声基底(Read Noise)决定。所以更具体的公式是:

DR_sensor = 20 × log10(FWC / Read_Noise)

举个例子:

  • 某传感器满阱容量:100,000个电子
  • 读出噪声:10个电子
  • DR = 20 × log10(100,000 / 10) = 20 × log10(10,000) = 20 × 4 = 80dB

80dB,这就是普通传感器的水平。但车载场景要求120dB,差了整整40dB,也就是100倍。怎么补?靠单次曝光肯定不行,必须上多帧合成或者特殊像素结构。

个人经验:我建议你在选型时不要只看datasheet上标的DR数字。有些厂商会“注水”,用特殊测试条件测出来的值。我踩过这个坑——标称120dB的传感器,实际在车载温度范围(-40°C~105°C)下只能做到100dB左右。一定要看全温度范围的典型值。

2.3 车载场景的动态范围需求(120dB+)

为什么车载非要120dB?咱们来算一笔账:

场景 亮度范围(lux) 所需动态范围 说明
夜间城市道路 0.1 ~ 100 ~60dB 普通传感器勉强够
白天阴天 100 ~ 10,000 ~80dB 普通传感器极限
隧道出入口 0.5 ~ 100,000 ~106dB 普通传感器已失效
夜间对向远光灯 0.1 ~ 500,000 ~134dB 必须HDR
正午逆光+阴影 10 ~ 120,000 ~120dB 车载典型需求

看到没?隧道出入口和夜间远光灯这两个场景,动态范围需求直接飙到100dB以上。我曾经在实车测试时遇到过这种情况:车子刚进隧道,摄像头画面全黑,等出隧道了画面又全白,中间过渡期长达2~3秒。这对ADAS系统来说是不可接受的——万一隧道里有静止车辆或行人呢?

避坑指南:我曾经以为120dB是“够用”的,直到遇到一个极端场景——夜间高速,前方无路灯,对向车道连续远光灯。实测下来,120dB的传感器在亮部(车灯区域)勉强能看,但暗部(路面行人)已经丢失了。后来我学乖了,车载前视摄像头建议选140dB以上的方案,后视和环视可以放宽到120dB。

2.4 车载HDR的三种主流实现路径

要实现120dB+的动态范围,目前业界主要有三条路:

  1. 多帧合成HDR(Multi-frame HDR):连续拍摄2~4帧不同曝光时间的图像,然后合成一帧。优点是实现简单,缺点是运动物体容易产生鬼影。
  2. 大像素+双增益(Dual Gain / DCG):单个像素内有两个增益路径,同时输出高增益和低增益信号。优点是单帧就能HDR,缺点是像素尺寸大,分辨率受限。
  3. 分像素HDR(Split-pixel HDR):一个像素内分成大、小两个子像素,大像素感光强,小像素感光弱。优点是单帧、无鬼影,缺点是工艺复杂。

我个人比较看好多帧合成+运动补偿的方案,因为它在分辨率和动态范围之间平衡得最好。但如果你做的是环视摄像头,运动模糊不敏感,DCG方案性价比更高。

下面这张图帮你理清三种方案的选型逻辑:

车载HDR方案选型逻辑 车载HDR需求 ≥120dB 多帧合成HDR 优点:实现简单 缺点:运动鬼影 适用:前视/ADAS 双增益DCG 优点:单帧无鬼影 缺点:像素尺寸大 适用:环视/后视 分像素HDR 优点:单帧无鬼影 缺点:工艺复杂 适用:高端前视 选型建议: 前视→多帧合成+运动补偿 | 环视→DCG | 高端→分像素 注意:实际量产方案常混合使用,例如多帧合成+DCG双增益

2.5 动态范围与信噪比的权衡

这里有个很多新手容易忽略的点:动态范围不是越高越好。为什么?因为提高动态范围往往意味着牺牲信噪比(SNR)。

你想想看,要同时看清亮部和暗部,暗部信号必须被放大。但放大信号的同时,噪声也被放大了。结果就是:动态范围上去了,暗部噪点也上去了。

我做过一个对比测试:

  • 方案A:DR=120dB,暗部SNR=28dB
  • 方案B:DR=110dB,暗部SNR=35dB

在夜间城市道路场景下,方案B的视觉体验反而更好。因为虽然动态范围少了10dB,但暗部干净多了。所以选型时一定要看“有效动态范围”——也就是在可接受SNR前提下的动态范围。

我的习惯:车载HDR选型,我一般先定SNR底线(暗部不低于30dB),再看DR能到多少。如果厂商只给你看DR数字,不给你看SNR曲线,那就要留个心眼了。

2.6 小结:HDR不是万能的

最后说句实在话:HDR能解决很多问题,但不是所有问题。比如:

  • HDR不能解决运动模糊(那是下一章的内容)
  • HDR不能解决镜头眩光
  • HDR不能解决传感器饱和后的颜色失真

但如果你连HDR都没做好,那上面这些问题根本轮不到你操心——因为画面早就过曝或欠曝到没法看了。所以,120dB是起点,不是终点。