王 坤,周 熠,吴一鸣
(中国民航大学电子信息与自动化学院,天津 300300)
飞机蒙皮是飞机机身的重要组成部分,受损的飞机蒙皮会直接影响飞机的安全飞行[1]。对飞机蒙皮的正确检测,关系到飞机在飞行途中的安危。常用的飞机蒙皮检测方法有目视检测、涡流检测、渗透检测、超声波检测及红外检测等[2]。目视检测是最直接有效的检测方法,但无法对飞机蒙皮内部损伤进行有效判断;涡流检测的现场检测方便,对待检测材料表面无特别要求,但检测效率低、缺陷显示不直观;渗透检测主要针对表面开口的缺陷进行检测,设备简单、检测结果直观,但检测过程较长,对待检测材料的表面预处理要求高;超声波检测的检测范围宽,检测结果准确,但其探头有盲区,对待检测材料的表面要求高;红外检测的结果直观、检测面积大、速度快,但红外图像边缘信息模糊,需要进一步分割处理[3]。
阈值分割技术作为图像分割中重要的分割技术之一,拥有简单、快速、易实现的特点[4]。传统Shannon熵阈值分割算法不能针对红外图像进行有效分割。1988年物理学家Tsallis受到了多重分形的影响,在传统Shannon熵的基础上,提出了Tsallis熵的概念[5]。Tsallis熵的非广延性能有效处理图像中的非可加性信息[6]。针对红外图像的特点,提出结合二维Tsallis熵多阈值和差分进化算法(DE,differential evolution)的分割方法。
Tsallis熵又被称作非广延熵,是对Shannon熵的一种扩展[7]。Tsallis熵的形式表示为
其中:q为待定系数,描述其熵值的非广延性;pi为灰度概率。
令待处理的红外图像具有N个灰度级,每个灰度级的概率分布直方图表示为{p1,p2,…,pN}。取阈值 t将红外图像分割为目标和背景两部分,目标概率为,,背景概率为。根据式(1)得到目标和背景的Tsallis熵分别表示为
Tsallis熵的大小根据阈值t的取值而变化,背景和目标的总熵值为
寻求最佳阈值t变换为求解Sq(t)最大值的过程,即
传统一维Tsallis熵阈值分割易受到噪声的干扰,特别是对信噪比较低的红外图像。因此,利用二维Tsallis熵阈值分割法可减少噪声对分割结果的影响。
二维Tsallis熵阈值分割算法可利用图像中的灰度分布、梯度及纹理等信息[8],有较好的分割效果。
假设f(x,y)为待分割图像中坐标为(x,y)的灰度值,定义 g(x,y)是以(x,y)为中心 k × k 邻域内的平均灰度,k 为大于 1 的奇数,则 g(x,y)表示为
式中,g(x,y)为整数,(f(x,y),g(x,y))构成了二维阈值向量。根据目标像素和背景像素的概率值,得到目标和背景两类的Tsallis熵值分别为
综上所述,二维Tsallis熵为
计算最优阈值向量(s*,t*)使得式(8)有最大值,即
单阈值分割往往会出现欠分割或过分割现象。为了改善分割效果,提高分割的准确率,使用二维多阈值对图像进行分割。
阈值的增加不仅会增加红外图像的分割细节,也能够有效改善红外图像分割效果[9]。
令红外图像有 n-1 个阈值将其分为(s1,t1),(s2,t2),…,(sn-1,tn-1),其中,0 < s1< s2< … <sn-1< N,0 < t1<t2<…<tn-1<N。待处理的红外图像被n-1个阈值划分为 n 个区域,标记为{A1,A2,…,An},其中的任意一个区域Ak中的灰度级所对应的概率为
则Ak的Tsallis熵为
二维Tsallis的总熵值表示为
随着熵值个数的增加,红外图像的分割结果也越来越好,但多阈值分割会大大增加分割过程中的计算复杂度。为了提高算法的运算效率,提出结合二维Tsallis熵多阈值和DE算法的分割方法。
对于优化问题,差分进化算法利用迭代的方式进行寻优[10],定义一个个体数目为NP的种群,标记为Pt=为 NP种群中的任意一个优化解,D为优化问题中变量的个数。开始迭代过程前,首先在决策变量中产生一个随机的初始种群P0,初始种群的每个变量表示为
其中:i=1,2,…,NP;j=1,2,…,D;rand(0,1)为一个在(0,1)之间均匀分布的随机数;hj和lj分别为第j个决策变量的取值范围。
确定初始种群的个体后,差分进化算法采用变异算子对种群的个体逐个进行操作。对于每代更新的种群,目标个体在变异尺度F的进化下,生成新的种群进行迭代计算,即
其中,r1,r2,r3分别为种群中任意非i的整数,且两两不相等;F为尺度参数,可扩大解的大小范围,F∈(0,1)。
为了增加种群的潜在多样性,差分进化算法使用交叉操作来产生待选择解,实现基因的交换。其交叉操作表示为
其中:Cr为交叉率,是一个[0,1]之间的随机数,用来控制种群中个体到变异算子中复制的内容;jrand为j=1,2,…,D中的任意一个随机数,保证待选择的解中至少有一个值是根据变异算子来选择的,从而保证了变异过程的必要性。
交叉操作后,利用Tsallis熵值作为适应度函数,选择较好的个体进入下一代种群Pt+1,实现种群个体的更新。差分进化算法采用逐个选择的方法,描述为
差分进化算法针对种群中每个个体进行变异、交叉和选择操作,最后将最优种群返回到下一次差分进化算法的初始种群,直到系统满足迭代停止条件。
传统Tsallis熵算法无法根据区域的灰度大小来改变图像信息的权重,为了克服该缺点,提出改进的q值。根据区域灰度值的大小和阈值个数来确定q值,充分利用图像的信息,可表示为
其中:M为阈值个数;μi为第i个区域的平均灰度;μT为红外图像总的平均灰度。q值的大小随着灰度增加呈现倒“U”形,灰度越接近图像总灰度值的区域,权值越大。利用各区域q值的平均值计算适应度函数,即
针对Tsallis熵的阈值求解问题,使用差分进化算法作为寻优算法。阈值优化流程如下:根据初始阈值计算Tsallis熵值;在Tsallis熵的基础上,确定差分进化算法的尺度参数F,得到新阈值。最后,根据得到的最优阈值对飞机蒙皮损伤的红外图像进行分割处理。
根据差分进化算法的经典变异算子,利用自适应尺度参数的概念,不仅可避免进入局部最优,且可加快迭代过程。自适应尺度参数表示为
1)确定差分进化算法的初始值及阈值的个数,阈值选取4个;
2)根据初始阈值计算q值的大小;
3)计算阈值的Tsallis熵值;
4)对选取的阈值进行变异和交叉,最后根据适应度函数来选择最优阈值;
5)以最大迭代次数作为迭代停止条件,判断是否达到停止条件,若未达到,先计算尺度参数F,再返回当前阈值到步骤2),若达到,则返回当前阈值;
6)根据返回阈值进行分割处理。
算法流程如图1所示。
图1 基于DE算法的Tsallis熵阈值分割算法流程图Fig.1 Flow chart of Tsallis entropy threshold segmentation algorithm based on DE algorithm
实验拍摄的飞机蒙皮红外图像,分别为腐蚀、裂纹、积水及脱粘。基于Matlab 2013a仿真软件,运行环境为Intel Core i5-3230 2.60GHz CPU,4GB RAM。
图2为腐蚀损伤分割效果对比,两组原始红外图像是在不同温度下采集的。结果显示:随阈值的增加,腐蚀损伤分割的效果也越来越明显;分割结果的轮廓随着阈值的增加变得清晰,能直接判断损伤大小及损伤位置。
图3为裂纹损伤分割效果对比。结果显示:Tsallis熵阈值分割算法对裂纹损伤分割效果较好;二维双阈值分割能有效分割损伤区域;随阈值的增加,分割结果的边界变得清晰,图像细节部分也变得具体。
图4为积水损伤分割效果对比。结果显示:二维双阈值的分割出现过分割现象,但随阈值的增加,过分割现象消失;从分割的损伤区域内部可明显看到,改进算法比三阈值分割算法的分割结果更详细,不仅能突出外轮廓的细节,且能直接观察到损伤内部区域的灰度分布,能够为损伤的修复工作提供有效帮助。
图5为脱粘损伤分割效果对比。结果显示:两组图像在二维双阈分割算法的结果中均出现过分割现象;在二维三阈值算法的分割结果中,过分割现象并没有完全消失;改进算法的分割结果中未出现过分割现象,且能有效分割损伤区域。
综合腐蚀、裂纹、积水和脱粘损伤,结合二维Tsallis熵多阈值和DE算法的分割方法拥有较好的分割效果。
图3 裂纹损伤分割效果对比Fig.3 Comparison of crack damage segmentations
图4 积水损伤分割效果对比Fig.4 Comparison of water accumulation damages
图5 脱粘损伤分割效果对比Fig.5 Comparison of debonding damage segmentations
算法评价指标H的定义[11]为
其中:I为所有像素的集合;N0为红外图像背景的像素集合;N1为分割结果中背景部分像素点的集合;CIN0为红外图像的目标损伤像素集合;CIN1为分割后的目标损伤像素集合。
表1数据表明:改进算法相对二维二阈值综合性能有较大的提升,结合实验的8组图像,综合性能提升8%~20%;相对于二维三阈值分割方法性能提升6%~18%。由此可见,改进算法能够满足对红外图像的有效分割。
表1 算法评价指标H对比Tab.1 Comparison of algorithm evaluation index H %
错误率指标Error定义[12]为
其中:N1(B)为理想分割结果中所有背景像素点的集合;N1(FB)为在实际分割的情况下,所有被错分的背景像素点。
表2数据表明:改进算法相对二维二阈值错误率有明显的下降,结合实验的8组图像,错误率下降34%~44%;相对二维三阈值分割错误率降低18%~37%。由此可见,改进算法能够有效降低分割结果的错误率。
表2 错误率Error指标对比Tab.2 Error comparison %
表3为分割阈值对比情况:多阈值算法的分割结果能体现图像的细节,由于多阈值分割比单一阈值分割的灰度值范围更大,阈值之间的跨度小,从而能突出图像的细节部分。
表3 分割阈值对比Tab.3 Segmentation threshold comparison
表4为算法的效率对比:随阈值的增加,算法的分割时间成倍增长;利用差分进化算法来计算最优阈值能够有效提升算法的运行效率,减少运行时间。
表4 算法耗时Tab.4 Time-consuming comparison among algorithms s
由实验结果和各项分割指标对比参数得出如下结论。
1)二维二阈值和二维三阈值分割方法针对脱粘损伤均出现了过分割现象,将背景像素点分割成为目标像素点。提出的改进q值的Tsallis熵多阈值分割算法能有效分割出损伤部分,有效提升同区域像素点内部的一致性,有效避免过分割现象。
2)随阈值分割算法的分割随阈值增加,分割质量及效率也会变好。通过结合二维Tsallis熵多阈值和DE算法的分割方法能有效针对阈值计算复杂的问题进行优化,算法中尺度函数F随着优化解的适应度函数进行变化,当适应度较小时,则拥有较大的优化尺度,加速算法的收敛。
综上所述,利用提出的结合二维Tsallis熵多阈值和DE算法的分割方法能够有效完成对飞机蒙皮的红外损伤图像进行分割。相比传统多阈值方法,该方法具有较强的收敛性,且分割效果优于传统二维多阈值分割方法。
结合二维Tsallis熵多阈值和DE算法的分割方法,利用Tsallis熵的非广延性将边界灰度信息有效地利用,从而取得良好的分割效果。为了提高运算效率,引用了差分进化算法来提高熵值的寻优效率,利用尺度参数F来改进传统的差分进化算法,从而提高算法的分割性能。实验结果表明,改进后的优化算法能够取得良好的分割效果,且能大大缩短分割时间,拥有良好的适用性。