《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 顯示光電 > 設(shè)計應(yīng)用 > 一種改進(jìn)的融合幀差法的ViBe算法
一種改進(jìn)的融合幀差法的ViBe算法
2016年微型機(jī)與應(yīng)用第04期
史瑞環(huán),吳斌,李務(wù)軍,范風(fēng)兵
(西南科技大學(xué) 信息工程學(xué)院,四川 綿陽 621010)
摘要: ViBe運(yùn)動目標(biāo)檢測算法速度快,能有效抑制噪聲,但在光照強(qiáng)度突然改變的情況下,該算法會造成大面積的背景像素被誤判為前景像素,針對此問題提出一種改進(jìn)的融合幀差法的ViBe算法。實驗結(jié)果表明,改進(jìn)的算法能在光照有變化時依然能檢測到完整的運(yùn)動目標(biāo)。
關(guān)鍵詞: Vibe 目標(biāo)檢測 幀差法
Abstract:
Key words :

  史瑞環(huán),吳斌,李務(wù)軍,范風(fēng)兵

 ?。ㄎ髂峡萍即髮W(xué) 信息工程學(xué)院,四川 綿陽 621010)

  摘要ViBe運(yùn)動目標(biāo)檢測算法速度快,能有效抑制噪聲,但在光照強(qiáng)度突然改變的情況下,該算法會造成大面積的背景像素被誤判為前景像素,針對此問題提出一種改進(jìn)的融合幀差法的ViBe算法。實驗結(jié)果表明,改進(jìn)的算法能在光照有變化時依然能檢測到完整的運(yùn)動目標(biāo)。

  關(guān)鍵詞: ViBe;目標(biāo)檢測; 幀差法

0引言

  隨著互聯(lián)網(wǎng)和物聯(lián)網(wǎng)的飛速發(fā)展 ,近年來智能安防監(jiān)控得到了廣泛的關(guān)注和應(yīng)用。前景目標(biāo)的提取是運(yùn)動視頻分析的關(guān)鍵步驟,提取的目標(biāo)是否準(zhǔn)確完整將直接影響到后續(xù)的目標(biāo)分類、目標(biāo)跟蹤和識別的準(zhǔn)確率。

  目前,常用的運(yùn)動檢測方法有:幀差法、背景差法、光流法[1]。其中,背景差法應(yīng)用最為廣泛,核心原理是為每一個像素點建立一個背景模型,然后用模型與當(dāng)前像素相比,以確定是否為背景像素。經(jīng)典的背景差法是GMM[2],它將單一像素點所呈現(xiàn)的顏色用M(一般取 3~5)個高斯分布來近似,能處理多模型背景場景,但是它的計算量非常大,需要估計分布的參數(shù),而且更新參數(shù)難調(diào)試。

  2009年,BARNICH O等人[3]提出了一種全新的背景差算法——ViBe算法,只通過在每個像素領(lǐng)域內(nèi)隨機(jī)選取若干個采樣點對各像素建立一個樣本模型,采用隨機(jī)的方法更新背景模型。對比其他一些前沿的背景提取方法,ViBe算法簡單,有效地簡化了程序,加快了對于幀的處理速度的同時,可以達(dá)到較高的準(zhǔn)確度,增強(qiáng)了抗噪能力并減少了計算負(fù)載[4]。但是該算法在背景光照突然發(fā)生變化時會將大面積的背景誤判為運(yùn)動前景[5],導(dǎo)致檢測出的目標(biāo)無法識別。針對此問題,本文結(jié)合幀差法對ViBe算法進(jìn)行改進(jìn),實驗結(jié)果驗證了改進(jìn)算法的有效性。

1ViBe和幀差法的算法原理

  1.1ViBe算法

  ViBe算法主要包括工作原理、初始化方法、更新策略三個方面。

 ?。?)工作原理

  ViBe算法為每個背景點存儲了一個樣本集,然后將每一個新的像素值和樣本集進(jìn)行比較來判斷是否屬于背景點。如果一個新的觀察值屬于背景點,那么它應(yīng)該與樣本集中的采樣值比較接近。圖1展示了ViBe算法如何判斷像素點是否為前景點。

  

