施天俊,鮑廣震,王福海,蘭超飛,鞏晉南
(哈爾濱工業(yè)大學(xué) 空間光學(xué)工程研究中心,哈爾濱 150001)
隨著遠距離紅外探測技術(shù)的發(fā)展,紅外弱小目標(biāo)檢測已成為航天、遙感等領(lǐng)域研究的熱門問題。紅外成像系統(tǒng)具有全天候、抗干擾性強、探測距離遠、低功耗[1]等諸多優(yōu)點,但常存在以下問題:(1)拍攝距離一般較遠,導(dǎo)致目標(biāo)常失去其面形與紋理信息,空間結(jié)構(gòu)表征效率低[2];(2)紅外探測器獲取場景的紅外輻射信息,背景中常存在與目標(biāo)強度相似的雜波干擾,使得檢測虛警率高[3];(3)由于大氣傳輸?shù)扔绊懀t外圖像中目標(biāo)信噪比較低;(4)紅外探測器常存在無效像元,影響成像質(zhì)量[4]。
傳統(tǒng)的紅外圖像目標(biāo)檢測方法?;谝种票尘疤匦曰蛱崛∧繕?biāo)特性展開。抑制背景特性可從空域、變化域兩個方向展開。基于空域的最大中值濾波[5]、形態(tài)學(xué)Top-hat變換[6]等方法,原理直觀,實現(xiàn)簡單,但性能常依賴所選結(jié)構(gòu)元,算法自適應(yīng)能力差?;谧兓虻姆椒ㄓ谢陬l域的譜殘差法[7]和小波域處理算法[8],小波變化實質(zhì)上是提取目標(biāo)的外觀特征信息,檢測效果并不理想?;谀繕?biāo)特征的方法則關(guān)注圖像中的顯著性區(qū)域。若目標(biāo)灰度特征較背景突出,可采用常見的最大類間方差法、極大值檢測法[9],但此類方法易受噪聲干擾,僅在簡單場景下能有較好的檢測效果。Facet模型關(guān)注極值點或方向?qū)?shù)的顯著性,可用于復(fù)雜背景小目標(biāo)檢測中,但目標(biāo)隱于背景時易出現(xiàn)漏檢情況[10]。
近年來,基于機器學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)的算法也被用于紅外小目標(biāo)檢測。如為了增強檢測效果,通過深度卷積神經(jīng)網(wǎng)絡(luò)對訓(xùn)練樣本的學(xué)習(xí),使模糊圖像變至清晰以獲得更多的特性信息[11],也可以篩選小目標(biāo)區(qū)域并抑制虛警[12],但此類方法需要大量的訓(xùn)練樣本進行學(xué)習(xí),并且計算量大,很難滿足實時性要求。
針對傳統(tǒng)算法不能同時滿足不同場景下目標(biāo)檢測的要求和在信噪比較低時虛警、漏警較多的缺陷,以及基于學(xué)習(xí)的算法樣本量需求及計算量大的問題,本文提出了一種更為精確且高效的適用于多場景的紅外弱小目標(biāo)檢測跟蹤算法。該算法基于圖像復(fù)雜度進行紅外場景判別以選擇合適的檢測算法,同時采取檢測與跟蹤結(jié)合的方式減少僅使用單幀檢測所出現(xiàn)的虛警和漏警。
算法總體框架如圖1所示。首先,針對紅外探測器中的無效像元對檢測產(chǎn)生的干擾,通過中值濾波對紅外圖像中的無效像元進行補償;然后,針對不同紅外場景中弱小目標(biāo)的檢測,通過信息熵判斷復(fù)雜度,選用N-P準(zhǔn)則直接檢測或基于顯著性幀間差分法檢測目標(biāo);最終,針對檢測所遺留的虛警與漏警問題,通過改進優(yōu)化后的波門跟蹤法連接目標(biāo)軌跡,篩選目標(biāo)并對漏檢幀中的目標(biāo)位置進行補償。
圖1 算法總體框圖
Fig.1 The flow chart of this algorithm
算法主要分為圖像預(yù)處理、檢測、跟蹤三個模塊,針對提供數(shù)據(jù)集的實際情況,每個模塊都選擇相匹配的理論模型。
紅外探測器件中,由于無效像元的存在會影響成像質(zhì)量,因此,圖像預(yù)處理需要進行無效像元的剔除。無效像元包括死像元和過熱像元,前者定義為像元響應(yīng)率小于平均響應(yīng)率1/10的像元,后者定義為像元響應(yīng)率大于平均響應(yīng)率10倍的像元[13]。在實際的紅外圖像序列中,若存在同一位置處的像素灰度總是保持過大或過小,則可以看作為無效像元,需要進行補償。圖2為紅外圖像中無效像元的出現(xiàn)情況。
由于利用同一探測器得到的紅外圖像序列的無效像元的位置不變,而背景灰度分布處于不斷變動之中,因此對多幀灰度進行累加并取平均得到的圖像中,死像元位置處的灰度值極小,而過熱像元處的灰度值極大,周圍背景灰度分布則相對平緩。對灰度累加圖作中值濾波處理后可得到背景估計圖,如圖3(a)所示。將灰度累加圖與背景估計圖作差得到殘差圖,如圖3(b)所示。殘差圖中過熱像元與死像元位置較背景極為突出,因此選出合適的閾值可以將無效像元的位置篩選出。得到圖像序列中的無效像元位置后,在進行檢測前對無效像元處進行灰度補償。補償方法為:選取以無效像元為中心的區(qū)域,取該區(qū)域的灰度中值替代無效像元處的灰度。圖3(c)為對紅外圖像中無效像元補償后的結(jié)果。
圖2 紅外圖像中無效像元示例
圖3 紅外圖像無效像元補償
Fig.3 Invalid pixel compensation of infrared image
紅外圖像按照背景復(fù)雜度可分為簡單場景和復(fù)雜場景。簡單場景下目標(biāo)灰度特性明顯、背景平緩且起伏小,此時利用合適的閾值分割手段即可將目標(biāo)與背景分離;復(fù)雜場景下背景起伏大,且可能存在許多與目標(biāo)灰度特性相似的區(qū)域,直接利用閾值分割的手段會得到若干虛警,此時問題關(guān)鍵在于如何抑制背景雜波的干擾。因此這里針對圖像復(fù)雜度采取不同的檢測算法。
2.2.1 基于圖像熵的圖像復(fù)雜度的判斷
圖像熵是圖像的信息熵,定義為
(1)
式中:p(Ik)為灰度值Ik的像素比率;b為圖像數(shù)據(jù)的bit數(shù)。圖像熵是一種圖像特征的統(tǒng)計形式,反映了圖像中平均信息量的多少。
若一幅圖像灰度范圍為[0, 255],則圖像熵最大為8。圖像灰度分布越均勻,熵就越大?;叶确植荚骄鶆蛞馕吨鴪D像信息越雜亂,相應(yīng)的圖像背景越復(fù)雜。根據(jù)所提供的紅外數(shù)據(jù)集的測試結(jié)果,一般簡單場景的圖像熵要小于4.5,而復(fù)雜場景的圖像熵要大于5,因此選取圖像熵閾值,可以較好地分開復(fù)雜場景與簡單場景。圖4(a)為簡單場景紅外圖像,圖像熵為4.111 5; 圖4(b)為復(fù)雜場景紅外圖像,圖像熵為6.626 9。
圖4 紅外圖像
Fig.4 Infrared image
2.2.2 基于Neyman-Pearson準(zhǔn)則的閾值分割
紅外系統(tǒng)在檢測判決時,無法估計各種判定可能付出的風(fēng)險,難以確定漏報損失,實際中常根據(jù)具體工作狀況確定一個允許的虛警概率值,然后再使發(fā)現(xiàn)概率達到最大值,因此,Neyman-Pearson(N-P)準(zhǔn)則是紅外系統(tǒng)適用的最佳檢測準(zhǔn)則[14],如圖5所示。
圖5 N-P準(zhǔn)則示例圖
Fig.5 Neyman-Pearson criterion
在利用N-P準(zhǔn)則時,錯誤判決概率P(H1|H0)是虛警概率Pf,而正確判決概率P(H1|H0)是檢測概率Pd,利用拉格朗日乘子法,構(gòu)造目標(biāo)函數(shù)使在P(H1|H0)=α約束下,P(H1|H0)最大。最終通過閾值分割分離圖像中的背景和可能的目標(biāo),簡化的閾值表達式為
Th=E+kσ
(2)
式中:E和σ分別代表待檢測圖像的均值和均方差,通常需要針對不同應(yīng)用場景選取合適的k(通常在3~15之間)進行閾值分割。本算法中基于簡單背景的閾值分割可直接利用N-P準(zhǔn)則。
2.2.3 基于顯著性幀間差分的復(fù)雜背景目標(biāo)檢測
當(dāng)?shù)孛姹尘爸谐霈F(xiàn)小目標(biāo)時,小目標(biāo)具有的顯著特點是其與背景的不相關(guān)性(即存在區(qū)域突變)。這一特性可通過對目標(biāo)圖像做二維離散傅里葉變換體現(xiàn),由此得到的頻譜由幅度A(u,v)和相位P(u,v)兩部分組成:
A(u,v)=|FFT(I(x,y))|
(3)
P(u,v)=Angle(FFT(I(x,y)))
(4)
若去除傅里葉變換后的幅度信息的干擾,僅保留其相位信息,對此相位譜做重構(gòu)就能夠定位到一幅圖像灰度值具有非周期性或者缺乏統(tǒng)一性的區(qū)域,該區(qū)域即為圖像的顯著性區(qū)域[15]。
僅基于顯著性檢測復(fù)雜背景中的目標(biāo)并不能完全消除背景雜波的干擾,如圖6所示,背景中同樣可能存在與目標(biāo)顯著性相當(dāng)甚至更顯著的區(qū)域,此時采用幀間差分可以較好地減少背景雜波的干擾[16],如圖7所示。
圖6 顯著性檢測框圖
Fig.6 The flow chart of detection based on saliency
定義幀間差分數(shù)k,若檢測幀為第i幀,則差分對照幀為第i-k幀。當(dāng)探測器不動時,則輸出圖像中目標(biāo)一直處于運動狀態(tài),而背景則處于靜止?fàn)顟B(tài),分別計算兩幀的顯著性圖像并作差,則可以消除一定的背景雜波影響;當(dāng)探測器處于運動狀態(tài)時,則需要利用特征點匹配的方法匹配出兩幀中具有相同背景的區(qū)域,得到探測器運動的位移量,在對兩幀圖像做好位置補償?shù)幕A(chǔ)上再進行幀間差分,檢測結(jié)果如圖8所示。圖8(a)和(c)分別為檢測幀和幀間差分幀原圖,在進行顯著性計算后結(jié)果如圖8(b)和(d)所示??梢钥闯?,盡管目標(biāo)區(qū)域較為顯著,但仍存在較多背景雜波干擾。圖8(e)為進行幀間差分后的結(jié)果,背景雜波被明顯抑制,最后選取合適閾值可將目標(biāo)檢出,最終結(jié)果如圖8(f)所示。
圖7 顯著性幀間差分檢測算法框圖
Fig.7 The flow chart of detection based on saliency and frame-to-frame difference
(e)顯著性幀間差分圖(f)二值化結(jié)果
圖8 檢測結(jié)果
Fig.8 Detection results
復(fù)雜背景下特征點多,因此可利用特征點匹配的方法進行圖像匹配,采用SURF算法進行匹配。SURF算法以黑塞矩陣為基礎(chǔ),通過構(gòu)造尺度空間以及3D非極大值抑制來篩選出穩(wěn)定的特征點,包括一些具有特殊性質(zhì)的點,如極值點、拐點等。特征點篩選后為之分配主方向并形成特征矢量以進行特征點的匹配,最終完成圖像匹配[17]。
通過計算檢測幀和差分對照幀灰度之差的標(biāo)準(zhǔn)差判斷是否需要SURF算法進行圖像匹配。標(biāo)準(zhǔn)差定義為
(5)
式中:M,N分別為圖像灰度矩陣的行、列數(shù);r為灰度差的平均值。經(jīng)測試得,當(dāng)兩幀圖像中探測器未移動或者移動很小時,σ取值很小,基本在0~2之間;當(dāng)兩幀圖像中探測器移動較大時,σ取值較大,基本在5以上,因此設(shè)置閾值Thσ=3.5,當(dāng)σ大于該閾值時,認為需要進行圖像匹配,反之則不需要。
由于點目標(biāo)無法進行確定性檢測,必須輔助跟蹤算法來提高目標(biāo)檢測的準(zhǔn)確性。一般情況下,低速目標(biāo)的位置是時域連續(xù)而且可導(dǎo)的,所以可以采取波門跟蹤的方式對目標(biāo)進行跟蹤。
在一般的小目標(biāo)情況下,有兩種設(shè)置的波門方法,第一種是以當(dāng)前幀的質(zhì)心作為波門中心,波門的大小通過前幾幀的位置關(guān)系確定,以最大程度確保目標(biāo)不會丟失:
(6)
(x,y)波門=(x0,y0)
(7)
但是這種設(shè)置的波門穩(wěn)定性較差,對鏡頭抖動較為敏感,在鏡頭快速移動時容易跟丟目標(biāo)。另一種波門設(shè)置的方式則是通過前幾幀目標(biāo)位置的關(guān)系確定波門中心,波門大小通過目標(biāo)大小確定。稱為預(yù)測波門跟蹤法,即
(8)
式中:Δx鏡頭,Δy鏡頭通過SURF算法進行計算,為提高運行速度,只對背景改變較大的幀使用。
選用先檢測再跟蹤的算法可以有效抑制其他虛警,僅認為波門內(nèi)的檢測點為正在追蹤的目標(biāo)的真實位置,采用預(yù)測波門跟蹤法極大地提升了跟蹤模型的穩(wěn)定性和對鏡頭移動的魯棒性,并且可以對檢測失敗的圖像進行估計和補償,以獲取完整的軌跡。
算法依次進行圖像預(yù)處理模塊、目標(biāo)檢測模塊、目標(biāo)跟蹤模塊以完成紅外序列圖中目標(biāo)的跟蹤與檢測。
本模塊主要對紅外圖像序列中無效像元進行處理,篩選出無效像元的位置,并對該處灰度進行補償。具體操作步驟如下:
(1)獲取圖像序列的累加平均圖
為了提高無效像元的篩選精度,先將待處理圖像序列等分成四個區(qū)域,之后的處理都將分別在這四個區(qū)域內(nèi)進行;以采樣間隔抽選序列中的圖像,分別對四個區(qū)域的灰度進行累加求和并平均,得到累加平均圖,為保證精度,抽選幀數(shù)必須大于一定數(shù)量,這里針對數(shù)目大于300的圖像序列,選取k=10。
(2)利用中值濾波對無效像元位置進行篩選
分別對四個區(qū)域作中值濾波處理,得到相應(yīng)的殘差圖;由于殘差圖中無效像元位置突出,可直接利用N-P準(zhǔn)則篩選出其位置。利用Th=E+kσ, 選取k=10篩選過熱像元位置;利用Th=E-Kσ, 選取k=10篩選死像元位置。
(3)對無效像元位置處灰度進行補償
選取以無效像元為中心的區(qū)域,取該區(qū)域的灰度中值替代無效像元處的灰度。
本模塊主要對預(yù)處理后的紅外圖像進行目標(biāo)檢測,對目標(biāo)與背景進行二值化處理,并得到疑似目標(biāo)的質(zhì)心坐標(biāo)以進行跟蹤操作。具體操作步驟如下:
(1)依據(jù)圖像熵進行圖像復(fù)雜度判斷
對連續(xù)多幀圖像序列進行檢測與跟蹤,由于圖像場景不可能出現(xiàn)太多突變情況,可以十幀為一個周期進行復(fù)雜性的判斷,以提高算法的運行速度。
(2)根據(jù)圖像復(fù)雜度進行二值分割
對于判斷為簡單場景的圖像,利用N-P準(zhǔn)則取k=4,再利用式(2)可以直接分割目標(biāo)與背景。對于判斷為復(fù)雜場景的圖像,則利用基于顯著性幀間差分的目標(biāo)檢測算法。
當(dāng)圖像被判斷為復(fù)雜場景時,首先選擇合適的幀間差分數(shù),利用均方差可判斷檢測幀和差分對照幀是否需要利用SURF算法進行圖像匹配;再分別計算匹配好的兩幀顯著性并作差;最終利用N-P準(zhǔn)則分割目標(biāo)與背景,得到二值化圖像。
(3)提取檢測出的連通域的形心
二值化圖像中的每一個連通域都預(yù)先看作為一個目標(biāo),分別計算每個連通域的形心以便于下一步的目標(biāo)跟蹤。
本模塊主要利用目標(biāo)檢測模塊中得到的連通域形心對目標(biāo)進行跟蹤,刪減檢測出的虛警目標(biāo),并對未檢測出目標(biāo)的幀進行坐標(biāo)補償。主要操作步驟如下:
(1)獲取初始圖像目標(biāo)位置
對第一幀、第二幀檢測完成的圖像進行初始化,認為檢測出來的每一個均為目標(biāo)點,并給予標(biāo)簽,認為兩幀之間檢測點歐式距離小于10的為同一目標(biāo)。
(2)波門大小預(yù)估
通過前兩幀估計波門的預(yù)測位置,將待跟蹤幀中波門內(nèi)檢測出的目標(biāo)點給予標(biāo)簽,其他檢測出來的點認為是噪聲。
(3)圖像刷新判斷是否有新目標(biāo)進入
提前設(shè)置刷新率,每到刷新的幀數(shù)重新對圖像進行初始化,每一個檢測出來的點都認為是一個目標(biāo),將之與上一幀匹配。在上一幀波門內(nèi)的點,認為是原有點,給予波門的標(biāo)簽,對新的點給予新的波門和標(biāo)簽。
(4)重復(fù)步驟(2)~(3)直到最后一幀
(5)目標(biāo)軌跡的判斷與補償
對連續(xù)存在超過二十幀且連續(xù)消失小于三十幀的認為是一條真實的軌跡,對這條軌跡中沒有的點進行補償,補償方式為前后兩幀目標(biāo)位置的均值。
算法測試選取四組實測紅外數(shù)據(jù)集進行測試,且每組數(shù)據(jù)集包含紅外目標(biāo)的形心坐標(biāo)真值。前兩組數(shù)據(jù)集對應(yīng)簡單天空背景下的單目標(biāo)和雙目標(biāo)情況,后兩組對應(yīng)不同的復(fù)雜地物場景。截取各個數(shù)據(jù)集中某一幀檢測結(jié)果如圖9所示。其中復(fù)雜地面背景檢測中出現(xiàn)的綠點為經(jīng)過跟蹤所去除的檢測虛警。
圖9 實測紅外數(shù)據(jù)集幀檢測結(jié)果
Fig.9 Detection results of measured infrared data set frame
定義檢測失敗的情況為:經(jīng)過檢測跟蹤算法得到的目標(biāo)形心位于以形心真值為中心的9×9的標(biāo)注框外。定義成功檢測的情況為:得到的目標(biāo)形心位于以形心真值為中心的9×9的標(biāo)注框內(nèi)。定義準(zhǔn)確檢測的情況為:經(jīng)過檢測跳躍算法得到的目標(biāo)形心位于以形心真值為中心的3×3的標(biāo)注框內(nèi)。實驗測試結(jié)果如表1。對于這四個數(shù)據(jù)集,算法成功檢測率為99.9%,準(zhǔn)確檢測率為98.2%,檢測失敗率為0.1%。
表1 算法測試結(jié)果
針對復(fù)雜場景的數(shù)據(jù)集Data 3與Data 4,將本算法中的顯著性幀間差分法和改進波門跟蹤法分別換成顯著性檢測和普通波門跟蹤,并引入Top-hat和波門跟蹤結(jié)合的算法以及管道濾波算法,比較在3×3標(biāo)注框的檢測準(zhǔn)確率,結(jié)果如表2所示。其中,采用顯著性算法和Top-hat算法的兩種檢測跟蹤算法由于單幀虛警過多出現(xiàn)跟蹤出多條軌跡的情況,以致于跟蹤失??;采取顯著性幀間差分的未改進波門跟蹤法和管道濾波兩種算法雖然可以成功檢測跟蹤圖像序列中的縮小目標(biāo),但是檢測準(zhǔn)確率明顯低于本算法檢測結(jié)果。
因此可以看出,本算法可以適應(yīng)不同場景下的紅外弱小目標(biāo)檢測需求,并且具有較低的虛警率和較高的檢測準(zhǔn)確率。
表2 不同算法檢測準(zhǔn)確率比較
由于紅外弱小目標(biāo)所具有的信噪比低、面形信息丟失等特點,傳統(tǒng)的紅外目標(biāo)檢測算法有著虛警率低,且僅適用于單一場景等缺陷,而基于學(xué)習(xí)的算法所需樣本多且計算量大。本文提出一種基于圖像顯著性以及幀間差分的適用于多場景的紅外目標(biāo)檢測跟蹤算法。經(jīng)過測試,最終得出以下結(jié)論:
(1)與傳統(tǒng)的顯著性算法進行目標(biāo)檢測相比,與幀間差分結(jié)合能夠有效地抑制背景虛警,提高單幀檢測率;
(2)采用圖像復(fù)雜度對不同紅外場景進行判別進而采用不同的檢測方式,能夠在提高檢測效率的同時,大大提高檢測準(zhǔn)確率;
(3)采取改進的波門跟蹤算法對紅外目標(biāo)進行先檢測后跟蹤,可以有效減少單幀檢測所無法去除的虛警。
實驗結(jié)果表明,本算法能夠精確檢測紅外弱小目標(biāo),并大幅度減少虛警數(shù)量。