徐文瀚 程石磊
摘要
本文針對(duì)智能視頻監(jiān)控中的前景檢測(cè)功能展開(kāi)研究工作,研究?jī)?nèi)容主要包括核心的前景檢測(cè)算法。本文首先研究圖像預(yù)、后處理對(duì)系統(tǒng)性能的提升。在前景檢測(cè)方面,本文對(duì)比多種主流算法,選擇ViBe(Visual Background extractor)算法進(jìn)行深入學(xué)習(xí)研究,從閃爍點(diǎn)判斷、自適應(yīng)閾值處理等方面進(jìn)行了改進(jìn)。
【關(guān)鍵詞】改進(jìn)VIBE算法 前景檢測(cè) ViBe算法
1 引言
二十一世紀(jì),世界范圍內(nèi)社會(huì)生產(chǎn)力和科學(xué)技術(shù)高速發(fā)展,而由此帶來(lái)的安全隱患以及日益增長(zhǎng)的人力成本需要無(wú)人值守的智能視頻入侵檢測(cè)技術(shù)的出現(xiàn)。視頻監(jiān)控入侵檢測(cè)系統(tǒng)能夠在輸入的一系列視頻圖像序列中分離出運(yùn)動(dòng)前景和場(chǎng)景背景,從而實(shí)現(xiàn)對(duì)場(chǎng)景中運(yùn)動(dòng)目標(biāo)的檢測(cè),若運(yùn)動(dòng)目標(biāo)進(jìn)入禁區(qū),則發(fā)出警報(bào)。高實(shí)時(shí)性的檢測(cè)系統(tǒng)能及時(shí)檢測(cè)到入侵行為,替代監(jiān)控人員的大部分工作,避免了監(jiān)控人員因過(guò)度疲勞或注意力分散造成的漏報(bào)、誤報(bào)等現(xiàn)象。
2 ViBe算法
ViBe算法(Visual Background extractor)假設(shè)鄰域像素具有相似的時(shí)空分布?;谶@個(gè)假設(shè),算法可以選擇像素點(diǎn)的空間鄰域的像素值來(lái)作為該像素的背景模型樣本。換句話(huà)說(shuō),第一幀時(shí),算法在像素點(diǎn)的鄰域內(nèi)隨機(jī)取固定個(gè)數(shù)的像素點(diǎn)來(lái)組成背景樣本集合。這就實(shí)現(xiàn)了單幀初始化的實(shí)現(xiàn),即只需一幀圖像即可實(shí)現(xiàn)模型的初始化,這對(duì)于入侵檢測(cè)的性能提升是有重大意義的。
經(jīng)過(guò)大量實(shí)驗(yàn),單幀初始化的策略被證明是成功的。但是它也有缺陷,若初始幀中有運(yùn)動(dòng)物體,算法會(huì)持續(xù)地在運(yùn)動(dòng)物體初始的位置檢測(cè)到一個(gè)前景,即使運(yùn)動(dòng)物體已經(jīng)離開(kāi)那個(gè)位置,即產(chǎn)生了鬼影。但是隨著背景模型的更新,鬼影會(huì)在一段時(shí)間后淡化消失,此問(wèn)題將被大幅度改善。
設(shè)V(x)代表圖像中像素x的歐式顏色距離;Vi代表索引i的背景樣本值,每一個(gè)像素點(diǎn)的背景模型表示為一個(gè)有N個(gè)背景樣本值的集合,表示為:
。這就是像素的背景模型。
為了通過(guò)上述的背景模型完成對(duì)像素的分類(lèi),即需要定義像素點(diǎn)的分類(lèi)機(jī)制。假設(shè)有一個(gè)以v(x)為球心,以R為半徑的球SRv(x),當(dāng)樣本模型M(x)中歐式色彩值位于球SRv(x)的像素點(diǎn)的個(gè)數(shù)大于閾值#min時(shí),像素x被分類(lèi)為背景,否則x為前景。二維色彩空間下示意圖如圖1所示。
若做出以下設(shè)定,則能夠小幅提高算法效率:分類(lèi)像素點(diǎn)時(shí),若樣本內(nèi)匹配的像素點(diǎn)的個(gè)數(shù)己達(dá)#min,則分類(lèi)停止,無(wú)需繼續(xù)檢測(cè)剩余樣本值。
這個(gè)模型的準(zhǔn)確性?xún)H僅由兩個(gè)參數(shù)決定:球體的半徑R與最小基數(shù)#min。通過(guò)查閱文獻(xiàn),對(duì)于單通道圖像,大量實(shí)驗(yàn)表明半徑R=20,最小基數(shù)#min=2是較為有效的參數(shù)。在算法分類(lèi)過(guò)程中無(wú)需適應(yīng)修正這些參數(shù),也不需要對(duì)圖像中不同位置的像素值修改參數(shù)。因此樣本N的個(gè)數(shù)和一旦選好即可固定,該模型的敏感度可由#min/N來(lái)表示。
2 基于背景模型更新的改進(jìn)ViBe算法
這一節(jié)將描述隨著每個(gè)新圖像幀的讀入,如何不斷地更新背景模型。如果想要算法穩(wěn)定正確的運(yùn)行,這一步將是至關(guān)重要的一步:更新過(guò)程必須能夠適應(yīng)光照變化和處理場(chǎng)景中出現(xiàn)的新目標(biāo)。
2.1 閃爍像素點(diǎn)檢測(cè)
在水面波紋、樹(shù)葉抖動(dòng)等動(dòng)態(tài)場(chǎng)景下,算法通常難以區(qū)分動(dòng)態(tài)部分是前景像素還是背景像素,檢測(cè)結(jié)果一般為檢測(cè)出大量的離散前景像素點(diǎn),并不停閃爍更新,這種情況也會(huì)出現(xiàn)于場(chǎng)景中灰度差值較大的分界位置。為了解決這個(gè)問(wèn)題,本文提出一種方法,通過(guò)判斷一個(gè)像素點(diǎn)的閃爍程度來(lái)判斷其是否為動(dòng)W態(tài)背景像素。
對(duì)于每一個(gè)像素點(diǎn),算法為其分配一個(gè)標(biāo)簽,記錄其當(dāng)前為前景或是背景,同時(shí)給每一個(gè)像素點(diǎn)設(shè)定閃爍值blinklevel。當(dāng)某一像素點(diǎn)的上一幀的標(biāo)簽與此幀的標(biāo)簽不同時(shí),設(shè)定其閃爍值blinklevel增加bup,而當(dāng)某一像素點(diǎn)的上一幀的標(biāo)簽與此幀的標(biāo)簽相同時(shí),設(shè)定其閃爍值blinklevel減少bdown。blinklevel的取值應(yīng)為正值,上限設(shè)為p。當(dāng)某一像素點(diǎn)的閃爍值超過(guò)閾值k時(shí),即認(rèn)為此點(diǎn)為閃爍點(diǎn),將其設(shè)定為背景點(diǎn),并有機(jī)會(huì)更新為背景模型。如圖2顯示了原Vibe算法與改進(jìn)Vibe算法的效果對(duì)比。
2.2 自適應(yīng)閾值
ViBe算法是作為一種無(wú)參算法提出的,即在檢測(cè)過(guò)程中,即使場(chǎng)景變動(dòng),閾值無(wú)需改變。但在實(shí)際應(yīng)用中,根據(jù)樣本值自動(dòng)更新的閾值能夠改進(jìn)算法效果。
在這里引入自適應(yīng)閾值,閾值大小與樣本集的方差成正比,樣本集方差越大,說(shuō)明背景越復(fù)雜,判定閾值應(yīng)該越大。閾值為0.5*σm,取值區(qū)間定位20?40。
2.3 自適應(yīng)更新因子
當(dāng)背景變化過(guò)快時(shí),固定的更新因子會(huì)使樣本更新過(guò)慢。在這種情況下應(yīng)該減小更新因子,使背景像素以更高的幾率更新背景樣本集,使算法更快地適應(yīng)新場(chǎng)景。
筆者認(rèn)為,若突然地出現(xiàn)大面積前景像素點(diǎn),可以根據(jù)前景像素點(diǎn)占圖像總像素的比例來(lái)減小更新因子。在光照突變的第70幀,對(duì)比時(shí)間重采樣系數(shù)ψ為16時(shí)的檢測(cè)效果和時(shí)間重采樣系數(shù)ψ為8的檢測(cè)效果,對(duì)比結(jié)果如圖3所示。
從圖3可見(jiàn),自適應(yīng)的更新因子能夠加快算法對(duì)突變場(chǎng)景的適應(yīng),增加系統(tǒng)的魯棒性。
2.4 性能評(píng)價(jià)
召回率是評(píng)價(jià)前景檢測(cè)算法綜合性能的一個(gè)很好的指標(biāo)。,大量開(kāi)源視頻數(shù)據(jù)庫(kù)人工地標(biāo)定了運(yùn)動(dòng)區(qū)域,將改進(jìn)后的ViBe算法檢測(cè)出的每一個(gè)前景像素點(diǎn)和背景像素點(diǎn)結(jié)果與事先標(biāo)定的數(shù)據(jù)進(jìn)行對(duì)比計(jì)算,即可得出召回率recall。
在改進(jìn)ViBe算法中,我們?cè)O(shè)置參數(shù)#min=3,背景樣本個(gè)數(shù)N=20,子采樣概率ψ在8—16之間波動(dòng),半徑R=20,連通性檢測(cè)的閾值sl=s2=(l/10000)*圖像像素,閃爍點(diǎn)檢測(cè)中bup=15,bdown=l,p=3000,k=1000。在上述參數(shù)前提下,對(duì)SABS(斯圖加特人工背景差)數(shù)據(jù)庫(kù)進(jìn)行實(shí)驗(yàn),在復(fù)雜場(chǎng)景下得出召回率recall=0.8,優(yōu)于改進(jìn)前的ViBe算法,優(yōu)于Sebastian Brutzer等人所進(jìn)行的評(píng)估項(xiàng)目中所涉及的前景檢測(cè)算法,如圖4所示。
3 結(jié)束語(yǔ)
本文對(duì)主流前景檢測(cè)算法進(jìn)行深入學(xué)習(xí)后選擇背景建模法,并選擇多種背景模型進(jìn)行實(shí)驗(yàn)評(píng)估,發(fā)現(xiàn)ViBe算法在絕大多數(shù)場(chǎng)景下都具有不錯(cuò)的性能,且運(yùn)算量小,實(shí)時(shí)性高。對(duì)ViBe算法深入研究學(xué)習(xí)后,經(jīng)過(guò)大量實(shí)驗(yàn),提出了ViBe算法的改進(jìn),在沒(méi)有明顯降低算法效率的同時(shí),改善了算法的更新機(jī)制,加入了閃爍點(diǎn)的檢測(cè),并通過(guò)后處理提升了前景檢測(cè)的實(shí)用性。
參考文獻(xiàn)
[1] Barnich 0,Van Droogenbroeck M.ViBe: a powerful random technique to estimate the background in video sequences [C]//Acoustics, Speech and Signal Processing,2009. ICASSP 2009. IEEE International Conference on, IEEE,2009: 945-948.
[2] Jodoin P M, Mignotte Konrad J, Statistical background subtract ion using spatial cues [J]. Circuits and Systems for Video Technology, IEEE Transactions on, 2007,17 (12):1758-1763.
[3] Shoushtarian B,Bez H E. A practical adaptive approach for dynamic background subtract ion using an invariant colour model and object tracking [J].Pattern Recognition Letters, 2005, 26 (01): 5-26.
[4] Davis J,Goadrich M. The relationship between Precision-Recall and ROC curves [C]//Proceedings of the 23rd international conference on Machine learning. ACM, 2006: 233-240,
[5] Brutzer,Sebastian;Hoferlin, Benjamin;Heidemann,Gunther: Evaluation of Background Subtraction Techniques for Video Surveillance. In: Computer Vision and Pattern Reco gnition(CVPR),S. 1937-1944, 2011.