曝光与动态范围:曝光三角形、动态范围定义、过曝与欠曝、多曝光采集策略
各位同学,欢迎来到第三章。今天咱们聊聊曝光和动态范围。这两个概念,是HDR重建的基石。你想想看,如果没有把曝光玩明白,后面再牛的算法也是白搭。
曝光三角形:三个变量,一个目标
曝光三角形,说白了就是控制进光量的三个旋钮:光圈、快门、ISO。它们仨互相制约,共同决定了一张照片的亮度。
- 光圈(Aperture):控制镜头通光孔的大小。f值越小,光圈越大,进光越多。但景深也会变浅。
- 快门速度(Shutter Speed):传感器感光的时间。时间越长,进光越多。但手抖或物体运动就容易糊。
- ISO(感光度):传感器对光的敏感程度。ISO越高,信号被放得越大,但噪点也跟着被放大。
我记得刚入行时,总想把三个参数调到“完美”。后来发现,其实没有完美的参数,只有适合场景的取舍。比如拍夜景,我习惯优先保证快门不糊,再开大光圈,最后才动ISO。
核心公式:曝光量 ∝ (光圈面积) × (快门时间) × (ISO增益)
记住,改变任何一个参数,都需要用另外两个来补偿,才能保持曝光不变。
动态范围:传感器的“听力范围”
动态范围(Dynamic Range, DR),是传感器能同时记录的最亮和最暗细节的能力。单位通常是dB或档位(stops)。
举个例子,人眼能看清从烛光到正午阳光下的细节,动态范围大概有20档以上。而普通手机传感器,可能只有10-12档。这就是为什么我们拍逆光人像时,人脸黑成一片,背景却白得刺眼——传感器“听”不到那么宽的声音范围。
动态范围的计算公式很简单:
DR = 20 * log10(满阱容量 / 读出噪声)
满阱容量越大,读出噪声越低,动态范围就越宽。我在项目中遇到过一款老式传感器,满阱容量不小,但读出噪声高得离谱,导致暗部全是噪点,动态范围还不如后来一款小底但低噪声的传感器。嗯,这里要注意,噪声控制比单纯堆满阱容量更重要。
过曝与欠曝:信息丢失的两种死法
过曝(Overexposure),就是亮部细节全白,变成一片死白。欠曝(Underexposure),就是暗部细节全黑,变成一片死黑。这两种情况,都意味着信息永久丢失,后期拉不回来。
为什么会这样?因为传感器的响应是线性的。当入射光强超过满阱容量时,电子溢出,像素值被钳位在最大值。当光强低于读出噪声时,信号被噪声淹没,像素值被钳位在最小值。
避坑指南:我曾经以为欠曝的照片后期提亮就能救回来。结果发现,暗部提亮后全是彩色噪点,比过曝还难看。所以,宁欠勿过是传统摄影的法则,但在HDR重建中,我们更倾向于多曝光融合,而不是单张硬拉。
多曝光采集策略:如何喂饱HDR算法
既然单张照片的动态范围有限,那我们就拍多张不同曝光的照片,然后融合成一张高动态范围的图像。这就是多曝光HDR的核心思路。
采集策略主要有三种:
- 等间隔曝光:比如-2EV、0EV、+2EV,每档间隔相同。适合场景动态范围中等的情况。
- 不等间隔曝光:比如-3EV、-1EV、+1EV、+3EV,暗部多拍几档,亮部少拍几档。适合高动态范围场景,比如逆光。
- 自适应曝光:先拍一张预览图,分析直方图,然后动态决定需要补拍哪些曝光档位。这是工业级方案,我目前在用的就是这种。
我个人习惯,在移动端HDR中,优先采用3帧不等间隔曝光:-2EV、0EV、+2EV。为什么?因为3帧的融合计算量适中,不等间隔能覆盖大部分场景。如果场景特别极端,比如夜景霓虹灯,我会增加到5帧:-3EV、-1.5EV、0EV、+1.5EV、+3EV。
小技巧:采集时,尽量保持相机稳定。我建议用三脚架或OIS防抖。如果手持,快门速度不要低于1/30秒,否则帧间对齐会很痛苦。
知识体系:曝光与动态范围核心逻辑
下面这张图,是我自己梳理的本章知识结构。你可以把它当作一个思维导图,方便理解各个概念之间的关系。
从这张图你可以看到,曝光三角形是基础,动态范围是传感器的硬指标,过曝与欠曝是我们要避免的陷阱,而多曝光采集策略则是我们主动出击的手段。它们环环相扣,缺一不可。
好了,这一章的内容就到这里。记住,曝光不是玄学,是数学。把这三个变量和动态范围的关系吃透,你就能在HDR重建中游刃有余。