文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.033
中文引用格式: 胡昭華,張維新,王玨,等. 基于改進(jìn)ViBe的運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J].電子技術(shù)應(yīng)用,2017,43(4):129-132,137.
英文引用格式: Hu Zhaohua,Zhang Weixin,Wang Jue,et al. Moving object detection algorithm based on improved ViBe[J].Application of Electronic Technique,2017,43(4):129-132,137.
0 引言
伴隨計(jì)算機(jī)視覺(jué)[1]這門(mén)學(xué)科的發(fā)展,運(yùn)動(dòng)目標(biāo)檢測(cè)技術(shù)[2]成為視頻運(yùn)動(dòng)目標(biāo)分析的核心內(nèi)容。如何消除光照的變化、背景的擾動(dòng)或者攝像機(jī)的運(yùn)動(dòng)等問(wèn)題帶來(lái)的影響,提高魯棒性,是近些年來(lái)研究的熱點(diǎn)問(wèn)題。
攝像機(jī)靜止情況下的運(yùn)動(dòng)目標(biāo)檢測(cè)方法主要分為幀間差分法[3]、光流場(chǎng)法[4]和背景建模方法。比較流行的背景建模算法主要有STAUFFER C和GRIMSON W E L[5]提出的混合高斯背景模型,解決了多模態(tài)環(huán)境下顏色分布不集中的運(yùn)動(dòng)目標(biāo)檢測(cè)問(wèn)題。BARNICH O等人[6,7]提出了ViBe(Visual Background Extractor)算法,具有很好的魯棒性和實(shí)時(shí)性,但特定條件下會(huì)出現(xiàn)Ghost區(qū)域以及對(duì)于動(dòng)態(tài)背景處理效果不理想等問(wèn)題。針對(duì)ViBe算法的不足, GUANG A H等人[8]提出了自適應(yīng)的距離閾值,對(duì)于和背景區(qū)分不開(kāi)的前景取得了較好的效果。QIN L等人[9]在基于ViBe算法的基礎(chǔ)上加入了Gabor濾波器,增加了Ghost區(qū)域的消融速度,并根據(jù)此濾波器更新模型。FAN Z等人[10]提出了使用空間信息和自適應(yīng)閾值改進(jìn)了ViBe算法在陰影檢測(cè)方面的效果。
針對(duì)ViBe算法的不足,本文提出IViBe(Improved Visual Background Extractor)算法。通過(guò)幀間差分法消除Ghost區(qū)域的影響,并加入動(dòng)態(tài)背景復(fù)雜度的度量,實(shí)時(shí)地更新距離閾值和背景模型的更新率,從而降低了動(dòng)態(tài)背景對(duì)檢測(cè)結(jié)果造成的影響。并利用全局補(bǔ)償將該算法應(yīng)用到了攝像機(jī)運(yùn)動(dòng)情況下的運(yùn)動(dòng)目標(biāo)檢測(cè)。
1 基于IViBe算法的運(yùn)動(dòng)目標(biāo)檢測(cè)
IViBe算法流程框架如圖1所示。本文將從背景模型的建立、前景目標(biāo)檢測(cè)、Ghost區(qū)域的去除、基于動(dòng)態(tài)背景復(fù)雜度的背景模型更新這幾個(gè)方面介紹IViBe算法;最后聯(lián)合運(yùn)動(dòng)補(bǔ)償算法將IViBe算法應(yīng)用到攝像機(jī)運(yùn)動(dòng)情況下的動(dòng)態(tài)目標(biāo)檢測(cè)問(wèn)題。
首先,利用視頻序列的第一幀構(gòu)建初始樣本集;其次,對(duì)于下一幀圖像,統(tǒng)計(jì)每個(gè)像素點(diǎn)與其對(duì)應(yīng)背景模型的歐氏距離小于距離閾值的個(gè)數(shù),稱之為匹配個(gè)數(shù),通過(guò)比較其與匹配閾值的關(guān)系,區(qū)分前、背景點(diǎn)。并與利用幀間差分法得出的前景點(diǎn)進(jìn)行邏輯“與”運(yùn)算得出最終的前景點(diǎn)檢測(cè)結(jié)果;然后,若某一像素點(diǎn)為背景點(diǎn),則按照一定的概率更新其對(duì)應(yīng)的背景模型;最后,根據(jù)背景動(dòng)態(tài)程度的度量值,實(shí)時(shí)更新距離閾值和更新概率。
1.1 背景模型的建立
ViBe算法利用相鄰像素點(diǎn)具有相似空間分布的特點(diǎn),對(duì)圖像中每一個(gè)像素點(diǎn)構(gòu)建一個(gè)樣本集。假設(shè)第一幀圖像中任一像素點(diǎn)I的坐標(biāo)為(x,y),則在其8鄰域內(nèi)隨機(jī)選取N個(gè)像素點(diǎn)作為像素點(diǎn)I的初始樣本集中的樣本值。設(shè)當(dāng)前幀像素值為v(x,y),背景樣本值為vi(x,y),則初始樣本集為MI(x,y)={v1(x,y),v2(x,y),v3(x,y),…,vN(x,y)},至此,初始背景模型構(gòu)建完成。
1.2 前景目標(biāo)檢測(cè)
在背景模型構(gòu)建完成之后,對(duì)于新的一幀圖像,計(jì)算像素點(diǎn)與樣本集之間的歐氏距離,統(tǒng)計(jì)距離小于設(shè)定的距離閾值R的個(gè)數(shù)n(x,y),并與預(yù)先設(shè)定的匹配閾值min進(jìn)行比較。當(dāng)匹配個(gè)數(shù)n(x,y)小于閾值min,表示該像素點(diǎn)v(x,y)與該像素點(diǎn)的背景樣本集相似程度較低,即被判斷為前景點(diǎn),反之則為背景點(diǎn)。
為了避免某一樣本長(zhǎng)期保留在背景模型中,從而影響背景模型的精確性,引入了隨機(jī)更新機(jī)制,即當(dāng)像素點(diǎn)完成判別之后,若該像素點(diǎn)屬于背景點(diǎn),則有1/δ(x,y)的概率更新背景樣本集,即從背景樣本中隨機(jī)選取一個(gè)樣本值vi(x,y)并用當(dāng)前像素點(diǎn)v(x,y)取代。
1.3 Ghost區(qū)域的去除
在ViBe算法中,如果在視頻第一幀中存在待檢目標(biāo),或者當(dāng)運(yùn)動(dòng)目標(biāo)在視頻中由運(yùn)動(dòng)目標(biāo)轉(zhuǎn)變?yōu)楸尘皶r(shí),由于不能及時(shí)更新背景模型,從而導(dǎo)致在后續(xù)幀當(dāng)中將背景誤判為前景,即為Ghost區(qū)域。
在IViBe算法中通過(guò)幀間差分法得到的前景點(diǎn)與ViBe算法得到的前景點(diǎn)結(jié)果進(jìn)行邏輯“與”運(yùn)算,去除Ghost區(qū)域。
實(shí)驗(yàn)結(jié)果如圖2所示,本實(shí)驗(yàn)選取的是Walking視頻序列,由實(shí)驗(yàn)結(jié)果可以看出,經(jīng)過(guò)ViBe算法得出的實(shí)驗(yàn)結(jié)果在第44幀檢測(cè)出結(jié)果的同時(shí)仍然存在第2幀中的運(yùn)動(dòng)目標(biāo)區(qū)域,即為Ghost區(qū)域,在圖2(c)中以白色邊框作為標(biāo)記。而IViBe算法則成功地去除了Ghost區(qū)域,提高了檢測(cè)結(jié)果的準(zhǔn)確性。
1.4 基于動(dòng)態(tài)背景復(fù)雜度的背景模型更新
在ViBe算法中,背景模型更新?lián)碛幸粋€(gè)固定的更新率1/δ(x,y),但對(duì)于動(dòng)態(tài)背景情況下,例如水的波紋、樹(shù)葉的抖動(dòng)等,就會(huì)出現(xiàn)大量背景點(diǎn)被錯(cuò)誤地檢測(cè)為前景點(diǎn)的情況,所以固定的更新率和距離閾值不能很好地適用于動(dòng)態(tài)背景。當(dāng)背景動(dòng)態(tài)程度變化時(shí),如若背景中某一個(gè)像素點(diǎn)動(dòng)態(tài)程度較高,則對(duì)應(yīng)該點(diǎn)的像素值變化必然比較大,反之應(yīng)該無(wú)變化或變化較小。所以本文提出利用像素值背景模型樣本集的標(biāo)準(zhǔn)差σ(x,y)來(lái)度量背景動(dòng)態(tài)程度。
本文根據(jù)動(dòng)態(tài)背景復(fù)雜度σ(x,y)實(shí)時(shí)更新距離閾值,對(duì)于背景動(dòng)態(tài)程度較大的視頻序列,適當(dāng)增大距離閾值,降低動(dòng)態(tài)背景對(duì)檢測(cè)結(jié)果造成的影響,反之則減小適當(dāng)距離閾值。這樣就可以保證R(x,y)一直處于合理的變化范圍之內(nèi)。距離閾值的更新公式如式(1)所示:
其中α,β是預(yù)先設(shè)定的一個(gè)系數(shù),分別取值為0.16和0.01。
而對(duì)于背景模型更新概率1/δ(x,y),采用和距離閾值較為類(lèi)似的處理方式對(duì)更新概率進(jìn)行自適應(yīng)處理。即當(dāng)該像素點(diǎn)被判別為前景像素點(diǎn)時(shí),適當(dāng)減小背景模型更新概率,反之適當(dāng)增大背景模型的更新概率,并且只有當(dāng)該像素點(diǎn)為背景點(diǎn)時(shí),才會(huì)進(jìn)行背景模型的更新。背景模型更新方式如式(2)所示:
其中γ是預(yù)先設(shè)定好的系數(shù),取值為0.1。
1.5 聯(lián)合LK光流法及運(yùn)動(dòng)補(bǔ)償?shù)哪繕?biāo)檢測(cè)
LK光流法用于計(jì)算兩幀圖像中對(duì)應(yīng)像素點(diǎn)運(yùn)動(dòng)信息,利用鄰域信息匹配出光流矢量,從而形成了整幅圖像的運(yùn)動(dòng)場(chǎng)。當(dāng)物體和圖像背景中存在相對(duì)運(yùn)動(dòng)時(shí),運(yùn)動(dòng)物體所形成的速度矢量則必然不同于鄰域背景的速度矢量,從而將運(yùn)動(dòng)物體的位置檢測(cè)出來(lái)。
通過(guò)LK光流法求出每一像素點(diǎn)運(yùn)動(dòng)方向向量之后,通過(guò)對(duì)整幅圖像采用線性插值定理就可以得到運(yùn)動(dòng)補(bǔ)償后的圖像。如圖3所示,補(bǔ)償過(guò)后的圖像和第12幀灰度圖像相比,消除了第12幀中的運(yùn)動(dòng)背景影響。
對(duì)補(bǔ)償后的圖像,利用幀間差分法得出補(bǔ)償前景點(diǎn),將IViBe算法得出的前景點(diǎn)結(jié)果與補(bǔ)償前景點(diǎn)結(jié)果進(jìn)行“與”運(yùn)算,進(jìn)而得出最終的前景點(diǎn)判別結(jié)果。
2 實(shí)驗(yàn)結(jié)果及分析
2.1 IViBe算法對(duì)一般動(dòng)態(tài)背景的目標(biāo)檢測(cè)
本算法測(cè)試硬件平臺(tái)為AMD A6,4 GB RAM,軟件開(kāi)發(fā)環(huán)境為Windows10、Matlab2014a。在本實(shí)驗(yàn)中,使用了20個(gè)樣本值作為每個(gè)像素點(diǎn)的樣本集,距離閾值初始值設(shè)為20,min設(shè)為2,背景模型的更新率初始值設(shè)為1/16,選取的視頻序列集是changedetection數(shù)據(jù)集[11]中的動(dòng)態(tài)背景中overpass、fountain01、canoe這3個(gè)視頻序列完成IViBe算法對(duì)動(dòng)態(tài)背景的魯棒性測(cè)試,并選取了ViBe算法進(jìn)行了對(duì)比實(shí)驗(yàn)。
圖4~圖6為IViBe算法在動(dòng)態(tài)背景中的魯棒性測(cè)試結(jié)果。在本文實(shí)驗(yàn)中的動(dòng)態(tài)背景分別為水中波紋、樹(shù)葉的擾動(dòng)、噴泉??梢钥闯?,IViBe算法可以很好地抑制動(dòng)態(tài)背景的干擾。
為了進(jìn)一步研究IViBe算法對(duì)目標(biāo)檢測(cè)的準(zhǔn)確度,采用正確分類(lèi)比PCC,對(duì)改進(jìn)算法與原算法進(jìn)行了對(duì)比,如式(3)所示:
其中,TP是正確檢測(cè)為前景像素點(diǎn)的個(gè)數(shù);TN是正確檢測(cè)為背景像素點(diǎn)的個(gè)數(shù);FP是被錯(cuò)誤檢測(cè)為前景像素點(diǎn)的背景像素點(diǎn)個(gè)數(shù);FN是被錯(cuò)誤檢測(cè)為背景像素點(diǎn)的前景像素點(diǎn)個(gè)數(shù)。選取上述3個(gè)視頻計(jì)算其PCC均值,并和原始ViBe算法進(jìn)行了比較,如表1所示,可以看出IViBe算法相比于ViBe算法有了一定程度上的提升。
2.2 IViBe算法對(duì)攝像機(jī)運(yùn)動(dòng)情況下的動(dòng)目標(biāo)檢測(cè)
由于ViBe算法是針對(duì)攝像機(jī)靜止情況下的運(yùn)動(dòng)目標(biāo)檢測(cè),并不適用于攝像機(jī)運(yùn)動(dòng)的情況,會(huì)產(chǎn)生大量的前景點(diǎn),但是利用LK光流法通過(guò)連續(xù)兩幀計(jì)算每個(gè)像素點(diǎn)的運(yùn)動(dòng)向量,并使用該運(yùn)動(dòng)向量對(duì)前一幀圖片進(jìn)行運(yùn)動(dòng)補(bǔ)償,然后通過(guò)幀間差分法得到初始運(yùn)動(dòng)目標(biāo)檢測(cè)結(jié)果和利用IViBe算法對(duì)結(jié)果進(jìn)行“與”處理,從而可以得出最終的運(yùn)動(dòng)目標(biāo)檢測(cè)結(jié)果。實(shí)驗(yàn)結(jié)果如圖7所示。
在圖7中,由于攝像機(jī)的運(yùn)動(dòng)使得ViBe算法檢測(cè)出的結(jié)果中,大部分背景像素點(diǎn)都被錯(cuò)誤地檢測(cè)為前景點(diǎn),如圖7(c)所示,而根據(jù)全局運(yùn)動(dòng)補(bǔ)償后,結(jié)合幀間差分法和IViBe算法得出的結(jié)果則大部分正確地檢測(cè)出了被錯(cuò)誤檢測(cè)為前景點(diǎn)的背景點(diǎn)。
3 結(jié)束語(yǔ)
本文針對(duì)傳統(tǒng)ViBe算法中Ghost區(qū)域以及在動(dòng)態(tài)背景下的傳統(tǒng)ViBe算法中大量背景點(diǎn)被錯(cuò)誤檢測(cè)為前景點(diǎn)這一缺陷進(jìn)行了分析與改進(jìn)。針對(duì)Ghost區(qū)域,本文采用了IViBe算法和幀間差分法的結(jié)合,通過(guò)前景點(diǎn)檢測(cè)結(jié)果相“與”去除了Ghost區(qū)域。對(duì)于動(dòng)態(tài)背景,本文采用了樣本集的標(biāo)準(zhǔn)差作為該像素點(diǎn)的背景動(dòng)態(tài)程度度量方式,利用此度量值實(shí)時(shí)地更新距離閾值和更新率,并測(cè)試了對(duì)于動(dòng)態(tài)背景的魯棒性,取得了良好的效果。最后,本文利用LK光流法進(jìn)行全局運(yùn)動(dòng)補(bǔ)償,并使用改進(jìn)的ViBe算法和幀間差分法進(jìn)行結(jié)合取代并不適用于攝像機(jī)運(yùn)動(dòng)情況下的ViBe算法,取得了良好效果。
參考文獻(xiàn)
[1] KANATANI K.Statistical optimization for geometric computation:Theory and practice[J].University Japan,1996,32(6):646.
[2] YILMAZ A,JAVED O,SHAH M.Object tracking:a survey[J].Acm Computing Surveys,2006,38(4):81-93.
[3] 甘明剛,陳杰,劉勁,等.一種基于三幀差分和邊緣信息的運(yùn)動(dòng)目標(biāo)檢測(cè)方法[J].電子與信息學(xué)報(bào),2010,32(4):894-897.
[4] PAUL M,HAQUE S M E,CHAKRABORTY S.Human detection in surveillance videos and its applications-a review[J].Eurasip Journal on Advances in Signal Processing,2013(1):1-16.
[5] STAUFFER C,GRIMSON W E L.Adaptive background mixture models for real-time tracking[C].CVPR.IEEE Computer Society,1999:2246.
[6] BARNICH O,VAN DROOGENBROECK M.ViBe:A universal background subtraction algorithm for video sequences[J].IEEE Transactions on Image Processing A Publication of the IEEE Signal Processing Society,2011,20(6):1709-24.
[7] BARNICH O,VAN DROOGENBROECK M.ViBE:a powerful random technique to estimate the background in video sequences[C].IEEE International Conference on Acoustics.IEEE,2009:945-948.
[8] GUANG A H,WANG J,XI C.Improved visual background extractor using an adaptive distance threshold[J].Journal of Electronic Imaging,2014,23(6):063005.
[9] QIN L,SHENG B,LIN W,et al.GPU-accelerated video background subtraction using gabor detector[J].Journal of Visual Communication & Image Representation,2015,32(C):1-9.
[10] FAN Z,LU Z,LI J,et al.Robust motion detection based on the enhanced ViBe[J].Ieice Transactions on Information & Systems,2015,E98.D(9):1724-1726.
[11] WANG Y,JODOIN P M,PORIKLI F,et al.CDnet 2014:An expanded change detection benchmark dataset[C].Computer Vision & Pattern Recognition Workshops.IEEE,2014:393-400.
作者信息:
胡昭華1,2,張維新1,王 玨1,邵曉雯1,卞飛飛1
(1.南京信息工程大學(xué) 電子與信息工程學(xué)院,江蘇 南京210044;
2.南京信息工程大學(xué) 江蘇省大氣環(huán)境與裝備技術(shù)協(xié)同創(chuàng)新中心,江蘇 南京210044)