基于滑窗方差和形态学的多聚焦图像融合
2022-04-22罗回彬林梓鑫怀国威温焕锦
罗回彬,林梓鑫,怀国威,温焕锦
(1.北京理工大学珠海学院,珠海 519000;2.澳门科技大学资讯科技学院,澳门 999078)
0 引言
随着信息技术的发展和人们生活水平的提高,人们对图像数据的采集提出的要求与日俱增。目前市场上虽然已经有了各式各样能采集高质量图像的先进传感器设备,但每一种传感器设备都只针对一定的目标,其功能有一定的局限性,只能获取部分场景信息。例如,在日常摄影拍照中,当镜头聚焦于前景(近焦)时,其在前景目标图像比较清晰,但远景目标容易呈现模糊情况。由于上述缺陷,多聚焦图像中包含有不同的清晰区域和模糊区域。因此,在图像全聚焦采集过程中,需要采用图像融合技术,找出每个多聚焦源图像中的清晰区域进行融合。多聚焦图像融合技术将两张或两张以上的图像信息融合到一张图像上,可以克服单个传感器图像的局限性和差异性,其融合过程如图1所示。
图1 多聚焦图像融合
融合后的图像含有丰富准确的信息,便于人眼观察和机器检测。
1 相关研究
图像融合可以分为像素级、特征级和决策级融合。而本文主要研究的像素级多聚焦图像融合可以分为基于变换域和基于空间域融合算法。
1.1 基于变换域算法
近几十年来,常用的基于变换域的图像融合算法有基于金字塔变换、小波变换以及多尺度几何变换。其中基于多尺度几何变换融合算法深受研究人员的追捧,该融合方法主要包括曲波(curvelet)、轮廓波(contourlet)、非下采样轮廓波NSCT、剪切波(shearlet)和非下采样剪切波(NSST)等,其融合效果较好,但如果融合规则选择不当,其图像融合结果就容易造成锐度损失。
1.2 基于空间域算法
常用的基于空间域算法包括加权平均法和PCA方法等。加权平均法通过对多聚焦源图像的对应像素进行加权处理,其方法最简单,可是多聚焦源图像中的非聚焦区域也保存在融合图像中,其融合结果并不理想。同样,基于块或区域的多聚焦图像融合方法,如果不能很好的选取块,也容易造成块伪影。
此外,近年来随着人工智能的发展,研究人员也提出了一些基于深度学习的像素级图像融合算法,但是众所周知,深度学习的训练需要大量的经过标签的多聚焦图像数据集。
2 提出的融合算法
本文针对多聚焦图像,提出一种基于图像方差的逐像素投票的多聚焦图像融合方法。首先,计算像素点灰度值在其邻域内的方差,通过比较方差的差值来进行融合像素的选取。其次,通过形态学处理噪点,随后应用边缘检测算法进行边缘软化。最后,根据最终的决策图和融合规则进行生成融合图像。
2.1 图像滑窗法
图像滑窗法就是根据指定的单位长度的滑窗在图像水平和垂直方向进行平移,从而实现通过滑窗计算每个滑动单元框内的统计指标。本文中提出的图像滑窗法计算的指标是计算当前滑窗内所包含像素的方差值,然后对比两个不同聚焦图的同一位置的方差值。滑窗图像过程如图2所示。
图2 图像滑窗处理的过程
具体操作如下:
(1)计算滑窗方差。通过指定滑动窗口大小和滑动步长对图像进行滑动扫描,并计算滑动窗口内的像素的方差大小,如图3所示,本文中将源图像划分为像素大小为×(此处设置为3×3)的模块,并逐个比较所对应区域的灰度方差值。而图像的方差反应图像像素的灰度值变化,这与图像的清晰度有关,如公式(1)所示。当滑窗方差值较大时,则该滑窗中的像素差异变动较大,可初定选取方差数值较大的滑窗作为聚焦区域。
图3 滑窗方差的计算
(2)计算像素在源图像的选取次数。对同一滑块区域的像素的方差相减,方差较大者,记这些像素选取该图的次数加1,如图4所示,假设图A方差值为VarA,图B方差值为VarB,若VarA-VarB大于零,便记录当前滑窗内应选取图A对应像素作为融合的次数加1,而当VarAVarB小于零,便记录当前滑窗内应选取图B对应像素作为融合的次数加1。
图4 每个像素在源图像的选取次数计算过程
(3)融合像素的判定。通过比较每个像素在图A和图B相应选取次数,进行最终融合像素选定的判定。假设某像素的图A选取次数为Fu⁃seA,某像素的图B选取次数为FuseB,若FuseA-FuseB的绝对值大于阈值,则将选取次数多的图片的像素作为融合像素,如图5所示,若阈值设定为2,则第一个像素点选择图B作为融合像素点,第三个像素点选择图A作为融合像素点,第四个像素点暂不做选择。同理,当完成整个图像的滑窗后,每个像素都有其对应的选取图A与图B的次数,当选取图A次数与选取图B次数之差大于或小于指定阈值时,就指定该点像素选取其对应的图的像素。
图5 融合像素的判定过程
(4)采用欧式距离的判定方法。假设某像素的源图像选取次数差值未大于阈值的,设置该点为某一指定大小区域的中心点,对比融合图与源图像的欧式距离。对比该区域中融合图与图A、融合图与图B的欧式距离,选取距离较小者作为融合像素。当某一指定区域大小为3×3时,那么选取次数相减图中数字1的位置作为中心点,选定一个3×3区域,计算图A和融合图、图B和融合图对应位置的欧式距离分别为distA和distB。图6中distA=8.94,distB=6.93,说明图B和融合图在该位置的欧式距离更小,所以红色框内应选取图B的像素作为融合像素。
图6 采用欧式距离的判定过程
2.2 形态学的应用
形态学方法的基础是集合论,形态学通常用于二值图像的边界提取、骨架提取、孔洞填充、角点提取等,其基本算法包括膨胀、侵蚀、开运算和闭运算。其中形态学中的闭运算过程是首先膨胀图像,然后使用相同的结构元素对图像执行腐蚀操作。而本文中多聚焦图像融合方法的一个关键环节是在同一场景中的多聚焦图像中寻找更清晰的像素。上一小节中阐述了滑窗图像算法是通过比较滑窗内像素的方差值大小,进而选取清晰的像素,但图像还是粗糙的,存在一定的噪声,如图7(b)所示的白色孔洞和黑色斑点。因此,我们可以使用形态学运算来去除这些噪声,具体实现过程及效果如图7所示,我们首先使用skimage库中的re⁃move_small_holes和remove_small_objects函数来将初次融合图中颗粒状的噪声消除,然后再使用形态学闭运算。
图7 图像形态处理
2.3 边缘处理
当图像完成融合时,融合图像的聚焦和非聚焦边缘部分往往因像素相差过大而导致融合图片并不柔和,因此本文将形态学处理过后的图像进行Canny算法的边缘检测,并进行边缘加权软化,以增强图像柔和性。如图8所示。
图8 边缘处理
3 实验结果
在本节中,为了验证我们提出的融合方法的有效性,我们使用多聚焦图像集进行相关的定性和定量实验。实验数据集如图9所示,我们采用“lytro”数据集的五组多焦图像(lytro-02、lytro-08、lytro-12、lytro-13和lytro-18)进行融合,实验环境为python-IDE。为了有效地验证我们提出的算法,我们综合比较了基于变换域DWTDE、GD、MSVD、基于空间域BGSC和基于深度学习ECNN的融合算法。通常,我们可以通过人眼的视觉观察直接、快速地了解到多聚焦图像融合算法的效果,其不同融合算法的图像融合结果如图10所示。从图10可以看出,BGSC算法的融合结果较差,其融合图像的右侧海面部分存在颗粒状模糊,GD算法的融合结果的颜色也发生了扭曲。
图9 用于融合的五组“lytro”多聚焦真实环境源图像
图10 不同融合算法的图像融合结果
但由于人类视觉的主观性,人眼判断其存在一定程度的误差,为了更客观地评价融合后的图像的好坏,目前常用的客观评价指标主要有标准差(SD)、平均梯度(AG)、互信息(MI)、空间频率(SF),值得注意的是以上评价指标值越大,表示图像融合后的质量效果越好。不同算法的结果如表1所示。
表1 不同算法的融合评价指标结果
续表1
在表1中,为了便于观察,我们将最好的客观指标标记为加粗。可以看出,在五组图像数据集中累计20个指标结果,本文提出的融合算法的量化指标共累计有11个最优,此外在lytro-02数据集中,在4个评价指标中,虽然GD算法有3个指标最优,而本文提出的方法1个指标最优,3个指标次优,但是在图10中人眼可见其融合结果颜色发生了扭曲。因此,显而易见,本文提出的融合算法在定性和定量评价方面都有较好的效果,且该方法的稳定性高。
4 结语
本文提出的多聚焦图像融合算法,采用图像滑窗的方法进行滑窗方差大小的比较,实现每个像素的源图像选取,很好地改进了传统基于空间域融合算法准确性低的问题。通过欧式距离判定也优化了相似滑窗方差的像素无法判定的问题。我们运用形态学对初步融合的图像进行去噪处理,可以较好的实现了图像融合效果。我们还对图像进行边缘加权软化,可以更好地满足人眼的视觉需求。实验结果表明,我们提出的融合算法能够简单有效的进行图像的快速融合,且融合结果的稳定性较好。