文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2011)01-0110-04
基于視頻的目標(biāo)檢測技術(shù)是計算機視覺的主要研究方向之一,它是智能監(jiān)控、移動機器人視覺導(dǎo)航、武器引導(dǎo)、全景戰(zhàn)車等應(yīng)用的基礎(chǔ)和關(guān)鍵技術(shù),具有十分重要的研究價值[1]。
目標(biāo)檢測分為多種類型。按照攝像機是否運動可分為兩種情況:靜態(tài)背景下的運動目標(biāo)檢測與跟蹤,通常指攝像機相對背景靜止的狀態(tài),如用于交通路口的安全監(jiān)控系統(tǒng);動態(tài)背景下的運動目標(biāo)檢測與跟蹤,通常指攝像機相對背景發(fā)生運動的狀態(tài),如利用單攝像機進(jìn)行全景監(jiān)控、機載航空相機、彈載的紅外CCD攝像頭[2]。在動態(tài)背景下,由于背景和前景都是運動的,相對靜態(tài)背景要準(zhǔn)確檢測和跟蹤目標(biāo)要復(fù)雜和困難得多。
本文主要針對復(fù)雜動態(tài)廣場背景下單攝像機對多個運動目標(biāo)進(jìn)行檢測的情況,在傳統(tǒng)方法的基礎(chǔ)上,提出了一套更完善、實時性和魯棒性更優(yōu)的基于全局運動補償的解決方案。該方法建立了攝像機全局運動參數(shù)模型,通過背景補償將動態(tài)背景下的檢測問題轉(zhuǎn)化為在靜態(tài)背景下的檢測問題。
1 動態(tài)背景下的多目標(biāo)檢測
目前在動態(tài)背景下解決目標(biāo)檢測的問題主要有兩大思路:(1)根據(jù)基于目標(biāo)模板特征的方法。這種方法背景是否運動對其影響不是很大,但是在目標(biāo)特征不明顯的情況下難以做到準(zhǔn)確地提取目標(biāo);(2)基于背景補償?shù)姆椒āMㄟ^全局運動估計得到的全局運動參數(shù)估算攝像機運動模型,在進(jìn)行差分圖像提取目標(biāo)前進(jìn)行背景補償,消除全局運動帶來的影響[3]。本文采用基于全局運動補償?shù)姆椒▽崿F(xiàn)目標(biāo)檢測。
1.1 全局運動估計
全局運動估計是指對視頻序列中造成背景運動的攝像機運動進(jìn)行估計,其目的是要從視頻序列中找出造成全局運動的攝像機運動的規(guī)律,從而將動態(tài)序列間的背景對準(zhǔn)消除,檢測出前景目標(biāo)[4]。
圖1為本文動態(tài)背景下基于全局運動補償?shù)倪\動目標(biāo)檢測的流程圖。
首先通過全局運動估計和補償將相鄰幀間背景對準(zhǔn),再通過幀間差分消除動態(tài)背景,最后對差分圖像進(jìn)行二值化以及一系列后處理從而獲取前景運動目標(biāo)。
1.1.1 常用的攝像機運動模型[5]
如圖2所示,攝像機把三維空間點(X,Y,Z)映射到二維空間平面點(x,y)上。圖像平面與Z軸垂直,中心坐標(biāo)為(0,0,f)(f表示攝像機的焦距)。
在笛卡爾坐標(biāo)系里,如果三維場景中的物體的運動為
1.1.3 遞歸最小二乘法計算全局運動參數(shù)
為了消除匹配不精確的宏塊所得到的光流場的影響,需要對參數(shù)估計進(jìn)行遞歸計算,將得到的六個參數(shù)重新計算各個宏塊的光流場,并與宏塊匹配算法得到的光流場進(jìn)行比較,將光流計算誤差較大的宏塊進(jìn)行剔除[6]。利用剩余的宏塊重新估計全局運動參數(shù),如果遞歸反復(fù),則直到(a1,a2,a3,a4,a5,a6)收斂至一個穩(wěn)定的結(jié)果。
1.2 圖像剪裁、紋理提取與宏塊預(yù)判
為了提高運動估計的魯棒性,本文采用了基于宏塊匹配的方法計算參數(shù)。把分辨率為320×240的K+1幀圖像分為20×15個宏塊,對第K幀進(jìn)行匹配。分割宏塊后的圖像如圖3所示。
為了提高運動估計的實時性,本文從以下幾個方面進(jìn)行了優(yōu)化。
1.2.1 圖像剪裁
當(dāng)攝像機運動時,相鄰幀的背景不重合,由圖4所示第K+1幀和第K幀圖像的位置關(guān)系,第K幀中的S1區(qū)域背景在第K+1幀中消失,而第K+1幀中出現(xiàn)新背景S2,由于背景運動在各個方向上都有可能發(fā)生,假設(shè)相鄰幀的運動范圍不超過L1(>L2),以圖4中所示,樣本宏塊只需在S3區(qū)域中選取,而不必全屏宏塊匹配,以縮小計算量。
1.2.2 紋理提取與宏塊預(yù)判
運用遞歸最小二乘法估計全局運動時,光流計算不準(zhǔn)確的宏塊不參與最終的參數(shù)估計,但在計算光流場時,卻花費了相當(dāng)一部分的時間來匹配計算光流。而本文在計算光流場之前已提前剔除可能導(dǎo)致不準(zhǔn)確光流估計的宏塊,因此,很大程度上降低了計算量,增加了全局運動估計的實時性。
圖5是原圖像和canny算子紋理提取后結(jié)果。圖像紋理提取后,對每個宏塊進(jìn)行預(yù)分析,通過設(shè)定閾值,剔除可能導(dǎo)致不準(zhǔn)確光流估計的宏塊,只留下紋理信息量較多的宏塊參與光流估計。
圖6為宏塊預(yù)判后的實驗結(jié)果,歸一化后閾值T取值為0.2,其分辨率為320×240,4個邊緣各去除掉10個像素后,將圖像分為20×15個宏塊,每個宏塊尺寸為15×15。
宏塊預(yù)判后,宏塊數(shù)量得到減少,由原來的300個宏塊減少為105個,約占原來總宏塊數(shù)的35%。
1.3 宏塊匹配與九點十字搜索法
1.3.1 宏塊匹配
宏塊模板匹配法原理圖如圖7所示。宏塊模板匹配法以一個目標(biāo)圖像為模板,用目標(biāo)模板與待匹配圖像的各個子區(qū)域圖像進(jìn)行一定的匹配準(zhǔn)則計算,找到和目標(biāo)模板最相似的子圖像位置[7]。本文即從圖4的S3區(qū)域里找出宏塊預(yù)判后保留的宏塊與其最佳匹配塊之間的相對位移,即為該宏塊的運動向量,參與后續(xù)的全局運動估計的計算,S3即為匹配相關(guān)區(qū)域。
衡量兩圖像塊間相似性的準(zhǔn)則稱為匹配準(zhǔn)則。匹配準(zhǔn)則的好壞直接影響到搜索過程的復(fù)雜性以及運動向量估計的精確性。其中均方誤差定義準(zhǔn)則為:
MSE利用差值的平方,可以放大微小差別,本文采用的就是MSE匹配準(zhǔn)則。
1.3.2九點十字搜索法
在進(jìn)行宏塊匹配時,利用宏塊在待匹配圖像上的搜索區(qū)域內(nèi)滑動,每滑動一次就進(jìn)行一次匹配計算,以找到最佳匹配。這種方法被稱為全搜索法,精確度高,但計算量大,是一個相當(dāng)耗時的過程。
近年來,出現(xiàn)了很多種快速的搜索算法代替全搜索法,比較常用的有:三步搜索法、對數(shù)搜索法、鉆石搜索法和一些相應(yīng)的改進(jìn)算法。這些快速搜索法在候選的運動矢量位置的預(yù)定子集上評測準(zhǔn)則函數(shù),檢測點數(shù)目會大大少于全搜索法[8]。
本文結(jié)合三步搜索法和鉆石搜索法各自的優(yōu)點提出了一種九點十字搜索法(E3SS),如圖8所示。搜索窗寬度為5,即搜索范圍是(i±5,j±5)。
(1)搜索模板上的9個檢測點,如果最小塊誤差MBD
(Minimum Block Distortion)點(MSE值最小的點),在搜索窗口的中心則算法結(jié)束。
(2)如果MBD點位于中心點的4個相鄰點中,移動十字小模板到上一步的MBD點,繼續(xù)搜索十字小模板中其他點,直到MBD點是十字中心的點或者十字小模板到達(dá)搜索窗口邊緣為止。如圖9(a)所示,點(0,-1)是第一步的MBD點,也是第二階段的MBD點,且位于搜索窗中心,故最終運動矢量就是(0,-1)。圖9中每個點上的數(shù)字表示不同階段搜索時的檢測點。
(3)如果MBD點是大十字中的4點之一,搜索方法同三步搜索法類似,即將步長減半,中心點移到上一步的MBD點,重新在周圍距離步長的4個點處進(jìn)行塊匹配計算并比較。重復(fù)此步驟,直到步長為1,該點所在位置即對應(yīng)最優(yōu)運動矢量。如圖9(b)所示,(0,4)是第一步的MBD點,然后以(0,4)為中心點進(jìn)行第二步搜索,此時搜索半徑已經(jīng)縮減為2像素,最后以當(dāng)前MBD點(-2,4)完成第三步搜索,找到最優(yōu)匹配點。
利用預(yù)測幀的峰值信噪比PSNR來度量搜索的準(zhǔn)確性,同時選取多個不同性質(zhì)的序列圖像來檢測算法的穩(wěn)定性,選取全搜索算法FS、菱形搜索算法DS,以對比九點十字算法的各項性能,其結(jié)果如表1所示。
從表1可以看出,相對FS和DS算法,九點十字算法(E3SS)在時間上的優(yōu)勢非常大,在提高了搜索速度的同時也保證了搜索精度,其精度除了比FS算法略低外,比目前流行的DS算法都有細(xì)微程度的提高。
雙線性內(nèi)插值法計算量大,但縮放后圖像質(zhì)量高,不會出現(xiàn)像素值不連續(xù)的情況。
1.5 運動目標(biāo)區(qū)域提取[9]
此時得到的K的補償幀Kcomp與幀K+1的背景基本對準(zhǔn),對所得圖像進(jìn)行非線性平滑濾波消除噪聲,然后通過進(jìn)行幀間差分即可消除背景獲得前景運動區(qū)域。但圖中除了運動目標(biāo)之后,還存在一些小面積的干擾區(qū)域以及一些小面積的空洞。本文先對二值化后的圖像進(jìn)行區(qū)域標(biāo)記,對二值圖像的每個不同的連通域進(jìn)行不同的編號,通過對各個區(qū)域中像素個數(shù)的計算獲得各個區(qū)域的面積。將面積小于設(shè)定閾值的區(qū)域剔除。對得到的二值圖像先進(jìn)行膨脹運算再進(jìn)行腐蝕運算,從而獲得運動目標(biāo)的完整輪廓和區(qū)域,最終檢測出目標(biāo)。
2 實驗結(jié)果
圖10為在原圖像上的檢測結(jié)果,從中可以看出,其中一個人體目標(biāo)由于只有頭部和腿部動作比較明顯而被檢測出來,被分成了兩個目標(biāo),但是可以在跟蹤過程中通過對目標(biāo)的顏色特征和運動特性的分析和處理,區(qū)別目標(biāo),并將本為同一目標(biāo)的部分合成(由于跟蹤過程不是本文重點,在此處就不再鰲述)。圖11所示為最終的檢測結(jié)果。
本文深入研究了動態(tài)背景下對多目標(biāo)檢測的一種有效方法?;谌诌\動補償消除了背景運動對目標(biāo)檢測的影響,在宏塊匹配時提出了九點十字搜索法增強了檢測的實時性,通過處理后的結(jié)果可以看出,整套算法是行之有效的,并且有很強的魯棒性,為后續(xù)跟蹤過程奠定了良好的基礎(chǔ)。
參考文獻(xiàn)
[1] 賈桂敏.基于物體局部信息的跟蹤算法研究[D]. 天津:天津大學(xué)精密儀器與光電子工程學(xué)院,2008.
[2] 王研.動態(tài)背景下目標(biāo)跟蹤若干技術(shù)問題的研究[D].天津:天津大學(xué)精密儀器與光電子工程學(xué)院,2007.
[3] BEYMER D,MCLAUCHLAN P F,COIFMAN B,et al. A real-time computer vision system for measuring traffic parameters[C]. In Proceeding. of the IEEE Conference. on Computer Vision and Pattern Recognition,1997.
[4] HEUER J, KAUP A. Global motion estimation in image sequences using robust motion vector field segmentation[C]. In:Proceeding of the 7th ACM International conference on ultimedia,Sydney,Australia,1999.
[5] 吳思.視頻運動信息分析技術(shù)研究[D].沈陽:中國科學(xué)院計算技術(shù)研究所,2005.
[6] 張竟.動態(tài)圖像序列中運動目標(biāo)檢測若干技術(shù)問題的研究[D].天津:天津大學(xué)精密儀器與光電子工程學(xué)院,2007.
[7] 陳敏慎.運動目標(biāo)物體實時追蹤圖像匹配法的研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2003.
[8] 劉海華.雙十字搜索算法的快速塊匹配運動估計[J].計算機研究與發(fā)展,2006,43(9):1666-1673.
[9] 劉文耀.光電圖像處理[M].北京:電子工業(yè)出版社,2002:122-355.