刘永江,杨耿煌,董 建,刘 易
(天津职业技术师范大学自动化与电气工程学院,天津300222)
在现代光学成像系统中,可见光成像技术可以获取细节丰富、空间分辨率高的图像,但易受低照度、雾霾、雨雪等恶劣环境的影响[1]。利用红外成像技术测量物体向外辐射的热量,可将场景中红外波段的信息转换成人眼可见的红外图像,从而抵消无关信息特征干扰[2]。因此,红外成像技术现已广泛应用于军事及民用环境,常见于夜间军事行动、小区安防、工业测温等。现阶段,针对红外成像技术的研究主要集中在高动态范围压缩与细节增强方向。该方向能够解决如下问题:①工程上常用的红外探测器,如红外焦平面探测器,通常将采集的信息构建为14位16 384灰度级的图像,而人体视觉系统仅能识别8位256灰度级的图像[3],并且许多模拟和数字视频接口要求8位数据精度,在人机交互时存在技术障碍,因此将高位阶图像动态限制到低位阶尤为重要;②在动态图像压缩过程中存在细节丢失、噪声放大、梯度翻转等问题,需要对红外图像进行细节增强,并以此来保留信息特征,以防特征值失效。
针对红外图像灰度级集中分布在一小块区域,导致图像亮度较暗问题,文献[4]提出基于直方图均衡化(histogram equalization,HE)红外图像增强方法,有效提高红外图像对比度,然而此方法对红外图像弱小细节增强的效果不够明显,易出现局部过亮或过暗现象。针对红外图像压缩过程中图像细节丢失问题,文献[5-6]提出基于图像分层处理的增强方法,有效突出图像细节,但这样会给背景层引入噪声,时间复杂度较高。针对红外图像增强过程中引入噪声问题,本文提出了一种基于对比度限制直方图均衡(contrasted limited adaptive histogram equalization,CLAHE)的动态范围红外图像压缩及细节增强算法,以解决红外图像压缩过程中出现的光晕、细节丢失、噪声放大等问题。
为了突出红外图像背景层中的目标,本文用分层思想对红外图像进行处理。首先,利用导向滤波对深度为14 bit的红外图像进行处理,获得低空间频率层(low spatial frequency layer,LSFL);其次,将原始图像与低空间频率层对应像素相减生成高空间频率层(high spatial frequency layer,HSFL);最后,对压缩后的LSFL和锐化后的HSFL进行线性叠加,得到细节增强的8 bit图像,该算法框图如图1所示。
图1 基于CLAHE的红外图像动态压缩和细节增强算法框图
传统算法使用双边滤波器(bilateral filter,BF)[7]进行图像分层,但由于经过BF处理过的图像边界会出现梯度翻转、光晕等现象,本文使用导向滤波(guided filter,GF)进行分层处理。GF是一种保边平滑滤波器[8],其原理是利用引导图像与输入图像在局部特征上呈现的线性关系,采用最小二乘法,使输出图像逼近原图像,引入参照图像可以有效保持边缘,避免梯度翻转,降低时间复杂度。其计算式为
式中:qi为输出像素的值;Ii为参照像素的值;ak和bk均为当窗口中心位于k时,该线性函数的系数。
为实现输出与参照图像差异尽可能小,对系数(ak,bk)求解,转化成回归问题,利用最小二乘法解得差异最小的系数
式中:μk为图像Ii在窗口ωk中的平均值为待滤波图像P在窗口ωk中的均值;σk2为I在窗口ωk中的方差;ω为窗口ωk中像素的数量;∊为正则化系数。
当以待滤波图像作为导向图时,系数(ak,bk)可简化成为
由式(3)可知,导向滤波器作为保边平滑滤波器的原因在于:对于相对平滑的区域,窗口内的方差σk2远小于正则化系数∊,从而ak近似于0,bk近似于p¯k,相当于对平滑区域进行均值滤波;对于边缘区域,方差σk2远大于正则化系数∊,从而ak近似于1,bk近似于0,相当于在边缘区域保持原有梯度。导向滤波过程中重要的是滤波窗口的半径和正则化系数的设置,本文设置滤波窗口半径ω=4,ω=8;正则化系数∊=0.01,∊=0.04和∊=0.16,通过两两组合,一共6种排列,不同排列情况的滤波图像如图2所示。
图2 不同半径和正则化系数的导向滤波结果
从图2可知,随着滤波窗口和正则化系数的增大,滤波效果增强,大部分的背景和细节信息被滤除。为了保证后续的处理,本文选择窗口半径ω=8,正则化系数∊=0.04进行导向滤波处理。
14 bit红外图像经过导向滤波得到对比度较低的LSFL后,需要动态范围压缩,由于AHE算法[9]会过度提高对比度,导致出现局部噪声放大现象,本文使用CLAHE算法限制对比度提高程度,解决AHE算法出现的问题。对比度与像素点概率分布直方图成比例,在计算像素周边累积直方图函数(cumulative distribution function,CDF)前,预先设定阈值,将大于一定阈值的部分平均裁剪到直方图其他灰度级上,达到限制放大幅度效果,其主要步骤为:①将红外图像分成M×N个图像块,计算所有图像块的分辨率、微调水平和垂直像素尺寸,实现图像整除。②设定红外图像的灰度取值范围,建立映射表(look up table,LUT),映射范围为0~255,实现14 bit红外图像压缩到8 bit灰度级,并以此为基础,对每个图像块建立直方图。③对图像块直方图进行归一化处理,设定裁剪阈值,取值范围0~1,对每个图像块进行直方图裁剪。④对算法进行插值计算,加快计算速度,得到经过压缩的红外图像。
经过CLAHE算法后,14 bit红外图像转换为8 bit,灰度直方图如图3所示,CLAHE算法后以及均值滤波后红外图像如图4所示。
图3 红外图像直方图
图4 CLAHE算法后以及均值滤波后红外图像
为了避免高频成分对背景层的影响,对经过CLAHE压缩后得到的8 bit红外图像进行均值滤波处理[10],选取3×3模板,用中间像素点邻域内像素点算数平均值替换突变像素点,实现红外图像的增强。从图4可以看出,经过平滑滤波后的红外图像滤除掉了一些细节信息。
高空间频率层由原始红外图像和低空间频率层图像相减得到,像素值有正有负,需要进行去像素负值操作。并且拉普拉斯算子对噪声敏感,易出现过度放大噪声现象,因此在使用拉普拉斯算子锐化图像之前要进行噪声滤除。
中值滤波是一种基于统计理论的、利用排序算法的、能够有效消除噪声的非线性图像处理技术[11]。中值滤波常用于存在椒盐噪声的图像,本文中生成高空间频率层像素值有正有负,类似于椒盐噪声,因此先使用3×3窗口的中值滤波对高空间频率进行处理。
拉普拉斯算子属于边缘检测范畴,在工程应用中用来做空间锐化滤波器,可增强图像中灰度值突变区域的纹理细节,减弱灰度值变化缓慢的区域[12]。拉普拉斯算子为二阶微分线性算子,相对于一阶微分线性算子,二阶微分算子在处理图像纹理细节信息时边缘定位能力更强,锐化效果更好,其差分形式为
根据式(6),将拉普拉斯算子表示成掩膜版(filtermask,FM)的形式,由于拉普拉斯是各向同性滤波器,即图像旋转后,滤波效果不变,这就要求掩膜版是对称的。
使用拉普拉斯算子的掩膜版在经过中值滤波后的红外图像上逐行移动,用FM中的数值和图像中对应的像素相乘求和,赋值给与FM中心重合的像素点,对图像的第一和最后的行列无法进行卷积计算的像素值赋0,最终得到拉普拉斯锐化过的图像,原始高空间频率层和锐化滤波后的高空间频率层如图5所示。
图5 原始高空间频率层和锐化滤波后的高空间频率层
经过平滑处理的LSFL和锐化处理的HSFL需要进行合成,合成图像的灰度级应为0~255。对LSFL和HSFL分配权重进行线性融合,低空间频率层权重设置为k(0<k<1),则高空间频率层设置为1-k,表达式为
式中:Iout为合成图像;ILSFL为低空间频率层图像;IHSFL为高空间频率层图像。
低空间频率层和高空间频率层加权融合过程中,重要的是权重参数的设置,本文设置3组权重参数并进行融合图像观察,分别为k=0.2,k=0.5,k=0.8,3种不同权重的融合图像如图6所示。
图6 3种不同权重的融合图像
通过融合图像发现,随着低空间频率层权重的增加,融合图像中的信息越来越丰富,但是引入了大量的干扰信息,通过综合考量,本文选择权重参数k=0.5进行低空间频率层和高空间频率层的融合。
低空间频率层和高空间频率层在融合过程中会降低图像的亮度,本文使用Gamma变换对输入图像灰度值进行非线性亮度提高[13],使输出图像与输入图像灰度值呈指数关系,其公式为
式中:Vout为输出灰度级水平;Vin为输入灰度级水平,取值范围0~1,先进行归一化操作,再进行指数操作;A为常数,一般值为1。
Gamma变换通过非线性变换,将相机曝光或曝光不足的图像进行矫正,经过Gamma变换后输入和输出图像的灰度值如图7所示。
图7 Gamma分布密度函数图像
图7中,黑色曲线代表Gamma的值为1,即原图;当Gamma的值小于1时,图像中较亮的区域灰度被压缩,较暗的区域灰度被拉升,图像整体变亮;当Gamma的值大于1时,图像较亮的区域灰度被拉升,较暗的区域灰度被压缩,图像整体变暗。
根据Gamma变换的特性以及本文合成的红外图像对比度降低现象,设γ=0.2,γ=0.4,γ=0.6,γ=2.5,γ=5,实验结果如图8所示。
图8 Gamma变换图像
从图8可以看出,当Gamma的值小于1时,图像对比度明显提高;当Gamma的值大于1时,图像对比度下降。通过综合考量,本文选取Gamma值为0.6。
为了验证本文算法的有效性,使用Riad博士[14]公开的OTCBVS红外图像/视频数据集进行算法验证,使用Matlab R2018进行仿真,硬件环境为Windows 10,CPU为CORE i7,主频2.6 GHz,运行内存8 G。通过选取不同场景下的14 bit原始红外图像,与平台直方图均衡、基于小波变换的图像增强、基于双边滤波的图像增强方法进行对比,对比图像如图9所示。
图9 不同增强算法效果对比
从人眼主观角度评价不同算法的增强效果,经过PE[15]算法处理后的红外图像,图像对比度得到提高,但是图像中潜在的弱小细节增强不明显;基于小波变换算法处理后的红外图像,较原始图像改善效果不明显;基于双边滤波算法和本文算法处理后的红外图像,图像对比度都得到显著提高,但是本文算法得到的图像质量明显优于双边滤波,并且弱小细节得到有效突出。如场景1中门框上的条纹,道路两边的路灯清晰可见;场景2中路面的砖块,夜空的云彩显示效果明显好于双边滤波;场景3中马路上的广告牌、行人、车辆等轮廓明显。
为了定量评价算法增强效果,本文从标准差、平均梯度和信息熵3种指标对不同算法的增强效果进行客观评价,如表1所示。
表1 不同增强算法客观评价指标
从表1可以看出,本文算法在标准差、平均梯度、信息熵指标均取得最大值,证明本文算法可以有效改善红外图像的对比度并能突出弱小细节。
本文采用基于分层处理的图像增强算法,针对动态范围压缩及细节增强过程中存在的一系列问题,提出了一种基于CLAHE的动态范围红外图像压缩及细节增强算法。通过分层处理,对低空间频率层进行动态压缩,对高空间频率层进行锐化,有效解决了梯度翻转、细节丢失问题。通过主观和客观评价,对比其他增强算法,本算法可以有效突出红外图像中隐藏的细节,在动态范围压缩过程中有效增强了对比度、削弱了噪点,红外图像的质量得到有效改善。