張 寅,蔡旭陽,許倩倩,閆鈞華,蘇 愷,張 琨
(1.南京航空航天大學空間光電探測與感知工業(yè)和信息化部重點實驗室,江蘇 南京 211106;2.南京航空航天大學航天學院,江蘇 南京 211106)
多運動目標進、出視場和被部分遮擋時,由于目標信息不完整導致難以準確檢測出目標,造成漏檢。本文對此展開研究,從而在復雜地面背景下準確檢測出多運動目標。
2013年,Shen等[1]提出一種基于時空顯著性的運動目標檢測算法,時空顯著性互補提高了多運動目標檢測算法的性能。然而,該算法對于紋理簡單的目標檢測效果較差。2014年,Shakeri等[2]基于二次配準估計相機運動,采用高斯混合模型進行背景建模,采用隱馬爾科夫模型進行精細求解,對復雜背景下的運動目標檢測性能好,但算法復雜度高,實現難度大。2017年,Yan等[3]聯合改進的基于帶方向的FAST和旋轉BRIEF的二值特征描述子MORB(Modified Oriented fast and Rotated BRIEF) 匹配點和隨機光流LKR(Lucas-Kanade Random)跟蹤點進行背景補償,再采用雙模高斯矩陣對補償圖像的局部區(qū)域建立在線和候選雙背景模型,對運動背景下的運動目標檢測效果好,但是該算法對復雜背景的目標檢測效果較差。2017年,Yan等[4]采用非線性變換模型進行背景補償,實現了旋轉復雜背景下地面慢速運動目標的檢測,但是對多個目標查全效果較差。2018年,馬琴等[5]提出一種基于譜殘差和K-means聚類算法的運動目標檢測算法,能有效檢測出目標,但是對復雜背景的檢測效果較差。
近年來,隨著機器學習的發(fā)展,許多研究者提出基于目標特征學習的目標檢測算法。2014年,Hariyono等[6]基于光流估計補償背景運動獲得行人候選區(qū)域,然后提取區(qū)域的HOG特征,通過SVM分類器實現運動目標檢測,對于行人目標檢測效果較好,對其他運動目標檢測效果較差。2015年,Teutsch等[7]基于特征矢量聚類得到運動目標的大致區(qū)域,提取ChnFtrs (integral Channel Features)[8]特征,通過AdaBoost分類器獲得檢測結果,對部分被遮擋的目標檢測效果較差。2016年,Kang等[9]提出了一種TCN(Temporal Convolutional Network)算法,基于Faster RCNN的改進算法檢測單幀圖像,結合上下文抑制算法和運動傳播算法,有效地抑制了誤檢,降低了漏檢,但是計算量大,不適于視頻序列中的運動目標檢測。2019年,孫一飛等[10]提出了一種基于稀疏編碼器的檢測算法,采用反向傳播更新編碼器的權重和偏置以提取樣本的特征,并利用提取的特征訓練Softmax,準確檢測出目標,但是對被遮擋的目標檢測效果較差。2020年,高星等[11]提出了一種基于YOLOv3算法的檢測算法。采用K-means算法做聚類分析,以得到適應數據集訓練尺寸的錨框大小,并對圖像進行圖層處理從而準確檢測出目標,但是該算法計算量較大。
本文針對目標進、出視場和被部分遮擋情況下檢測率低的問題,提出了一種聯合時空上下文的復雜背景下多運動目標檢測算法STC-MMTD(Multi-Moving Target Detection based on Spatio-Temporal Context),如圖1所示。
Figure 1 Schematic diagram of multiple moving targets detection algorithm圖1 本文提出的多運動目標檢測算法框圖
STC-MMTD算法分為離線訓練和在線檢測2個階段。(1) 離線訓練階段:首先,對訓練圖像和對應的真值圖像進行均勻網格稠密采樣;然后,對訓練圖像和真值圖像的圖像塊進行SIFT特征提取和量化,獲得SIFT描述子序列和對應的標記序列;最后,進行條件隨機場模型CRF(Conditional Random Field)和字典聯合訓練,獲得CRF模型參數和字典。(2) 在線檢測階段:第1步進行時間上下文信息處理:基于前后向運動歷史圖提取候選目標區(qū)域。第2步進行空間上下文信息處理:首先,將輸入圖像分塊,獲得子圖像;接著,對子圖像進行稀疏編碼;然后,利用CRF模型對子圖像的空間上下文建模,基于置信度傳播算法估計圖像塊的目標置信度;最后,計算候選目標區(qū)域的目標置信度,檢測出復雜背景下多運動目標。
本文利用時間上下文信息,基于前后向運動歷史圖提取候選目標區(qū)域,提高了候選目標區(qū)域提取的查全率。
(1)
將當前幀圖像與前一幀/后一幀圖像背景運動補償后的圖像進行絕對差分,得到差分圖像D(τ):
D(τ)=|I(τ)-I′(τ?1)|
(2)
其中,“-”代表前向差分,可得到前向運動圖像DF(τ);“+”代表后向差分,可得到后向運動圖像DB(τ)。
前向運動歷史圖可以通過融合多層前向運動圖像來獲得,后向運動歷史圖可以通過融合多層后向運動圖像來獲得,分別如式(3)和式(4)所示:
(3)
(4)
式(3)和式(4)中,HF為前向運動歷史圖,HB為后向運動歷史圖,(x,y)為圖像像素點坐標,ξ為閾值,d為衰減項。本文經實驗,取ξ=15,d=32。
融合前向運動歷史圖和后向運動歷史圖,獲得前后向運動歷史圖HFB(τ):
HFB(τ)=min(medfilt2(HF(τ)),
medfilt2(HB(τ)))
(5)
其中,medfilt2(·)是指中值濾波器。min(·)操作能夠有效抑制前向運動歷史圖后方的尾跡和后向運動歷史圖前方的尾跡,從而保證候選區(qū)域提取的定位精度。
本文對前后向運動歷史圖,采用大津法[12]計算雙閾值,選取較小的閾值進行二值化,獲得運動二值圖MBIN(τ),確保目標區(qū)域的完整性。然后對運動二值圖MBIN(τ)進行1次腐蝕和2次膨脹操作的形態(tài)學處理,有效去除干擾噪聲,得到目標區(qū)域圖像MREG。
MREG(τ)=((MBIN(τ)Θberode)⊕bdilate)⊕bdilate
(6)
其中,Θ和⊕分別為腐蝕和膨脹運算符,berode和bdilate分別為R′=1 和R′=3的菱形結構元素,R′表示結構元素的原點到菱形頂點的距離。
本文利用空間上下文信息和目標表觀信息,通過基于稀疏編碼的CRF模型計算目標置信度圖,得到候選目標區(qū)域的目標置信度,從而檢測出多運動目標。
對圖像進行分塊處理,圖像I的尺寸為W0×H0,將其均勻劃分為L×C的子圖像,相鄰子圖像的重疊尺寸為so。對子圖像用步長為16的采樣網格、尺寸為64×64的窗口進行分塊,對子圖像塊的SIFT特征x進行基于字典學習的稀疏編碼,字典D存儲了從訓練數據中學習得到的一組視覺詞匯{d1,d2,…,dk},k為視覺詞匯的數量,如式(7)所示:
(7)
其中,λ為控制稀疏性的參數,s為SIFT特征x的稀疏編碼。
(8)
其中,SnS(Xn,D)是字典D下樣本Xn中SIFT特征的稀疏編碼;D為滿足以下條件的字典D的凸可行集:
D={D∈Rp×k|‖di‖2≤1,?i=1,2,…,k}
(9)
采用最大邊際法[13],獲得關于能量函數的約束,即:
E(Yn,Sn,w)≤E(Y,Sn,w)-Δ(Y,Yn),
?Y≠Yn,n=1,2,…,N
(10)
(11)
(12)
式(11)和式(12)中,f(D,w)EY,X為損失函數,EY,X[·]表示·的期望,SS(X,D)是字典D下樣本X中SIFT特征的稀疏編碼,Y和分別為樣本集標記真值和標記預測值,γ為正則化系數。最后采用隨機梯度下降算法[14]聯合求解CRF模型參數和字典
圖像塊的目標置信度是指圖像塊是目標的概率,即圖像塊對應的節(jié)點i∈V(V為所有圖像塊對應的節(jié)點集合)為目標節(jié)點的概率p(yi=1|si,w),其中si表示第i個節(jié)點的觀測序列。本文基于置信度傳播BP(Belief Propagation)算法完成對圖像塊目標置信度的估計,對于馬爾科夫隨機場中的每一個節(jié)點,通過消息傳播,把該節(jié)點的概率分布狀態(tài)傳遞給相鄰的節(jié)點,從而影響相鄰節(jié)點的概率分布狀態(tài),經過一定次數的迭代,每個節(jié)點的概率分布將收斂于一個穩(wěn)態(tài)。在BP算法中,節(jié)點i∈V的置信度正比于節(jié)點的能量函數和所有相鄰節(jié)點傳來的消息,即:
(13)
通過計算候選目標區(qū)域的目標置信度,對其進行判決,獲得多運動目標檢測結果。具體步驟如下:
(1)對每一幅子圖像獲得的節(jié)點目標概率p(yi=1|si,w),i∈V進行歸一化,即:
(14)
(3) 將子圖像目標置信圖US按原圖像的相對位置進行拼接,獲得輸入圖像I的目標置信圖U。
(4) 根據式(15)計算候選目標區(qū)域R的目標置信度μR。
(15)
(5) 若候選目標區(qū)域R的目標置信度μR大于或等于目標置信度閾值τμ,即μR≥τμ,則候選目標區(qū)域R為目標,反之為背景。
本節(jié)通過實驗驗證本文所提算法在復雜環(huán)境下多運動目標檢測的有效性和準確性。所有實驗都是在相同的實驗環(huán)境和實驗平臺上進行的。實驗環(huán)境:Matlab2014b編程實現。實驗平臺:Intel i7 處理器 3.60 GHz,64位Windows 7操作系統(tǒng),8 GB內存。實驗視頻為數據庫DARPA Neovision2中的Helicopter數據集中部分高清航拍視頻圖像序列,拍攝地區(qū)為洛杉磯,視頻幀率約為29.97 fps,圖像格式為8 bit PNG,分辨率為1920×1080。
圖2所示為目標進、出視場和被部分遮擋情況下候選目標區(qū)域的目標置信度。目標出現在視場中的部分越多,候選目標區(qū)域的目標置信度越高,背景干擾區(qū)域的目標置信度很低。
采用查全率R、查準率P和F測度F1對本文提出的聯合時空上下文的多運動目標檢測STC-MMTD算法進行評價,分別對視頻序列Neovision2-Heli-021和Neovision2-Heli-029在不同參數下的多運動目標檢測結果進行了統(tǒng)計,如表1所示。其中,τμ為候選目標區(qū)域判決中的目標置信度閾值,τo表示檢測結果與目標真值的重疊率閾值。
表1表明,本文算法能夠有效提高目標進、出視場和被部分遮擋時的檢測效果。τμ∈[0.30,0.40]時,F測度最大,即檢測效果最好,當取τμ=0.40,τo=0.70時,本文算法在視頻序列Neovision2-Heli-021和Neovision2-Heli-029上總的查全率為95.96%,查準率為98.85%,F測度為97.4%。
Figure 2 Target confidence of candidate target regions when targets are in/out of view and partially occluded圖2 目標進、出視場和被部分遮擋情況下候選目標區(qū)域的目標置信度
Table 1 Performance evaluation of multi premoving targets detection algorithm in complex background(R(%)/P(%)/F1 (%))表1 復雜背景下多運動目標檢測算法性能評估(R(%)/P(%)/F1 (%))
將本文提出的算法STC-MMTD與基于DBSCAN聚類(DBSCAN-based) 的多目標檢測算法[15]、基于ELM聚類算法(ELM-based)的多目標檢測算法[16]、基于雙模高斯背景模型的多目標檢測算法(LKR+DGM-based)[3]、基于時空顯著性的多目標檢測算法(STS-based)[1]進行對比,采用查全率(R)、查準率(P)和F測度(F1)3個指標進行評價,實驗結果如圖3所示。其中,目標置信度閾值取τμ=0.40。
實驗表明,本文算法在保證較高定位精度τo,具有最高的查全率R、查準率P和F測度F1,說明本文算法性能優(yōu)于其他算法,檢測效果好。
Figure 3 Comparison of recall,precision and F-measure of the proposed algorithm with other algorithms圖3 本文算法與其他算法的目標查全率、查準率和F測度對比
本文提出了一種聯合時空上下文的多運動目標檢測算法,解決了復雜地面背景中目標進、出視場和被部分遮擋時檢測率低的問題,具有良好的檢測性能。針對目標信息不完整的情況,聯合運動歷史圖和CRF模型進行檢測。在離線訓練時采用CRF模型參數與字典聯合訓練,提高了字典的判別性;在線檢測時采用圖像分塊處理策略,通過并行計算提高算法的效率。實驗結果表明,本文算法具有較高的查全率、查準率和F測度。今后將針對背景旋轉運動下的多運動目標檢測進行深入研究,擴展目標檢測算法的適用范圍。