?

基于改進粒子群的二維模糊散度多閾值圖像分割

2020-09-09 03:09
計算機應用與軟件 2020年9期
關鍵詞:散度鄰域灰度

楊 夢 雷 博 趙 強 蘭 蓉

(西安郵電大學通信與信息工程學院 陜西 西安 710121)

0 引 言

圖像分割是圖像處理過程中的關鍵步驟[1],常用的有基于閾值、區域、邊緣及聚類的圖像分割方法[2-5],閾值化算法因實現簡單且性能穩定而應用廣泛。Otsu[6]于1979年提出的Otsu法,只利用圖像灰度信息進行分割,分割精度較低。1993年,劉健莊等[7]提出灰度圖像的二維Otsu自動閾值分割方法,考慮像素灰度值的同時,結合像素的空間鄰域信息,從而改善一維Otsu算法的抗噪性能。

在基于二元灰度空間的多閾值分割算法中,一方面,由于多閾值分割算法采用窮舉搜索法,計算復雜度隨閾值數呈指數形式增長[8];另一方面,經典二維閾值分割算法的運算量也會隨閾值數而快速增加。為了解決上述問題,眾多學者將群智能優化算法應用于二維多閾值分割算法,如:粒子群優化(Particle Swarm Optimization,PSO)算法[9]、狼群算法(Wolf Pack Algorithm,WPA)[10]和差分進化(Differential Evolution,DE)算法[11]等。2017年,曹爽等[12]提出狼群算法優化二維Otsu快速圖像分割算法。2019年,羅鈞等[13]提出基于改進的自適應差分演化算法的二維Otsu多閾值圖像分割。由于PSO算法參數少,易于實現,且搜索最優解的性能優于其他智能優化算法[9,11],因此被廣泛討論,但其易陷入局部最優,造成虛假收斂[14]。

由于圖像邊緣具有漸變特性,且受成像設備影響,使得圖像具有一定的模糊性,因此將模糊理論應用于圖像分割具有合理性。1992年,Bhandari[15]引入K-L散度衡量兩個模糊集之間的差別,并將其應用于圖像分割[15]。2016年,Zhao等[16]提出基于改進粒子群的二維K-L散度多閾值圖像分割算法。2010年,蘭蓉等[17]給出α-型模糊散度,并在2017年將其應用于圖像分割[18]。然而,已有基于α-型模糊散度的閾值分割算法未涉及復雜圖像的多閾值分割問題,而且沒有考慮圖像像素的空間鄰域信息,導致分割精度較低[13]。

基于此,本文提出基于改進粒子群的二維模糊散度多閾值圖像分割算法。建立二維隸屬度函數,進而推導出二維多閾值α-型模糊散度計算式作為選取最佳閾值的準則函數;針對PSO算法易陷入局部最優,造成虛假收斂的問題,分別對PSO的“自我認知”和“社會認知”部分進行改進;用改進后的粒子群算法優化求解二維多閾值α-型模糊散度。實驗結果表明,本文算法相較對比算法,有較好的分割性能和較高的分割精度。

1 相關工作

1.1 模糊集

定義1設X為論域,則X上的模糊集合A可以表示為:

A={(x,μA(x)):x∈X}

(1)

式中:映射μA:X→[0,1]稱為模糊集A的隸屬度函數。

1.2 基于模糊散度的閾值分割算法

在基于模糊散度的閾值分割算法中,選取最佳閾值的準則函數為α-型模糊散度。

(2)

式中:α>0且α≠1;g∈{0,1,…,L-1},L為圖像最大灰度級;T為分割閾值;μA(g;T)是建立圖像模糊集的隸屬度函數。常用的隸屬度函數有Gamma型,限制等價型(Restricted Equivalence Function,REF)和指數型等。當式(2)最小時對應的T為最佳分割閾值。

1.3 二維直方圖

令f(x,y)(1≤x≤M,1≤y≤N)表示一幅大小為M×N的圖像。每個像素點的d×d鄰域內的平均灰度值為:

(3)

設f(x,y)=i,g(x,y)=j,0≤i,j≤L-1,L為圖像的最大灰度級。則二維直方圖定義為:

(4)

式中:num(f(x,y)=i∩g(x,y)=j)表示灰度值為i及其鄰域平均灰度值為j的像素點出現的次數。Pi,j構成圖像的二維直方圖,如圖1所示。圖中:A1,A2,…,An為背景或目標區域,其他區域為邊界或噪聲區域。T={t1,t2,…,tn-1}和S={s1,s2,…,sn-1}分別為灰度空間和鄰域灰度空間上的n-1閾值。

圖1 二維多閾值分割直方圖

1.4 PSO算法

Eberhart等[19]在1995年提出了PSO算法。其具體步驟如下。