001.jpg

  記v(x)為x點處的像素值,M(x)={v1,v2,…,vN}為x處的背景樣本集(樣本集大小為N),SR(v(x))是以x為中心、R為半徑的區(qū)域。如果SR(v(x))∩{v1,v2,…,vN}大于一個給定的閾值#min,則認(rèn)為x點屬于背景點。

 ?。?)初始化方法

  初始化就是建立背景模型的過程。ViBe的初始化利用了相近像素點擁有相近的時空分布特性,僅通過一幀圖像即可完成,極大地提高了算法的實時性。具體就是:對于一個像素點,隨機(jī)地選擇它的鄰居點的像素值作為它的模型樣本值。

  (3)更新策略

  BARNICH O在參考文獻(xiàn)[6]中提到,好的更新方式是讓采樣值在模型中的概率單調(diào)降低。ViBe算法采用一種無記憶背景更新策略,從每個點的八鄰域中隨機(jī)選取一個樣本,替代原有背景模型中隨機(jī)選取的一個樣本,這樣既保證了樣本在背景模型中存在壽命的平滑指數(shù)衰減,又避免了先入先出方法造成的變化速度不能正確處理的問題。同時采用隨機(jī)鄰域傳播機(jī)制,即背景模型中的樣本也要更新對應(yīng)的鄰域,這樣有效地保證了空間的一致性,可以隨時間恢復(fù)被前景遮擋的背景像素。

  1.2幀差法

  幀差法[7]的基本原理是將連續(xù)視頻序列中的兩幀或3幀圖像的像素點相減,然后通過比較相減得到的差值與預(yù)先設(shè)定的閾值相比較來確定視頻序列中移動目標(biāo)的運(yùn)動的區(qū)域。對于一段視頻序列,用當(dāng)前幀圖像fm(x,y,t)減去前一幀圖像fn(x,y,t-1),最后得到二值圖像 fj(x,y)。用式(1)表示如下:

  fj(x,y)=1,|fm(x,y,t)-fn(x,y,t-1)|≥X

  0,|fm(x,y,t)-fn(x,y,t-1)|<X(1)

  其中,fm(x,y,t)是當(dāng)前幀的輸入圖像,fn(x,y,t-1)是前一幀輸入圖像,fj(x,y)是檢測到的二值圖像,X是設(shè)定的閾值。

  幀差法是根據(jù)相鄰幀差值與閾值X的大小來判斷像素點屬于運(yùn)動前景還是背景,如果相鄰幀差值的絕對值大于等于閾值X,則該像素是前景像素,反之為背景像素。

2融合幀差法的ViBe算法

  ViBe算法速度快,能有效抑制噪聲,檢測效果完整準(zhǔn)確,但卻在光照變化時幾乎檢測不到準(zhǔn)確的目標(biāo)。而幀差法算法實現(xiàn)簡單,檢測速度快,實時性好,受光線變化的影響小。

  根據(jù)以上分析本文采用幀差法來改進(jìn)ViBe算法。對于一段視頻,首先,從第二幀開始對輸入的當(dāng)前幀圖像是否有光照變化進(jìn)行判斷,然后根據(jù)判斷結(jié)果選擇使用的目標(biāo)檢測算法和檢測結(jié)果。即計算當(dāng)前幀與前一幀圖像像素值的變化程度,當(dāng)像素值的變化大于等于預(yù)先設(shè)定的閾值時表明當(dāng)前幀光照有變化,則將幀差法處理的結(jié)果和ViBe算法處理的結(jié)果做與運(yùn)算,作為當(dāng)前幀的目標(biāo)檢測結(jié)果。當(dāng)像素值的變化小于設(shè)定的閾值時表示當(dāng)前幀光照無變化或變化不明顯,則ViBe算法的處理結(jié)果作為當(dāng)前幀的目標(biāo)檢測結(jié)果。最后再通過形態(tài)學(xué)處理掉一些孤立的噪點得到完整的目標(biāo)圖像。具體的算法流程圖如圖2所示 。

 

