APP下载

基于灰度变换及改进Retinex 的低照度图像增强

2023-03-05游达章陶加涛张业鹏张敏

红外技术 2023年2期
关键词:图像增强照度亮度

游达章,陶加涛,张业鹏,张敏

(1.湖北工业大学 机械工程学院,湖北 武汉 430068;2.湖北省现代制造质量工程重点实验室,湖北 武汉 430068;3.湖北工业大学 工程技术学院,湖北 武汉 430068)

0 引言

随着电子产品的更新速度越来越快,人们所追求的图像像素越来越高,图像质量也越来越好,但由于光、雾等环境的影响,图像质量可能达不到期望效果。同时在工程应用中,因为图像重要信息量的丢失,会导致定位、识别的准确率不高的问题。为此需对图像进行处理。通过人工观察或计算机分析方法,减轻或消除图像的退化,或为某种目的改善图像[1-2]。

近年来,Retinex 理论方法凭借其图像增强效果显著,易于实现的特点,成为了国内外学者的研究热点[3]。Retinex 理论[4]由美国物理学家Edwin.H.Land在1997 年首次提出,经过几十年的发展,已经从单尺度(single-scale retinex,SSR)发展到多尺度加权平均Retinex 算法(multi-scale retinex,MSR)、加入色彩恢复因子的MSRCR(multi-scale retinex with color restoration)算法以及一些派生算法和各种算法结合的方法等等。Shao等[4]提出拉基于融合增强的MSR 方法,将MSR 结果和低光级图像通过像素灰度值相关权重机械能融合,图像的光晕被明显抑制,但图像存在着边缘模糊、退化的问题;牟琦等[5]对Retinex 进行了改进,通过引导滤波和高频提升来增强图像的细节,用低秩分解去除噪声,较好地提升了图像质量,但图像侧影处理的效果不佳;许凤麟等[6]提出了彩色加权引导滤波-Retinex 算法,在提高图像对比度的同时对图像的边缘信息加强,避免了边缘信息缺失的问题,但图像的纹理细节不够清晰;Jong等[7]提出了基于非线性映射函数的Retinex 模型,估计亮度和重建亮度之间的关系用于重建色度通道,提高了对比度,消除了图像的晕影和色彩失真。

除了用关于光照算法去实现图像增强,还有很多学者致力于用灰度变换函数去改变图像的灰度值,以达到调整图像对比度与亮度、增强图像的目的。Gao等[8]提出了一种改进的灰度变换算法,在彩色图像增强的同时,以RGB 进行处理空间,很大程度上改善了颜色缺失,但图像细节不够清晰;Sun等[9]提出了低复杂度的自动对比度增强方法,利用高频分布估计强度加权矩阵,来控制高斯拟合曲线并塑造对比度增益分布;Verma等[10]提出使用粒子群优化(particle swarm optimization,PSO)算法来改进S 型函数,对函数进行参数优化,但由于函数参数与输入图像之间没有达到理想的一致性,导致输出图像对比度和亮度提升不够。

基于此,为了提高低照度图像的对比度和可视度,同时克服传统算法出现的色彩失真和模糊等问题,本文提出了一种基于灰度变换和改进的Retinex理论相结合的图像增强方法。首先采用引力搜索算法(gravitational search algorithm,GSA)优化的全局灰度变换函数对图像的RGB 各通道灰度图像进行灰度变换,提高图像R、G、B 各通道光照强度,使图像的光照场景更近似于真实场景。同时为了避免图像信息丢失严重,采用改进的Retinex 算法进行增强,使用改进的双边滤波和Gabor 滤波替换掉高斯低通滤波;最后通过伽马校正调节图像的亮度和色彩。

1 基于灰度变换和改进Retinex 算法的低照度图像增强方法

基于灰度变换和改进的Retinex 图像增强算法主要由两部分组成:①利用GSA 算法优化灰度变换函数对初始图像的RGB 三个单通道进行预处理;②采用改进的Retinex 算法对获得的灰度变换图像进行增强。其方法实现流程如图1 所示。

图1 基于灰度变换和改进后的Retinex 图像增强算法的实现过程Fig.1 Flow chart of image enhancement algorithm

1.1 基于GSA 优化的图像灰度变换

1.1.1 全局灰度变换函数

灰度变换[11]就是将原有图像的像素值,使用灰度变换函数获取新的像素值,并以此方法来提高图像的视觉效果,其通用公式如下所示:

