编者按:本文来自微信公众号“机器之心”(ID:almosthuman2014),选自arXiv,作者:Andrey Ignatov等,机器之心编译,参与:一鸣、张倩,36氪经授权发布。
为什么手机拍照能越来越接近单反?除了精密的光学元件外,其内置的 ISP(图像信号处理系统)也是功不可没。传统的 ISP 由一堆软件组成,可以承担去噪、白平衡、颜色增强等多种功能。但由于硬件限制,这种处理器重建的照片往往会丢失很多细节。
近日,苏黎世联邦理工学院的研究者提出用一个深度学习模型替代传统 ISP,得到的图像可以媲美华为 P20,甚至接近单反相机处理的结果。这或许可以为这一问题提供一个新的研究方向。
本文提出的模型与华为 P20 ISP 和佳能 5D Mark IV 单反相机得到的图像结果对比。
移动端设备从本世纪初开始逐渐兴起,其拍照功能也是愈发完善。在 2010 年后,手机拍照迎来了技术发展的一次爆发。在这一过程中,智能手机强大的硬件为手机中内置的图像信号处理(ISP)系统提供了巨大支持。
遗憾的是,现在的移动手机 ISP 系统依然相当复杂。整个过程需要处理多个低层级和全局性的图像处理任务,包括图像去马赛克、白平衡和曝光矫正、降噪和锐化、色彩和伽马校正等。
ISP 一般流程。图源:https://www.eecs.yorku.ca/~mbrown/ICCV19_Tutorial_MSBrown.pdf
然而,硬件对于移动摄像头的限制依然存在:较小的传感器和紧凑的镜头使得图像失去很多细节、噪声很高,生成的色彩也很一般。
而经典的 ISP 系统依然无法完全解决这些问题。因此在优化的过程中,软件会尝试通过平滑化图像或采用「水彩效应」的方式隐藏问题——这些方法应用在很多现有的旗舰设备上。
图 2:当前的几种智能手机相机在图像处理问题上展现的缺陷。从左到右、从上到下分别为:卡通化模糊/水彩效应(小米 9、三星 Note10+),噪声(iPhone 11 Pro、谷歌 Pixel 4 XL),以及图像平滑化(一加 7 Pro、华为 Mate 30 Pro)。
在知乎关于 ISP 的一个问题讨论中,有用户表示,「坐等深度学习淘汰 ISP」。这种说法可能有些夸张,但苏黎世联邦理工学院的这篇论文的确在这个方向上迈进了一步。
在这篇论文中,研究者提出了一个名为 PyNET 的新算法,只需要一个卷积神经网络就可以学习到整个 ISP 的 pipeline。
论文链接:https://arxiv.org/pdf/2002.05509.pdf
研究者用训练好的 PyNET 将来自相机传感器的 RAW Bayer 数据转化为高质量 RGB 目标图像,本质上能够包含所有的细粒度图像修改步骤(如去噪、白平衡等)。
为了在真实数据上验证 PyNET 的有效性,研究者收集了 10000 个 RAW-RGB 高清图像对,其中,RAW 图像使用 Huawei P20 在室外拍摄而成(未经 ISP 处理),RGB 图像来自佳能 5D Mark IV 相机。
实验表明,利用 PyNET 得到的重建图像可以轻松达到华为 P20 ISP 的水平,甚至可以媲美佳能单反,在定量评估、用户评估和与其他手机的对比中都有出色的表现。
在关于这篇论文的讨论中,有人指出,虽然表现尚可,但智能手机的算力、实时性等因素会限制该模型在手机平台上的使用。
将 RAW 数据转换为 RGB 图像包含了对全局和局部图像数据进行修改两个部分。第一部分用来改变图像内容及其高级别属性,如亮度、白平衡或色彩渲染,而低层处理则用于纹理增强、锐化、去燥、去模糊等任务。
更重要的是,在全局和局部的图像改进之间应当存在交互。例如,内容理解对于纹理处理或局部色彩校正很重要。为了解决这个问题,研究者提出了新颖的 PyNET CNN 架构,可以在不同尺度上处理图像,并结合了学习到的局部和全局特征。
模型是一个倒金字塔结构,从五个不同的尺度处理图像。这一架构使用不同尺寸的卷积滤波器来并行处理特征(从 3x3 到 9x9),而输出的则是对应的卷积层。然后将这些特征图积累,使得网络能够在每个级别学习到更多样的特征。低层级的输出用转置卷积层进行上采样,然后和高层级的特征图堆栈,接着按顺序在以下卷积层中被处理。
在每个卷积计算后,模型使用 Leaky ReLU 激活函数,除了输出层。输出层使用的是 tanh 函数,用来将结果映射到 (-1, 1) 区间。实例归一化会在所有处理低层级特征的卷积层中(2-5 级)中使用。研究者同时还在模型顶部使用了一个转置卷积层,将图像提升到目标大小。
模型从最底层开始按顺序训练。当底层预训练后,在下一个层级也会采用同样的步骤,直到结束。由于每个更高层都会从模型的低层获得更高质量的信息,实际上它是在学习重建丢失的低层细节,并改进结果。需要注意的是,输入层都是一样的,大小为 224×224×4。
图 4:PyNET 架构概览。
为了了解 PyNET 模型的性能,研究者对其进行了定量评估、用户评估和泛化性测试,目的是比较 PyNet 与华为 P20 等移动设备内置 ISP 在重建图像质量方面的差异。
在开始比较之前,研究者首先训练了 PyNET,并对其生成的结果进行快速评估。用该模型得到的重建图像如下图 5 所示。
由上图可以发现,用 PyNET 重建得到的图像和华为 ISP 得到的图像质量非常接近,虽然二者在色彩和质地上都不如 Canon 5D DSLR。
接下来,研究者针对 PyNET 和其他深度学习方法进行了定量评估,其 PSNR(峰值信噪比)、MS-SSIM 得分如下。
由表 1 可以看出,PyNET 在两项指标上都高于其他深度学习模型。下图 6 更直观地显示出了这种差别。
第二项是用户评估,即让用户给生成的结果打分,其结果如下(得分越高越好):
表 2 显示,在用户评估实验中,用 PyNET 重建得到的图像得分略高于用华为 P20 ISP 得到的图像。
以上实验比较的对象都是华为 P20,那如果跟其他手机比结果如何呢?为了探究这个问题,研究者选择了黑莓的 KeyOne 手机进行测试。比较结果如下图所示。
从图中可以看出,PyNET 模型能够正确地重建图像、准确地恢复颜色,显示出许多在黑莓 ISP 获得的照片上不可见的颜色阴影。虽然用黑莓 ISP 得到的图像细节更为丰富,但是 PyNET 删除了原始照片上的大部分噪声,如图 8 所示。由于模型不是在黑莓的相机传感器模块数据上进行训练的,所以在曝光、锐化等方面表现欠佳。
本文为机器之心编译,转载请联系本公众号获得授权。