【ISP】HDR算法

发布于:2025-03-31 ⋅ 阅读:(21) ⋅ 点赞:(0)

  问题:对于高动态场景,相机sensor表示范围有限,容易出现过曝问题。


方法:

1. Burst Photography

HDR+ 使用 burst photography 方法,利用N帧欠曝帧(同gain低shutter)融合成一张正常曝光图像(等效同gain长shutter)。

但是此方法,相对于使用等效曝光时间得到的正常曝光图像,读噪声(高斯底噪)变为原来的N倍,导致暗部信噪比差。

 2.  exposure bracketing

包围曝光通过取一帧长曝帧,用来改善暗部细节,将暗部区域融合长曝光帧。

长曝帧一般后取(快门之后获取)。

正常场景欠曝帧可以前取(预览流)

夜景全部后取

  2.  exposure bracketing 2.0

1. 暗部区域通过长曝帧改善。

2. 高光过曝直接通过低gain的欠曝帧改善(数字gain后,信噪比等效中爆)。

3. 中曝通过多帧融合进行多帧降噪,进一步减少中间调的底噪和泊松噪声。

类型 欠爆  中爆 长曝光 噪声(比G+S)
burst photography N
G+S(短)
底噪变为N倍
泊松相等
exposure bracketing N
G+S(短)
1
G+S(长)
底噪降低
泊松相等
exposure brackting2.0 1
G(小)+S
N/2
G+S
1
G+S(长)
底噪降低
泊松降低

 

 Deghost重建

1. 对齐到中爆帧,检测中曝帧(base帧)和参考帧的运动区域(差异区域)。

优点:可以对齐到base帧,欠曝帧非高光运动区域使用高帧,避免噪声太强问题。

缺点:高光运动区域重建困难,容易产生鬼影。

  • (低→高)重建高曝帧对齐到base帧;“运动”区域取base帧。
  • (高→低)  重建低曝帧对齐到base帧;“运动”区域取base帧,“高光运动区域”进行保留或生成。
    • 对于base高光运动区域若在欠曝帧上存在(例如黄色区域),则对欠曝帧计算光流warp后进行保留。
    • 对于base高光运动区域若在欠曝帧不存在 (例如欠曝帧手臂区域),则留空进行后续生成算法处理。

中曝帧(base),欠曝帧,高爆帧。 

2. 对齐到欠爆帧,检测欠曝帧和参考帧的运动区域(差异区域)。

优点:没有高光运动重建,不易产生鬼影。

缺点:非高曝运动区域使用欠曝帧信息,信噪比较低(特别是阴影区域)。

对运动区域依次重建中曝帧,和高曝帧。

高动态融合

重建后将高光区域融合欠曝帧,阴影融合高曝帧,可以得到一张高质量的高动态图像。

若不进行重建直接进行融合,会得到一张错误的融合结果。 

 PIPLine参考:

参考资料:

2021  HDR+ with Bracketing on Pixel Phones

2018 See Better and Further with Super Res Zoom on the Pixel 3

2019 Handheld Multi-Frame Super-Resolution

2021 HDR Video Reconstruction: A Coarse-to-fine Network and A Real-world Benchmark Dataset

2022 A Lightweight Network for Hight Dynamic Range Imaging

2019 Attention-guided Network for Ghost-free High Dynamic Range Imaging

2021 Efficient Multi-Stage Video Denoising with Recurrent Spatio-Temporal Fusion