改进麻雀搜索算法及其在红外图像分割的应用

胡春安, 王丰奇, 朱东林

胡春安, 王丰奇, 朱东林. 改进麻雀搜索算法及其在红外图像分割的应用[J]. 红外技术, 2023, 45(6): 605-612.
引用本文: 胡春安, 王丰奇, 朱东林. 改进麻雀搜索算法及其在红外图像分割的应用[J]. 红外技术, 2023, 45(6): 605-612.
HU Chunan, WANG Fengqi, ZHU Donglin. Improved Sparrow Search Algorithm and Its Application in Infrared Image Segmentation[J]. Infrared Technology , 2023, 45(6): 605-612.
Citation: HU Chunan, WANG Fengqi, ZHU Donglin. Improved Sparrow Search Algorithm and Its Application in Infrared Image Segmentation[J]. Infrared Technology , 2023, 45(6): 605-612.

改进麻雀搜索算法及其在红外图像分割的应用

基金项目: 

国家重点研发计划资助项目 2018YFC1504705

国家自然科学基金资助项目 41562019

国家自然科学基金资助项目 11461031

详细信息
    作者简介:

    胡春安(1966-),女,江西抚州人,硕士,教授,研究方向为无线传感器网络、计算机应用。E-mail: 1551361617@qq.com

  • 中图分类号: TP391.4

