首发:旷视研究院
作者:梁钢
导语
智能手机、智能相机已经成为我们记录生活,留住美好瞬间的重要工具。但是每次在暗光环境中按下快门后,你是否担心照片满是像素点、“鬼影”重重、一片模糊?不过,你又是否发现,如今的手机夜拍已经做到即使暗光拍摄都能清晰可见。
其实,图像质量的变高,都离不开对相机ISP参数的调试,本期“技术的真相”将带你揭秘让夜拍越来越精彩的神奇技术背后的实现细节。
图像质量的主要评估维度
图像质量评估维度的划分方法有很多,但为了从直观和简洁的维度上看,主要是包含了4种基础的维度以及1种其他的维度。四种基础的维度主要是a.亮度和动态范围 b.色彩还原 c.噪声 d.清晰度;1种其他维度主要是包含畸变,Flare,ghost等方面。影响图像4种基础维度的因素也有很多,例如:亮度和动态范围会受到镜头、传感器、ISP、HDR算法等等的影响,其中镜头的光圈大小、ISP的曝光目标设定、ISP后处理的提亮模块,HDR的第三方算法,传感器的感光灵敏度等等均会影响图像的最终亮度和动态范围。
亮度、动态范围、清晰度相关的对比样张
亮度、清晰度相关的对比样张
亮度、动态范围、色彩相关的对比样张
ISP的主要基本模块
下图是一个简化版的ISP Pip-line的设计方案,可以做一个简单的示例参考,在实际ISP设计的时候会更加复杂。
一般在White balance之前还有Optical Black Level Calibration 、 Linearity Calibration、Lens Shading Calibration;在Denoise方面也包含单帧的SFNR和多帧的MFNR;
在Tone Reproduction设计模块中也包含gamma,local tone mapping,global tone mapping等对于亮度和动态范围的处理模块;
在Tone reproduction之后,一般会增加一个更高等级的降噪模块和锐化模块提升画面的锐利程度,增加一个Color post process模块处理局部色调喜好度。
ISP对于图像质量的影响
在影响图像的基础维度方面,其中大部分都会受到ISP相关的影响,如果将ISP对于图像质量的影响按照4个维度拆解来看的话,主要有如下的这些模块:
ISP对于亮度、动态范围的影响
ISP对于画面亮度的影响:
自动曝光,gamma,lens shading correction,以及dynamic range post process模块等。
AE对于画面亮度的影响:
自动曝光隶属于3A算法中的AE算法,其核心思路是基于给定的目标亮度(AE Target),不断调整图像传感器的shutter和gain的数值,从而使得画面的亮度接近于目标亮度。影响画面的全局亮度以及信噪比水平。
GAMMA对于画面亮度的影响:
相机Gamma曲线的设计初衷是为了让相机输出的图片在显示器上显示是在一个线性空间上,从而满足人眼对于自然界的图像感受。
Camera本身输出是在一个线性空间,但是显示器的显示特性是一个类似于反gamma的响应曲线,因此必须利用ISP给相机加一个gamma曲线,才会让最终图像的显示效果处在一个线性空间。
所以ISP对于Gamma曲线做局部调整之后,最后会影响到画面的亮度以及对比度。
Dynamic range post process对于画面动态范围的影响:
Dynamic range post process模块里面包含的是一些关于画面亮度调整的通用处理方法,比较常见的是局部色调映射,全局色调映射等方式提升单帧图像的亮度和对比度的效果;
LSC 对于画面亮度的影响:
lens shading correction主要用于补偿画面边缘的亮度接近于画面中心的亮度,使得整个画面的亮度均匀性得到提升。
ISP对于色彩的影响
对于图像的色彩调整方面,基准的流程包括LSC,AWB,CCM,Color post process,这几个模块。
AWB 对于画面色彩的影响:
Auto white balance,将图像分成若若干个子区域,每个子区域都是一个小方格,然后判定子方格中的R/G,B/G值是否在预先标定好的中性色区域之内,在有效的区间内为有效值。
根据每个色温区间统计点的数目计算权重,判定色温属性,求AWB Gain,还原中性色颜色色调。
CCM 对于画面色彩的影响:
CCM主要是色彩空间的转化,从传感器的色彩空间转换为人眼所习惯的色彩空间。因此改变CCM矩阵(3*3矩阵)的值,是可以完成各种颜色的调整以及饱和度的调整,缺点是相关联的色块均会受到一定影响。
Color post process 对于画面色彩的影响:
Color post process模块主要是会出现在一些高级的ISP,这些模块可以针对于特定颜色做倾向性的补偿,例如在HSV空间对于特定的颜色做偏移,让本身属于淡蓝色的天空变成深蓝色,红色的肤色调整为淡黄色的肤色等等。
ISP对于噪声的影响
对于画面噪声的影响主要是一些去噪模块,比较常见的方式是多帧降噪(MFNR)和单帧降噪(SFNR)。
对于多帧降噪来说,核心思想就是利用多帧叠加的方式去除画面的随机噪声,提升画面的信噪比;
对于单帧降噪来说可以利用频域、空域进行噪声去除。各家ISP的去噪名称存在差别,使用的方式差不多,只是具体方法存在差别,所以这里就简单介绍下即可。
常见噪声种类:
常见的噪声包括亮度噪声和彩色噪声,亮度噪声和彩色噪声可以通过ISP或者第三方算法进行有效去除。横条纹和竖条纹噪声多是跟传感器的供电或者本身缺陷导致,目前ISP端没有特别好的有效去除手段。
SFNR & MFNR 对于噪声影响:
MFNR和SFNR在调优时,需要注意对于细节的保留。同时在优化MFNR时,也需要关注其中间的对齐,配准,鬼影检测等模块是否存在异常的问题。
AI降噪 对于噪声影响:
AI降噪是近年来比较热门的功能,主要是利用CNN模型对于噪声进行去除,可以有效的在进行细节保留的同时进行噪声去除。在调优过程中需要注意减弱ISP相关的降噪性能,以免造成细节的丢失。
ISP对于清晰度的影响
对于画面清晰度的影响,主要是包含Edge enhance,AF,AE模块等,有些高级ISP还会包含EIS模块。EIS可以有效的去除因为人为抖动而产生的画面模糊以及拖影效果。
Edge enhancement对于画面清晰度的影响:
Edge enhance模块也是我们俗称的锐化模块主要是对于原有的细节和边缘进行增强,从感官上增强了清晰度,但是实际上并没有增加细节;
AF对焦原理:
其对焦理论基础是伟大的高斯大帝;硬件基础是马达推动镜头移动完成相距改变;算法基础是利用算法判定出对焦框之内的对焦值,然后采用爬坡算法完成对焦。
AF对于画面清晰度的影响:AF主要是让镜头处在合价焦的位置,使得对焦的主体清晰。
AE对于画面清晰度的影响:AE对于清晰度的影响主要是在一些极感光场景,使得画面可以呈现更多细节和更低的噪声。
展望未来
ISP对于图像质量的影响无疑是巨大的,影响着图像维度的方方面面。新一代的ISP的发展趋势也是会围绕用户关注的图像领域不断升级加强,通过不断的增加算力的提升而提升其AI能力、算法能力。
AI的技术突破,给ISP发展带来了源源不断的动力,例如在清晰度提升方面,有NN降噪网络,超分网络,AI demosaic网络等。在色彩调整方面,目前也有AI AWB的方案,AI风格迁移的发展方向。
另外,AI在传统的基础CV算法方面也有很大的提升,例如在光流对齐、三维重建方面、图像检测都有很好的效果,这些都是可以和传统ISP相结合的点,从而提升ISP的图像处理能力。
下图是一些NN网络的示例图:
参考文献
《Digital photography》
《Learning to See in the Dark》
《Learning Deep Convolutional Networks for Demosaicing》
https://zhuanlan.zhihu.com/p/...
专栏文章推荐
欢迎关注旷视研究院极术社区专栏,定期更新最新旷视研究院成果
加入旷视:career@megvii.com