陳財雄,陳曉竹,范振濤
(中國計量學院 信息工程學院,浙江 杭州 310018)
運動目標檢測是機器視覺應(yīng)用領(lǐng)域中一個重要研究內(nèi)容,廣泛應(yīng)用于及視頻監(jiān)控、交通自動監(jiān)控、行人檢測、人群密度估計等方面.對于靜止像機序列,目前的技術(shù)可以穩(wěn)定地檢測出運動目標.但是,在復雜背景環(huán)境下,如有搖晃樹木和燈光等動態(tài)因素存在時,背景在拍到的視頻中都可能不斷發(fā)生微小的動態(tài)變化,現(xiàn)有技術(shù)就很難準確地檢測運動物體.本文針對這種靜止攝像機下,存在動態(tài)變化的復雜背景,提出了一種新穎的運動物體檢測算法.
針對不同的場景,很多學者已提出多種背景建模的方法,常用的有幀差法[1]、光流法[2]、混合高斯模型[3](MOG)、核密度估計模型[4,5]和碼本模型[6,7]等.這幾種方法各有利弊,譬如,幀差法算法簡單、計算量小,適用于動態(tài)環(huán)境,但其檢測精度不高,抗噪性能差;光流法具有較高的準確性,但計算相當復雜,不適合實時檢測;混合高斯模型和核密度估計模型需要消耗較大的內(nèi)存,且計算量大,難以達到實時性的要求,故而不能應(yīng)用在大量采樣的背景模型下;而文獻[6,7]證明了基于單像素點的碼本模型在檢測效果上相對于前幾種算法有比較大的提升.此后,研究者們對碼本模型進行了各種改進.文獻[8,9]在碼本模型中加入了高斯分布因素來判斷碼字是否匹配的問題,雖然保證了檢測精度,同時也增加了計算復雜度.文獻[10]將碼本模型簡化為Box,雖然減少了內(nèi)存開銷,但也降低了檢測精度.文獻[11,13]將碼本模型應(yīng)用在復雜的場景中,能夠較完整地提取出運動目標,但檢測速度一般,抗干擾能力差.因為碼本模型的建模技術(shù)是基于單個像素點的方式,尤其是在復雜的背景下,一旦因干擾使某一些像素點發(fā)生變化時,容易造成誤判,這使其檢測結(jié)果會存在空洞問題,甚至使檢測結(jié)果分成幾個部分.
考慮到實際監(jiān)控過程中的實時性要求,并提高目標提取的精確性,本文從 H.264[14,15]視頻編碼技術(shù)中得到啟發(fā),利用分塊的思想對每一宏塊(某一像素及其鄰域像素)而不是每一個像素建立起一個碼本以描繪背景中感興趣的狀態(tài),消除因單個像素擾動而產(chǎn)生的誤檢,從而提高了算法的速度和準確度.
碼本模型是針對連續(xù)的圖像序列的各個像素點進行背景建模以試圖描繪背景中的狀態(tài),其算法流程如圖1.該算法流程先對序列的前幾幀進行訓練,接著建立兩層背景模型,然后通過濾波器刪除代表前景的冗余碼字,同時更新兩層背景模型.最后將一個像素的采樣值和模型中對應(yīng)的碼字進行比較,如果兩個值接近,就判斷為背景,否則判斷為前景.
圖1 算法流程Figure 1 Algorithm process
定義X={x1,x2,…,xN}是訓練序列中長度為N 的 RGB矢量集合,其中xt=(Rt,Gt,Bt)為某一像素點上的RGB矢量,N=圖像總的像素數(shù).定義C={c1,c2,…,cL}為包含了L 個碼字的碼本.每一個像素點對應(yīng)一個碼本,但碼字數(shù)量不一定相同.每個碼字ci,i=1,…,L,包含了一個矢量vi=)和一個六元組auxi=<minIi,maxIi,fi,lamdai,pi,qi>.其中各成員含義如下:
minI,maxI:所有屬于該宏塊的像素中的最小和最大亮度平均值;
f:該宏塊對應(yīng)的碼本中碼字被匹配成功的次數(shù);lamda:沒有被匹配的最大時間間隔;
p,q:第一次和最后一次碼字匹配成功的時間.
因為在RGB顏色空間中,背景的亮度值沿著以碼字為主軸,從低到高,如圖2的顏色模型.
圖2 顏色模型Figure 2 Color model
對于當前新輸入的像素xt=(Rt,Gt,Bt)、碼字ci和矢量),有公式(1)的三個等式
顏色區(qū)分度δ計算如公式(2)
同時為了檢測亮度變化,本文定義了亮度變化的下限Ilow和上限Ihigh使得待檢測物體的亮度變化范圍限制在陰暗邊界和高亮邊界之間,即[Ilow,Ihigh].對于每個碼字,定義亮度變化范圍如公式(3)
式(3)中:一般0.4<α<0.7,1.1<β<1.5;當α取值越小時,亮度變化范圍越大.
定義亮度判別函數(shù)如公式(4)
碼本模型[6,7]所描述建模方法在計算像素變化時并沒有考慮它相鄰的像素,為了考慮到周圍的像素,同時消除因單個像素點引起的背景擾動或光照變化或運動目標自身引起的背景變化等等.本文將建立一個多元模型,它把基本的像素獨立模型擴展為包含了相鄰像素的亮度的基本場景.
由于基于單個像素的背景建模,單個像素點所包含的信息量過少,抗干擾能力差.因此,可以采用分塊的建模方法,事實上,對沒有目標的區(qū)域,圖像本身的結(jié)構(gòu)具有相對的穩(wěn)定性.因此,在目標提取過程中僅對單像素進行分析會產(chǎn)生大量冗余信息,不可避免地會對算法的實際執(zhí)行效率產(chǎn)生影響.而對相鄰的多個像素進行整體處理是為了減小計算冗余、提高執(zhí)行效率的一種途徑,由此,本文提出了一種基于圖像塊的多像素背景建模算法.假設(shè)一幅完整圖像的分辨率大小為M×N,如圖3所示,在背景建模階段,本文將其分為多個2×2宏塊,建立碼本模型實際上是在宏塊級上進行的.以宏塊為基本單位,對每一個宏塊中的各個像素點進行采樣后求得該宏塊像素均值和亮度均值,均值的計算按照公式(5).
圖3 數(shù)字圖像(M×N)Figure 3 Digital image(M×N)
式(5)中:r(i,j)、g(i,j)、b(i,j)分別是圖像在(i,j)處的r、g、b三個分量的像素值分別為以(i,j)為左上角坐標的2×2宏塊中r、g、b三個分量的像素均值,I為該宏塊的亮度均值,BLOCK定義為4,是指該宏塊包含了4個像素.
然后根據(jù)顏色區(qū)分度和亮度范圍這兩個判定準則為每一個宏塊聚類出碼字集,即碼本.根據(jù)背景不同,每個宏塊的采樣值不盡相同,所以對應(yīng)的碼字數(shù)量也不一定相同.
假設(shè)一副圖像的分辨率大小是320×240,共76800個像素點,如果采用原始碼本算法,則共需要建立76800個碼本,平均每個碼本含有4個碼字,則共需要76800×4=307200個碼字,每個碼字又占28字節(jié),則共需要占用8.203MB空間.而引入分塊思想后,僅需要8.203MB/4=2.051MB.這不僅節(jié)省了內(nèi)存占用空間,而且在前景檢測階段,本要遍歷每個碼字,從而判斷出前景或背景.而現(xiàn)在只需要對每一個宏塊進行判斷,理論上,匹配速度可提高4倍以上.由于每一幀圖像中相對于背景模型來說大部分是背景,只有極少數(shù)是前景,因此,如何加快匹配速度,提高實時性是進一步需要研究的重要課題.
在運動目標檢測階段,為了將前景目標從背景環(huán)境中分離出來,首先將輸入序列中的每一個宏塊與背景模型中的各個碼字進行比較,滿足匹配公式的為背景,找不到匹配碼字的為前景,對于視頻中的每一幀的任意塊像素x,檢測結(jié)果用如公式(6)
其算法流程如下公式:
II)對于背景模型中的所有碼字,若存在碼字cm與x滿足下列匹配公式的兩個條件:
其中ε為檢測閾值,需要針對具體的場景作適當?shù)恼{(diào)整.
為了評估本文改進的算法,本實驗環(huán)境采用處理器:AMD Athlon(速龍)64X24000+;顯卡:NVIDIA(英偉達)GeForce 8500GT (G86);內(nèi)存:1GBytes;操作系統(tǒng):微軟 Windows 7旗艦版Build 7600.軟件平臺為 Visual C++6.0,同時利用開源機器視覺庫OpenCV1.0.序列視頻采用室內(nèi)外兩種(所拍攝的場景不包括雨、雪等天氣較差的環(huán)境),圖像分辨率是320×240,包括不規(guī)則的背景擾動、局部光線變化.針對混合高斯模型、原始碼本算法和本文提出的改進后碼本算法進行多次實驗比較,各自取得數(shù)據(jù)的平均值,得到表1和表2如下:
由于實時視頻序列的幀間時間差是在40ms以內(nèi),即1秒鐘播放25幀以上的視頻是流暢的.從表1和表2中的數(shù)據(jù)可以看出,本文提出的改進碼本算法是實時性最好且占用內(nèi)存最少的算法.另外值得注意的是,相對于原始碼本算法來說,改進后的碼本算法處理速度是原始碼本算法的3~4倍,占用內(nèi)存也降了一半左右,這已經(jīng)能滿足大多數(shù)實際應(yīng)用場景中對系統(tǒng)實時性的要求了.
表1 各算法處理速度Table 1 Processing speeds of referred methods
表2 各算法內(nèi)存使用情況Table 2 Memory usage of referred methods
為了證明文中提出的算法在復雜場景下仍然具有較好的檢測效果,筆者對各算法在室內(nèi)外的場景下都進行了檢測效果的對比.其中,室內(nèi)場景是在夜晚時用型號為USB PC Camera-168的攝像頭從室內(nèi)捕獲的,包括燈光閃爍的干擾、局部光線變化,共513幀;室外視頻來自PETS2001[16]中的一段典型的測試視頻,除包括搖曳在風中的樹干擾,還存在局部光線變化,共2002幀.這兩個視頻主要用來檢驗算法的魯棒性和抗噪能力.圖4、圖5中分別給出了一組室內(nèi)和一組室外的檢測結(jié)果.
從圖4、圖5中可以看出,不管是在室內(nèi)還是室外,混合高斯的效果最差,而碼本算法在檢測精度上較好.但是,混合高斯將一些噪點(燈光作用或者搖曳在風中的樹等)誤判為前景;原始碼本算法卻遺留空洞問題,其原因主要是對每個單像素點建立模型,沒有考慮到鄰域像素點.而改進后的碼本算法在檢測精度上最好.因此,本文提出的改進碼本算法改善了原始碼本單像素點擾動產(chǎn)生的誤檢,基本不受外界因素的影響,不僅消除樹葉周期性的影響,而且適應(yīng)燈光的周期性變化,能夠提取出完整的運動目標.
本文主要針對靜止攝像機下,復雜動態(tài)背景對運動物體檢測產(chǎn)生的影響進行研究,提出一種改進碼本算法.總體思想是在原始碼本模型的基礎(chǔ)上融入了分塊思想,使得能夠快速完整地檢測出運動目標,并且消除了基于單一像素點方式導致的弱抗干擾能力,在保持較高的目標檢測率的情況,大大提高了系統(tǒng)的運行效率.該算法主要有以下特點:計算復雜度低,檢測速度快,占用內(nèi)存小;能處理好燈光效果,局部光線變化,并能抑制樹木搖動對檢測的影響;可提取完整的運動目標,魯棒性好.實驗結(jié)果驗證了該方法是有效的,在保證檢測一定精度的同時提高了實時性,能滿足實際實時性的需求,可以考慮在嵌入式系統(tǒng)上實現(xiàn)該算法.最后,本文尚未對雨雪等天氣較差下的運動目標檢測進行深入研究,在未來工作中將考慮惡劣天氣情況,以達到更好的檢測效果,為實際的智能視頻監(jiān)控提供更好的方法.
[1]WREN C R,AZARBAYEJANI A,DARRELL T,et al.Pfinder real-time tracking of the human body [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1999,19(7):780-785.
[2]HORN B K P,SCHUNCK B G.Determining optical flow[J].Artificial Intelligence,1981,17(123):185-203.
[3]STAUFFER C,GRIMSON W.Adaptive background mixture models for real-time tracking[C]//Proceedings of the IEEE International Conference on Computer Vision and Pattern Recognition.USA:IEEE Computer Society,1999:246-252.
[4]ELGAMMAL A,HARWOOD D,DAVIS L S.Non-parametric model for background subtraction[C]//Proceedings of the 6th European Conference on Computer Vision-Part II Dublin.Ireland:IEEE Computer Society,2000:751-767.
[5]MITTAL A,PARAGIOS N.Motion-based background subtraction using adaptive kernel density estimation[C]//Proceedings of the IEEE International Conference on Computer Vision and Pattern Recognition.USA:IEEE Computer Society,2004:302-309.
[6]KIM K,CHALIDABHONGSE T H,HARWOOD D,et al.Real-time foreground-background segmentation using codebook model[J].Real-Time Imaging,2005,11(3):172-185.
[7]KIM K,CHALIDABHONGSE T H,HARWOOD D,et al.Background modeling and subtraction by codebook construction[C]//Proceedings of the IEEE International Conference on Image Processing.Singapore:IEEE Computer Society,2004:3061-3064.
[8]LI Y B,CHEN F,XU W,et al.Gaussian-based codebook model for video background subtraction[C]//Proceedings of the 2nd International Conference on Natural Computation.Xian:ICNC,2006:762-765.
[9]田 崢,徐 成,楊志邦,等.智能監(jiān)控系統(tǒng)中的運動目標檢測算法[J].計算機工程,2011,37(4):1-4.
[10]TU Q,XU Y P,ZHOU M L.Box-based codebook model for real-time objects detection [C]//Proceedings of the 7th World Congress on Intelligent Control and Automation.Chongqing:WCICA,2008:7621-7625.
[11]FANG X Y,HE B,LUO B,et al.An improved codebook model for detecting moving object under complex dynamic background[C]//Proceedings of the 3th International Conference on Digital Image Processing.Chengdu:ICDIP,2011:1107-1112.
[12]HUAN R H,WANG Z H,TANG X M,et al.Moving target detection under complex background based on code book[C]//Proceedings of the 3th International Conference on Computer Science and Automation Engineering.Shanghai:CSAE,2011:203-207.
[13]SHAH M,DEND J,WOODFORD B.Enhanced codebook model for real-time background subtraction [C]//Processing of the International Conference on Neural Information.Shanghai:ICONIP,2011:449-458.
[14]ITU-T Recommendation.ITU-T Recommendation H.264|ISO/IEC 11496-10AVC [S].Geneva:ITU-T,2003.
[15]張久玲.H.264/AVC視頻編碼的預測算法研究[D].秦皇島:燕山大學,2011:15-59.
[16]IEEE International Workshop on Performance Evaluation of Tracking and Surveillance.visualsurveillance.org[EB/OL].(2012-03-01)[2001-12-04].http://www.visualsurveillance.org.