本文介绍改进INDANE算法的低照度图像增强改进算法(AINDANE算法),《Adaptive and integrated neighborhood-dependent approach for nonlinear enhancement of color images》
概述
改进算法同样采用亮度提升和对比度增强两个独立模块分别处理。
1、通过使用非线性传递函数实现的亮度提升。
2、图像通过对比度增强进行处理
算法过程
1、RGB图像Irgb转为灰度图像Y,并归一化为Yn
Y(x,y)=25576.245∗Ir(x,y)+19.685∗Ig(x,y)+29.071∗Ib(x,y)
Yn(x,y)=255Y(x,y)
2、亮度调节:根据下式进行非线性转换,同样是一个非线性gamma映射曲线
Yn′=2(Yn(0.75z+0.25)+(1−Yn)∗0.4∗(1−z)+Yn(2−z))
其中,改进项是z受图像统计数据影响对不同照度图像有不同处理。
z=⎩⎨⎧0,forL<=50100L−50,for50<L<=1501,forL>150
式中的 L 表示灰度图像Y的累计直方图到1%像素总数时的灰阶值,如果Y很亮,90%的像素值都大于150,则Z=1,则Yn′=Yn,相当不处理,优化了正常照度过度提亮的问题。
3、对比度增强:接着对灰度图像Y进行不同尺度的高斯核函数卷积运算,得到模糊图像Y′,卷积公式如下:
Y′(x,y)=Y(x,y)∗G(x,y)
高斯卷积核G(x,y)如下:
G(x,y)=K∗e(c2−(x2+y2))
其中,K函数
∬K∗e(c2−(x2+y2))dxdy=1
其中,c是高斯函数尺度;
4、通过高斯模糊考虑领域信息,根据下式得到增强系数R,中心像素的亮度可以根据R(x,y)是否大于或小于1(由较亮像素或较暗像素包围)而增加或减少。
R(x,y)=255∗Yn′(x,y)r(x,y)
其中,r(x,y)表示如下
r(x,y)=[Y(x,y)Y′(x,y)]p
其中,改进项是引入参数p 改善图像对比度,p受图像标准差影响对数据有不同处理,p计算如下:
p=⎩⎨⎧3,forσ<=3727−2σ,for3<σ<=71,forσ>7
其中,σ表示全局图像均方差(global standard deviation)。当全局均方差小于3时表示图像对比度很差,此时P取大值。
5、为了获得最佳的图像增强效果,使用不同尺度的多个卷积结果进行对比度增强。最终的输出是基于多个尺度的对比度增强结果的线性组合
R(x,y)=i∑wiRi(x,y)
尺度选择5, 20 and 240,权重为取均值
6、RGB三通道等比例恢复
Rj(x,y)=R(x,y)∗I((x,y)Ij((x,y)∗λ
其中,j表示rgb三通道分量,Rj是增强图像。λ表示色调调节因子,通常取1也可,输出的彩色图像可以通过色彩饱和度和白平衡调整进一步细化。
效果对比

图、测试图像1、INDANE处理效果、AINDANE处理效果

图、测试图像2、INDANE处理效果、AINDANE处理效果

图、测试图像3、INDANE处理效果、AINDANE处理效果

图、测试图像4、INDANE处理效果、AINDANE处理效果
算法总结
相较INDANE算法,主要改进点在步骤2、4统计图像数据对亮度调节和对比度增强两个模块进行分别优化,达到算法应用普适化的效果,即对正常照度对比度好的图像微处理。
全局对比度增强算法根据一个阈值,使高于阈值的像素更亮,低于阈值的像素更暗,扩展图像动态范围。这种方法不考虑像素邻域的信息,没有提高局部邻域像素之间的差异性。当中心像素比邻域像素平均值大时,我们增大当前像素值,反之减小。这样,图像的的对比度和细节都能得到有效的提升,同时图像的动态范围也有得到有效的压缩。
觉得本文对您有一点帮助,欢迎讨论、点赞、收藏,您的支持激励我多多创作。