夏 婷,景星爍,鄒衛(wèi)軍
(南京理工大學自動化學院,南京210094)
動態(tài)背景下的運動目標檢測是計算機視覺領域的重要研究內容之一,在導航制導和監(jiān)控預警等軍事和民用領域都有著廣泛的應用。動背景下檢測運動目標,其難點在于,目標運動的同時背景也在發(fā)生旋轉、縮放和平移,兩者的運動很難區(qū)分。針對此問題,文獻[1]提出了一種基于塊匹配的運動目標檢測算法,為了減小計算量,該方法用局部塊的運動來代替塊內所有像素的運動,影響了全局估計的準確性,且無法適應背景的旋轉、平移等運動。文獻[2]將SIFT特征匹配和差分法相結合,該方法對圖像平移、旋轉、縮放、亮度變化、遮擋和噪聲等具有良好的不變性,但算法的復雜度較高,運行速度慢,實時性差。文獻[3]提出SURF特征匹配法,利用較少的特征點達到了和SIFT算法接近的性能,速度相比SIFT算法有明顯提升,但仍舊比較耗時,無法做到實時應用。文獻[4]提出一種基于全局運動補償?shù)腍S光流檢測算法,根據(jù)目標與背景光流矢量的差異實現(xiàn)目標檢測,然而該方法計算量大,實時性差。文獻[5]提出的 LK 光流[6]和 HS 光流[7]相結合的檢測算法運算速度快,但不能適應背景的旋轉、縮放,只適用于攝像機位置固定、焦距固定的定點監(jiān)控場合。
基于以上分析,本文提出一種將金字塔LK光流法與背景補償相結合的方法,即先采用LK光流法在兩幅圖像上得到相互匹配的多組特征點對,再對這些特征點對做仿射變換消除背景運動造成的影響,最后通過差分提取運動目標。本文算法運算速度明顯優(yōu)于基于SURF特征匹配的算法,同時能有效消除背景運動干擾,實現(xiàn)穩(wěn)定的運動目標檢測。
金字塔LK光流法[8]只針對圖像特征點進行光流計算,而不像稠密光流那樣對圖像每個像素點都進行光流計算,因此,圖像特征點提取的準確性直接關系到最后光流矢量的計算結果[9]。根據(jù)式(9),LK光流法的計算要求矩陣G是可逆的,即要求G最小的特征向量必須足夠大。在實際計算中,可以采用Shi-Tomasi角點法[10]提取出符合要求的特征點,它是一種改進的Harris角點檢測方法,用于提取圖像的強角點。
在任意方向的一個微小變動都會引起灰度很大變化的像素點稱之為角點。因此可以通過像素點灰度變化情況來檢測角點,即求解式(1)找到E的最大值:
其中,I(x,y)表示灰度值,w(x,y)表示窗口函數(shù)。對式(1)進行Taylor展開:
其中,
矩陣M對應式(9)中的矩陣G。計算圖像中的每一個像素點的矩陣M和它最小的特征向量λm,稱λmax是λm在整張圖片上的最大值。保留圖片上像素值的λm的個數(shù)大于一定比例的λmax,這個比例稱為角點的品質因子,角點的品質因子與λmax的乘積作為選取特征點的閾值(本文角點的品質因子是1%)。通過這些點,保留局部最大的像素,即圖像的強角點。
光流算法基于以下3個假設:亮度恒定、連續(xù)的小運動、空間一致[11]。根據(jù)前兩個假設,可以得到經(jīng)典的光流約束方程為:
該方程缺乏約束條件,根據(jù)第三條假設,可以認為局部區(qū)域內像素運動具有一致性,從而利用該特征點周圍局部鄰域內像素的灰度值不變來計算光流矢量。
假設I和J為連續(xù)兩幀圖像,點(x,y)對應的灰度值分別為I(x,y)和J(x,y), 點u=(ux,uy)在I上對應的灰度值為I(u),LK光流法的目標是在圖像J上找到一點v=u+d=(ux+dx,uy+dy),使其對應的灰度值J(v)=I(u)。 根據(jù)以上原理, 可以定義點u在其周圍3×3像素鄰域Ω內的誤差函數(shù):
當式(5)取得最小值時,J(v)和I(u)近似相等,即可認為點v是u在圖像J上的對應點。對式(5)求解,使ε(d)對向量d的偏導為0。經(jīng)過數(shù)學推導得:
記:
由式(9)可知:當G可逆時,方程有解,可以得出該特征點的光流矢量d,進而預測出點u在圖像J中對應的位置。
由于LK光流法是基于連續(xù)的小運動的假設,而實際情況中,尺度大而不連續(xù)的運動更為常見,因此采用圖像金字塔技術來解決這個問題。具體方法是從圖像金字塔的最高層開始計算光流,然后將該層計算結果作為下一層計算的起始值,重復這個過程直到金字塔的最底層。這樣處理后,滿足光流算法的連續(xù)小運動假設,從而實現(xiàn)對速度更快和尺度更大的運動進行檢測。
仿射變換是一種二維坐標之間的線性變換,保持二維圖像的 “平直性” 和 “平行性”[12]。 通過仿射變換,可以有效消除背景運動造成的影響。本文采用6參數(shù)仿射變換,一般形式為:
其中,a0、a1、a2、b0、b1、b2為仿射參數(shù)。 利用光流法得到的至少3組特征點對即可計算出仿射參數(shù),進而對整張圖片做仿射變換,實現(xiàn)背景補償。
本文提出算法的處理流程如圖1所示,具體表述為:
1)對第t幀圖像進行Shi-Tomasi角點檢測,提取圖像強角點。
2)利用提取出的特征點做金字塔LK光流計算,預測這些特征點在t+1幀的位置,得到多組相互匹配的特征點對。
3)計算仿射變換參數(shù)做背景補償。
4)利用幀差法分割出前景目標并做形態(tài)學濾波等處理,實現(xiàn)運動目標檢測。
在Visual Studio 2013+OpenCV2.4.11的環(huán)境下,將本文方法與SURF圖像配準結合幀差法作對比,實驗結果對比如圖2~圖4、表1~表2所示。
表1 兩種算法運行時間比較表Table 1 Comparison of two algorithms'running time (單位: ms)
表2 兩種算法的特征點數(shù)目比較表Table 2 Comparison of the number of feature points in two algorithms (單位: ms)
從圖2和圖4結果可以看出,本文方法和SURF方法都可以實現(xiàn)動態(tài)背景下運動目標的檢測。表1列出了用這兩種方法對3段不同視頻進行目標檢測的具體運行時間。對比幾組數(shù)據(jù)可以發(fā)現(xiàn),本文方法的運行速度比SURF配準法快很多。SURF配準法處理過程比較復雜,先利用圖像上所有點的Hessian矩陣來構建Gauss金字塔尺度空間,進行特征點的選取,再構造SURF特征點描述算子,最后對兩幅圖像進行特征點匹配和篩選。以視頻1第96幀、98幀為例,SURF算法的3個主要步驟的耗時分別是 156.057ms、227.801ms、558.799ms,僅第一步計算每個像素的Hessian矩陣行列式的時間就超過了光流算法需要的總時間。本文算法的實時性明顯優(yōu)于SURF方法。
從圖3結果可以看出,在處理復雜背景時,本文方法只間隔一幀處理,就可以得到較好的檢測效果。觀察圖3(e),SURF方法則存在一些雜點,在間隔4幀處理時,效果如圖3(f)所示,雜點基本消失。表2列出了兩種方法選取的特征點數(shù)目,可以看出在初步篩選時,兩種方法都選取了足夠代表全局圖像信息的特征點。經(jīng)過光流法處理后,仍保留了大部分特征點,因此對仿射參數(shù)的計算更加準確,背景補償效果更好;而SURF法最終只保留了少量特征點,在處理復雜背景時可能存在一定的誤差。本文方法在處理復雜背景時比SURF方法效果更好。
本文提出了一種基于光流的動態(tài)背景下的運動目標檢測方法。利用金字塔LK光流法得到多組相互匹配的特征點對來計算仿射參數(shù),對圖像做仿射變換來補償背景的運動,最后用幀差法得到前景目標。將該方法與目前流行的SURF圖像配準法作對比實驗,結果表明,本文方法能夠以較好的實時性穩(wěn)定地檢測和提取動背景下的運動目標。
[1]施家棟,王建中.動態(tài)場景中運動目標檢測與跟蹤[J].北京理工大學學報, 2009, 29(10): 858-860+876.SHI Jia-dong, WANG Jian-zhong. Moving objects detection and tracking in dynamic scene [J].Transactions of Beijing Institute of Technology, 2009, 29(10): 858-860+876.
[2]王梅,屠大維,周許超.SIFT特征匹配和差分相乘融合的運動目標檢測[J]. 光學精密工程, 2011, 19(4):892-899.WANG Mei, TU Da-wei, ZHOU Xu-chao.Moving object detection by combing SIFT and differential multiplication[J].Optics and Precision Engineering, 2011, 19 (4):892-899.
[3]于明,孫煒燁,閻剛,等.動態(tài)場景下基于精確背景補償?shù)倪\動目標檢測[J].計算機應用與軟件,2013,30(10): 139-141+198.YU Ming, SUN Wei-ye, YAN Gang, et al.Moving objects detection based on exact background compensation in dynamic scene [J].Computer Applications and Software,2013, 30(10): 139-141+198.
[4]葉春明.一種基于全局運動補償?shù)腍S光流檢測算法[J]. 光學與光電技術, 2015, 13(5): 87-92.YE Chun-ming.HS optical flow algorithm based on global motion compensation [J].Optics & Optoelectronic Technology, 2015, 13(5): 87-92.
[5]儲珺,施芒,符祥.基于光流的動態(tài)背景運動目標檢測算法[J].南昌航空大學學報(自然科學版), 2011,25(3): 1-6.CHU Jun, SHI Mang, FU Xiang.Detection of moving target in dynamic background based on optical flow [J].Journal of Nanchang Hangkong University(Natural Sciences), 2011, 25(3): 1-6.
[6]Lucas B D, Kanade T.An iterative image registration technique with an application to stereo vision [C].Proceedings of DARPA Image Understanding WorkShop, 1981:121-130.
[7]Horn B K P, Schunck B G.Determining optical flow [J].Artificial Intelligence, 1981, 17(1-3): 185-203.
[8]Bouguet J Y.Pyramidal implementation of Lucas Kanade feature tracker description of the algorithm [J].OpenCV Documentation, 1992, 22(2): 363-381.
[9]陳添丁,胡鑒,吳滌.稀疏光流快速計算的動態(tài)目標檢測與跟蹤[J].中國圖像圖形學報, 2013, 18(12):1593-1600.CHEN Tian-ding, HU Jian, WU Di.Dynamic target detection and tracking based on fast computation using sparse optical flow [J].Journal of Image and Graphics, 2013, 18(12): 1593-1600.
[10]Shi J B, Tomasi C.Good features to track [C].Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 1994: 593-600.
[11]蘭紅,周偉,齊彥麗.動態(tài)背景下的稀疏光流目標提取與跟蹤[J].中 國 圖 象 圖形學報, 2016, 21(6):771-780.LAN Hong, ZHOU Wei, QI Yan-li.Sparse optical flow target extraction and tracking in dynamic backgrounds[J].Journal of Image and Graphics, 2016, 21 (6):771-780.
[12]管焱然,管有慶.基于OpenCV的仿射變換研究與應用[J]. 計算機技術與發(fā)展, 2016, 26(12): 58-63.GUAN Yan-ran,GUAN You-qing.Research and application of affine transformation based on OpenCV [J].Computer Technology and Development, 2016, 26(12):58-63.