步驟1設置PSO算法的各參數:學習因子c1和c2,慣性因子wmax和wmin,種群大小N,最大迭代次數G,搜索空間維數D。初始化粒子的速度和位置。

步驟2計算適應度函數,并根據算法的具體要求得到全局最佳位置及其適應度值。

步驟3按照下式更新粒子的速度、位置和慣性因子。t為當前迭代次數,r1和r2均為[0,1]上的隨機數。

(5)

(6)

w(t)=wmax-(wmax-wmin)×t/G

(7)

步驟4判斷是否滿足終止條件。若滿足,輸出全局最優位置,若不滿足,則返回步驟2。

2 算法設計

2.1 二維模糊散度

模糊散度可以衡量兩個模糊集之間的差別,而模糊集一般用隸屬度函數表示。常用的隸屬度函數僅考慮圖像像素的灰度信息,而未考慮其空間鄰域信息。本文選擇REF2型隸屬度函數[20]建立圖像的模糊集,設T={t1,t2,…,tn-1}和S={s1,s2,…,sn-1}分別為灰度空間和鄰域灰度空間上的n-1個閾值。則對應空間上的多閾值隸屬度函數分別為:

(8)

(9)

式中:c為歸一化參數;ma1,ma2,…,man和mb1,mb2,…,mbn分別為定義在二維直方圖上的灰度空間和鄰域灰度空間不同區域的均值。

(10)

(11)

(12)

式中:gmax和gmin分別為圖像的最大和最小灰度值;t0=0,tn=L-1,s0=0,sn=L-1;Pi,j為二維直方圖。

因此,二維灰度空間下的二維多閾值隸屬度函數為:

(13)

則二維多閾值α-型模糊散度為:

(14)

當其達到最小值時對應的閾值為最優閾值。

2.2 基于線性函數改進的PSO算法(IPSO)

PSO算法中,學習因子c1和c2分別控制著當前粒子向個體最優位置和全局最優位置的學習能力,即分別控制著PSO的“自我認知”和“社會認知”部分。粒子在不同c1和c2值下的搜索能力不同。在迭代初期,粒子與個體最優距離較近,與全局最優距離較遠,需要增強粒子的“自我認知”能力,減弱“社會認知”能力,即需要較大的c1值和較小的c2值。在迭代后期,粒子與個體最優距離較遠,與全局最優距離較近,需要減弱粒子的“自我認知”能力,增強“社會認知”能力,即需要較小的c1值和較大的c2值。但經典PSO算法中,c1和c2值都是固定值。因此,本文采用線性遞減和線性遞增函數分別對PSO算法的“自我認知”和“社會認知”部分進行改進:

(15)

(16)

式中:c10和c20為學習因子的初始值;t和G分別為當前迭代次數和最大迭代次數。則改進后的速度更新公式為:

(17)

2.3 基于IPSO的二維模糊散度多閾值圖像分割

步驟1輸入待分割圖像,若為彩色圖像,則將其轉化為灰度圖像;統計最大灰度值gmax和最小灰度值gmin;計算圖像的二維直方圖Pi,j。

步驟2設置IPSO算法的各參數:學習因子c10和c20,慣性因子wmin和wmax,種群大小N,最大迭代次數G,優化求解問題的維數D。分別在灰度空間和鄰域灰度空間上初始化粒子的位置和速度。

步驟3分別對灰度空間和鄰域灰度空間上的位置按升序排序,并有序賦值給對應空間上的多個閾值。

步驟4選擇REF2型隸屬度函數建立圖像的模糊集。根據式(13)計算二維多閾值隸屬度函數,再根據式(14)計算二維多閾值α-型模糊散度作為IPSO算法的適應度函數。通過極小化適應度函數確定最佳適應度值和全局最優位置。

步驟5根據式(6)-式(7)和式(15)-式(17)更新粒子的慣性因子、速度和位置。

步驟6判斷是否到達最大迭代次數。若是,則輸出灰度空間和鄰域灰度空間上的全局最優位置并作為最優閾值實現圖像的多閾值分割;若不是,則返回步驟3。

3 實 驗

本文選擇Berkeley BSD500圖庫[21]中的#3063、#3096、#118035、#24063、#241004和#55067進行仿真實驗,閾值數目分別為1、1、2、2、3、4。

所有實驗環境均為:Windows 8;Intel Core-i5 CPU;4.00 GB RAM;MATLAB R2014a。

3.1 對比算法和參數設置

為驗證本文算法的有效性,采用的對比算法為2DOtsu算法[7]、WPA2DOtsu算法[12]和2DKLMPSO算法[16]。α-型模糊散度中,參數α=0.5。像素鄰域大小為3×3。IPSO算法中,學習因子c10=2,c20=2,慣性因子wmin=0.4,wmax=0.9。種群大小N=50,最大迭代次數G=100。

3.2 性能指標

