本系列主要介绍图像信号处理器 (ISP, image signal processor) 中各核心算法模块的设计以及相关的前沿研究,以典型的相机成像系统为基础,涉及的内容包括各类缺陷校正,去马赛克,去噪,3A算法(自动对焦,自动曝光,自动白平衡),超分,HDR,风格迁移等主题。
随着新媒体时代到来,信息通过文字、图像、视频等媒介的便捷传播成为时代快速发展的标志;图像作为信息传递的媒介之一,其表达内容与文字相比更加丰富,同时可作为视频处理的基本单元,有着承前启后的积极作用。图像信号处理 (Image Signal Processing, ISP) 作为数码相机、智能手机、安防监控、直播会议、自动驾驶等领域的底层组成单元,加速了新媒体时代的时代进程。本文主要对于ISP流水线中的Gamma校正模块进行简要介绍。
Gamma矫正原理
Gamma校正最初起源于对于阴极射线管(CathodeRay Tub,CRT)的工作原理示意图如图1所示[1]。其分为计算系统和光栅扫描两部分,其中计算系统中包含主机及连接的三个子模块,即帧缓存、视频信号生成器和查找表,将视频信号V输出至光栅扫描装置,视频信号按颜色通道分为VR、VG、VB;光栅扫描装置由偏转、几何图像、聚合、电源电路、荧光屏、视频信号放大器等部分组成。

图1 CRT电子枪工作原理图(译制)
Gamma矫正实现原理

实际应用中,对于图片的校正则是基于图像增强的校正,主要于RGB彩色空间进行校正,校正公式如下所示[2]。
其中, x与y分别为输入、输出图像的灰度值,esp为补偿系数,γ即Gamma系数。
Gamma变换可以根据不同取值选择性地增强低灰度区域的对比度或是高灰度区域的对比度。γ是图像校正中重要参数,其取值决定了输入图像和输出图像之间的灰度映射方式,即在增强低灰度区域(图像中的较暗处)与增强高灰度区域(图像中的较亮处)进行选择,示意图如图2所示[2]
2 Gamma变换示意图
具体而言,γ>1时,图像的高灰度区域对比度得到增强。
γ<1,图像的低灰度区域对比度得到增强。
γ=1时,这一灰度变换是恒等的,即不改变原图像,示意图如图3所示。图中3.a,图3.b,图3.c中γ取值分别为0.5、1、1.5,可以看出不同的γ取值对于图像的亮度的变换以及对于图像亮部与暗部的影响,当γ = 1 时,图像未有改变。
图3 不同Gamma变换示意图
实验中采用常见配置γ = 0.45,Gamma校正的变换公式如下所示,其中in、out分别为输入、输出图像的像素值,n、m分别表示输入、输出图像的bit位宽,根据n=m=8时拟定如图4所示的分段曲线,通过一次函数分段线性的方式对于幂函数进行近似。
4 Gamma校正分段映射曲线拟合
若更改图像的bit深度或改变Gamma取值,则需要重新根据数据的输入输出取值重新进行分段映射,根据需要设定γ的大小和输入输出的bit位宽需要,可改变数据取值范围,如0~255(8位)、0~1023(10位)、0~4095(12位),即确定式中变量in、n,m的取值(范围),并计算out的结果,拟合in与out间的函数关系,并根据曲线选定合适的分段点、拟合合适分段线性曲线,对于幂函数进行近似,分段线性函数拟合完成后,可主观根据其趋势线与原函数的吻合程度和客观评价指标R2的结果进行定性、定量评价拟合的精确性,其中R2称为可决系数,其大小接近1的程度,表征曲线对原函数的拟合的精确性。
Gamma矫正实验结果

实验测试结果如图5所示,其中图5.a为输入图像,图5.b为输出图像。经过Gamma校正后的图像主观质量得到明显提升,图像亮度符合人眼视觉特性。
图5 实验输入输出结果对比
参考文献:

[1] Roy S. Berns, Richardo J. Motta and Mark E. Gorzynski. CRTColorimetry. Part 1:Theory and Practice[J]. 1993,18(5):299-314.
[2] 张铮, 王艳平, 薛桂香. 数字图像处理与机器视觉:Visual C++与Matlab实现[M]. 人民邮电出版社, 2010.
关注我们
实验室网站:http://viplab.fudan.edu.cn/
OpenASIC官方网站:www.openasic.org
知乎专栏:http://zhuanlan.zhihu.com/viplab
微信公众号:OpenASIC
继续阅读
阅读原文