code:https://github.com/aiff22/PyNET

手机拍照的流行,复杂的相机ISP方案的需要更多的努力以提升成像效果。作者在本文中证实:简简单单无需任何关于传感器和光学信息的端到端深度学习模块即可替代大多主流ISP方案。作者提出一种新颖的金字塔CNN架构(PyNet)用于细粒度图像复原,它可以隐含的完成所有ISP过程(比如图像去马赛克、图像去噪、白平衡、颜色与对比度矫正、对摩尔纹等)。该模型可以直接将传感器采集的RAW数据转为到RGB空间,效果媲美高端数码相机,同时不依赖于手机ISP信息。为验证所提方法在真实数据上的有效性,作者收集了1W全分辨率RAW-RGB图像对(采用华为P20相机采集,以及佳能5D单反)。实验表明:所提方法可以轻易达到P20的ISP处理效果。

Datasets

 

深度学习替代手机ISP可行吗?_深度学习

上图给出了作者所构建的RAW-RGB数据样例。由于所采集的数据集可能并非完美对齐,作者首先进行对齐(SIFT+RANSAC),然后进行裁剪(448x448),仅仅裁剪相似度在0.9以上的图像块。最终得到48043对RAW-RGB数据,其中46.8K用于训练,1.2K用于测试。

Method

 

深度学习替代手机ISP可行吗?_深度学习_02

上图给出了作者所设计的金字塔CNN架构PyNet,它包含5个尺度的特征。在训练过程中,作者采用逐级训练方式,先训练最底层,然后训练次一层级特征,直到期望分辨率输出为止,合计训练6次。

不同于其他已有方法采用特定的损失函数,该文逐级采用不同的损失函数:

  • Level4-5: 作者认为该部分特征主要目的在于全局颜色、亮度与对比度矫正,所以选用了MSE损失;

  • Level2-3: 作者认为该部分特征主要目的在于全局内容复原(颜色和形状信息),所以作者采用了感知损失(VGG)与MSE损失(4:1);

  • Level1: 作者认为该尺度为原始图像尺度空间,主要用于局部图像矫正(纹理增强、噪声移除、局部颜色处理等),因此采用了SSIM、感知损失以及MSE损失(0.75:1:0.05)。

Experiments

作者采用tensorflow框架进行模型训练与测试,硬件平台为Nvidia Tesla V00GPU,优化器选用Adam,学习旅为5e-5。在上述GPU下,该网络处理2944x3958图像大约耗时3.8s。
作者通过实验对如下三个问题进行了答复:

  • 相比其他image2image网络架构,所提架构的处理效果如何?如下图所示,作者所设计的网络结构具有更好的视觉效果。

深度学习替代手机ISP可行吗?_深度学习_03
  • 所提方案能否泛化到其他手机传感器?如下图所示,作者所设计方案可以泛化到黑莓K1手机且具有良好的视觉效果,如果在K1数据上进行训练应当可以得到更好的效果。

深度学习替代手机ISP可行吗?_深度学习_04

Conclusion

该文主要贡献包含以下几点:

  • 一个端端到的用于解决RAW2RGB的深度学习解决方案;

  • 一种新颖的金字塔CNN架构用于全局与局部图像复原任务;

  • 一个包含1W数量的RAW-RGB数据集;

  • 充分而完备的实验对比分析。

尽管该文取得极好的处理效果,但从实际应用来看,用深度学习替代手机ISP还是不太可行,归根结底还是手机芯片的算力约束。GPU都需要3.8s,而手机拍照需要实时或接近实习,超过1s无疑是无法满足实际应用需求的。不过该文提供了一个很好模型设计和训练思路,还是值得花点时间研究以下。