式中:f(x,y)是输入图像;g(x,y)是处理后的图像;T是像素的变换函数。

常用的灰度变换函数有很多种,此次采用的全局灰度变换函数基础模型是美国学者Katirciolu F.提出的,它是基于相邻像素之间密度分布相似性来对每个像素进行变换[12]。它能够对灰度图像进行有效增强,很好地保持原始图像的细节特征,同时也能防止图像在后面的图像增强环节出现图像模糊和退化的问题。但该方法还没有在彩色图像上应用。常规的彩色图像一般是RGB 图像,它由R、G、B 三个单通道图像组成,而单通道图像也属于灰度图像的一种,故全局灰度变换也可以在彩色图像上进行运用。

全局灰度变换函数是将像素数量最多的灰度值标记为Max,当向左像素接近0值,而向右像素接近255 值时,对比度增加。此外,对比度和亮度根据相邻像素间强度分布的相似程度正向增加。其变换函数如下:

式中:S(x,y)是(x,y)处像素与周围像素的相似度;GMax是图像中像素数量最多的灰度值;ψ(x,y)表示在3×3像素区域的标准差值,其公式如(3)所示:

式中:m(x,y)为3×3 像素区域内的像素平均值。

为了确定3×3像素区域的像素相似度,通过3×3像素区域内像素之间的距离来建立关系矩阵。假设在3×3 区域内有两个像素k和l,两者距离公式如下:

然后用式(5)中的指数函数来计算两个像素的相似度,其值的分布范围从0 到1 不等,如果其值接近与0,则两个像素不相似,如果接近1,则被认为相似。

式中:D为归一化系数,可以通过赋值32、64、128、255 对得到的结果进行分级。将得到的3×3 区域内的9 个像素之间相似度来创建一个9×9 的相似度关系矩阵,如式(6)所示。然后根据式(7)计算3×3 像素区域的相似值。最后通过像素区域平移,直到计算完图像右下角最后一个像素的相似度为止。

在等式(2)中,还有a、b、c、k四个参数值未定,因此采用启发式算法GSA 对其进行寻优,得到最优值。

1.1.2 GSA 算法

引力搜索算法是一种受自然启发的概念框架,其根源在于引力运动学,引力运动学是物理学的一个分支,可模拟在重力影响下移动的质量运动[13]。在GSA中,一组对象在牛顿引力和运动定律下相互作用。物体的性能是用质量来衡量的。所有这些物体通过重力相互吸引,而这种力会导致所有物体向质量较重的物体整体运动。对象的位置对应于问题的解决方案。每次迭代都会更新对象的位置,并存储最佳适应度及其对应的对象。较重的质量比较轻的质量移动得慢。该算法在指定的迭代次数后终止,之后最佳适应度成为特定问题的全局适应度,相应对象的位置成为该问题的全局解决方案。

1.1.3 基于GSA 的灰度变换函数参数优化

输入图像后,将RGB 三通道图像分离成3 个单通道的灰度图像,然后根据公式(2)(3),先确定每个灰度图像中像素数量最多的灰度值Max 和3×3 区域的标准差值,它们在GSA 搜索过程中不会改变。初始化GSA 优化算法的种群数与最大迭代次数,然后按照流程图2 进行搜索,对每次迭代搜索形成的a、b、c、k值,代入式(2)中,得到灰度变换函数,然后代入适应度函数中,评估其合理性。若满足停止迭代标准。则得到最优解,代入式(2),得到灰度变换函数,若没有达到,则重新进行迭代搜索更新,直至满足标准。最后将得到的3 幅经过灰度变换后的图像合成彩色图像。

图2 基于灰度变换函数和GSA 的图像处理流程Fig.2 GSA-based gray-scale transformation image enhancement flowchart

评价函数如式(8)所示,结合图像的熵值、边缘强度总和以及边缘数3 种性能度量来评价灰度变换后的图像质量。

式中:H(I(x))表示图像的熵值;nedge(I(x))表示图像中边缘像素的个数;E(I(x))表示图像的边缘;M和N是图像的尺寸大小。

1.2 基于改进的Retinex 的图像增强

1.2.1 改进的双边滤波

在图像处理中,双边滤波能够在保持图像边缘信息的同时有效消除图像上的噪音,进而改善图像的平滑质量[14]。其公式分别如下:

式中:c(ξ,x)用来计算中心像素点x与其附近点ξ之间的像素距离;s(f(ξ),f(x))用来计算中心像素点x与其附近点ξ之间的相似度;σd和σr为高斯函数的标准差。