002.jpg

  當(dāng)前幀像素值的變化大小用M表示:

  M=∑N|fm(x,y,t)-fn(x,y,t-1)|(2)

  其中,N是圖像的大小,fm(x,y,t)是當(dāng)前幀圖像,fn(x,y,t-1)是前一幀圖像。光照變化可能是變亮,也可能是變暗,所以式(2)中加了絕對值。當(dāng)M≥T(T為閾值)時,表明當(dāng)前幀與前一幀相比,有光照的變化;當(dāng)M<T,表明當(dāng)前幀與前一幀光照幾乎無變化或者變化不明顯。閾值T的大小選取與圖像大小、目標(biāo)運(yùn)動速度等有關(guān)。

3實驗結(jié)果與分析


003.jpg

  為了驗證算法的有效性,本文選取了一段有光照強(qiáng)度變化(像素值變化了30~40)的車輛視頻做測試,該視頻的幀率為15幀/秒,分辨率為160×120,格式為AVI。實驗效果對比如圖3所示,第71幀與前一幀相比無光照變化,39、77幀與前一幀相比有光照變化。根據(jù)實驗結(jié)果可以看出ViBe算法在光照不變的情況下檢測效果很好,但是在光照變化的情況下,出現(xiàn)了大面積的像素點誤判。改進(jìn)之后的ViBe算法不再受光照變化的影響,依然可以檢測到運(yùn)動目標(biāo),大大提高了ViBe算法在光照變化時的目標(biāo)檢測準(zhǔn)確率。

4結(jié)論

  將ViBe算法與幀差法融合在一起,根據(jù)閾值判斷當(dāng)前幀圖像是否發(fā)生了光照變化來決定最終目標(biāo)檢測結(jié)果的算法,在監(jiān)控視頻中有光照變化的情況下依然可以檢測到近乎完整的目標(biāo)。但是ViBe算法還存在對陰影敏感和鬼影[8]長時間不能消除的問題,這將是下一步的研究計劃。

參考文獻(xiàn)

 ?。?] PANDER R P,MISHRA N D,GULBANE S, et al. Detection of moving object with the help of motion detection alarm system in video survelliance[J].Journal of Signal and Image Processing,2012,2(3):118121.

 ?。?] STAUFER C,GRIMSON W E L.Adaptive background mixture models for realtime tracking[C].IEEE Computer Society Conference on Computer Vision and Pattern Recognition,1999(2):241252.

 ?。?] BARNIEH O,VAN DROOGENBROECH M.ViBe:a powerful random technique to estimate the background in video sequences[C]Proceedings of IEEE International Conference on Acoustics,Speech and Signal Processing,IEEE,2009:945948.

  [4] 邱禎艷, 王修暉. 一種結(jié)合Grabcut的Vibe目標(biāo)檢測算法[J].中國計量學(xué)院學(xué)報,2012,23(3):250256.

 ?。?] 嚴(yán)紅亮, 王福龍, 劉志煌, 等. 基于ViBe算法的改進(jìn)背景減去法[J].計算機(jī)系統(tǒng)應(yīng)用,2014(6):130134.

  [6] BARNICH O, M. VAN DROOGENBROECK. ViBe : A universal background subtraction algorithm for video sequences[J]. IEEE Transactions on Image Processing, 2011,20(6):17091724.

  [7] SAMUELE S, ANDREA C, LUIGI D S. Adaptive appearance modeling for video tracking: survey and evaluation[J]. IEEE Transactions on Image Processing, 2012,21(21):43344348.

 ?。?] 張杜, 陳元枝, 邱憑婷.基于ViBe算法及Canny邊緣檢測的運(yùn)動目標(biāo)提?。跩]. 微型機(jī)與應(yīng)用,2015,34(14):3638.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。