本文来自微信公众号:深入浅出图形学(ID:gh_62c9d15e7e33),作者:dex dcc,原文标题:《深入浅出计算摄影:从iPhone 12 Pro Max的发布谈Google Pixel系列的兴衰》,头图来自:视觉中国
iPhone 12 Pro Max的最新相机已经相继被大家评测了,所谓计算摄影(computational photography)也逐渐完美。但其实这个领域的领跑者并不是苹果,而是一个非常小众的系列:Pixel——它出生在庞然大物 Google 的门下,却知者甚少。
本文的主要目的是深入介绍手机端计算摄影带来的变革和它的发展阶段,内容上会从Pixel发展史入手,通过浅显易懂讲故事的方式阐述其中的各个环节。
今年苹果全新发布的iPhone 12 Pro Max大幅更新了相机硬件大47%的感光元件,2轴Sensor Shift防抖(IBIS), LiDAR深度sensor……
iPhone 12 PM的镜头和传感器
之外,iPhone 12 大幅更新了 DeepFusion算法,终于在大部分日常用例下几乎追平了谷歌Pixel。
当然这种目前世界最先进的“计算摄影”绝对不是简单把很多照片加权平均这么简单,那么具体是什么样呢?
广义来说任何使用算法来处理画面的摄影手段都算。例如苹果的Smart HDR,抑或是各大手机的全景拍摄功能,甚至包含滤镜类的后期“艺术加工”。本文主要关注前者,即“增强画质”,也即是Levoy重新定义的计算摄影概念 (这点在学术界也被肯定了,顺便送了他这顶大帽子)。
2016 Google Pixel / XL
继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+的产品化。
2017 Google Pixel 2 / XL
过了一年时,Pixel 2顶着皇冠问世。这一代,谷歌为了深度测算,抛弃了画质更好的IMX378,而换上了拥有双像素的IMX362 。这颗CMOS和IMX378同年,画质参数稍逊,但是多了一个双像素PDAF(相位自动对焦的改进版,在2016年算是高端,但会进一步降低画质)。双像素是什么意思呢,就是说每个像素一分为二从左半镜头和右半镜头看出去的影像是有区别的,一般单反上被用来快速自动对焦,而Pixel团队除了对焦以外还把它用来计算深度图像;深度测算这个问题,当时其它家手机厂商还只能通过多摄像头来计算,而且简单CV的双摄立体(stereo)深度计算问题很多,相比之下Pixel2的深度却十分清晰干净。
于是靠着老掉牙的PDAF技术的Pixel 2竟然挖掘出新鲜的单摄景深玩法,属实震惊。同时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 Levoy
Pixel 3的第一个炸弹是Night Sight(夜间模式)。IMX363原本的夜间采光能力用孱弱形容也是毫不夸张。当时其它厂商的夜间模式基本都是长曝光+高ISO+更强的CMOS硬件,苹果更是出于众所周知的保守策略,连超长时间曝光的功能都没加,夜拍能力约等于0。Pixel 3发布会这张对比图(下图)基本上可以用震惊来形容,同时让大部分人觉得绝对是噱头,等着谷歌打脸。
Pixel 3 著名的手持-夜间模式对比图:iphone xs的效果昏暗而且噪音非常多,细节模糊,而pixel3几乎很好地将原始颜色和细节拍摄出来,整个画面干净明亮。大家一脸质疑地进来,捧着一碗碗“真香”出去
这个新型夜间模式的发明不仅解决了困扰业界多年的手持不能拍暗光的难题,还把手机影像的上限极大提高了。只要通过叠加更多的照片,理论上可以无限接近于单个像素的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不受影响。
有无SuperRes Zoom的比较
有意思的是,我拿iPhone12 pm做了测试,今年的iphone上,苹果终于也悄悄实现了类似的功能,集成在DeepFusion运算中,效果不如SuperRes Zoom,而且毕竟是谷歌先做出的,苹果完全没有为此打广告。
iPhone 12 pm 12倍混合变焦和2.5倍光学变焦的区别 ,ProRAW模式下比较明显。
SuperRes Zoom里面为了进一步增加分辨率,还绕过了去马赛克demosaic阶段。
什么是demosaic呢?
手机里面相机的CMOS实际是由一系列感光点阵组成的,每个点都能感知光源的强度,为了感知色彩就需要RGB三种颜色的传感器,他们通常如下图的方式排布。(这种排布方式叫贝尔图案)
所以当手机收到如上图CMOS发来的信号时,得到的分辨率是8x8,但是由于每个像素需要三种颜色通过一些列插值算法才能合成完整的色彩,所以实际有效分辨率大约需要除以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的机器学习深度推算
Pixel 3 XL景深对比iPhone (非LiDAR模式)
2019 Google Pixel 4 / XL / a
这是目前为止谷歌最后一次在计算摄影上带来变革。Pixel 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 Live 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://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://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
本文来自微信公众号:深入浅出图形学(ID:gh_62c9d15e7e33),作者:dex dcc