【ISP】浅析AEC

   自动曝光控制(Auto Exposure Control)在ISP-Pipeline中通常简称AEC,也是现在主流相机系统中不可或缺的重要组成部分。自动曝光控制的好坏将直接反馈在相机的成像结果里,比如相机预览、拍摄的照片和视频。而相机系统中的曝光可以理解为被拍摄物体发出的光线,通过镜头投射到图像传感器(CCD/CMOS)上,形成原始图像的过程。所以自动曝光控制主要是直接从图像传感器输出的图像信号中获取亮度信息,对当前场景场景进行分析,从而调节感光度、光圈和快门等曝光参数,从而达到获取亮度适中的图像信号。对于自动曝光控制的过程可以抽象出图1所示的基本架构。
【ISP】浅析AEC_第1张图片

图1 自动曝光控制基本架构

   通常而言,自动曝光控制主要涉及亮度信息获取、目标亮度设置、亮度分析、曝光调节等几个步骤。转换成AE工程师常见的术语就是曝光统计、曝光测量、曝光收敛和曝光分解等几个部分。
【ISP】浅析AEC_第2张图片

图2 统计模块在raw域位置示意图

   曝光统计通常是在ISP-Pipeline的RAW域进行,一般是在完成AWB操作后,对图像数据进行亮度统计和直方图统计。如图2所示。在统计亮度信息时,需要将图像转到YUV颜色空间,从而获取图像亮度相关的Y分量,其转换公式如下。不过需要注意的是在RAW域中,R、G、B通道的数据关系是1:2:1的关系,若转换时不注意则会得到异常的亮度信息统计。此部分基本上都会固化到ISP芯片内,在芯片设计类公司从事AE算法工程师的人会接触到。当然,不论是做算法还是调试,都需要确认统计信息是否正常,这是整个AEC控制的基石。
Y = 0.299 R + 0.578 G + 0.114 B U = − 0.147 R − 0.289 G + 0.436 B V = 0.615 R − 0.515 G − 0.100 B Y = 0.299R + 0.578G + 0.114B\\ U = -0.147R - 0.289G + 0.436B\\ V = 0.615R - 0.515G - 0.100B Y=0.299R+0.578G+0.114BU=0.147R0.289G+0.436BV=0.615R0.515G0.100B

   曝光测量部分在整个自动曝光控制过程中占据了主要的篇幅,主要是根据统计的亮度信息,经过一些列的测量算法判断分析(包含帧亮度、亮暗区亮度、人脸亮度分析等),得到当前帧的曝光量和增益系数,从而判定图像亮度是否过曝或者欠曝,为后续曝光收敛和分解提供依据。
【ISP】浅析AEC_第3张图片

图3 分区加权平均测光示意图

   目前常见的测光方式包含中央重点平均测光、中央部分测光以及分区加权测光等等。其中中央重点平均测光通常会用于帧亮度测量,就个人经验而言,我认为帧亮度的测量是整个亮度调节的基础,不管是在调节暗区亮度还是亮区亮度的过程中,都会基于帧亮度进行调节。中央部分测光常见于人脸亮度测量、Touch框范围内的亮度测量等等。而分区加权测光如图3所示,将图像平均分成 M × N M\times N M×N个小区域,并在效果参数中配置匹配的分块权重,从而计算图像的亮度信息。其公式如下
L = ∑ i = 1 M ∑ j = 1 N l i j w i j M N L = \frac{\sum_{i=1}^M \sum_{j=1}^Nl_{ij}w_{ij}}{MN} L=MNi=1Mj=1Nlijwij

   此测量方法不仅能够用于帧亮度计算、还能根据相邻分区对比度判断图像的亮暗区分布,确定拍摄主体的背光区域和正面强光区域。这也是目前主流ISP设计厂商会采用的测光方式。
   曝光收敛部分则用于计算曝光收敛速度的快慢,使得图像画面能够平滑过渡,无明显闪烁感。
   曝光分解部分则是遵从一定的策略和约束条件,将曝光收敛调节后的当前帧曝光量和增益系数重新映射为sensor曝光时间、sensor增益以及ISP增益等设备控制参数。从而控制设备获取亮度适中的图像信号。
   可能有人会说前面不是提到了光圈嘛,为什么曝光分解部分没有光圈什么事。主要是因为手机、安防还有物联网系统中大多数都采用定光圈,即光圈大小固定。所以在AE算法策略中就剩下了快门优先和增益优先两种方式。其中快门优先会优先分配曝光时间、再分配sensor增益和ISP增益;增益优先则是优先分配sensor增益和ISP增益,再分配曝光时间,适合拍摄运动物体。不过若是装有可变光圈的镜头,就会涉及到光圈优先的概念,通常会优先将光圈调节到极限后,再分配曝光时间和增益。所以不论是AE算法工程师还是AE Tuning工程师,光圈、快门以及感光度都是必须要了解的内容。
【ISP】浅析AEC_第4张图片

图4 光圈、快门、感光度变化规律

   光圈(F)是指镜头中用于控制进光量的装置,其作用一是控制画面亮暗;二是控制画面的景深。光圈越大,进光量越大,画面越亮,所需要的曝光时间越短,感光度也可以设置得很低。这也是手机发布会宣传大光圈为优势的原因。光圈的数值其实是“分母”,数值越小,光圈越大,背景虚化程度越高。
【ISP】浅析AEC_第5张图片

图5 光圈示意图

   快门速度用于控制曝光时间,即拍照设备传感器接收光线的时长,其作用一方面是用于控制画面的亮暗程度,另一方面则是用于控制能否定格画面中的运动物体。快门速度越慢,曝光时间越长,接收光线越多,画面越亮。但是拍摄运动物体,曝光时间越长,越容易拍糊。
   感光度(ISO)用于衡量底片对于光的灵敏程度,数值越大,灵敏程度也就越高,画面也就越亮,伴随的噪声也会越大。通常而言,感光度与sensor增益和ISP增益之间存在一个转换关系,比如高通平台的感光度ISO与增益之间的转换关系为ISO=Sensor Gain * ISP Gain * 100。
   在了解了光圈、快门和感光度的变化规律之后,会发现AEC的核心就是通过亮度测量,在曝光时间和曝光增益中找到平衡的曝光参数,使得设备能够获取到噪声适中且无运动模糊的图像。因此曝光表的配置工作就显得尤为重要了,其配置的合理与否将会直接影响到图像质量,曝光表中不仅包含了曝光行等基础概念、也包含了快门优先还是增益优先等信息。所以配置曝光表也成了从事AE相关工作工程师的必修课。

参考文献及推荐文章:
   [1] 计算摄影学基础/张茂军等著.——北京:科学出版社,2014
   [2] 刘斯宁前辈的《Understanding Auto Exposure Control》
   [3] 《【摄影基础知识】感光度ISO介绍》
   [4] 《【摄影基础知识】什么是光圈》
   [5] 《【摄影基础知识】快门》

个人声明:
   以上内容,纯属个人观点,不喜勿喷。未经本人同意,不得私自转载。博客中出现的代码仅供学习参考,不得有其他用途。若文中存在纰漏,或读者有更好的建议,欢迎留言探讨。也可邮箱联系:yxyx_0212@163.com

你可能感兴趣的:(【ISP/Camera】,isp,AEC,自动曝光)