但双边滤波也存在着对噪声图像、边缘梯度信息无法准确估计的问题。本文提出了一种基于范围的自适应双边滤波器,将s(ξ,x)替换为s(ξ,x,ζ),其公式如下:

式中:α和k是两个正参数;Ωy是以像素点x为中心的(2N+1)×(2N+1)窗口像素集,本文设置参数N为2;Mean(Ωy)表示窗口像素集中的像素平均值。ρ是一个常数,它控制局部邻域的大小。

式(12)中,sr中有3 个控制变量:线性常数系数α,k和比例因子σr。在这3 个参数中,α起确保中心像素x及其相邻像素ξ的亮度相似性的作用,当像素位于目标区域时,的值将会变小,线性参数α需设置了一个较大的常数,以确保sr足够大。参数k是一个小的恒定常数,确保中心像素x内的亮度相似性。σr控制邻域像素x的大小。

改进的双边滤波是在原双边滤波的值域核函数中增加了自适应函数,确保了灰度信息的权值sr(ξ,x,ζ)大小,让双边滤波的空间域和值域都起到了作用,使图像更好地保留图像边缘信息,并且对图像噪声具有较好的鲁棒性。

1.2.2 Gabor 滤波

Gabor 滤波器是一种用于边缘提取的线性滤波器,非常适合纹理的表达与分离[15]。它既可以提供信号的局部信息以及信号的整体信息,也可以在图像增强时,保留纹理细节。此外,由于Gabor 滤波器利用了窗口滤波器功能,它具有更好的高斯滤波的优点,克服了纹理细节丢失的缺点。其滤波器函数如下:

式中:σx和σy是高斯包络常数,即高斯函数扩散因子,这是数学上的标准偏差。f是滤波器的频率参数。

1.2.3 改进的Retinex 算法

Retinex 理论指出,观察者所看见的物体的图像S是由入射光L在物体表面上反射得出的,反射率R由物体自身确定,不被入射光L改变,如图3 所示。

图3 Retinex 理论中图像的构成Fig.3 Retinex theory composition

Retinex 理论经过学者大量的研究与扩充,形成了各种算法模型[16]。它们一般使用高斯低通滤波器作为滤波函数计算光照分量,由于没有在边界保留特征,造成图像边界细节不清晰,甚至形成晕影。

基于此,提出了改进的Retinex 理论来进行图像增强,用改进的双边滤波器和Gabor 滤波器替换掉Retinex 算法中的高斯滤波,将它们作为Retinex 算法中卷积环绕函数。将它们分别与输入的图像进行卷积运算,从而得到反射分量,然后将两反射分量进行加权融合。融合后的图像,不仅保持了图像的平滑度,达到了降噪、保边效果,还使其图像纹理细节得到了更好的保留。其图像增强流程如图4 所示,将经过灰度变换的图像从RGB 空间转换为HSV 空间,然后用改进的双边滤波与Gabor 滤波分别对V 分量图像进行估计,得到两份反射图像,将两份反射图像进行加权融合得到的V 分量,H、S 分量不变,最后将融合的图像由HSV 空间转到RGB 空间,再进行Gamma校正,输出增强后的图像。

图4 基于改进Retinex 的图像增强流程Fig.4 Improved Retinex algorithm flow chart

1.2.4 增强图像加权融合

通过两个环绕函数卷积得到两幅增强图像,并将两幅图像的R、G、B 灰度值进行融合,得到一幅细节增强和边缘保持效果更好的增强图像。其融合公式如(15)所示:

式中:Ri(x,y)是融合图像的R、G、B 的值;R1i(x,y)、R2i(x,y)分别是基于双边滤波和Gabor 滤波的MSR 算法增强图像的R、G、B 的值;m是权重系数,满足0≤m≤1。经过多次实验,取m值,得到视觉效果最佳的融合图像。

为了验证改进的Retinex 算法的有效性,对一组低照度图像采用传统的MSR 算法和改进的MSR 算法进行对比,结果如图5 所示。从图5 可以看到,传统的MSR 算法会造成图像出现失真、色偏问题。而所提算法的增强效果更加明显,在亮度、对比度以及细节增强上表现更好。

图5 Retinex 算法改进前后对比Fig.5 Comparison before and after the improvement of the Retinex algorithm

2 实验结果与分析

