陳 霖,尤 楓,胡 偉
北京化工大學 信息科學與技術學院,北京 100029
智能視頻監(jiān)控[1-2]作為計算機視覺的重要應用,近年來在交通監(jiān)控、安防以及軍事等領域都得到了廣泛重視。而運動物體的檢測以及完整運動幀序列的提取作為監(jiān)控和安防領域的基礎和關鍵技術,其結果對場景理解、行為分析以及視頻摘要[3-5]等都具重要的影響和意義。
然而,在很多的監(jiān)控場景中,由于遮擋、運動變形以及光照等噪聲的存在,對提取效果和質(zhì)量造成了一定的影響,甚至無法有效地提取到運動物體完整的運動幀序列。對含有遮擋的監(jiān)控場景進行運動物體完整運動幀序列的提取研究已經(jīng)成為研究熱點和難點。
目前,常用的運動物體檢測和提取方法有光流法[6]、幀差法[7]、背景減除法[8-9]等。幀差法實現(xiàn)簡單,但對運動變化過快或過慢比較敏感,容易產(chǎn)生內(nèi)部空洞;光流法計算比較耗時,難以滿足實時提取的要求;背景減除法常需要得到較好的背景圖像后才能有比較好的檢測和提取效果。Olivier Barnich在2011年提出了一種稱為ViBe[10-11]的前景檢測算法,該算法采用像素點的鄰域像素來創(chuàng)建背景模型,通過比對背景模型和當前幀畫面的像素值即可快速地檢測并分離出運動物體的前景像素。隨后文獻[12-14]對ViBe進行了改進,如抑制鬼影、形態(tài)學處理、加入顏色特征信息等,使其能夠在不同的場景下快速建立背景模型,提高對復雜場景的適應性。
然而,上述方法只是將每一幀中所有運動物體的前景像素檢測到并提取出來,并未從對象的角度去考慮更進一步的物體類別劃分以及特定物體的運動幀序列的提取。為了提取到運動物體的運動幀序列,目前采用的一種方法是先通過ViBe進行運動物體的前景檢測,然后根據(jù)相鄰幀之間運動物體關聯(lián)輪廓的相交運算來進行運動幀序列的提取和歸類。該方法簡單有效,但當場景中存在遮擋時,相鄰兩幀提取出的物體前景輪廓區(qū)域不再相交,從而無法繼續(xù)用關聯(lián)輪廓相交的方法對目標物體的后續(xù)幀序列進行提取。且當兩物體距離過近時會造成輪廓融合,會提取出其他物體的噪聲圖像。
考慮到在跟蹤領域,運用粒子濾波算法[15-16]可跟蹤定位到目標物體的下一個出現(xiàn)位置,對于存在遮擋的場景也有較好的跟蹤效果,利用跟蹤結果可以在一定程度上反饋調(diào)節(jié)關聯(lián)輪廓提取的效果。當前,在主流的粒子濾波框架體系中發(fā)展出了很多的跟蹤方法,在遮擋場景下也有較好的跟蹤效果,其中以文獻[17]“改進的基于顏色的粒子濾波目標跟蹤算法”(簡稱IPF算法)最為簡單有效,具有較好的實時性和準確性。但是在面對較大面積和較長時間的全局遮擋時,上述方法還是會存在一定的跟蹤漂移情況,有一定的局限性,未能很好地解決全局遮擋情況下的跟蹤問題。
因此,本文采用將ViBe前景檢測算法和改進后的粒子濾波跟蹤算法相結合的跟蹤提取方法,以克服和解決提取過程中的遮擋問題,實現(xiàn)運動物體完整有效的運動序列的提取。
ViBe是一種通過像素級的背景建模以實現(xiàn)前景檢測的算法。該算法采用像素點周圍8個方位的鄰域像素來創(chuàng)建背景模型,通過比對背景模型的采樣值和當前幀畫面的像素值來檢測并分離出運動物體的前景像素。具體做法為:
首先,通過視頻的第一幀圖像來建立并初始化每個像素點的背景模型。從每個像素點的鄰域中隨機選擇指定數(shù)量的像素點作為樣本值來完成背景模型的初始化。
然后,對視頻幀進行運動物體前景像素的分類和提取操作。以當前的像素點P(x,y)為中心,定義半徑為R的圓形區(qū)域SR(P(x,y),在此區(qū)域內(nèi)將P(x,y)的像素值與其背景模型中的樣本值{V1,V2,…,VN}相比較,當滿足{SR(P(x,y))∩{V1,V2,…,VN}}大于一個設定的閾值#min時,判定當前像素點為背景像素點,否則即為運動物體的前景像素點。
最后,采用隨機選擇更新的策略進行背景模型的更新。當一個像素點P(x,y)被分類為背景像素點時,不僅需要隨機更新它的背景模型中的樣本值,還需要隨機選擇它鄰域中某個像素點的模型樣本值進行更新。隨機選取一個樣本值來進行更新的策略可以保證背景模型樣本值平滑的生命周期。
粒子濾波的核心思想是:尋找一組在狀態(tài)空間中傳播的隨機樣本對概率密度函數(shù)進行近似,以樣本均值代替積分運算,從而獲得狀態(tài)最小方差估計的過程。采用粒子濾波進行跟蹤的一般過程為:
(1)粒子集初始化
(5)粒子集重采樣
依據(jù)重要性重采樣策略,權值較高的粒子的位置在將來可以撒播更多的粒子去搜索,而權值較低的粒子將重采樣變換為當前權值最大的粒子。
循環(huán)進行(2)~(5)即可完成對目標物體的跟蹤。
為了解決運動物體提取過程中的遮擋問題,本文提出了一種用“ViBe+改進的粒子濾波+輪廓關聯(lián)”的跟蹤提取方法。通過幀間關聯(lián)輪廓交集可以初步判斷提取到的輪廓點集同屬于目標物體,而通過粒子濾波可以在發(fā)生遮擋后將跟蹤到的輪廓點集重新加入到目標物體的關聯(lián)輪廓中,使得后續(xù)可以繼續(xù)用幀間的關聯(lián)輪廓來提取。同時,跟蹤定位到區(qū)域也可以反饋調(diào)節(jié)關聯(lián)輪廓提取過程中所提取出的目標輪廓區(qū)域的大小,減少了提取噪聲的引入。
由于提取出運動物體的完整運動幀序列是整個監(jiān)控領域技術的基礎步驟,也是后續(xù)的運動軌跡分析、檢索以及行為理解的關鍵前提。故需要計算并保存從視頻中提取出的運動物體及其運動幀序列的相關描述信息,如:編號、運動物體出現(xiàn)的起始幀和結束幀、運動物體在所出現(xiàn)的每一幀的輪廓點集、輪廓面積、輪廓區(qū)域前景幀以及輪廓外接矩形區(qū)域;為后續(xù)更好地分析其運動軌跡,還需計算并保存運動物體每一幀的動態(tài)關聯(lián)輪廓點集。具體的結構定義如下:
運動物體幀序列的提取關鍵步驟如下:
(1)用ViBe對每一幀進行運動物體前景區(qū)域的檢測和提取,將結果經(jīng)形態(tài)學處理后保存到矩陣fg_vibe中。
(2)選定目標運動物體的區(qū)域,結合fg_vibe中的前景信息建立并初始化目標物體的運動序列信息,同時,完成粒子集的初始化。
(3)對t+1幀的fg_vibe進行運動物體輪廓的檢測和提取,將得到的每一個輪廓點集obj_contouri與目標物體第t幀的輪廓點集contours[t]做交集運算,運算結果保存為Ii。
(4)對t+1幀粒子濾波跟蹤到的目標區(qū)域tracked_rec,結合fg_vibe中的前景結果信息,檢測并提取出跟蹤區(qū)域內(nèi)的輪廓點集tracked_contour,并將tracked_contour與目標物體第t幀的輪廓點集contours[t]做交集運算,運算結果保存為It。
(5)如果Ii和It都不為0,即準確跟蹤到目標物體,且相鄰幀有關聯(lián)輪廓交集,把tracked_contour保存到目標物體的contours[t+1]中;如果Ii不為0而It為0,即發(fā)生跟蹤漂移,但相鄰幀有關聯(lián)輪廓交集,把obj_contouri保存到目標物體的contours[t+1]中;根據(jù)所要保存的輪廓點集的相關信息來修改目標物體當前幀序列的相關信息。
(6)當Ii和It都為0時,即發(fā)生了全局遮擋,只有當重新跟蹤到目標物體時,才把跟蹤區(qū)域內(nèi)的輪廓點集tracked_contour重新加入到目標物體的幀輪廓點集contours中,以便在后續(xù)的幀序列中可以根據(jù)相鄰幀之間的關聯(lián)輪廓交集來提取出目標運動物體的運動幀序列。
如此,即可對選定的運動目標實現(xiàn)完整的運動物體序列的提取。
為提高跟蹤精度和更好地解決提取過程中的遮擋問題,本文對粒子濾波算法做了如下改進:
(1)在粒子集初始化階段,為避免引入更多的噪聲而影響跟蹤精度,計算框選區(qū)域的中心點Pc(x,y),并在此中心點處計算指定寬度和高度的矩形區(qū)域的顏色直方圖信息,以此作為目標跟蹤物體的模板信息。
(2)為提高跟蹤結果的精度以準確定位到跟蹤目標的最終位置,對粒子狀態(tài)轉(zhuǎn)移階段后的所有粒子權值做降序排序,取前N個(本文取N=10)粒子權值做累加和歸一化,并最終根據(jù)這N個粒子的位置信息來最終定位到跟蹤物體在當前幀的位置坐標。
(3)為更好地解決遮擋情況下的跟蹤和提取,在原有的粒子狀態(tài)轉(zhuǎn)移機制的基礎上加入一個新的“線性狀態(tài)轉(zhuǎn)移”機制,無遮擋情況時采用原有的狀態(tài)轉(zhuǎn)移機制,當遮擋情況發(fā)生或跟蹤結果精度小于設定的閾值時則采用新引入的線性偏移狀態(tài)轉(zhuǎn)移機制,即記錄并保存發(fā)生遮擋時權值最大的粒子的位置,以此坐標位置為基點,沿著運動物體的運動方向,按隨機高斯正態(tài)分布的搜索步長去搜索和定位被跟蹤目標可能出現(xiàn)的位置。當重新搜索定位到跟蹤物體時,切換回原有的狀態(tài)轉(zhuǎn)移機制,以提高跟蹤精度,減少跟蹤漂移情況的出現(xiàn)。新引入的粒子狀態(tài)轉(zhuǎn)移機制為:
其中,Sm(x,y,t-1)表示發(fā)生遮擋時權值最大的粒子的位置,W(k*n)表示在物體的運動方向上產(chǎn)生一個隨機高斯分布的偏移步長,k為方向控制向量,n為可調(diào)節(jié)的預搜索步長。
利用本文上述的算法,對含有交叉遮擋和全局遮擋的監(jiān)控視頻分別進行指定區(qū)域的運動物體的跟蹤以及運動序列的提取實驗。實驗環(huán)境:PC機(core i5 2.5 GHz,內(nèi)存4 GB),開發(fā)工具為VS2010+OpenCV2.4.3。
在設定相同的粒子數(shù)目200的情況下,對IPF算法和本文改進后的粒子濾波算法進行抗遮擋的跟蹤實驗,視頻畫面中包含有交叉遮擋和全局遮擋。
圖1給出了IPF算法和本文改進后的PF算法對交叉遮擋場景下的目標跟蹤過程及結果。粗線框表示跟蹤定位到的目標運動物體的位置。對比圖1中的(a)、(b)兩組圖可以知,在含有交叉遮擋的場景下(第1 131幀和第1 172幀),兩種算法均能夠穩(wěn)定地跟蹤到目標物體,且跟蹤精度大致相同。
圖1 IPF算法和本文改進的PF對交叉遮擋跟蹤效果
圖2給出了IPF算法和本文改進后的PF算法對全局遮擋場景下的目標跟蹤過程及結果。粗線框(紅色/綠色)表示跟蹤定位到的目標運動物體的位置。對比圖2中的(a)、(b)兩組圖可知,在含有全局遮擋的場景下,IPF算法在經(jīng)過較大面積的全局遮擋時(第78幀至第125幀)出現(xiàn)了跟蹤漂移現(xiàn)象,無法準確地跟蹤到目標運動物體后續(xù)出現(xiàn)的位置;而本文改進后的粒子濾波算法在檢測到遮擋情況時,切換到線性狀態(tài)轉(zhuǎn)移機制,如圖2(b)中的第78幀和第125幀圖中的白色細線框所示,粒子將沿著運動物體的運動方向去線性搜索定位物體在下一幀中出現(xiàn)的位置,從而保證了經(jīng)過較大面積的全局遮擋后依舊能準確地跟蹤到目標物體。
圖2 IPF算法和本文改進的PF對全局遮擋跟蹤效果
圖3給出了IPF算法和本文改進后的PF算法對運動目標與背景顏色相近的場景下所進行的目標跟蹤過程及結果。粗線框表示跟蹤定位到的目標運動物體的位置。對比圖3中的(a)、(b)、(c)三組圖可以知,場景中直升機模型與大片的樹木顏色較為相近,且存在人對飛機模型的短暫遮擋,但兩種算法均能夠較為穩(wěn)定地跟蹤到目標物體。
圖3 運動目標與背景顏色相近的跟蹤效果
實驗表明,本文改進后的粒子濾波算法在抗遮擋的跟蹤性能上比IPF算法更好,尤其是在含有全局遮擋的場景下,IPF算法的跟蹤方法出現(xiàn)了跟蹤漂移,而本文改進后的算法依舊能準確地跟蹤到目標物體。在運動物體的跟蹤過程中,根據(jù)實際的跟蹤情況來回切換兩種不同的粒子狀態(tài)轉(zhuǎn)移機制,能有效地保證跟蹤的精度,減少了跟蹤漂移狀態(tài)的發(fā)生。
對比現(xiàn)有的“ViBe+輪廓關聯(lián)”提取方法和本文提出的“ViBe+改進的粒子濾波+輪廓關聯(lián)”的提取方法,對包含有全局遮擋和局部遮擋的監(jiān)控視頻進行選定的運動物體完整運動序列的提取實驗,結果如圖4和圖5所示。
圖4“ViBe+輪廓關聯(lián)”的提取結果
圖5 本文方法的提取結果
對比圖4和圖5可知,現(xiàn)有的“ViBe+輪廓關聯(lián)”提取方法只能針對連續(xù)關聯(lián)的物體運動序列進行提取,如圖4(a)所示;當遇到局部或全局遮擋會造成運動物體的前后幀輪廓無交集,從而無法繼續(xù)后續(xù)的提取,如圖4(b)所示;且當其他物體與目標物體靠近時會出現(xiàn)輪廓融合,影響到提取的效果和質(zhì)量。而本文提出的“ViBe+改進的粒子濾波+輪廓關聯(lián)”的提取方法卻很好地解決了遮擋情況下的運動物體提取,引入粒子濾波跟蹤可以有效解決提取過程中物體進出遮擋物前后的定位和提取問題,如圖5(a)和5(b)所示;在跟蹤到的區(qū)域內(nèi)提取出物體的輪廓并結合物體當前的輪廓關聯(lián)性來保證提取出的運動序列完整有效,如圖5(c)所示。實驗結果表明,本文提出的方法比現(xiàn)有的提取方法更為有效,較好地解決了遮擋場景下的運動物體完整有效運動序列的提取問題。
本文針對監(jiān)控場景中因存在遮檔而無法提取出運動物體完整有效的運動序列這一現(xiàn)實問題,提出了一種新的跟蹤提取方法,即“ViBe+改進的粒子濾波+輪廓關聯(lián)”的提取方法,運用改進的粒子濾波跟蹤方法解決物體進出遮擋物前后的跟蹤定位問題,在定位到的區(qū)域內(nèi)提取出物體的輪廓并結合物體當前的輪廓關聯(lián)性來保證提取出的運動序列完整有效。實驗結果表明,采用本文提出的方法可以有效解決遮擋情況下的運動物體完整有效的運動序列提取問題,為運動物體提取技術提供了一個新的思路。本文后續(xù)的研究工作是將該方法應用到多物體的自適應跟蹤提取上,并考慮加入物體的特征信息以進一步提高粒子濾波跟蹤的精度,從而保證有更好的提取效果。
[1]Collins R,Lipton A,Kanade T.Introduction to the special section on video surveillance[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(8):745-746.
[2]Haritaoglu I,Harwood D,Davis L S W.Real-time surveillance of people and their activity[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(8):809-830.
[3]Kang H,Matsushita Y,Tang X,et al.Space-time video montage[C]//Proc of IEEE Conf Computer Version and Pattern Recognition,June 2006:1331-1338.
[4]Rav-Acha A,Pritch Y,Peleg S.Making a long video short:dynamic video synopsis[J].Proc of IEEE Conf Computer Version and Pattern Recognition,June 2006:435-441.
[5]Pritch Y,Rav-Acha A,Gutman A,et al.Webcam Svnopsis:peeking around the World[C]//Proc of Int’l Conf Computer Vision,Oct,2007.
[6]Braillon C,Pradalier C,Usher K,et al.Occupancy Grids from stereo and optical flow data[C]//The 10th International Symposium on Experimental Robotics,2008,39:367-376.
[7]Yin Honpeng,Chai Yi,Yang Simon X.Fast_moving target tracking based on mean shift and frame-difference methods[J].Systems Engineering and Electronics,2011,22(4):587-592.
[8]Jae Kyu Suhr,Ho Gi Jung,Gen Li,et al.Mixture of gaussians-based background subtraction for bayer-pattern Image sequences[J].IEEE Transactions on Circuits and Systems for Video Technology,2011,21(3):365-370.
[9]Zhang Y G,Cao Y,Xiang X Z H.Moving targets detection of static background subtraction[J].Journal of Electronic Measurement and Instrument,2010,24(5):494-499.
[10]Barnich O,Van Droogenbroeck M.ViBe:A powerful random technique to estimate the background in video sequences[C]//IEEE International Conference on Acoustics,Speech and Signal Process,2009:945-948.
[11]Barnich O,Van Droogenbroeck M.ViBe:A universal background subtraction algorithm for video sequences[J].IEEE Transactions on Image Processing,2011,20(6):1709-1724.
[12]Li Yongqiang,Chen Wanzhong,Jing Rui.The integration adjacent frame difference of improved ViBe for foreground object detection[C]//Proceeding of the WICOM 2011 International Conference on China,IEEE Antennas and Propagation Society,2011:1-4.
[13]張磊,傅志中,周岳平.基于HSV顏色空間和Vibe算法的運動目標檢測[J].計算機工程與應用,2014,50(4):181-185.
[14]孫水發(fā),覃音詩,馬先兵,等.室外視頻前景檢測中的形態(tài)學改進 ViBe算法[J].計算機工程與應用,2013,49(10):159-163.
[15]Nummiaro K,Koller-Meier E,Van Gool L.An adaptive color-based particle filter[J].Image and Vision Computing,2003,21(1):99-110.
[16]Yang C J,Duraiswamir,Dav Isl.Fast multiple object tracking via a hierarchical particle filter[C]//Proceedings of the Tenth IEEE International Conference on Computer Vision,Beijing,China,2005:212-219.
[17]劉濤,程小平,向本科.改進的基于顏色的粒子濾波目標跟蹤算法[J].計算機工程與設計,2010,31(8):1750-1753.