iPhone 12 Pro Mx 的最新相机已经相继被大家评测了,所谓计算摄影 (computational photography) 也逐渐完美。但其实这个领域的领跑者并不是苹果,而是一个非常小众的系列:Pixel 。它出生在庞然大物 Google 的门下,却知者甚少。本文的主要目的是深入介绍手机端计算摄影带来的变革和它的发展阶段,内容上会从 Pixel 发展史入手,通过浅显易懂讲故事的方式阐述其中的各个环节:今年苹果全新发布的 iPhone 12 Pro Max 大幅更新了相机硬件大 47% 的感光元件,2 轴 Sensor Shift 防抖 (IBIS), LiDAR 深度 sensor …之外,iPhone 12 大幅更新了 DeepFusion 算法,终于在大部分日常用例下几乎追平了谷歌 Pixel。当然这种目前世界最先进的「计算摄影」绝对不是简单把很多照片加权平均这么简单,那么具体是什么样呢?广义来说任何使用算法来处理画面的摄影手段都算。例如苹果的 Smart HDR,抑或是各大手机的全景拍摄功能,甚至包含滤镜类的后期「艺术加工」。本文主要关注前者,即「增强画质」,也即是 Levoy 重新定义的计算摄影概念(这点在学术界也被肯定了,顺便送了他这顶大帽子)。继 Nexus 和 Chrome Pixel 之后,2016 年谷歌在 MadeByGoogle 大会上公布了这两款手机。他们搭载的是当时先进的索尼的 IMX378 传感器,加上初试牛刀的计算摄影功能,Pixel 直接问鼎了 DxOMark(当年的 dxomark mobile 还算比较客观,如今的 DxO, 不评论)的头把交椅。不过那时候计算摄影初露头角它的效果还不是很突出大家没重视,理所当然的认为是 Pixel 硬件好,校准好,而且市场上还有很多觉得谷歌作弊的文章涌现。(可以比较的是,同期的小米 5s 用了相同的 IMX378 但是效果差非常多)除此之外,2016 那个良莠不齐的市场里,Pixel 除了相机之外还有着当时安卓阵营最流畅的体验(约等于苹果),控制得最好的电池消耗,Google Photos 无限存储以及亲儿子最新的 OTA,因此被各大媒体捧上了天。如此先进的技术后面是一个被硅谷评为大牛的传奇角色 Marc Levoy,他是开创计算摄影的教父级人物。他加入谷歌前,任职斯坦福大学计算机图形学教授,后面会讲到。第一代计算摄影处理的影像:HDR+,当其它厂商还完全依赖于传感器本身提供的 HDR(区域多分多重曝光 HDR)的时候,谷歌一骑绝尘带来了超好的噪音控制和动态范围。这里,Pixel 的核心技术 HDR + 的原理是用欠曝的 Burst shoot 来创建多重相片,进而合并出更高画质的图像。这个技术在手机上算是首创,但不是最先发明。最早这项技术是 NASA 的物理学家发明用在 NASA 的天体望远镜上。HDR + 原理:Burst Stacking 拼合。上图:ISO 25600 下,单长帧 vs 10 短帧拼合。概念上很简单,但要最大化挖掘硬件能力,在所有场景下高速,稳定的实现却非常之难。Marc 和他的团队在背后工作了 2 年多才完成 HDR + 的产品化。这一代,谷歌为了深度测算,抛弃了画质更好的 IMX378,而换上了拥有双像素的 IMX362 。这颗 CMOS 和 IMX378 同年,画质参数稍逊,但是多了一个双像素 PDAF(相位自动对焦的改进版,在 2016 年算是高端,但会进一步降低画质)。双像素是什么意思呢,就是说每个像素一分为二从左半镜头和右半镜头看出去的影像是有区别的,一般单反上被用来快速自动对焦,而 Pixel 团队除了对焦以外还把它用来计算深度图像;深度测算这个问题,当时其它家手机厂商还只能通过多摄像头来计算,而且简单 CV 的双摄立体(stereo)深度计算问题很多,相比之下 Pixel2 的深度却十分清晰干净。于是靠着老掉牙的 PDAF 技术的 Pixel2 竟然挖掘出新鲜的单摄景深玩法,属实震惊。同时 Pixel 2 为了提升其中繁杂的机器学习计算效率,手机中又内置一颗谷歌自研 VisualCore 芯片来加速神经网络。双像素 PDAF 的原理,每个像素一分为二,通过两者的相位差来界定对焦偏移。由于所有像素都能检测相位差,所以对焦速度快而且准。Pixel 2 的单镜头模拟景深效果,使用了上一代的 HDR+,机器学习和 DPPDAF 来识别前景(P2 上的机器学习只是辅助 blocking 作用)这一年,虽然相机硬件上落后对手一年多,Pixel 2 依然是 DxO 头榜。各大厂商这时幡然醒悟,开始奋起复制 Pixel 关于照片叠加的概念,这里面最积极的就是苹果,因为同在硅谷,用了一大堆昂贵硬件的 iPhone X 的相机却被「村里新来捡破烂的谷姓孩子」全面吊打。2018 Google Pixel 3 / XL / a时间快进到 2018,从这代开始,Pixel 换上了大家通常戏称的「祖传」IMX363 CMOS。同时,Pixel 第三代是计算摄影真正闪耀的一代。能绕过硬件本身的设计目的把其性能发挥到如此无以复加地步的仅 Pixel 一家。左:Issac Reynolds(Pixel 相机产品经理),右:Marc LevoyPixel 3 的第一个炸弹是 Night Sight(夜间模式)。IMX363 原本的夜间采光能力用孱弱形容也是毫不夸张。当时其它厂商的夜间模式基本都是长曝光 + 高 ISO + 更强的 CMOS 硬件,苹果更是出于众所周知的保守策略,连超长时间曝光的功能都没加,夜拍能力约等于 0。Pixel 3 发布会这张对比图(下图)基本上可以用震惊来形容,同时让大部分人觉得绝对是噱头,等着谷歌打脸。Pixel 3 著名的手持夜间模式对比图:iPhone XS 的效果昏暗而且噪音非常多,细节模糊,而 Pixel 3 几乎很好的将原始颜色和细节拍摄出来,整个画面干净明亮。大家一脸质疑的进来,捧着一碗碗「真香」出去这个新型夜间模式的发明不仅解决了困扰业界多年的手持不能拍暗光的难题,还把手机影像的上限极大提高了。只要通过叠加更多的照片,理论上可以无限接近于单个像素的 ground-truth。不过在实际处理当中,极暗情况下颜色的还原还是需要 AI 进行弥补。当然,新东西遭到的非议也很多:最多的来自于传统摄影师和一些数码小白粉。他们的核心论点是,这种照片照出来的不是真实的画面,相当于 PS,摄影不再纯粹。当然这个说法有一定事实基础,但是否更多是出于对新生事物的抗拒,咱们后文再说。Night Sight 的原理最初也是 NASA 的物理学家们发明的,但宇宙飞船稳定的取景的环境对比手机来说,这种算法的难度并不一样:Night Sight 也需要好几秒的曝光才能获得好的夜景,但是并不容易「糊」;玩过单反的朋友应该对暗光拍摄呼吸法有着很深的印象。ISO 暴力提高没有解决的这个问题最终被计算摄影解决了。
当然如上文说到,这项里面的细节其实远比想象的要复杂,最大问题就是要支持手持。有种猜测是谷歌也许是出于兼顾尽可能大的硬件范围或者提供一个安卓样板才这么做,真相不得而知,但无论怎样,事实就是谷歌基本上给自己选了一个地狱难度:比如拿上图的对齐来说,对齐图片并不难,但是要在低光下对齐就很难。噪音越多对齐越难。要么扩大计算范围,但速度太慢;减少范围?噪音太多。要找到适用于所有场景的算法真的很难。比如改善噪音的办法就是更长的曝光和更好的硬件。但是谷歌又偏偏故意没有选择旗舰 CMOS,而且为了手持,曝光时间还不能太长,基本上就相当于,夜间苹果华为能看到大概图片的时候,谷歌的相机硬件拼合时只能看到一堆噪音,这意味着需要更复杂的算法,更多的资源消耗。但同时又必须要兼顾处理速度,不能太长,这点时间里还要抽出一部分处理 AI 上色 …… 难度之大可想而知。苹果在次年的 iPhone 11 中终于实现了类似的办法,但是在碾压式硬件的加成下(无论是 cpu 还算相机),依然不能完全赢过 Pixel 3。足见 Night Sight 系统的强大。第二个炸弹是 Super-Res Zoom,超分辨率变焦。在这个模式下,手机会自动收集手部的生物颤抖所形成的偏移,补全出数字变焦后缺失的像素。更创新的是,如果使用三脚架,没有手部运动的情况下,Pixel 3 会自动让镜头的光学防抖组件进行规律的运动,以造成微小的偏移。
Pixel 3 相机会自动利用 OIS 防抖系统做不微小抖动所以 SuperRes Zoom 相当于玩了一把变废为宝,利用了劣势的手部抖动免费给变焦系统增加了一个 1.5x 的缩放功能。由于是数码变焦,不受光学组件的限制,所以在两个光学档位中间的缩放比例时,也能完美工作,而光学变焦并不能做到这一点。例如 1.8x 变焦时,苹果用的是 1x 的照片强行裁剪得到的,无法享受到 2x 光学变焦的好处,但是 Super Res Zoom 不受影响。有意思的是,我拿 iPhone12 pm 做了测试,今年的 iPhone 上,苹果终于也悄悄实现了类似的功能集成在 DeepFusion 运算中,效果不如 SuperRes Zoom,而且毕竟是谷歌先做出的,苹果完全没有为此打广告。iPhone 12 pm 12 倍混合变焦和 2.5 倍光学变焦的区别 ,ProRAW 模式下比较明显。SuperRes Zoom 里面为了进一步增加分辨率,还绕过了去马赛克 demosaic 阶段。
手机里面相机的 CMOS 实际是由一系列感光点阵组成的,每个点都能感知光源的强度,为了感知色彩就需要 RGB 三种颜色的传感器,他们通常如下图的方式排布。(这种排布方式叫贝尔图案)所以当手机收到如上图 CMOS 发来的信号时,得到的分辨率是 8×8,但是由于每个像素需要三种颜色通过一些列插值算法才能合成完整的色彩,所以实际有效分辨率大约需要除以 3(这个数字只是个比喻,通过算法可以改善)。这么一来,普通手机中看似 1200 万的像素分辨率就被硬生生砍成了 400 万。谷歌在实际实现 SuperRes Zoom 的过程中发现,自己手上有一堆照片可以用来合成,那么实际上算上偏移,每个感光点可以拥有两张以上的亮度信息,也就是说,每个点已经具有了最终的颜色(当然这只是一个简化的说法),那么就不用再 demosaic 了,400 万像素又还原成了 1200 万。其次是 Computational Raw 的提出。
这个模式也就是 Pixel 3 的 RAW 拍照模式。这个模式不是真正的 RAW,它实际上是经过了 Pixel 3 内部大部分计算摄影管线的处理。唯一省略掉的是上文提到的 SuperRes Zoom,由于第三方 App 并不能支持其中的 Demosaic 处理,所以只能以贝尔排列的分离通道方式存储。在 iPhone 12 Pro 和 Pro Max 上,即将发布的 iOS 14.3 会带来 ProRAW 格式的支持,这个格式跟之前的 RAW 不一样,它基本上就是这里说到的 Computational Raw。这种混合了所有软件增强的新型 RAW 输出,在当年就已经被称之为「单反最大的威胁」。时到如今 2020 年底,利用手机完成在线商用内容拍摄的工作室也越来越多,计算摄影的革命正在燎原。由此,ProRaw 的提出让 iPhone 12 Pro Max 终于在大部分算法和能力上追平了谷歌。Pixel 3 和 iPhone 12 pm 的 RAW 格式选项最后还有 Pixel 3 更新的景深算法。主要是得益于 AI 方面的进步,识别更加精准了。另外也加入了诸如散焦之类的参数。总之,单摄识别率当时基本上依然是世界第一,但没有打过配有 ToF 测距的手机。Pixel 3 XL 景深对比 iPhone(非 LiDAR 模式)2019 Google Pixel 4 / XL / aPixel 4 相机硬件上基本没有任何改进,除了增加了一枚 2x 人像镜头。不过软件上 Pixel 4 大幅提升了 SuperResZoom 的画质(Pixel 4 可以媲美很多厂商的 8x 光学变焦),以及带来了天文摄影 Astrophotography 的功能。天文摄影实际是一种极暗光线 + 天体运动补偿的的拍摄功能,在手机上实现起来极为困难,其中最重要的原因之一就在于上文提到的信噪比问题,再加上 Pixel 4 孱弱的感光硬件,谷歌基本上都是在比对手复杂得多的极稀疏的数据下做处理。为了表现一下这个功能的能力,我去年在几乎伸手不见五指的密林里做了一个测试:左:Pixel 4 XL 三脚架 60 秒,ISO 2077,f/1.8,每帧 4 秒,天文模式; 右:iPhone 11 Pro Max 三脚架 30 秒 (iOS 限制) ,ISO 8000, f/1.8,夜间模式。人眼实际感受:几乎什么都看不到,包括天空可以看到 Pixel 几乎在毫无光线的情况下很大程度上正确还原了细节和色彩,包括地面受到月光穿透树叶带来的些许绿色散射。比较符合白天看到的样子。Pixel 4 的另一特殊 feature 是实时预览 HDR 效果 (Live HDR),可以手动调节高光和暗影曝光值。由于 HDR + 的计算量很大,这个问题上谷歌其实是采用的机器学习来模拟 HDR + 最终效果。Pixel 4 发布以后,今年早些时候,Pixel 计算摄影的关键性人物 Marc Levoy 黯然离职 (现任 Adobe VP)。他没有透露具体离职原因,只是在问到是否还会深耕当前的工程时,他表示,堆叠照片的计算摄影方法已经臻于成熟,是时候寻找新的挑战了。I think it was time to declare victory and move on. There were diminishing returns among these table stakes of high dynamic range imaging and low light imaging, and it was time to look for a new frontier.
– Levoy
Levoy 和另外几个关键性人物的离开也加速了 Pixel 系列的衰退,紧随之后发布的 Pixel 5 直接乏善可陈,除开没有任何革命性的算法提出以外,硬件上也是不尽人意。在计算摄影走向大众之后 4 年,Pixel 相机的皇冠最终被苹果摘走,包括国外各大知名博主都纷纷表示了倒戈。第一代的计算摄影的革命到此接近末尾。未来是什么呢?其实硅谷早已指明了方向,那就是人工智能。在 AI 的支持下,更多不可思议的结果正在以以后春笋般的速度涌现。如果要较汁的话,暂时 Pixel 的算法依然有优势,只是差距越来越小最后回到之前提的一个问题,如此的计算摄影到底还是不是真正的摄影?首先抛开 AI 增强或者物体剔除之类的大改,就上文所说的叠加式计算摄影来看,肯定是算真正的摄影。为什么呢?因为摄影进入数字时代后就从来不再是接收光这么简单了,包括最老式的数码单反,要把 CCD 接收到的电信号形成最终的像素都是经过复杂的软件处理的,中间会丢掉大量信息,破坏大量信息,不同的算法之间质量差别也非常大。如果说这种处理能被接纳为真实的摄影,那么所谓 HDR + 一类的堆叠方式,完全没有质的区别,它们只是更加聪明的利用了原始数据,用了数学手段尽可能多的还原了真实信号,不存在软件层面的自动再创作。至于颜色上的调效,仁者见仁。未来,人眼会逐渐全面落后于机器视觉,这是几乎不争的事实,能不能接受也只是时间问题。PS. 上面说了 Pixel 很多好话,技术上很先进,但如果不是特殊需求不建议买 Pixel。具体为什么这里就不多说了。PPS. 本文未谈及视频处理,因为处理过程有所不同。附:写本文时用到的两只小白鼠,IBIS 机身防抖,超大 Sensor,LiDAR 测距,ProRaw,4K 杜比视界… 今年最全面最好用的手机相机机皇,非苹果莫属参考资料:
https://www.theverge.com/21427188/marc-levoy-interview-adobe-smartphone-computational-photography-vergecast
https://gizmodo.com/one-of-the-lead-engineers-behind-the-Pixel-camera-just-1844446969
https://ieeexplore.ieee.org/document/4407880
https://ai.googleblog.com/2018/10/see-better-and-further-with-super-res.html
https://ai.googleblog.com/2018/11/learning-to-predict-depth-on-Pixel-3.html
https://ai.googleblog.com/2020/08/live-hdr-and-dual-exposure-controls-on.html
https://ai.googleblog.com/2017/10/portrait-mode-on-Pixel-2-and-Pixel-2-xl.html
https://www.phonearena.com/news/Pixel-4-XL-Superzoom-test\_id120250
http://graphics.stanford.edu/~levoy/
https://en.wikipedia.org/wiki/Google\_Pixel
https://www.gsmarena.com/iPhone\_12\_pro\_Max\_video\_teardown\_shows\_what\_sensor\_shift\_image\_stabilization\_is\_all\_about-news-46365.php
https://c.mi.com/thread-904594-1-0.html
https://www.digitalcameraworld.com/reviews/google-Pixel-5-review
https://www.zhihu.com/question/264307309/answer/284940491
https://en.wikipedia.org/wiki/Apple\_A11
https://en.wikipedia.org/wiki/Exmor
http://news.eeworld.com.cn/mp/Icbank/a73747.jspx