为了验证所提算法的可行性和实用性,实验在Matlab 2018a、Windows7、CPUi7-4710、内存8 G 的测试平台上运行。先从Exclusively Dark 图像数据集中选取3 张图片作为实验对象,该数据集涵盖了从极弱环境到微光环境下的弱光图像,选取的3 张低照度图像分别是户外低光照图像A、室内低光照图像B 和路灯下低光照图像C。然后用视觉相机下拍摄的自然低光照图像,去定位图像中空心玻璃瓶的瓶口圆心。实验会将本文算法与双边滤波单尺度 Retinex(bilateral single-scale Retinex,BSSR)算法、文献[4]算法和基于HSV 空间的单尺度Retinex 算法(V-SSR)进行主观、客观对比。同时从工程应用方面,进行圆心定位对比实验。其各算法的参数值如表1 所示。

表1 各算法参数Table 1 Parameters of each algorithm

2.1 基于GSA 的灰度变换函数参数优化性能验证

此次灰度变换函数参数采用GSA 算法进行优化,为了验证GSA 算法的性能,同时也采用粒子群优化算法[17]与差分优化(differential evolution,DE)算法[18]对灰度变换函数参数进行优化。以图像A 为例,利用3 种优化算法分别对图像A 的R、G、B 三个单通道图像的灰度变换进行参数寻优,通过适应度值大小来比较优化算法的性能。设置迭代次数为15次,种群数为15。其结果如图6 所示。

从图6 可以看出,3 种算法的最后效果都趋于收敛,但相比于PSO 与DE,GSA 算法得到的灰度变换函数适应度值最高,图像的灰度变换函数参数优化效果更好。

图6 图像A 各分量适应度收敛图Fige.6 Convergence diagram of fitness of each component of image A

图7 展示的是图像A 灰度变换前后的图像及其灰度直方图,经过比较可知,原图像的RGB 灰度直方图分布趋于左边,表示图像中偏低暗区域的像素值较多,导致图像亮度、对比度较低。经过灰度变换后,图像的像素值向高亮区域偏移,使像素值数增加到接近255,灰度值变化得到改善。同时结合主观效果,表明了图像的亮度与对比度得到了提高,证明了全局灰度变换函数对低照度彩色图像的有一定的亮度与对比度提升效果,能够改善图像的视觉效果。

图7 灰度变换前后图像及其灰度直方图对比Fig.7 Grayscale histogram of each image

2.2 图像主观评价

图8、9、10 中图像包括了室内、外3 种不同光照和环境条件下的低照度彩色图像,对比可知,各种算法处理后的图像相比原图均有一定程度的增强效果。其中基于双边滤波的Retinex 算法对低照度图像处理后,虽然有效地保留了图像边缘信息,但图像存在着局部色彩失真,导致图像颜色显示不够自然,如图10(b)的天空颜色,同时3 张图像的亮度和对比度提升不够,导致图像整体还是偏暗。文献[4]算法对图像的提升效果比BSSR 算法好,但是放大图像中的噪声,如图8(c)中椅子上的白色噪声,图9(c)中墙上左边图框和图10(c)中的路灯。而V-SSR 算法,虽然细节上被进一步增强,对比度和亮度均有提高,但增强效果不够。而本文算法,不仅很好地提升了图像的亮度与对比度,同时也保留了图像的细节信息,色彩得到了丰富,整体呈现效果比较自然,噪声也较少,很好地实现了图像增强。

图8 不同算法对图像A 的增强对比图Fig.8 Enhanced comparison of image A by different algorithms

图10 不同算法对图像C 的增强对比图Fig.10 Enhanced comparison of image C by different algorithms

同时根据图8、9、10 中图像采用不同方法增强前、后的直方图可知,采用BSSR、文献[4]和V-SSR增强后的图像,其直方图中像素值整体偏向左边,也就是低暗度区域,同时偏暗部分的像素值数量偏多,偏高亮度区域的像素值数量很少,图像还是偏暗,其增强效果不显著。而本文算法增强后的图像,3 幅图像的灰度直方图分布比较均匀,低暗区域、中间区域和高亮区域的像素值均衡分布,且向中间区域集中,图像的质量更好,更加符合人眼的视觉特性。

图11 展示的是有无全局灰度变换函数预先处理,然后经过改进Retinex方法处理后的图像。对比可知,没有经过全局灰度变换的图像都出现了图像模糊、退化的问题,如图11(a)图像中树叶、相框。而经过全局灰度变换函数预先处理的图像色彩更加丰富,细节更加清晰,其人眼主观感受更贴近自然。

