Underexposed Photo Enhancement using Deep Illumination Estimation | CVPR 2019
工作
- 提出了一个通过估计出一个图像到光照的映射来对欠曝光图像进行增强,并在各种光照约束和先验的基础上设计新的损失函数
- 准备了一个新的数据集,含有3000张欠曝光的图像,每张图像都经过专业修复
- 对所提出的模型在现有的数据和新数据集上进行测试,显示出该方法在质量和处理数量上的优势
方法
图像增强模型
- 图像增强任务可以被认为是找到一个函数F使得输入待处理的图像得到目标图像,在最近的基于 Retinex (???) 的方法中,F的反函数被典型地定义为一个光照映射S,与目标图像进行点积得到原图像:
因此得到S,即可通过其反函数得到F,那么与现有的方法不同的是,作者将S设计为多通道的数据,而不是单通道,来提高其在颜色增强上的效果,尤其是兼顾了不同颜色通道间关联的非线性特点。通过引入作为中间量的光场(Illumination)图,作者训练网络来学习从图像到光照的映射,这样做的优势在于对于自然图像的光照场来讲,其在先验上有相对简洁的表现形式,因此网络可以有更强的泛化能力(???)并且可以有效的针对不同的光照条件实现复杂的摄影增强效果。模型也具有通过设定光照约束对增强效果进行定制化的能力,比如通过对光场进行局部平滑来增强对比度,或着设定偏好的曝光级别来约束光照强度。
网络结构
其中值得注意的是, 作者将特征的提取过程分解为全局和局部特征,并用于生成低分辨率的光场图,并采用基于 bilateral grid 的上采样来获得原始分辨率的预测结构,使得大部分的计算是在低分辨率的特征图上进行,提高处理效率。
损失设置
- 重建损失:使用L2范数,并规定:
下方的不等式约束是对光场数据的范围进行限制,使得在根据:
进行点积后生成的矩阵中的值上限为1,并且避免S存在大于1的情况,也就是取倒数后使得计算后已经欠曝光的区域更暗。 - 平滑损失:使用各个通道图像的梯度累加值:
特别的是,在计算各点梯度时,考虑到保持局部区域的平滑度,因此设置系数为:
使得损失值的权重在像素亮度变化较小的区域更大,在变化较大的区域则保持离散,基于作者的设想,图像中的欠曝光区域通常亮度变化较小,细节较弱,而大的图像梯度通常是因为场景中不一致的光照条件导致(比如逆光,物体边缘) - 色彩损失:计算合成图像与目标图像间像素RGB颜色向量的夹角,作者未采用L2距离的原因一是重建损失中已经潜在地利用了L2损失,二是L2损失只强调各分量差值的累计,而没有关注颜色向量的方向。并且该方法同样简洁并且快速。
- 对比实验显示各项损失所起到的作用:
训练数据
to be continued
测试结果
to be continued