论文链接:https://arxiv.org/abs/2204.04210
项目主页:https://kristinamonakhova.com/starlight_denoising/
代码链接:https://github.com/monakhova/starlight_denoising/(尚未开源)
导读
与某些需要在夜晚进行捕猎的动物和鸟类相比,人类的夜视能力相对较弱,我们无法在极度弱光的环境中有效观察到物体的运动,例如在没有月亮的星空下。对于专业的摄影师来说,在这种黑暗环境下可以通过延长相机的曝光时间(几秒中或者更长的时间)从场景中收集够足够的光线来提高拍摄效果,但是这种方式只适用于拍摄静态图片,如果在拍摄画面中有明显运动的视频时,成像机制本身带来的噪声就足以淹没整个画面了。虽然已有很多的图像或视频降噪算法,但是这些算法往往建立在经典的噪声模型(高斯或泊松-高斯噪声) 基础之上,其在极度黑暗的星空环境下会失效。如果在这种环境下使用长曝光等传感器增益手段,这样带来的噪声通常是非高斯的、非线性的并且特定于传感器的参数,我们很难对这些噪声进行建模和表征,如果去噪算法无法理解这些噪声的机理,而将这些噪声误认为是我们希望捕捉到的运动信号,那降噪的效果肯定会大打折扣。为了解决上述问题,加州大学伯克利分校和Intel实验室合作提出了一种物理启发的噪声模型,并结合GAN网络可以对极度弱光环境下拍摄的视频进行降噪,从而呈现出非常逼真的星空下视频降噪效果,降噪效果如下图所示:
图(a)展示了在一个没有任何外部照明的夜晚拍摄的亚毫秒级(submillilux)视频帧,图(b)展示了对比度调整后的结果,图(c)为本文去噪网络的降噪效果。经过降噪处理,我们可以观察到画面中有一位舞者在星空下起舞,但在原视频中,我们很难观察到这样的动作。
1. 本文方法
目前有很多基于深度学习的视频降噪方法,但是这些方法需要提前使用相机收集正常-噪声样本对来训练降噪器学习像素到像素之间的映射函数,而且也缺乏对噪声建模的考虑,这使得数据集和模型非常依赖相机硬件和一系列的拍摄参数。前面提到可以通过提高相机的曝光等增益设置来为静态图片捕获正常-噪声样本对,但是使用这种方式对视频样本对进行构造则会更加复杂,可能需要架设第二台摄像机,并考虑如何将两台摄像机的拍摄视角进行对齐。
为了在有限的实验条件下完成亚毫秒视频去噪,作者提出了一个三步走方案:(1)使用一个较为专业的摄像机,其应该针对低光环境成像进行优化并设置为长曝光。(2)针对这台摄像机建立一个物理启发的噪声模型(噪声生成器),以便于可以源源不断的获取静态的噪声图像。(3)使用上一步得到的噪声生成器合成正常-噪声视频样本对来训练视频降噪器。需要注意的是,本文的噪声生成器是在有限的静态图像对上训练得到的,因此不需要考虑对两种图像进行视角对齐,同时也保证了噪声生成器的泛化性。随后作者将噪声生成器合成的静态图像对和动态视频对结合来训练视频降噪器,整体的训练框架如下图所示:
上图左侧展示了噪声生成器的训练框架,其主要由一个生成器和一个判别器构成,判别器的作用是区分真实噪声和生成的伪噪声,这是GAN训练的经典策略。在经过一系列长曝光/低增益和短曝光/高增益的图像对训练之后,噪声生成器可以生成出近乎真实的噪声图像。随后使用生成器合成正常-噪声视频样本对来训练视频降噪网络,下面将分别介绍噪声生成器和降噪网络的构成细节。
1.1 物理启发的噪声生成器
为了更加精确地拟合极弱光环境中的噪声模型,本文提出了一种物理启发的噪声生成器,它由几个可学习的统计噪声参数组成,此外,为了提高噪声模型的普适性,作者在构建模型时没有进行任何形式的手动校准,而是完全通过GAN网络自动学习符合当前环境的最佳参数。作者使用一定数量的清晰图像(长曝光,低增益)和噪声图像(短曝光,高增益)对训练该网络,经过网络的对抗博弈优化,就可以在极弱光环境和高增益相机参数设置下合成逼真的噪声,生成器框架如下图所示。
先前的工作已经证明,相机在低光环境下的噪声可以表示为散射噪声(shot)、读取噪声(read)、带状噪声(row)和量化噪声(quantization)的组合,作者提出的生成器模型对这些噪声均进行了建模,下面一一进行介绍。
散射噪声(shot)和读取噪声(read)如上图左下角所示,散射噪声刻画了光线照射到相机传感器上的强度,通常被建模为泊松随机变量,而读取噪声可以近似为零均值高斯随机变量,在本文中,二者均使用异方差高斯随机变量来近似,其中均值等于真实信号 x x x,方差由读取参数 λ r e a d \lambda_{read} λread 和 散射噪声参数 λ s h o t \lambda_{shot} λshot 来设定:
N s + N r ∼ N ( μ = x , σ 2 = λ r e a d + λ s h o t x ) N_{s}+N_{r} \sim \mathcal{N}\left(\mu=x, \sigma^{2}=\lambda_{r e a d}+\lambda_{s h o t} x\right) Ns+Nr∼N(μ=x,σ2=λread+λshotx)
对于带状噪声(row),会在图像中以水平或者垂直条纹的形式出现,这种噪声是一种与相机硬件相关的噪声,往往会在弱光环境中产生。作者通过在图像的每一行或每一列上添加固定的偏移量来模拟带状噪声,其中固定偏移量是从方差为 λ r o w \lambda_{row} λrow 的零均值高斯随机变量中得出的,如上图中所示。此外,作者还观察到条带噪声的出现与画面中出现的物体无关,在一个视频的很多帧中,往往会出现固定且一致的条带噪声,为了对此建模,作者还加入了一个具有时间一致性的带状噪声 N ( 0 , λ row , t ) \mathcal{N}\left(0, \lambda_{\text {row }, t}\right) N(0,λrow ,t),它在每一组帧序列中都是保持静态不变的,与普通带状噪声类似,作者将这种噪声也建模为方差为 λ r o w , t \lambda_{row}, t λrow,t 的零均值高斯随机变量。
最后,作者添加了一个统一的噪声分量来近似传感器带来的量化噪声(quantization):
N q ∼ U ( λ quant ) N_{q} \sim \mathcal{U}\left(\lambda_{\text {quant }}\right) Nq∼U(λquant )
其中 λ q u a n t \lambda_{quant} λquant 是量化噪声的间隔参数。通常情况下,量化噪声分量是根据相机传感器使用的位数来明确定义的,但是在实验中发现,如果对这个噪声参数进行调整可以有效改善噪声生成器整体效果,因此作者使用一组图像序列数据中的平均值来作为噪声分量 N f N_{f} Nf 的值,并令其在整个数据中的所有图像上保持不变,作者发现使用这种固定的调整模式来确定量化噪声分量的参数可以改善生成噪声和真实噪声之间的Kullback-Leibler(KL)散度。
将上述一系列噪声分量依次叠加在干净清晰的图像上之后,得到初始的物理启发噪声图,再将该噪声图像送入到一个具有残差结构的2D-Unet网络中,用来学习初始叠加噪声到真实噪声之间的映射。
1.2 视频降噪网络
在训练好噪声生成器之后,作者构建了个由正常-噪声样本对组成的视频降噪数据集,下一步就是根据该数据集训练视频降噪网络,该网络可以很好的泛化到来自真实环境中相机拍摄到的嘈杂视频。受突变去噪方法[1]的启发,作者也选取了多个连续的噪声帧联合对视频中心帧进行去噪,并设计了一种可以一次对多个帧进行操作的网络架构,这种方式在弱光环境下具有明显的优势,因为对一连串的图像进行去噪可以比对单图像去噪有多维度信息作为参考,因此可以有效提高图像的降噪质量,此外,对噪声帧序列一起去噪,可以帮助模型保持跨帧的时间一致性并减少整体降噪后视频中的闪烁现象,本文的降噪网络结构如下图所示。
本文的降噪网络结是在FastDVDNet[2]网络的基础上搭建而成的,FastDVDNet是目前较为先进的视频去噪器,它可以隐式处理视频中的运动估计,作者将原始FastDVDNet中的基础单元U-Net替换成了HRNet,发现与原始U-Net架构相比,HRNet可以使最终去噪视频的时间一致性更好。本文的降噪网络可以直接运行在RAW格式的原始视频序列上,经过一定的后处理操作就可以得到最终的降噪视频。
2. 实验分析
在实验部分,作者在极弱光环境下从摄像头中收集了三组数据集:(1)静态场景中清晰图像(长曝光,低增益)和噪声图像(短曝光,高增益)图像对,(2)运动场景中的清晰图像,(3)运动场景中的极弱光环境图像(submillilux)。所有的图像和视频均以RAW格式进行存储,其中静态场景中的配对数据集主要用来训练噪声生成器,然后配对数据集和运动场景中的清晰图像组合起来用于训练降噪网络,而在运动场景中采集的极弱光环境图像(submillilux dataset)用于代表真实环境的测试数据集来评估所提方法的性能。
本文实验主要分为两部分,分别对噪声生成器和视频降噪网络进行评估,在噪声生成器的评估实验中,作者重点对每个物理噪声分量进行了消融分析,还与其他噪声模型进行了对比,例如ELD、NoiseFlow和CA-GAN,其中,ELD是一种传统方法,后两者是深度学习方法,实验效果如下表所示,可以看到本文方法的性能最好,同时对于组成噪声各个分量之间的消融实验也表明了各个分量对最终噪声拟合效果的贡献。
此外作者也在下图中进行了可视化对比,可以看到,NoiseFlow和CA-GAN方法都直接忽略了在数据集中加入的带状噪声(row),ELD虽然可以捕获带状噪声,但是它也忽略了其他噪声分量。
在对视频降噪网络的评估中,对本文提出的视频整体降噪方案进行了评价,主要分为两部分:对单图像去噪和对视频片段去噪,作者分别计算了本文方法与其他对比方法的三个图像质量评价指标:PSNR、SSIM和LPIPS,结果如下表所示,本文的方法在这三个指标上均达到了最好的效果。
作者还在预留出来的极弱光环境图像(submillilux dataset)上进行了效果对比,如下图所示,可以看到本文方法与其他两个视频降噪方法相比,有效的减少了条纹伪影,保留了更多的图像细节,例如夜空中的繁星。
3. 总结
本文针对极弱光环境下的图像和视频降噪问题发起了挑战,通过结合相机硬件本身涵盖的物理参数和基于深度学习的图像噪声建模手段提出了一种物理启发的噪声生成器,并根据该生成器构建了一系列具有特殊用途的数据集,有力的推动了后续视频降噪网络的训练。整体一套流程展现了基于深度学习的去噪方法在这种极端光照条件下的强大能力。作者团队还希望通过这项工作能够在未来帮助其他领域在极弱光环境下开展科学研究(例如研究在无月条件下或森林中的夜间动物行为)。
参考
[1] Ben Mildenhall, Jonathan T Barron, Jiawen Chen, Dillon Sharlet, Ren Ng, and Robert Carroll. Burst denoising with kernel prediction networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 2502–2510, 2018.
[2] Matias Tassano, Julie Delon, and Thomas Veit. Fastdvdnet: Towards real-time deep video denoising without flow estimation. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 1354–1363, 2020.
-The End-
关于我“门”
▼
将门是一家以专注于发掘、加速及投资技术驱动型创业公司的新型创投机构,旗下涵盖将门创新服务、将门-TechBeat技术社区(TechBeat)以及将门创投基金。
将门成立于2015年底,创始团队由微软创投在中国的创始团队原班人马构建而成,曾为微软优选和深度孵化了126家创新的技术型创业公司。
如果您是技术领域的初创企业,不仅想获得投资,还希望获得一系列持续性、有价值的投后服务,欢迎发送或者推荐项目给我“门”:
bp@thejiangmen.com