為進一步驗證本文算法的有效性,選擇峰值信噪比[14](Peak Signal to Noise Ration,PSNR),特征相似性[14](Feature Similarity Index,FSIM)和分類誤差[22](Misclassification Error,ME)客觀評價本文算法的性能。

PSNR值越大,表示失真越小,圖像分割效果越好。

(18)

(19)

FSIM值越大,表示分割后圖像的質量越好。

(20)

PCmax(x)=max(PC1(x),PC2(x))

(21)

SL(x)=[SPC(x)]?·[SG(x)]β

(22)

(23)

(24)

式中:δ為整幅圖像的像素域,PC1(x)和PC2(x)分別為原始圖像和分割后圖像的相位一致性,G1(x)和G2(x)分別為原始圖像和分割后圖像的梯度幅值,?、β、M1和M2為常數。

ME值越小,表示被錯分的像素越少,分割后圖像的質量越好。

(25)

式中:mT1,mT2,…,mTn表示實際分割圖像對應區域的像素;mo1,mo2,…,mon表示理想分割或者Ground-Truth對應區域的像素。

3.3 實驗結果

所選6幅測試圖像的多閾值分割結果如圖2-圖7所示,其中:(a)和(b)分別為原圖像和Ground-Truth,(c)-(f)分別為2DOtsu算法、WPA2DOtsu算法、2DKLMPSO算法和本文算法的分割結果。PSO算法和IPSO算法對各測試圖像的收斂曲線如圖8所示。表1列出了4種算法對各測試圖像的性能指標值。

圖2 圖像#3063單閾值分割結果

圖3 圖像#3096單閾值分割結果

圖4 圖像#118035二閾值分割結果

圖5 圖像#24063二閾值分割結果

圖6 圖像#241004三閾值分割結果

圖7 圖像#55067四閾值分割結果

表1 各算法PSNR值,FSIM值和ME值對比

續表1

對于#3063和#3096,2DOtsu算法和WPA2DOtsu算法出現大量像素誤判現象,本文算法相比于2DKLMPSO算法,可以保留更多的機身信息,由表1可以看出,本文算法的3種指標值優于對比算法。對于#118035,本文算法對房頂處理較好,表1列出的3種性能指標值也優于對比算法。對于#24063,本文算法對右上角的處理較好,其PSNR值、FSIM值和ME值保持一定的優勢。對于#241004,2DOtsu算法和WPA2DOtsu算法對草地處理較差,2DKLMPSO算法將部分山峰誤分為天空,本文算法的分割結果更接近于Ground-Truth,其PSNR值和FSIM值保持一定的優勢,但ME值不及2DOtsu算法。對于#55067,2DOtsu算法和WPA2DOtsu算法出現大量邊緣像素誤判現象,2DKLMPSO算法出現部分山巒錯分現象,本文算法的分割結果在視覺效果上更接近于Ground-Truth,其對應的PSNR值、FSIM值和ME值也優于對比算法。

由圖8可以看出,相比于PSO算法,改進后的IPSO算法可以有效改善過早收斂,陷入局部最優的現象,能夠擴大最優解的搜索范圍,保持解的多樣性。

對6幅測試圖像,本文算法的平均運行時間為68.675 0 s,未加IPSO算法的二維多閾值α-型模糊散度平均運行時間在64 800 s以上。本文算法耗時明顯較少。

4 結 語

本文提出一種基于IPSO的二維模糊散度多閾值圖像分割算法。首先,在二元灰度空間上建立二維多閾值隸屬度函數,進而構造二維多閾值α-型模糊散度作為選取最佳閾值的準則函數;其次,用線性遞減和線性遞增函數分別對PSO算法的“自我認知”和“社會認知”部分進行改進,以改善PSO算法易陷入局部最優,造成虛假收斂的問題;最后,為解決未加優化的二維多閾值分割算法耗時長的問題,用改進后的IPSO算法優化求解二維多閾值α-型模糊散度的最優閾值,實現圖像的多閾值分割。實驗結果表明,本文算法對不同測試圖像有較好的分割結果,提高了分割精度,同時節省了大量時間。

猜你喜歡
散度鄰域灰度
基于混合變鄰域的自動化滴灌輪灌分組算法
采用改進導重法的拓撲結構灰度單元過濾技術
含例鄰域邏輯的薩奎斯特對應理論
融合t-分布隨機鄰域嵌入與自動譜聚類的腦功能精細分區方法
天津港智慧工作平臺灰度發布系統和流程設計
Bp-MRI灰度直方圖在鑒別移行帶前列腺癌與良性前列腺增生中的應用價值
Arduino小車巡線程序的灰度閾值優化方案
靜電場邊界問題專題教學方法探索及推廣應用
綿陽機場冬季連續濃霧天氣成因及特征分析
鄰域平均法對矢量圖平滑處理
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合