吳言楓,王延杰,孫海江*,劉培勛
(1.中國科學院 長春光學精密機械與物理研究所,吉林 長春 130033;2.中國科學院大學 材料科學與光電技術學院,北京 100049)
“低小慢”目標是指在超低空(5~100 m)或低空(100~2 000 m)飛行、飛行速度小于200 km/h、且不易被發(fā)現(xiàn)的小型航空器或空中漂浮物。以無人機為代表,因其購買渠道多樣、制造成本低、操作方便,敵對勢力可能通過無人機攜帶微型相機或炸藥對重要區(qū)域造成威脅,檢測“低小慢”目標已成為維護空防安全的重點課題?!暗托÷蹦繕嗽谶h距離時呈現(xiàn)小目標特性,在圖像上所占像素較少(僅占幾個或十幾個像素),缺乏背景先驗信息和檢測過程中很重要的紋理特征,所以傳統(tǒng)的檢測手段難以滿足檢測要求。
為了準確檢測到此類目標,各國學者已經進行了大量研究,并提出了多種算法。Jing Hu等人利用基于循環(huán)掩膜的非局部均值濾波建立背景估計模型,通過將圖像的灰度分布和時間信息聯(lián)系起來,實現(xiàn)紅外點目標檢測[1]。Weiping Yang等人將二維中值濾波簡化為一維中值濾波,進行背景消除,剔除虛假目標[2]。鄧鶴等人通過圖像的局部熵(Local Entropy,LE)和一維經驗模態(tài)分解(Empirical Mode Decomposition,EMD)實現(xiàn)小目標檢測[3]。Sungho Kim應用Laplacian尺度空間理論尋找最佳尺度中的全局最大值,并通過Tune-Max估算目標的位置和尺度,應用Hessian矩陣剔除了虛假目標[4]。E.Abdelkawy等人使用二維高斯函數(shù)構建字典,提出了2D-FOS二維正交搜索算法,算法的時間復雜度主要取決于字典中的候選目標數(shù)量和圖像尺寸,該算法與其他正交方法相比,計算時間明顯減少[5]。Sungho Kim等人提出了區(qū)域自適應濾波器,濾波器使用幾何分析進行區(qū)域分割,同時采用了空間一致性濾波器剔除虛假目標[6]。解婷等人提出基于同組過濾器(Peer Group Filter,PGF)、二維經驗模式分解(Bidimensional Empirical Mode Decomposition,BEMD)和局部逆熵(Local Inverse Entropy,LTE)的新型紅外小目標檢測算法,其中PGF被用來消除噪聲,BEMD可以有效地估計背景并將背景從原始圖像中移除,LTE可以實現(xiàn)有效分割,得到目標[7]。
通?!暗托÷蹦繕说臋z測方法可以分為兩大類:一類是對于單幀圖像進行目標檢測。這一類方法使用濾波算法來剔除復雜背景和估計前景目標。形態(tài)學Top-Hat變換[8]、高通濾波[9]和匹配濾波[10]等算法均可以實現(xiàn)目標的實時檢測,但在低信噪比條件下準確率不高。二維熵[11]、小波變換[12-14]、偏微分方程(Partial Differential Equations,PDE)[15]和概率主成分分析矩陣[16](Principal Component Analysis,PCA)等方法的檢測準確率較高,但無法實現(xiàn)實時檢測。另一類方法是基于多幀圖像檢測目標。該類方法需要通過幀間上下文信息來實現(xiàn)目標檢測[17-19],如粒子濾波[20]、移動式加權管道濾波[21-22]和似然比檢驗[23]等方法。這類算法準確率很高,但無法在目標隱匿于背景或噪聲的情況下進行有效檢測。
本文分析了低空慢速小目標的灰度特性,采用局部對比度直方圖生成視覺顯著性圖像,使用形態(tài)學梯度和三幀差分算法去除復雜天空背景得到種子點,并通過掃描線填充算法生長出目標。最后提出自適應雙高斯算法分割出前景,并根據(jù)候選目標的面積占比變化、質心距離變化、寬高比差異來剔除虛假目標,完成檢測。
人眼視覺顯著性是人類感知系統(tǒng)對視覺信號的響應。根據(jù)心理學研究,視覺信號具有獨特性、稀缺性以及奇異性,視覺系統(tǒng)更容易獲取圖像中的顏色、紋理、形狀、亮度等高對比度特征。對比度根據(jù)位置劃分可以分成全局對比和區(qū)域對比兩種。圖像的全局對比傾向于將目標和周圍環(huán)境分離,而圖像的區(qū)域對比主要受目標和周圍區(qū)域影響,相距很遠的區(qū)域所起的作用較小。圖1(a)是可見光相機拍攝的低空慢速小目標的原始圖像,圖1(b)反應了目標和周圍區(qū)域的灰度分布情況,圖1(c)顯示了原始圖像的三維能量分布情況。通過觀察可以發(fā)現(xiàn),低空慢速小目標所占像素較少且缺乏紋理信息。在復雜的天空背景中,干擾因素主要以噪聲、云層、部分的地面場景和光照變化為主。在此情況下,目標和背景的灰度值存在明顯差異,目標與相鄰區(qū)域的對比度同樣會存在明顯差異,所以“低小慢”目標具有較為明顯的顏色統(tǒng)計特征。因此,本文決定依據(jù)圖像的顏色全局對比[24]來提取圖像的視覺顯著性圖像。
圖1 “低小慢”目標的特征分析圖像 Fig.1 Feature analysis of the LSS-target image
圖像中像素的顯著性特征值可以用其與圖像中其他像素點的顏色對比度來定義:
(1)
C(Ip,Iq)=‖Ip-Iq‖ ,
(2)
其中:I表示原始圖像,Ip、Iq表示圖像中的任意像素,取值范圍是[0,255],Sal(Ip) 為該像素的顯著性值,C(Ip,Iq) 為每個像素的顯著性特征值與圖像中其他所有像素的歐式距離總和,‖·‖為顏色距離度量。公式(1)展開后的形式如下:
Sal(Ip)=C(Ip,I1)+C(Ip,I2)+…C(Ip,IN) ,
(3)
其中:N為圖像中的像素總數(shù)量。如果進行上述計算,時間復雜度會很高,為了提高算法的實時性,通過直方圖對像素按照顏色特征值歸類,在此定義下,相同顏色的像素點具有相同的顯著性值,特征值的計算即可簡化為如下形式[25]:
(4)
其中:fn為特征值的出現(xiàn)頻率。圖2(a)表示的是原始圖像的顏色直方圖,圖2(b)表示的是不同顏色對應的顯著性值。圖2(c)表示了視覺顯著性圖。
圖2 視覺顯著性結果 Fig.2 Visual saliency results
為了在視覺顯著性特征圖中找到種子點,本文將形態(tài)學基本梯度[26]與三幀差分算法[27]進行了融合,提出了梯度差分算法。首先,利用參考點位于中心的3×3正方形掩模分別提取相鄰且連續(xù)的視覺顯著性圖像的基本形態(tài)學梯度特征。然后對提取到的特征進行三幀差分,從而獲得種子點。算法原理如圖3所示。
圖3 梯度差分算法原理圖 Fig.3 Schematic diagram of gradient difference algorithm
2.2.1 數(shù)學形態(tài)學梯度
數(shù)學形態(tài)學[28]是一種基于形狀的圖像處理操作,包含膨脹、腐蝕、二值開閉、形態(tài)學梯度、Top-Hat變換等多種形態(tài)學的代數(shù)運算子。計算圖像的形態(tài)學梯度是幾種重要的形態(tài)學操作之一,該方法適用于圖像的特征抽取,由形態(tài)學最基本的膨脹和腐蝕兩種基礎操作適當?shù)慕M合實現(xiàn)。
膨脹是將與物體接觸的所有背景點合并到該物體中,使邊界向外部擴張的過程。用結構元素和原圖像做卷積,計算結構元素所覆蓋區(qū)域的最大值,并賦值給參考點指定像素的過程。其數(shù)學表達式如下:
(5)
其中:X為原始圖像,Y為結構算子,E為掩膜。
腐蝕是一種消除邊界點,使邊界向內部收縮的過程??梢杂脕硐∏覠o意義的物體。其用結構元素和原圖像做卷積,計算結構元素所覆蓋區(qū)域的最小值,并賦值給參考點指定像素。
其數(shù)學表達式如下:
X·Y={E|((Y)E?X)} .
(6)
常見的形態(tài)學梯度包含基本梯度、內部梯度、外部梯度、方向梯度4種。內部梯度是原圖像與腐蝕后圖像的差值圖像;外部梯度是膨脹后圖像與原圖像的差值圖像;方向梯度是使用水平方向與豎直方向的直線作為結構元素得到的,水平方向與豎直方向的結構元素分別為膨脹圖像與腐蝕圖像的差值圖像;基本梯度是膨脹后圖像與腐蝕后圖像的差值圖像。
為了獲取更多種子點,本文使用基本形態(tài)學梯度進行計算,其數(shù)學表達式如下:
dst=X⊕Y-X·Y.
(7)
2.2.2 差分算法
幀間差分算法[29]是通過對視頻圖像序列的連續(xù)兩幀圖像做差分運算獲取運動區(qū)域的算法。相鄰兩幀圖像之間的差別即為對應位置像素值差的絕對值。其數(shù)學公式描述如下:
B(x,y)=|An+1(x,y)-An(x,y)} ,
(8)
(9)
其中:B(x,y)表示相鄰兩幀圖像的差分結果,D(x,y)表示差分算法的分割結果,P為經驗閾值。
使用幀間差分算法進行檢測時,會產生“空洞”和“鬼影”現(xiàn)象,且無法識別靜止或運動速度很慢的目標,故不能作為“低小慢”目標檢測的有效手段。三幀差分算法在兩幀差分算法的基礎上進行了改進,算法將相鄰三幀圖像并為一組進行差分,能夠準確檢測到運動目標之中的像素點,可以作為提取種子點的有效手段。其數(shù)學公式描述如下:
(10)
(11)
(12)
其中:W(n+1,n)和W(n,n-1)表示相鄰兩幀圖像的分割結果,Diff(x,y)表示三幀差分算法的分割結果,Q為經驗閾值。
圖4 梯度差分結果 Fig.4 Gradient difference results
梯度差分的效果如圖4所示,從實驗效果可以看出,基于局部對比度的顯著性特征圖像在經過形態(tài)學基本梯度運算后,相當于第二次過濾了圖像的顯著性前景特征,由此再進行差分算法,得到的種子點更為精確,且種子點所在區(qū)域與實際前景區(qū)域基本穩(wěn)合。梯度差分算法可以自動獲得具有明顯區(qū)域性的種子點,且基于強灰度特征差分后得到的種子點具有較好的可控生長門限,可以避免生長過后分割成過多區(qū)域這一情況的出現(xiàn)。
區(qū)域生長[30]是指將成組的像素或區(qū)域發(fā)展成為更大區(qū)域的過程。該過程從圖像內部的指定像素點(種子點)開始,由此出發(fā)找到所有具有相似屬性的像素點并合并到此區(qū)域。首先檢測種子點的顏色,若其與邊界像素點和指定填充色均不相同,則用填充色填充該點。然后檢測相鄰像素點,重復以上判定,直到檢測完圖像中的所有像素點為止。從當前點檢測相鄰像素的傳統(tǒng)方法有兩種:一種為四向搜索,是指從四連通區(qū)域尋找下一個像素;另一種為八向搜索,是指從八連通區(qū)域尋找下一個像素。區(qū)域生長是一個迭代的過程,這里每個種子像素點都迭代生長,直到處理過每個像素。
傳統(tǒng)的區(qū)域生長算法[31]雖然能提供良好的邊界信息和分割結果,但是迭代過程導致了算法時間復雜度較高,實時性不好。本文改進的基于掃描線填充的區(qū)域生長算法采用的是一種避免遞歸,提高效率的思想。該算法不再采用遞歸方式處理圖像的四鄰域區(qū)域和八鄰域區(qū)域,而是沿水平方向分行掃描并填充像素段,以分段形式處理相鄰的像素點。
算法流程(圖5)如下:
(1)初始化一個空的堆棧用于存放梯度差分算法得到的種子點,并將種子點壓入堆棧。
圖5 掃描線填充算法流程圖 Fig.5 Flow chart of scan line filling algorithm
(2)記錄種子點的顏色屬性,然后沿種子點所在掃描線分別沿左、右兩個方向進行生長,判斷符合要求的像素段并進行填充,直到掃描至圖像邊界為止。判定公式如下:
(13)
其中,PR、PG和PB分別表示所掃描像素在R、G、B通道的灰度值。βR、βG和βB分別表示該行種子點在R、G、B通道像素的灰度值。τR、τG和τB為判定閾值。
(3)記下填充后掃描區(qū)段的起始坐標,確定與這一區(qū)段相連通的上、下兩條掃描線上是否存在連續(xù)的符合如下判定要求的像素點:
(14)
其中,γR、γG和γB分別表示相鄰掃描線上像素在R、G、B通道像素的灰度值。σR、σG和σB為判定閾值。
如果存在,則將該區(qū)段左右兩端的像素點作為新的種子點保存起來并依次壓入堆棧。
(4)繼續(xù)步驟(2),直到填充結束。
本文改進的區(qū)域生長算法考慮了掃描線上像素的相關性,種子像素不再代表一個孤立的像素,而是代表一個尚未填充的區(qū)段。算法在處理過程中只需要將每個水平像素段的起始點壓入堆棧即可,不需要將當前種子點周圍所有尚未處理的鄰域點都壓入堆棧迭代生長,可以節(jié)省堆??臻g。并且本算法在選取生長所需的新的種子點時充分考慮了其鄰域像素點的相似性,區(qū)域生長過程中不再對已經掃描過的像素段進行迭代計算,算法的時間復雜度較低,且生長后的圖像前景具有更好的區(qū)域連通性。
為了在圖像中分離出前景,本文提出了一種新的自適應閾值分割算法。算法使用雙高斯函數(shù)來擬合圖像的直方圖,并采用最大似然估計自適應求解出谷底最小值,將其設為最佳閾值有效提取前景。
直方圖可以表示圖像組成成分在灰度級的概率分布。每個概率值表示小于或等于該灰度值的概率。設灰度級為[0,L-1]范圍的數(shù)字圖像的直方圖是離散函數(shù),則有:
H(sk)=n(k)k=0,1,…L-1 ,
(15)
(16)
其中:n為圖像的總像素數(shù)量,sk為第k級圖像的灰度,nk為灰度級為sk的像素總數(shù)。P(sk)為灰度級sk的概率密度。對于經過改進區(qū)域生長算法處理后的圖像,目標和背景的直方圖通常呈現(xiàn)雙峰特性,且服從高斯分布,故本文采用雙高斯函數(shù)來對直方圖進行擬合:
(17)
其中,a1,b1,c1,a1,b2,c2為待確定參數(shù),采用最大似然估計對上述方程進行求解:
(18)
對上式取對數(shù):
(19)
求L對a1,b1,c1,a2,b2,c2的偏導數(shù)為零的解:
(20)
(21)
(22)
(23)
(24)
(25)
使用本方法擬合后的直方圖具有明顯的極大極小值,擬合結果如圖6所示。
圖6 雙高斯函數(shù)擬合直方圖結果 Fig.6 Double Gauss function fitting histogram results
通過式(19)~(24)可求得a1,b1,c1,a2,b2,c2的估計值,將其代入公式即可求得函數(shù)的谷底最小值:
(26)
將谷底最小值作為分割閾值代入公式,即可有效提取前景。
(27)
本文提出的基于雙高斯擬合直方圖的自適應閾值分割算法結果如圖7所示。
圖7 自適應閾值分割結果 Fig.7 Adaptive threshold segmentation results
理想的“低小慢”目標是一個閉合的連通區(qū)域,呈現(xiàn)斑點狀、具有較小的熵和近似均勻的強度,可以根據(jù)候選目標的面積占比變化、質心距離、填充率差異、寬高比差異來剔除虛假目標,降低虛警率。其計算方法如下:
①自動獲得所有包含疑似目標的最小外接矩形;
②計算目標面積占比:
(28)
③計算目標中心距離變化:
(29)
④計算寬高比:
(30)
表1 剔除虛警流程Tab.1 Eliminating false alarm process
為了驗證本文算法的有效性,本文選取了涵蓋目標尺度變化,光照變化,姿態(tài)變化,遮擋等復雜情況的7組視頻進行了測試(表2),并將實驗結果與Vibe算法[32]、PBAS算法[33]進行了對比分析。為了保證實驗結果的公平性和準確性,本文使用引用文章的開源代碼進行了測試。
表2 實驗中的測試視頻Tab.2 Test sequences in our experiments
本文算法采用C語言編寫,在Intel(R) Core (TM) i5-6500 CPU@3.2 GHz,4.00GB內存,Windows7系統(tǒng)的電腦上,應用OpenCV 2.4.10 和Microsoft Visual Studio 2010軟件搭建了實驗環(huán)境并編寫算法。本文算法中Q=80,τR,G,B=30,σR,G,B=20。
表2中局部信雜比(Signal to Clutter Ratio,SCR)的計算方式如下:
(31)
(32)
其中,Jt為目標個數(shù),SCRi為第i個目標的信雜比。
為了定量分析檢測算法的性能,實驗中采用檢測準確率Pd(Detection accuracy)、虛警率Pfa(False alarm rate)以及算法的時間復雜度(Time complexity)來評價算法的檢測效果[35]:
(33)
(34)
其中,Nt表示正確檢測到的目標幀數(shù),Na表示實際含目標視頻的總幀數(shù),Nf表示檢測到的目標虛警總數(shù)量,N表示測試視頻序列的總幀數(shù)。
本文使用3種檢測算法分別對7組視頻進行了測試,獲得的檢測準確率Pd,虛警率Pfa,算法的時間復雜度分別如表3、表4所示。其中,算法的平均耗時為測試視頻中單幀檢測時間最大值和最小值的平均值,算法的總耗時為完成完整測試視頻所用的時間。
表3 檢測準確率Pd及虛警率PfaTab.3 Detection accuracy and false alarm rate (%)
表4 算法的時間復雜度Tab.4 Average time consumption and total time consumption of the proposed algorithm
圖8 對比實驗結果 Fig.8 Comparison of experimental results for different algorithms
為了更直觀地說明對比結果,圖8給出了本文算法及對比算法的實驗結果。其中,圖8(a)為原始測試圖像視頻序列(Vedio1-Vedio7),圖8(b)為Vibe(Visual Background Extractor)算法的實驗結果,圖8(c)為PBAS(The Pixel-Based Adaptive Segmenter)算法的實驗結果,圖8(d)為本文算法實驗結果。
通過對比可以看出,Vibe算法在動態(tài)復雜天空背景環(huán)境下進行檢測時具有明顯的“鬼影”現(xiàn)象,檢測準確率較低。在此基礎上改進的PBAS算法可以去除大面積的“鬼影”,并在信雜比大于3的視頻序列中具有較高的檢測準確率,但是算法時間復雜度較之前更高,在低信雜比環(huán)境下檢測準確率較低。本文提出的算法在信雜比小于1的視頻序列中仍具有81.6%的檢測準確率,且虛警率較低,僅為5.1%。算法的時間復雜度、檢測準確率Pd及虛警率Pfa這3個評價標準對于7個測試視頻均達到最佳,在信雜比較低的視頻序列中,檢測準確率較其他算法平均提高了11.4%,時間復雜度僅為Vibe和PBAS算法的十分之一。本文算法在光照變化、尺度變化、姿態(tài)變化及背景干擾的情況下依舊具有較好的魯棒性,優(yōu)于Vibe和PBAS算法。
從圖9可以看出,算法可以在復雜動態(tài)天空背景中剔除虛假目標并準確發(fā)現(xiàn)真正目標,矩形框代表算法自動檢測到的“低小慢”目標。
圖9 本文算法檢測結果 Fig.9 Detection results by proposed algorithm
為了在復雜天空背景下檢測出低空慢速小目標,本文在應用局部亮度對比度提取圖像視覺顯著性特征的基礎上,融合了形態(tài)學梯度和三幀差分算法來獲取種子點,通過改進的掃描線填充算法有效去除復雜背景。同時,提出了新的自適應直方圖分割算法來提取前景,并根據(jù)目標的面積占比變化、質心距離變化、寬高比差異剔除虛假目標,完成檢測。
對7組測試視頻進行實驗,實驗結果和數(shù)據(jù)表明:本文提出的算法對運動目標檢測的平均運行時間為0.040 9 s,平均檢測準確率為89.97%,相比于其他算法平均運算時間減少了0.35 s,檢測的平均準確率提高了24.5%。與其他的優(yōu)秀檢測算法相比,本文算法能夠獲得更多的有效信息并減少背景信息的干擾,具有更好的魯棒性和更好的實時性。