【相机知识详解】3/10 手机中的算法——别被手机厂家忽悠了
一、多张合成
目前多数手机在打开相机后,就会开始持续快速拍照并写入内存。当按下快门键后,选取按下快门前的几张以及按下快门后的几张进行合成。按下快门后的照片可根据实际场景进行曝光调整。多张照片对齐后,可以进行HDR合成和提升画质。
HDR原理:HDR,High Dynamic Range,高动态范围。当遇到明暗差距很大的场景时,手机的CIS面积小,仅依靠普通的单次曝光无法提供足够的动态范围,即要么高光过曝,要么暗部难以看清。因此拍摄多张照片,一部分提高曝光使照片的暗部可以看清,另一部分压低曝光使照片亮部可以看清,该过程称为包围曝光。将这样的照片叠加,即可得到暗部亮部均清晰的照片,从而变相提高动态范围。手机的夜景模式,就是一种较为暴力的HDR合成。


画质提升原理:多次采样取平均值,减少散粒噪声等随机噪声(详情见后续文章)的影响。一般叠加n张可以使等效ISO变为原先的1/n^0.5 。

仍以1/1.7大小传感器手机为例,在理想状况下大概只要叠加444张就可以赶上全画幅的单张照片了。以目前来看,菊厂的“ISO 409600”采用的就是这一方式,将按下快门后曝光1/2秒的照片与按下快门前的照片叠加,最后合成的亮度等效于ISO 102400曝光1/2s的照片,然后说它是409600。事实上在看过前文的【原生ISO】后,就会了解极高的ISO对拍照并没有太大意义,但对降噪的算法有不小的考验。

在上一篇文章中提到,像素多合一,将小像素合并为大像素,即提升单个像素的尺寸并不能提高暗光下的画质。但在实际使用手机时会发现,在环境较暗时,高像素模式的画质确实不如低像素模式,这是为什么呢?
原因就是,在低像素模式下,数据的压力较小,手机的处理器可以将远远多于高像素下拍摄的张数的照片进行合成。例如,4800w像素时,可能只能利用三张进行合成,而1200w像素则可能利用10张。这样,暗光下图片的画质就更优了。也就是说,像素多合一的意义是在充分利用CIS面积的前提下减少计算压力。

二、背景虚化
近年的手机除了极少数有2档可变光圈外,其余的光圈均不可变。在某些手机中见到的“大光圈”模式,实质上是通过算法估计景深和对焦距离来虚化。在拍摄时,可通过对图像内容分析、对相位对焦(详情见后续文章)的数据分析,或通过TOF镜头获取距离信息来进行模拟。瑕疵不可避免,软件并不能与硬件大光圈相匹敌。但随着算法的不断提升,发朋友圈足够了。
三、像素插值
目前绝大多数手机的镜头均为定焦镜头,只有少数老手机或非量产机型会有连续的光学变焦。在手机变焦时,本质为数码裁切。其利用的传感器的面积与像素会减少,需要进行像素插值来小幅提升画质。目前手机的像素插值基本没有仅仅简单使用传统的插值方法如双立方插值法的,多数都会利用AI对图像进行分析学习后再结合超分辨率算法(例如后续提到的像素摇摇乐)下的多张合成来插值。

四、插帧
常用的方法有帧混合法和光流法。
光流法在应对画面变化不大的场景时效果几乎没有破绽,它通过对比关键帧及关键帧前后的画面变化来算出相应的帧的画面,但在面对高速运动或旋转的物体时会出现魔幻的场景:

帧混合法则是改变前后两帧的权重,例如在AB两帧间插入3帧,则该三帧为3/4A+1/4B、1/2A+1/2B、1/4A+3/4B。 SONY、Samsung、华为以外的960帧采用光流法插帧;华为的7680帧采用帧混合法由1920帧的视频插帧而成。
拍摄的视频在升格后如果帧数不足,通常会采用光流法。

目录:

我不是专门学这个的,这些知识都是我在购买相机前,以及个人兴趣从网上的文章中学的,结合自己的理解写的这一系列的文章。或因为原文章本身有误,或因为我的记忆或理解出现差错,不能保证文章的内容都是正确的。如果文章中有错误,可以在评论区指出或私信与我讨论。
传送门:
CV9340341 基础篇(下)