图11 有无灰度变换预处理的改进Retinex 方法处理对比Fig.11 Comparison of the improved Retinex method with and without grayscale transformation preprocessing

2.3 图像客观评价

主观评价主要以人为目光为主,易受到外界的影响,为了客观评价该文算法的可行性,采用图像信息熵(information entropy,IE)、平均梯度(mean gradient,MG)[19]和峰值信噪比(peak signal-to-noise ratio,PSNR)进行客观评价。信息熵是从信息论的角度反映图像信息丰富性。其图像信息熵越大,信息越丰富,质量越好;平均梯度代表了图像中微小细节的对比度变动率,或图像在多维方位上的密度变动率,也代表了图像的相对清晰度。通常,评价梯度越大,图像分层越多,越清晰;峰值信噪比反映了待评估图像和原始图像之间的失真程度。PSNR 值越大,图像之间的畸变程度越小,图像品质也越好。

采用3 个评价指标评价图8、9、10、11 中的图像,结果如表2 所示。Ours1 表示无灰度函数预先处理而直接采用改进Retinex 的方法,Ours 表示经过灰度变换和改进Retinex 的方法。通过比较,可以发现所提方法增强后的图像在IE、MG 以及PSNR 上明显高于其他算法和原图像,说明所提出算法结果的图像效果更好。而相比没有经过灰度变换的改进Retinex方法(Ours1),在客观评价上几乎都低于有预先灰度处理的本文算法。

表2 图像A、B、C 客观质量评价Table 2 Objective quality evaluation of images A,B and C

再结合主观视觉效果,可以表明有灰度函数预先处理的图像,然后采用改进的Retinex 算法处理后的图像,其图像信息量更丰富,图像细节更清晰,去噪和抗失真性更好,对图像质量有很大的提升。

2.4 图像定位

为了验证算法的实用性,从工程应用的角度,我们从视觉机器人上的视觉相机拍摄了一张自然低光照图像,在视觉相机下方放置了一个空心玻璃瓶。在Matlab 中对图像进行目标区域截取、图像二值化及阈值计算、质心点计算等操作对玻璃瓶瓶口进行圆心定位[20]。通过图12 可以看出,相比于其他方法得到的增强图像,所提算法的增强图像亮度和对比度得到了明显的提高,目标截取区域中瓶口的特征更加明显,其二值化的区域,通过阈值去除瓶口外的其余二值化值,得到的图像瓶口二值化效果更好。通过质心计算,从黄色定位点可知,该文算法的增强图像瓶口圆心定位更加准确。

图12 原图和各算法处理后图像的玻璃瓶瓶口圆心定位比较Fig.12 Comparison of the positioning of the center of the glass bottle mouth

3 结论

在弱光照条件下拍摄的图像,因光、雾等环境的影响,导致图像部重要信息丢失。该文通过基于灰度变换和改进Retinex 理论方法,采用引力搜索算法优化的灰度变换函数在图像的灰度值层面进行处理,通过两组实验对比,结果显示图像的亮度、对比度进行一定改善,说明全局灰度变换函数在低照度彩色图像上有一定的图像改善效果,能防止图像在后面的图像增强环节出现能图像模糊和退化的问题。然后采用改进的Retinex 算法对图像进行增强处理。通过与不同方法的对比,该文方法处理的低照度图像,主观上图像信息量更丰富,细节保留的较多,失真小,亮度及对比度都有提高。客观上,3 种客观指标均高于其他方法,其图像信息熵提升了1.1~1.25倍,平均梯度提高了2~4.3倍,峰值信噪比相比于其他方法提高了1.1~2.3 倍。同时在工程应用方面,对低照度图像的识别定位准确率有一定的提高。虽然该文方法对低照度图像有明显改善,但是,在增强低照度图像的同时,对原图像中亮度较亮的部位出现了过度增强,下一步将会对图像增强的自适应做进一步研究。

猜你喜欢

图像增强照度亮度
图像增强技术在超跨声叶栅纹影试验中的应用
水下视觉SLAM图像增强研究
虚拟内窥镜图像增强膝关节镜手术导航系统
恒照度智慧教室光环境
亮度调色多面手
基于图像增强的无人机侦察图像去雾方法
体育建筑照明设计中垂直照度问题的研究
亮度一样吗?
基于斩波调制的LED亮度控制
人生的亮度