Improved Sparrow Search Algorithm and Its Application in Infrared Image Segmentation

  • 摘要: 电力设备的故障常以异常发热的状态经红外图像检测被检测人员发现。针对使用最大类间方差法(Otsu method, Otsu)对电力设备热故障诊断精度不佳,效率不高的问题,提出了基于变螺旋麻雀搜索算法(variable spiral sparrow search algorithm, VSSSA)的红外图像分割方法。变螺旋麻雀搜索算法先采用Tent混沌序列优化初始种群,然后,通过引入Lévy飞行和变螺旋策略提高种群的寻优速度和探索能力,并使用基准函数测试验证了其性能的有效性;最后,在VSSSA优化二维Otsu函数,并对红外图像进行双阈值分割的基础上,结合自适应区域生长法进一步提取精确的目标区域。图像分割实验结果显示,该红外方法相比其他的分割方法,分割精度更优,因而具有一定的实用性。
    Abstract: Faults in power equipment are often observed during inspections as abnormal heat through infrared image detection. To address the problem of poor accuracy and efficiency in thermal fault diagnosis of power equipment using the Otsu method, an infrared image segmentation method based on variable spiral sparrow search algorithm (VSSSA) is proposed. VSSSA first uses tent chaotic sequences to improve the initialization. Then, Lévy flight and variable spiral strategy were introduced to enhance the optimization speed and exploration ability of the population. The effectiveness of the algorithm performance was verified using benchmark function tests. Finally, on the basis of VSSSA optimization of the two-dimensional Otsu function and double threshold segmentation of infrared images combined with adaptive region growth method, the accurate target region was further extracted. The experimental results of image segmentation demonstrated better accuracy of the proposed algorithm compared with that of other segmentation methods. This has certain practical applications.
  • 红外热成像检测法通过红外检测仪器可快速、安全、全天候地检测出高温高速运行中设备的状况,在实际生产中得到了广泛的应用。而实际的图像采集过程中,由于图像背景复杂,亮度不均,分辨率低的特征使得故障区域提取面临困难,因此,图像分割是重要的一个环节。

    常见分割算法有阈值法,区域生长法,聚类法、边缘检测法及神经网络分割法[1]等。最大类间方差法(Otsu)因简单高效而成为阈值法中的热门研究方法[2],刘健庄等[3]针对一维Otsu易受噪声干扰的特点,提出添加邻域信息的二维Otsu分割算法,文献[4]提出了基于改进二维Otsu和区域生长法的电厂高温管道缺陷检测与提取方法,提高了故障定位的准确性。然而传统二维Otsu在准确性快速性上依然不能满足实际需要。于是,一些学者将智能优化算法应用于最大类间方差法。因智能优化算法也存在一些缺陷,如依赖种群初始化,易陷入局部最优,需要一些策略来改善。文献[5]提出基于麻雀搜索算法的多阈值图像分割方法,改进的算法融合了鸟群觅食的策略,具有更优秀的搜索能力。文献[6]提出一种基于人工蜂群算法和正余弦算法的阈值分割法,有效提高了红外分割精度。文献[7]针对Otsu运算量大的特点,提出基于Otsu和改进的易经占卜进化算法的飞机蒙皮红外图像分割方法,使分割效率进一步提升。

    针对传统Otsu分割和原始麻雀搜索算法的不足,本文提出一种基于变螺旋麻雀搜索优化算法(variable spiral sparrow search algorithm, VSSSA)的二维双阈值Otsu(two dimensional double thresholds Otsu, 2dd Otsu)分割方法。VSSSA在发现者阶段引入Tent混沌扰动与Lévy飞行机制,加快了发现高质量解的速度,并平衡算法的全局及局部探索能力;在追随者阶段提出的变螺旋搜索策略使每迭代一次得到的解的质量更优质,从而增强算法的寻优能力。VSSSA对Otsu函数求解得到最佳阈值,之后将预分割后的图像结合自适应区域生长的原理进行二次分割,能有效分开目标和背景,从而提取到相对完整的设备热缺陷区域。

    麻雀搜索算法(sparrow search algorithm, SSA)是根据模拟麻雀觅食与伴随,预警与逃离危险的行为而提出的一种新型智能优化算法[8]。SSA中,设D维搜索空间中N只麻雀的位置为Xi, j=[Xi, 1, Xi, 2, Xi, D]其中i=1, 2, …, NXi, j表示第i只麻雀在第j维的位置。在每次迭代中,选中一部分麻雀承担发现者,追随者和警戒者,依次进行位置和适应度函数更新。

    发现者的位置更新公式如下:

    $$ X_{i,j}^{t + {\text{1}}} = \left\{ \begin{gathered} X_{i,j}^t \cdot {\text{exp}}\left( {\frac{{ - i}}{{\alpha \cdot M}}} \right)\;\;\;\;\;\;\;{\text{if}}\;\;R < {\text{ST}}{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \hfill \\ X_{i,j}^t + Q \cdot {\boldsymbol{L}}\;\;\;\;\;\;\;\;\;{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\text{ if }}R \geqslant {\text{ST}} \hfill \\ \end{gathered} \right. $$ (1)

    式(1)中:t代表当前迭代数;M为最大的迭代次数。α∈(0, 1]是一个随机数。RR∈[0, 1])和ST(ST∈[0.5, 1])分别表示预警值和安全值。Q是服从标准正态分布的随机数。L为内元素全部为1的1×D的矩阵。

    追随者的位置更新描述如下:

    $$ X_{i,j}^{t + {\text{1}}} = \left\{ \begin{gathered} Q \cdot {\text{exp}}(\frac{{X_{\text{worst}}^t - X_{i,j}^t}}{{{i^2}}})\;\;\;\;\;\;\;\;\;\;\;\;{\text{if}}\;\;i > N/2{\kern 1pt} {\kern 1pt} \hfill \\ X_{\text{best}}^{t + 1} + \left| {X_{i,j}^t - X_{\text{best}}^{t + 1}} \right| \cdot {{\boldsymbol{A}}^ + } \cdot {\boldsymbol{L}}\;\;\;\;\;{\text{otherwise}}{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \hfill \\ \end{gathered} \right. $$ (2)

    式(2)中:Xbest是目前发现者所占据的最优位置;Xworst则表示当前全局最差的位置。A表示一个每个元素随机赋值为1或-1的1×d的矩阵,并且A+=AT(AAT)-1

    当意识到危险时,麻雀种群会做出反捕食行为,侦察者位置更新表达式如下:

    $$ X_{i,j}^{t + 1} = \left\{ {\begin{array}{*{20}{c}} {X_{\text{best}}^t + \beta \cdot \left| {X_{i,j}^t - X_{\text{best}}^t} \right|{\text{ if }}{f_{\text{i}}} > {f_{\text{g}}}{\text{ }}} \\ {X_{i,j}^t + K \cdot \left( {\frac{{\left| {X_{i,j}^t - X_{\text{worst}}^t} \right|}}{{{f_{\text{i}}} - {f_w} + \varepsilon }}} \right){\text{ if }}{f_{\text{i}}}{\text{ = }}{f_{\text{g}}}{\text{ }}} \end{array}} \right. $$ (3)

    式(3)中:fifgfw分别是适应度的当前值,最优值和最差值。β作为步长控制参数,是标准正态分布的随机数。K∈[-1, 1]是一个随机数,表示麻雀移动的方向同时也是步长控制参数。ε是较小的常数防止分母为零。

    1)Tent混沌序列与Lévy飞行机制

    在初期阶段采用tent混沌序列初始化种群,可以增强种群的多样性。混沌序列zj如下[9]

    $$ {z_{j + 1}} = \left( {2{z_j}} \right)\bmod 1 + {\text{rand}}\left( {0,1} \right) \times \frac{1}{{N \times M}} $$ (4)

    式中:j=0, 1, 2,…, Dz0为(0, 1)内随机数。将生成的序列映射到种群初始化上:

    $$ X_{i,j}^t = lb + (ub - lb) \times {z_j} $$ (5)

    式(5)中:lbub分别为每一维的下界和上界。

    Lévy飞行是一种服从Lévy分布的随机搜索方式,在麻雀搜索算法中能动态调整发现者的位置,拓宽发现者的搜索范围,一定程度上提高了搜索效率和寻优速度。文献[10-11]更新方式如下:

    $$ X_{i, j}^{t{ }^{\prime}}=X_{i, j}^t+l \otimes \operatorname{levy}(\lambda) $$ (6)

    式(6)中:⊗表示点对点乘法;l表示控制步长的权重, l=0.01(Xi, jtXbestt),并且满足:

    $$ \operatorname{levy}(\lambda)=\frac{r_1}{\left|r_2\right|^{1 / \gamma}} \times\left(\frac{\Gamma(1+\gamma) \times \sin ({\rm{\mathsf{π}}} \gamma / 2)}{\Gamma((1+\gamma) / 2) \times \gamma \times 2^{((\gamma-1) / 2)}}\right)^{(1 / \gamma)}$$ (7)

    式(7)中:r1r2为(0, 1)内随机数;γ一般取值为1.5。

    改进后麻雀搜索算法发现者的更新策略如下:

    $$ X_{i, j}^{t+1}= \begin{cases}X_{i, j}^t+l \otimes \operatorname{levy}(\lambda) & \text { if } R <\mathrm{ST} \\ X_{i, j}^t+Q \cdot L & \text { if } R \geq \mathrm{ST}\end{cases}$$ (8)

    2)变螺旋式搜索策略

    追随者随着发现者进行位置动态更新,易导致追随者搜索方式的盲目性及单一性。受鲸鱼算法的螺旋行进捕食[12-13]启发,引入变螺旋位置更新策略,让追随者位置更新方式更灵活,开发出多样的搜索路径进行位置更新。

    在追随者位置更新过程中,若螺旋参数z为鲸鱼算法中的常量,会导致搜索方式单调且存在陷入局部最优的问题,从而削弱了算法的寻优能力。考虑将螺旋参数z设置为自适应改变的变量,便能动态调整追随者搜索时的螺旋形状,一定程度上提高了算法跳出局部最优区域的概率,提升了全局搜索性能。改进后追随者位置更新策略公式如下:

    $$ X_{i, j}^{t+1}=\left\{\begin{array}{cc} V \cdot Q \cdot \exp \left(\frac{X_{\text {worst }}^t-X_{i, j}^t}{i^2}\right) \quad \text { if } i>n / 2 \\ X_{\text {best }}^{t+1}+\left|X_{i, j}^t-X_{\text {best }}^{t+1}\right| \cdot \boldsymbol{A}^{+} \cdot \boldsymbol{L} \cdot V \text { otherwise } \end{array}\right.$$ (9)

    式中:$ V = {e^{zl}} \cdot \cos \left( {2{\rm{\mathsf{π}}} l} \right) $;Q是服从标准正态分布的随机数,$ z = {e^{k \cdot \cos \left( {{\rm{\mathsf{π}}} \cdot \left( {1 - \frac{t}{M}} \right)} \right)}} $。螺旋调整参数z仿照螺旋线模型的概念,通过引入迭代次数,动态调整螺旋形状[14]。根据cos函数的特性,螺旋参数在迭代初期较小,后期增大,但变化速度会随迭代次数递减,在拓宽了追随者对未知区域的探索范围的同时,也有助于控制算法的收敛。这里的l是[-1, 1]的均匀分布随机数。

    Otsu分割算法是一种通过求最大类间方差值从而确定阈值的图像分割算法。相比一维Otsu,二维Otsu还拓展了像素点邻域的灰度级信息,所以对噪声敏感度更低[15]。将单阈值扩充为双阈值能提高对复杂图片的分割精度,带来的运算量更庞大,而通过VSSSA寻求二维双阈值Otsu的最优解,在提高运算能力的同时也保证了分割准确性。

    若图像的灰度级为L级,建立横轴为灰度值f(x, y),纵坐标为对应的邻域平均值g(x, y)的二维直方图,则灰度为i且邻域平均灰度为j的像素点数量为ni, j,其在整个图像中的概率为:

    $$ {p_{ij}} = {\raise0.7ex\hbox{${{n_{ij}}}$} \!\mathord{\left/ {\vphantom {{{n_{ij}}} {\sum\limits_{i = 0}^{L - 1} {\sum\limits_{j = 0}^{L - 1} {{n_{ij}}} } }}}\right.} \!\lower0.7ex\hbox{${\sum\limits_{i = 0}^{L - 1} {\sum\limits_{j = 0}^{L - 1} {{n_{ij}}} } }$}} $$ (10)

    通过两组阈值(s1, t1)和(s2, t2),将整个二维平面切成9个区域,如图 1所示。图中GE可看作是背景部分,C可看作是目标部分,其余部分可表示边缘部分和噪声部分。

    图  1  二维双阈值直方图划分
    Figure  1.  Two dimensional double threshold histogram division

    设目标区域概率为ω2,背景区域为ω0ω1,则目标均值为μ2,背景均值为μ1μ0

    $$ {\mu _0} = {\left( {\sum\limits_{i = 1}^{{t_1}} {\sum\limits_{j = 1}^{{s_1}} {\frac{{\left( {i - 1} \right){p_{i,j}}}}{{{\omega _0}}},} } \sum\limits_{i = 1}^{{t_1}} {\sum\limits_{j = 1}^{{s_1}} {\frac{{\left( {j - 1} \right){p_{i,j}}}}{{{\omega _0}}}} } } \right)^{\text{T} }} $$ (11)
    $$ {\mu _1} = {\left( {\sum\limits_{i = {t_1} + 1}^{{t_2}} {\sum\limits_{j = {s_1} + 1}^{{s_2}} {\frac{{\left( {i - 1} \right){p_{i,j}}}}{{{\omega _1}}},} } \sum\limits_{i = {t_2} + 1}^L {\sum\limits_{j = {s_2} + 1}^L {\frac{{\left( {j - 1} \right){p_{i,j}}}}{{{\omega _1}}}} } } \right)^{\text{T} } } $$ (12)
    $$ {\mu _2} = {\left( {\sum\limits_{i = {t_2} + 1}^L {\sum\limits_{j = {s_2} + 1}^L {\frac{{\left( {i - 1} \right){p_{i,j}}}}{{{\omega _2}}},} } \sum\limits_{i = {t_2} + 1}^L {\sum\limits_{j = {s_2} + 1}^L {\frac{{\left( {j - 1} \right){p_{i,j}}}}{{{\omega _2}}}} } } \right)^{\text{T} } } $$ (13)

    整幅图像的均值为:

    $$ {\mu _T} = {\left( {\sum\limits_{i = 1}^L {\sum\limits_{j = 1}^L {\left( {i - 1} \right){p_{i,j}},\sum\limits_{i = 1}^L {\sum\limits_{j = 1}^L {\left( {j - 1} \right){p_{i,j}}} } } } } \right)^{\text{T} } } $$ (14)

    式中:μT, i表示μT的第一个分量;μT, j表示μT的第二个分量,μ0, i, μ1, i, μ2, i, 等亦同。

    定义阈值(s1, t1)和(s2, t2)所对应图像的类间方差函数为:

    $$ \begin{gathered} \delta = {\omega _0}\left( {{{\left( {{\mu _{0,i}} - {\mu _{T,i}}} \right)}^2} + {{\left( {{\mu _{0,j}} - {\mu _{T,j}}} \right)}^2}} \right) \hfill \\ \quad \,\, + {\omega _1}\left( {{{\left( {{\mu _{1,i}} - {\mu _{T,i}}} \right)}^2} + {{\left( {{\mu _{1,j}} - {\mu _{T,j}}} \right)}^2}} \right) \hfill \\ \quad \,\, + {\omega _2}\left( {{{\left( {{\mu _{2,i}} - {\mu _{T,i}}} \right)}^2} + {{\left( {{\mu _{2,j}} - {\mu _{T,j}}} \right)}^2}} \right) \hfill \\ \end{gathered} $$ (15)

    当$ \left[ {{s_1}^ * ,{t_1}^ * ,{s_2}^ * ,{t_2}^ * } \right] = \arg \max \left( \delta \right) $,即类间方差最大时对应的$\left( {{s_1}^ * ,{t_1}^ * ,{s_2}^ * ,{t_2}^ * } \right)$便是最佳阈值。

    以类间方差函数为适应度函数,用VSSSA优化求得红外图像的最佳阈值后,令目标设备区域保持灰度值不变,背景像素点灰度值置为0,完成图像的预分割。

    红外图像热故障区域具有灰度值渐变,发热区域边界模糊的特点,为更清晰地划分出目标区域,将VSSSA优化Otsu的方法与区域生长法融合,即本文红外分割算法VSSSA-2ddOtsu。本文以基于直方图的自适应多种子选取作为多种子选取依据,能有效提高种子选取效率。

    自适应多种子选取的基本步骤为:

    1)建立预分割图像的灰度直方图,非零灰度值分布概率为p2, p3, …, pL, ,选择满足$\sum\limits_{i = 2}^{seed} {{p_i}} /\sum\limits_{i = 2}^L {{p_i}} > k$时所对应的最小灰度值seed为多种子选取判断点,k常取0.85。

    2)遍历图像中的像素点,求出3×3邻域平均灰度值最高的像素点gmax。若gmax>seed,则可将其作为种子点,并依据生长准则完成该区域的生长,该点生长后的灰度值置为0,其他区域灰度保持不变。

    3)把上一步完成某一区域生长的图像代替预分割图像,重复步骤2),依次找到所有种子点,直至无法满1)中的多种子判断条件。

    根据像素灰度均值和基于Sobel边缘检测的梯度幅值作为生长准则,能有效提高区域生长精度。

    定义灰度变化阈值为T1,若$\left| {f\left( {a,b} \right) - u} \right| \leqslant {T_1}$,说明像素满足生长准则1。根据实验,T1合理范围为[35, 50]。u为当前生长区域灰度值的均值。

    考虑Sobel算子处理速度快,抗噪性能好的特点,用Sobel梯度算子进一步改善生长准则,使区域生长在边缘过渡更平滑。Gx(x, y)为Sobel算子在水平方向与图像进行卷积,Gy(x, y)为其在垂直方向进行卷积,图像像素值为f(x, y),则图像梯度幅值为:

    $$ \begin{gathered} {G_x}\left( {x,y} \right) = [f(x - 1,y + 1) + 2f(x,y + 1) + \hfill \\ {\text{ }}f(x + 1,y + 1)] - [f(x - 1,y - 1) + \hfill \\ {\text{ }}2f(x,y - 1) + f(x + 1,y - 1)] \hfill \\ \end{gathered} $$ (16)
    $$ \begin{gathered} {G_y}\left( {x,y} \right) = [f(x - 1,y - 1) + 2f(x - 1,y) + \hfill \\ {\text{ }}f(x - 1,y + 1)] - [f(x + 1,y - 1) + \hfill \\ {\text{ }}2f(x + 1,y) + f(x + 1,y + 1)] \hfill \\ \end{gathered} $$ (17)
    $$ G\left( {x,y} \right) = \sqrt {{G_x}{{\left( {x,y} \right)}^2} + {G_y}{{\left( {x,y} \right)}^2}} $$ (18)

    设当前种子点的梯度幅值为G(a0, b0),待生长点的梯度幅值为G(a, b)。定义算法的方向限定阈值为T2,若$ \left| {G\left( {{a_0},{b_0}} \right) - G\left( {a,b} \right)} \right| \leqslant {T_2} $,说明满足生长准则2,经试验,梯度阈值T2的合理范围为[30, 50][16]。当像素点同时满足生长准则1和2时,允许该像素点生长。

    本文红外分割方法VSSSA-2ddOtsu的流程图如图 2所示。

    图  2  VSSSA-2dd Otsu流程
    Figure  2.  Flow chart for VSSSA-2dd Otsu

    为测试改进算法的寻优能力,本文选取10个标准测试函数来验证,测试函数表如表 1。同时将CSSA、SSA、PSO这3种算法的寻优性能进行对比,其中CSSA[17]是改进的麻雀搜索算法,PSO是标准粒子群优化算法(particle swarm optimization, PSO)。定义各算法的种群数量都为100,迭代次数为200,PSO算法中学习因子c1c2=2,惯性权重w=0.728;VSSSA,CSSA,SSA中发现者和侦察者占比都为0.2,实验环境为Matlab 2016b,Windows10操作系统,运行内存为16 G。

    表  1  测试函数
    Table  1.  Test function
    Function Dim Range Min
    $ {F_1}(x) = \sum\nolimits_{i = 1}^n {x_i^2} $ 30 [-100, 100] 0
    ${F_2}(x) = \sum\nolimits_{i = 1}^n {\left| {{x_i}} \right|} + \prod\nolimits_{i = 1}^n {{x_i}} $ 30 [-10, 10] 0
    $ {F_3}(x) = \sum\nolimits_{i = 1}^n {{{(\sum\nolimits_{j = 1}^i {{x_j}} )}^2}} $ 30 [-100, 100] 0
    $ {F_4}(x) = \max \{ \left| {{x_i}} \right|,1 \leqslant i \leqslant n\} $ 30 [-100, 100] 0
    $\begin{gathered} {F_5}(x) = 0.1\{ {\sin ^2}(3{\rm{\mathsf{π}}} {x_1}){\text{ + }}\sum\nolimits_{i = 1}^n {{{({x_i} - 1)}^2}[1 + {{\sin }^2}(3{\rm{\mathsf{π}}} {x_i} + 1)]} \hfill \\ {\text{ }} + {({x_n} - 1)^2}[1 + {\sin ^2}(2{\rm{\mathsf{π}}} {x_n})]\} {\text{ }} + \sum\nolimits_{i = 1}^n {u({x_i},5,100,4)} \hfill \\ \end{gathered} $ 30 [-50, 50] 0
    ${F_6}{\text{(}}x{\text{) = 4}}{x_1}^2 - 2.1{x_1}^4 + \frac{1}{3}{x_1}^6 + {x_1}{x_2} - 4{x_2}^2 + 4{x_2}^4$ 2 [-5, 5] 0
    $ {F_7}(x) = {({x_2} - \frac{{5.1}}{{4{{\rm{\mathsf{π}}} ^2}}}x_1^2 + \frac{5}{{\rm{\mathsf{π}}} }{x_1} - 6)^2} + 10(1 - \frac{1}{{8{\rm{\mathsf{π}}} }})\cos {x_1} + 10 $ 2 [-5, 10]×[0, 15] 0.398
    ${F_8}(x) = {(0.002 + \sum\limits_{i = 1}^{25} {\frac{1}{{i + {{({x_1} - {a_{1i}})}^6} + {{({x_2} - {a_{2i}})}^6})}}} )^{ - 1}}$ 2 [-65.536,
    65.536]
    0.998
    ${F_9}(x) = \sum\nolimits_{i = 1}^n { - {x_i}\sin (\sqrt {\left| {{x_i}} \right|} )} $ 30 [-500, 500] -12569.5
    ${F_{10}}(x) = - 12569.5 - \sum\nolimits_{i = 1}^n { - {x_i}\sin (\sqrt {\left| {{x_i}} \right|} )} $ 30 [-500, 500] 0
    下载: 导出CSV 
    | 显示表格

    10个标准测试函数如表 1所示,前4个为单峰函数,中间4个为固定维度函数,最后2个为多峰函数。每个算法独立运行30次,计算每个算法的最优值、平均值及标准差这3项性能指标。3项性能指标用来反映算法的寻优能力及稳定性。各算法性能指标对比如表 2所示。

    表  2  各算法性能对比
    Table  2.  Performance comparison of different methods
    Algorithm Best Mean Std
    F1 VSSSA 0 0 0
    CSSA 0 0 0
    SSA 0 5.192E-251 0
    PSO 3.8599E-12 3.0697E-11 2.7076E-11
    F2 VSSSA 0 0 0
    CSSA 0 3.8973E-160 2.134E-159
    SSA 0 2.2022E-144 8.443E-144
    PSO 8.9056E-08 2.5055E-07 1.4584E-07
    F3 VSSSA 0 0 0
    CSSA 0 4.2858E-192 0
    SSA 0 7.7137E-210 0
    PSO 22.2592 49.9596 18.1286
    F4 VSSSA 0 0 0
    CSSA 0 4.1077E-141 2.249E-140
    SSA 4.0636E-14 1.9036E-07 2.9266E-07
    PSO 8.1218E-14 6.9044E-13 7.0838E-13
    F5 VSSSA 1.3498E-31 1.3498E-31 0
    CSSA 1.4730E-31 2.3043E-29 3.9261E-29
    SSA 1.3498E-31 3.9049E-29 5.2232E-29
    PSO 1.3048E-23 4.7707E-21 6.0171E-21
    F6 VSSSA 0 0 0
    CSSA 0 4.9534E-285 0
    SSA 0 3.7547E-237 0
    PSO 4.0625E-25 6.4627E-22 1.8985E-21
    F7 VSSSA 6.0457E-26 4.95058E-19 2.5854E-18
    CSSA 4.3789E-21 3.2277E-16 1.5937E-15
    SSA 2.7959E-21 1.2661E-16 2.7684E-16
    PSO 1.1013E-22 8.1661E-20 1.7949E-19
    F8 VSSSA 9.9800E-1 9.9800E-1 0
    CSSA 9.9800E-1 2.1068 2.9273
    SSA 9.9800E-1 2.5594 3.6421
    PSO 9.9800E-1 1.1968 3.9760E-1
    F9 VSSSA -12437.718 -10253.9993 1060.1100
    CSSA -9859.7543 -8700.9989 615.6127
    SSA -9374.4498 -8208.1416 501.1037
    PSO -8405.1316 -6176.2342 793.1086
    F10 VSSSA 5.4787 1756.8855 1336.3995
    CSSA 2529.3974 3661.9962 725.5963
    SSA 3471.6704 4292.6178 529.19907
    PSO 5205.7803 7638.9387 1024.9673
    下载: 导出CSV 
    | 显示表格

    从整个对比表看出VSSSA算法的各项性能指标较好。对于单峰函数F1~F4,及固定维度函数F6F8,VSSSA每次都能找到最优值,其标准差和平均值比其他算法更好,CSSA算法寻优效果其次,PSO寻优效果较差;对于多峰函数F9~F10,各算法都未能达到理想的求解效果,VSSSA虽然标准差较其他算法大,稳定性稍欠佳,但其最优值和平均值与理想结果误差最小,说明寻优能力比其他算法更强。综合来看,VSSSA在单峰函数上存在较好收敛精度和稳定性,在多峰函数上,VSSSA存在较强的抗局部极值的能力,在大部分函数上的方差较小,具有较好的稳定性。由此看出,Tent混沌映射,Lévy飞行和变螺旋策略的引入,改善了原算法的搜索机制,开发了麻雀搜索算法的寻优潜力,提升了算法的求解精度并且降低了算法陷入局部最优的概率。

    为了进一步验证本文分割效果,选取4组电力设备图片(图 3)进行分割实验。文献[4]中基于Otsu和区域生长法的分割算法、传统多种子区域生长法及基于麻雀算法的二维单阈值分割(SSA-2d Otsu)作为对比实验。其中,本文算法(VSSSA-2dd Otsu)的维度为4,种群大小50,迭代次数50。本文算法和文献[4]算法的生长准则T1设为35,T2设为50。

    图  3  电力设备红外图像
    Figure  3.  Infrared image of power equipment

    实验评价指标为均方误差(mean squared error, MSE)和交并比(intersection over Union, IoU)。MSE统计分割后图形与标准分割图形对应像素灰度值误差的平方和均值,IoU表示实验所用方法分割结果与标准方法分割结果的交集与并集之比。MSE越小,IoU越大,说明分割图像捕获的区域越精确。MSE和IoU的定义如下:

    $$ {\text{MSE}} = \frac{1}{{M \times N}}\sum\limits_{i = 1}^M {\sum\limits_{j = 1}^N {{{\left[ {\hat I\left( {i,j} \right) - I\left( {i,j} \right)} \right]}^2}} } $$ (19)
    $$ {\text{IoU = }}\frac{{{\text{area}}(\hat I) \cap {\text{area}}(I)}}{{{\text{area}}(\hat I) \cup {\text{area}}(I)}} $$ (20)

    式中:$\hat I\left( {i,j} \right)$为标准分割图像;I(i, j)为不同实验方法分割的图像。

    图 4中可以看出,对于第一组实验,多种子区域生长法存在欠分割现象,而文献[3]算法和本文算法得到的结果都比另外两种效果好。在第二组实验中,除本文算法能分割出异常发热区域外,其他方法过分割现象严重。在第3组多目标实验中,本文算法和文献[3]算法都能较准确分离出目标缺陷的区域,其中本文在细节提取上更强。第四组实验中,4种方法都不能完美分割出将军帽高热的区域,有一定程度的过分割,但本文算法误分部分最少。根据表 3的对比数据也能看出,数据显示,本文方法的评价指标IoU相比其他方法都更高,平均IoU达到0.823707,相比其他算法分别高出72.26%,24.28%和81.81%,表明图像分割目标区域的完整性高于其他算法。在MSE方面,各组实验中本文算法均处于领先位置,验证了算法的鲁棒性。综上所述,VSSSA与2dd Otsu相结合的方法在整体分割的准确率较其他分割方式明显提升,说明文中方法能较准确识别缺陷区域的边界,在细节处理方面的优势更加突出。

    图  4  四种方法的分割实验结果
    Figure  4.  Segmentation experimental results of four methods
    表  3  IoU和MSE对比
    Table  3.  Comparison table of IOU and MSE
    Index Method of this paper Multi-seeds growing Method of paper[4] SSA-2d Otsu
    Scene 1 IoU 0.846222 0.36123 0.706857 0.71578
    MSE 192.0716 798.2628 369.2659 494.7231
    Scene 2 IoU 0.809679 0.37660 0.539486 0.216439
    MSE 201.8666 1087.5 436.5527 1214.8
    Scene 3 IoU 0.823503 0.507142 0.691515 0.216439
    MSE 51.9754 411.4971 148.9468 945.6562
    Scene 4 IoU 0.815424 0.667688 0.713268 0.663621
    MSE 216.8688 563.7104 388.4329 574.1082
    下载: 导出CSV 
    | 显示表格

    文中将改进的变螺旋麻雀搜索算法应用到红外图像分割上,提高了二维双阈值Otsu求解的精度,使红外图像的处理更加智能化。在麻雀搜索算法中引入Lévy飞行策略,降低了陷入局部最优的概率,同时较大地改善了算法的收敛效果;通过加入变螺旋搜索策略,搜索方式变得更加细致,有效提升了算法的寻优效率。最后,将最大类间方差法融合于自适应多种子区域生长法,进一步改善了对位置精准,特征完整的目标区域的提取方式。论文验证了VSSSA的寻优性能,并从红外图像分割实验结果可看出,相较于区域生长法,文献[4]算法和SSA-2d Otsu算法,VSSSA-2dd Otsu提升了分割精度,并取得了良好的红外图像分割效果。

  • 图  1   二维双阈值直方图划分

    Figure  1.   Two dimensional double threshold histogram division

    图  2   VSSSA-2dd Otsu流程

    Figure  2.   Flow chart for VSSSA-2dd Otsu

    图  3   电力设备红外图像

    Figure  3.   Infrared image of power equipment

    图  4   四种方法的分割实验结果

    Figure  4.   Segmentation experimental results of four methods

    表  1   测试函数

    Table  1   Test function

    Function Dim Range Min
    $ {F_1}(x) = \sum\nolimits_{i = 1}^n {x_i^2} $ 30 [-100, 100] 0
    ${F_2}(x) = \sum\nolimits_{i = 1}^n {\left| {{x_i}} \right|} + \prod\nolimits_{i = 1}^n {{x_i}} $ 30 [-10, 10] 0
    $ {F_3}(x) = \sum\nolimits_{i = 1}^n {{{(\sum\nolimits_{j = 1}^i {{x_j}} )}^2}} $ 30 [-100, 100] 0
    $ {F_4}(x) = \max \{ \left| {{x_i}} \right|,1 \leqslant i \leqslant n\} $ 30 [-100, 100] 0
    $\begin{gathered} {F_5}(x) = 0.1\{ {\sin ^2}(3{\rm{\mathsf{π}}} {x_1}){\text{ + }}\sum\nolimits_{i = 1}^n {{{({x_i} - 1)}^2}[1 + {{\sin }^2}(3{\rm{\mathsf{π}}} {x_i} + 1)]} \hfill \\ {\text{ }} + {({x_n} - 1)^2}[1 + {\sin ^2}(2{\rm{\mathsf{π}}} {x_n})]\} {\text{ }} + \sum\nolimits_{i = 1}^n {u({x_i},5,100,4)} \hfill \\ \end{gathered} $ 30 [-50, 50] 0
    ${F_6}{\text{(}}x{\text{) = 4}}{x_1}^2 - 2.1{x_1}^4 + \frac{1}{3}{x_1}^6 + {x_1}{x_2} - 4{x_2}^2 + 4{x_2}^4$ 2 [-5, 5] 0
    $ {F_7}(x) = {({x_2} - \frac{{5.1}}{{4{{\rm{\mathsf{π}}} ^2}}}x_1^2 + \frac{5}{{\rm{\mathsf{π}}} }{x_1} - 6)^2} + 10(1 - \frac{1}{{8{\rm{\mathsf{π}}} }})\cos {x_1} + 10 $ 2 [-5, 10]×[0, 15] 0.398
    ${F_8}(x) = {(0.002 + \sum\limits_{i = 1}^{25} {\frac{1}{{i + {{({x_1} - {a_{1i}})}^6} + {{({x_2} - {a_{2i}})}^6})}}} )^{ - 1}}$ 2 [-65.536,
    65.536]
    0.998
    ${F_9}(x) = \sum\nolimits_{i = 1}^n { - {x_i}\sin (\sqrt {\left| {{x_i}} \right|} )} $ 30 [-500, 500] -12569.5
    ${F_{10}}(x) = - 12569.5 - \sum\nolimits_{i = 1}^n { - {x_i}\sin (\sqrt {\left| {{x_i}} \right|} )} $ 30 [-500, 500] 0
    下载: 导出CSV

    表  2   各算法性能对比

    Table  2   Performance comparison of different methods

    Algorithm Best Mean Std
    F1 VSSSA 0 0 0
    CSSA 0 0 0
    SSA 0 5.192E-251 0
    PSO 3.8599E-12 3.0697E-11 2.7076E-11
    F2 VSSSA 0 0 0
    CSSA 0 3.8973E-160 2.134E-159
    SSA 0 2.2022E-144 8.443E-144
    PSO 8.9056E-08 2.5055E-07 1.4584E-07
    F3 VSSSA 0 0 0
    CSSA 0 4.2858E-192 0
    SSA 0 7.7137E-210 0
    PSO 22.2592 49.9596 18.1286
    F4 VSSSA 0 0 0
    CSSA 0 4.1077E-141 2.249E-140
    SSA 4.0636E-14 1.9036E-07 2.9266E-07
    PSO 8.1218E-14 6.9044E-13 7.0838E-13
    F5 VSSSA 1.3498E-31 1.3498E-31 0
    CSSA 1.4730E-31 2.3043E-29 3.9261E-29
    SSA 1.3498E-31 3.9049E-29 5.2232E-29
    PSO 1.3048E-23 4.7707E-21 6.0171E-21
    F6 VSSSA 0 0 0
    CSSA 0 4.9534E-285 0
    SSA 0 3.7547E-237 0
    PSO 4.0625E-25 6.4627E-22 1.8985E-21
    F7 VSSSA 6.0457E-26 4.95058E-19 2.5854E-18
    CSSA 4.3789E-21 3.2277E-16 1.5937E-15
    SSA 2.7959E-21 1.2661E-16 2.7684E-16
    PSO 1.1013E-22 8.1661E-20 1.7949E-19
    F8 VSSSA 9.9800E-1 9.9800E-1 0
    CSSA 9.9800E-1 2.1068 2.9273
    SSA 9.9800E-1 2.5594 3.6421
    PSO 9.9800E-1 1.1968 3.9760E-1
    F9 VSSSA -12437.718 -10253.9993 1060.1100
    CSSA -9859.7543 -8700.9989 615.6127
    SSA -9374.4498 -8208.1416 501.1037
    PSO -8405.1316 -6176.2342 793.1086
    F10 VSSSA 5.4787 1756.8855 1336.3995
    CSSA 2529.3974 3661.9962 725.5963
    SSA 3471.6704 4292.6178 529.19907
    PSO 5205.7803 7638.9387 1024.9673
    下载: 导出CSV

    表  3   IoU和MSE对比

    Table  3   Comparison table of IOU and MSE

    Index Method of this paper Multi-seeds growing Method of paper[4] SSA-2d Otsu
    Scene 1 IoU 0.846222 0.36123 0.706857 0.71578
    MSE 192.0716 798.2628 369.2659 494.7231
    Scene 2 IoU 0.809679 0.37660 0.539486 0.216439
    MSE 201.8666 1087.5 436.5527 1214.8
    Scene 3 IoU 0.823503 0.507142 0.691515 0.216439
    MSE 51.9754 411.4971 148.9468 945.6562
    Scene 4 IoU 0.815424 0.667688 0.713268 0.663621
    MSE 216.8688 563.7104 388.4329 574.1082
    下载: 导出CSV
  • [1] 周莉莉, 姜枫. 图像分割方法综述研究[J]. 计算机应用研究, 2017, 34(7): 1921-1928. https://www.cnki.com.cn/Article/CJFDTOTAL-JSYJ202203001.htm

    ZHOU Lili, JIANG Feng. Overview of image segmentation methods [J]. Computer Application Research, 2017, 34(7): 1921-1928. https://www.cnki.com.cn/Article/CJFDTOTAL-JSYJ202203001.htm

    [2] 黄鹏, 郑淇, 梁超. 图像分割方法综述[J]. 武汉大学学报(理学版), 2020, 66(6): 519-531. https://www.cnki.com.cn/Article/CJFDTOTAL-WHDY202006001.htm

    HUANG Peng, ZHENG Qi, LIANG Chao. A review of image segmentation methods[J]. Journal of Wuhan University (Science Edition), 2020, 66(6): 519-531 https://www.cnki.com.cn/Article/CJFDTOTAL-WHDY202006001.htm

    [3] 刘健庄, 栗文青. 灰度图像的二维Otsu自动阈值分割法[J]. 自动化学报, 1993(1): 101-105. https://www.cnki.com.cn/Article/CJFDTOTAL-JSGG201233035.htm

    LIU Jianzhuang, LI Wenqing. Two-dimensional Otsu automatic threshold segmentation method for grayscale images[J]. Journal of Automation, 1993(1): 101-105. https://www.cnki.com.cn/Article/CJFDTOTAL-JSGG201233035.htm

    [4] 彭道刚, 尹磊, 戚尔江, 等. 基于OTSU和区域生长的电厂管道缺陷检测与分割[J]. 红外技术, 2021, 43(5): 502-509. http://hwjs.nvir.cn/article/id/0d4584a9-4405-4877-b4c5-4ab4e8adcbbb

    PENG Daogang, YIN Lei, QI Erjiang, et al. Detection and segmentation of pipeline defects in power plants based on OTSU and region growing[J]. Infrared Technology, 2021, 43(5): 502-509. http://hwjs.nvir.cn/article/id/0d4584a9-4405-4877-b4c5-4ab4e8adcbbb

    [5] 吕鑫, 慕晓冬, 张钧. 基于改进麻雀搜索算法的多阈值图像分割[J]. 系统工程与电子技术, 2021, 43(2): 318-327. https://www.cnki.com.cn/Article/CJFDTOTAL-XTYD202102006.htm

    LV Xin, MU Xiaodong, ZHANG Jun. Multi-threshold image segmentation based on improved sparrow search algorithm[J]. Systems Engineering and Electronics Technology, 2021, 43(2): 318-327. https://www.cnki.com.cn/Article/CJFDTOTAL-XTYD202102006.htm

    [6] 李云红, 李传真, 屈海涛, 等. 基于改进人工蜂群正余弦优化的红外图像分割方法[J]. 激光与红外, 2021, 51(8): 1076-1080. https://www.cnki.com.cn/Article/CJFDTOTAL-JGHW202108018.htm

    LI Yunhong, LI Chuanzhen, QU Haitao, et al. Infrared image segmentation method based on improved artificial swarm sine cosine optimization[J]. Laser and Infrared, 2021, 51(8): 1076-1080. https://www.cnki.com.cn/Article/CJFDTOTAL-JGHW202108018.htm

    [7] 王坤, 吉尧, 刘沛伦, 等. 基于Otsu和改进易经占卜进化算法的红外图像分割[J]. 系统仿真学报, 2021, 33(2): 421-433. https://www.cnki.com.cn/Article/CJFDTOTAL-XTFZ202102020.htm

    WANG Kun, JI Yao, LIU Peilun, et al. Infrared image segmentation based on Otsu and improved I Ching divination evolutionary algorithm[J]. Journal of System Simulation, 2021, 33(2): 421-433. https://www.cnki.com.cn/Article/CJFDTOTAL-XTFZ202102020.htm

    [8]

    XUE J, SHEN B. A novel swarm intelligence optimization approach: sparrow search algorithm[J]. Systems Science & Control Engineering an Open Access Journal, 2020, 8(1): 22-34.

    [9] 张娜, 赵泽丹, 包晓安, 等. 基于改进的Tent混沌万有引力搜索算法[J]. 控制与决策, 2020, 35(4): 893-900. https://www.cnki.com.cn/Article/CJFDTOTAL-KZYC202004016.htm

    ZHANG Na, ZHAO Zedan, BAO Xiaoan, et al. An improved tent-based chaotic universal gravity search algorithm[J]. Control and Decision Making, 2020, 35(4): 893-900. https://www.cnki.com.cn/Article/CJFDTOTAL-KZYC202004016.htm

    [10]

    Khurma R A, Aljarah I, Sharieh A. A simultaneous moth flame optimizer feature selection approach based on Levy flight and selection operators for medical diagnosis[J]. Arabian Journal for Science and Engineering, 2021, 46: 8415-8440.

    [11] 毛清华, 张强, 毛承成, 等. 混合正弦余弦算法和Lévy飞行的麻雀算法[J]. 山西大学学报(自然科学版), 2021, 44(6): 1086-1091. https://www.cnki.com.cn/Article/CJFDTOTAL-SXDR202106007.htm

    MAO Qinghua., ZHANG Qiang, MAO Chengcheng, et al. Hybrid sine cosine algorithm and sparrow algorithm for Lévy flight[J]. Journal of Shanxi University (Natural Science Edition), 2021, 44(6): 1086-1091. https://www.cnki.com.cn/Article/CJFDTOTAL-SXDR202106007.htm

    [12] 徐航, 张达敏, 王依柔, 等. 混合策略改进鲸鱼优化算法[J]. 计算机工程与设计, 2020, 41(12): 3397-3404. https://www.cnki.com.cn/Article/CJFDTOTAL-SJSJ202012013.htm

    XU Hang, ZHANG Daming, WANG Yirou, et al. Hybrid strategy to improve whale optimization algorithm[J]. Computer Engineering and Design, 2020, 41(12): 3397-3404. https://www.cnki.com.cn/Article/CJFDTOTAL-SJSJ202012013.htm

    [13]

    LI Jingnan, LE Meilong. Improved whale optimization algorithm based on mirror selection (English)[J]. Transactions of Nanjing University of Aeronautics and Astronautics, 2020, 37(S1): 115-123.

    [14] 刘磊, 白克强, 但志宏, 等. 一种全局搜索策略的鲸鱼优化算法[J]. 小型微型计算机系统, 2020, 41(9): 1820-1825. https://www.cnki.com.cn/Article/CJFDTOTAL-XXWX202009006.htm

    LIU Lei, BAI Keqiang, DAN Zhihong, et al. Whale optimization algorithm with global search strategy[J]. Small Microcomputer System, 2020, 41(9): 1820-1825. https://www.cnki.com.cn/Article/CJFDTOTAL-XXWX202009006.htm

    [15] 彭启伟, 罗旺, 冯敏, 等. 改进二维Otsu法和果蝇算法结合的图像分割方法[J]. 计算机应用, 2017, 37(S2): 193-197. https://www.cnki.com.cn/Article/CJFDTOTAL-JSJY2017S2047.htm

    PENG Qiwei, LUO Wang, FENG Min, et al. An improved image segmentation method combining two-dimensional Otsu method and fruit fly algorithm[J]. Computer Application, 2017, 37(S2): 193-197. https://www.cnki.com.cn/Article/CJFDTOTAL-JSJY2017S2047.htm

    [16] 施兢业, 刘俊. 基于改进区域生长法的电力设备红外图像分割[J]. 光学技术, 2017, 43(4): 381-384. https://www.cnki.com.cn/Article/CJFDTOTAL-GXJS201704019.htm

    SHI Jingye, LIU Jun. Infrared image segmentation of power equipment based on improved region growing method[J]. Optical Technology, 2017, 43(4): 381-384. https://www.cnki.com.cn/Article/CJFDTOTAL-GXJS201704019.htm

    [17] 吕鑫, 慕晓冬, 张钧, 等. 混沌麻雀搜索优化算法[J]. 北京航空航天大学学报, 2021, 47(8): 1712-1720. https://www.cnki.com.cn/Article/CJFDTOTAL-BJHK202108024.htm

    LV Xin, MU Xiaodong, ZHANG Jun, et al. Chaotic sparrow search optimization algorithm[J]. Journal of Beijing University of Aeronautics and Astronautics, 2021, 47(8): 1712-1720. https://www.cnki.com.cn/Article/CJFDTOTAL-BJHK202108024.htm

  • 期刊类型引用(3)

    1. 韩璐,李桂芝. 一种基于定标的非均匀性校正改进算法. 舰船电子工程. 2023(03): 193-197 . 百度学术
    2. 赵云,朱鑫鑫,桑苗苗,何宇. 提高局部信噪比的单帧红外图像非均匀性校正方法. 电光与控制. 2023(10): 114-119 . 百度学术
    3. 张瑞强,徐贵,经权,冯艳阳,杨星盟. 基于红外热成像检测技术的变电设备异常发热故障检测. 制造业自动化. 2022(09): 171-174 . 百度学术

    其他类型引用(3)

图(4)  /  表(3)
计量
  • 文章访问数:  139
  • HTML全文浏览量:  52
  • PDF下载量:  39
  • 被引次数: 6
出版历程
  • 收稿日期:  2022-05-04
  • 修回日期:  2022-06-19
  • 刊出日期:  2023-06-19

目录

/

返回文章
返回