牛天利, 于麗霞,劉 吉,,武錦輝,牛雅昕
(1.中北大學(xué) 信息與通信工程學(xué)院,山西 太原 030051;2.中北大學(xué) 電子測試技術(shù)重點(diǎn)實(shí)驗(yàn)室,山西 太原 030051)
破片圖像處理是靜爆場破片參數(shù)測量的重要步驟之一,靜爆之后的破片在運(yùn)動過程中具有目標(biāo)小、數(shù)量多和尺寸不一等特點(diǎn),且在圖像中還存在復(fù)雜的強(qiáng)火光背景和炸藥未燃燒殆盡導(dǎo)致的運(yùn)動破片灰度值相差較大等問題[1]。因此,在圖像處理的過程中,將有效破片的運(yùn)動區(qū)域和復(fù)雜的背景區(qū)域進(jìn)行較高精度的劃分有著重要的意義,圖像分割是將其進(jìn)行分離的重要步驟之一,分割的精度將直接影響到后期破片的檢測和識別準(zhǔn)確度。常用于圖像分割破片目標(biāo)的方法主要是基于一維灰度直方圖的閾值門限法和改進(jìn)的最大類間方差的方法等,但是這些方法更適用于具有單一目標(biāo)、前景和背景灰度分布差別較大的破片圖像中,而其余傳統(tǒng)的圖像分割方法,包括基于區(qū)域、圖論、超像素和活動輪廓模型的方法,在實(shí)現(xiàn)過程中都存在時間復(fù)雜度較高的問題,實(shí)時性較差[2-4]。自卷積神經(jīng)網(wǎng)絡(luò)發(fā)展以來,基于深度學(xué)習(xí)的小目標(biāo)分割也應(yīng)運(yùn)而生,但是基于深度學(xué)習(xí)的方法需要大量的數(shù)據(jù)集,并且在復(fù)雜的背景下算法的魯棒性較差[5-7]。考慮到破片圖像成像環(huán)境的復(fù)雜性和圖像分割結(jié)果的特定應(yīng)用場合,目前還沒有普適的分割技術(shù)能夠應(yīng)用在處理這類圖像中[8-9]。本文利用破片序列圖像之間的相關(guān)性,采用幀差的方法對圖像進(jìn)行預(yù)處理后初步消除其背景[10-11],采用蜜獾算法(Honey Badger Algorithm,HBA)優(yōu)化的Tsallis相對熵多閾值圖像分割算法對其進(jìn)行較為精確的閾值分割。
HBA是求解優(yōu)化問題的新型元啟發(fā)式算法之一。元啟發(fā)式算法是在現(xiàn)實(shí)問題的復(fù)雜性和難度不斷增加的過程中,為了適應(yīng)不同的應(yīng)用場合而不斷發(fā)展的,具有靈活、無梯度機(jī)制、避免局部最優(yōu)和計算成本低等優(yōu)勢[12-13]。
HBA是基于蜜獾的覓食行為發(fā)展而來的一種求解優(yōu)化問題的高效搜索策略,是一種全局優(yōu)化算法[14]。蜜獾的覓食行為可分為兩種,一種是通過自身嗅和挖來尋找食物;另一種是通過跟隨引導(dǎo)獾定位蜂巢。該算法將蜜獾的這兩種行為分別設(shè)定為挖掘模式和采蜜模式,在算法實(shí)現(xiàn)中主要用于更新個體位置。HBA與大多數(shù)算法相同,都由探索和開發(fā)2個重要部分組成,探索將搜索范圍擴(kuò)展到搜索空間中較遠(yuǎn)的區(qū)域,開發(fā)是在搜索到的有效區(qū)域進(jìn)行局部目標(biāo)搜索[15-16]。探索和開發(fā)本質(zhì)上是兩種相互矛盾的功能,需要控制種群中的隨機(jī)性確保兩者功能的平衡[17-18]。HBA結(jié)構(gòu)大體分為種群初始化、種群評估和更新參數(shù)3部分,其包括3個主要控制參數(shù),分別為強(qiáng)度I、隨機(jī)控制因子α和改變搜索方向的標(biāo)志F。強(qiáng)度I用于調(diào)整由探索到開發(fā)過程以及避免局部最優(yōu)。隨機(jī)控制因子α在迭代過程中隨時間衰減,減少種群的多樣性,保證探索和開發(fā)階段的平衡。改變搜索方向的標(biāo)志F為給定的搜索空間的搜索提供種群的多樣性。
HBA的實(shí)現(xiàn)步驟如下。
② 對種群大小和其位置進(jìn)行初始化,xi=lbi+r1×(ubi-lbi)。r1為0~1之間的隨機(jī)數(shù);lbi和ubi分別為搜索空間的上邊界和下邊界;l和u分別為自定義數(shù)值范圍的上界和下界;bi一般設(shè)為d維單位矩陣。
⑤ 跳出局部最優(yōu),使用標(biāo)志F改變搜索方向,使得搜索個體嚴(yán)格掃描搜索空間,在實(shí)現(xiàn)過程中與步驟⑥相結(jié)合。
⑥ 更新個體位置xnew,分為挖掘階段和采蜜階段。在挖掘階段,蜜獾的運(yùn)動可用心臟線來表示,xnew=xprey+F×β×I×xprey+F×r3×α×di×|cos2πr4×[1-cos(2πr5)]|。xprey為目前全局最優(yōu)位置;β≥1,表示蜜獾獲取食物的能力,默認(rèn)值為6;di為獵物與第i只蜜獾之間的距離,r3、r4、r5為0~1之間3個不同的隨機(jī)數(shù);F為改變搜索方向的標(biāo)志,r6≤0.5 h時,F(xiàn)=1,其余時候F=-1;采蜜階段是蜜獾根據(jù)蜂蜜向?qū)ふ曳涿鄣那闆r,模擬為xnew=xprey+F×r7×α×di,在這個過程中蜜獾在獵物xprey附近搜索,搜索過程受密度因子α的影響。
Tsallis相對熵是在Tsallis熵和Kullback-Leibler散度的基礎(chǔ)上提出的[19],設(shè)兩個離散有限概率向量A和B分別為A={a1,a2,…,an}和B={b1,b2,…,bn},其中ai,bi≥0且a1+a2+…+an=b1+b2+…+bn=1,則Tsallis相對熵測度為
(1)
(2)
一維分布直方圖情況下Tsallis相對熵的灰度級i對應(yīng)的關(guān)于A1~AN+1的類概率為
(3)
式中:i=1,2,…,L;j=1,2,…,L;μj為分割后某一灰度級的類均值;σj為分割后某一灰度級的類方差。將分割后圖像的灰度級用高斯模型進(jìn)行擬合后表示為
(4)
式中:ri為對分割后圖像高斯擬合后灰度級i在圖像中出現(xiàn)的頻率。將H和R對應(yīng)的概率分布帶入式(1)可得:
(5)
將式(5)作為圖像多閾值分割的準(zhǔn)則,由式(5)可知圖像分割的最優(yōu)閾值就是利用蜜獾算法取得式(5)最小值時對應(yīng)的灰度值,則最佳分割閾值T由式(6)求得,使D(H|R)達(dá)到最小值時的灰度值的集合為
(6)
為了驗(yàn)證本文算法處理破片圖像的精確性和有效性,需要將該方法與經(jīng)典的閾值分割方法,例如Otsu法、最大熵法、最小交叉熵法對高速相機(jī)遠(yuǎn)距離拍攝的破片序列圖像進(jìn)行對比實(shí)驗(yàn),對比其分割效果,之后利用遺傳算法(Genetic Algorithm,GA)、蝗蟲優(yōu)化算法(Grasshopper Optimization Algorithm,GOA)和麻雀搜索算法(Sparrow Search Algorithm,SSA)與HBA進(jìn)行Tsallis相對熵多閾值分割,驗(yàn)證HBA算法的優(yōu)越性,其中任意選取的序列中的兩幀圖像如圖1所示,在進(jìn)行分割前需要對圖像進(jìn)行幀差反色預(yù)處理,幀差的目的在于將破片目標(biāo)和運(yùn)動背景進(jìn)行粗略地分離。高速破片和復(fù)雜背景以不同的速度運(yùn)動且利用高速相機(jī)在拍攝時幀率高、可拍攝到破片場局部變化等特點(diǎn),選取兩幅合適的間隔幀圖像將相對應(yīng)的灰度值相減,其復(fù)雜背景的運(yùn)動速度比破片的運(yùn)動速度小,幀差之后運(yùn)動破片所在的區(qū)域與背景的差值會表現(xiàn)出較高的像素值,像素值越高,其運(yùn)動趨勢越明顯,該像素位置的目標(biāo)運(yùn)動速度越快,而原背景運(yùn)動速度較慢,幀差之后表現(xiàn)出較低的像素值。為了便于觀察,對其進(jìn)行反色處理,其結(jié)果由灰度值255減去當(dāng)前值得到,反色后像素值越接近于0的部分表示該區(qū)域的破片運(yùn)動速度越快,預(yù)處理結(jié)果圖如圖2所示。實(shí)驗(yàn)在MATLAB2018a上展開,Tsallis相對熵參數(shù)q設(shè)定為0.8。
圖1 原始圖像
圖2 預(yù)處理結(jié)果圖
利用上述的3種經(jīng)典的閾值分割方法對預(yù)處理過的破片圖像進(jìn)行雙閾值的分割,得到分割結(jié)果如圖3所示。
在圖像中灰度值越接近于0的部分表示其在實(shí)際運(yùn)動中的速度越快,該部分是破片所在的像素點(diǎn)的可能性越大,因此分割出預(yù)處理后的圖像中像素值最接近于0的部分至關(guān)重要。為了便于觀察用JET映射的偽彩圖對不同的灰度分布進(jìn)行標(biāo)記區(qū)分,其中藍(lán)色部分表示分割后灰度值為0的部分,由圖3可知,該方法能夠?qū)D像中破片所在的位置粗略分割,但是對于圖像中左下角區(qū)域中較難分割的區(qū)域分割效果較差,為了清晰地觀察到該區(qū)域的灰度分布,利用HBA的Tsallis相對熵多閾值圖像分割對破片圖像進(jìn)行實(shí)驗(yàn)和分析。
圖3 3種經(jīng)典閾值分割結(jié)果圖
3.2.1 閾值個數(shù)的選取
利用HBA對圖2進(jìn)行閾值分割,圖像的灰度級為256,算法迭代次數(shù)為200,種群大小為40,分別選取閾值個數(shù)K=2、3、4,得到分割結(jié)果如圖4所示。藍(lán)色部分依然表示的是分割后灰度值為0的部分。分割結(jié)果表明,當(dāng)K分別為2、3和4時,在左下角的局部區(qū)域總能觀察到閾值分割后所需要的前景目標(biāo)是不變的,K=2時的分割結(jié)果已經(jīng)能明顯看出所在目標(biāo),因此,后續(xù)對比分析的閾值個數(shù)K均取值為2。
圖4 基于HBA的多閾值分割圖
3.2.2 GA、GOA、SSA與本文算法對比分析
在對破片圖像的閾值分割過程中,為了比較HBA在閾值分割應(yīng)用中的優(yōu)越性,選取K=2,采用其余算法進(jìn)行對比,其中GA、GOA和SSA分別代表遺傳、蝗蟲和麻雀搜索算法[23-25],將其分別用于對破片圖像進(jìn)行Tsallis相對熵多閾值分割,選取每種算法迭代次數(shù)為200,種群大小為40,則得到GA、GOA和SSA的分割效果如圖5所示。由圖5可以看出,HBA的雙閾值分割結(jié)果明顯優(yōu)于GA、GOA和SSA。
圖5 GA、GOA和SSA雙閾值分割圖
為了對分割結(jié)果和算法性能進(jìn)行客觀描述,從閾值、熵值、實(shí)時性,以及算法的穩(wěn)定性進(jìn)行分析。根據(jù)Tsallis相對熵函數(shù)的式(3)可知,熵值越小,分割后的圖像保留的信息越多。HBA收斂后得到的最小熵值即為最優(yōu)熵值,求得最優(yōu)熵值的閾值為最優(yōu)閾值。算法的實(shí)時性也是檢測該算法性能的重要性能指標(biāo)之一,主要通過算法的運(yùn)行時間來對比,運(yùn)行所須的時間越短,其實(shí)時性越高[26]。算法的穩(wěn)定性通常用算法多次計算結(jié)果的標(biāo)準(zhǔn)偏差(SD)衡量[27],其公式為
(7)
式中:σi為第i次實(shí)驗(yàn)結(jié)束的Tsallis相對熵值;n為實(shí)驗(yàn)重復(fù)次數(shù);μ為n次實(shí)驗(yàn)結(jié)果的均值,進(jìn)行100次多閾值重復(fù)分割實(shí)驗(yàn),驗(yàn)證算法的穩(wěn)定性,標(biāo)準(zhǔn)偏差值越小,其算法的穩(wěn)定性越高,4種方法的性能對比如表1所示。從表1可以看出,利用HBA進(jìn)行圖像分割后所得的閾值為5.14和254.17,5.14最接近0,可以更精確地分割出圖像中灰度值接近0的像素點(diǎn),將其作為單閾值分割的最終閾值;最優(yōu)熵值3.56最小,相比于其他算法,HBA可以保留更多的信息;運(yùn)行時間最短,在100次重復(fù)實(shí)驗(yàn)后求得標(biāo)準(zhǔn)偏差SD約為0,說明基于HBA的多閾值分割方法不但能有效分割出所須的前景目標(biāo),而且其實(shí)時性和算法的穩(wěn)定性也最強(qiáng)。
表1 4種方法的性能對比
為了驗(yàn)證本文算法的有效性,首先,對高速相機(jī)拍攝到的破片序列圖像進(jìn)行幀差預(yù)處理,取幀間隔數(shù)為50;其次,利用本文算法對預(yù)處理過后的圖像進(jìn)行雙閾值分割,選取雙閾值中最小的閾值作為最終的分割閾值對圖像進(jìn)行分割處理,將分割出的目標(biāo)作為破片識別的結(jié)果,并對其進(jìn)行標(biāo)記。由于破片目標(biāo)較小,且形狀不規(guī)則,因此,以破片目標(biāo)的質(zhì)心描述破片的全部信息。破片識別及質(zhì)心標(biāo)記結(jié)果如圖6所示。
圖6 破片識別及質(zhì)心標(biāo)記結(jié)果
根據(jù)高速破片運(yùn)動軌跡的連續(xù)性和方向性,在已有的325幅序列圖像中,分別對第1、51、101、151、201、251、301幀圖像進(jìn)行處理,檢測到的破片個數(shù)如表2所示。
表2 檢測到的破片個數(shù)
對多幀間識別到的破片目標(biāo)進(jìn)行軌跡擬合,每條軌跡的坐標(biāo)數(shù)大于4為有效軌跡,根據(jù)軌跡的條數(shù)確定有效破片的數(shù)量,有效破片軌跡圖如圖7所示。
圖7 有效破片軌跡圖
圖7中有26條連續(xù)的軌跡,即在所有識別到的破片中最終測得26個有效的破片。從表2中可以看出,每幀可識別到的破片平均約為31個,其識別率為
(8)
對破片圖像的多閾值分割方法進(jìn)行了研究,提出了基于HBA的Tsallis相對熵的多閾值分割方法,與經(jīng)典的閾值分割方法相比,所提方法可以較準(zhǔn)確地分割出圖像中灰度值接近于0的部分,并通過對比GA、GOA、SSA的閾值、熵值、實(shí)時性和算法的穩(wěn)定性等性能指標(biāo),說明HBA的性能優(yōu)于其余3種算法。最后,根據(jù)分割出的目標(biāo)繪制破片軌跡,確定有效破片的數(shù)量,結(jié)果表明,識別到的有效破片占總識別到的破片的83.8%,說明利用該閾值分割方法識別破片對視覺測試系統(tǒng)測量破片參數(shù)具有參考價值。