易向陽(yáng) 莫 林 周 贊 陳大海
(廣西大學(xué)計(jì)算機(jī)與電子信息學(xué)院,廣西 南寧 530004)
一種快速的前景檢測(cè)算法
易向陽(yáng) 莫 林 周 贊 陳大海
(廣西大學(xué)計(jì)算機(jī)與電子信息學(xué)院,廣西 南寧 530004)
文章提出一種快速前景檢測(cè)算法,通過(guò)對(duì)背景差分得到的前景區(qū)域進(jìn)行處理分析,能夠區(qū)分出正確的運(yùn)動(dòng)區(qū)域和由于光線(xiàn)突變而引起的運(yùn)動(dòng)區(qū)域。首先使用快速背景更新算法建立背景模型及分割出前景,然后提取運(yùn)動(dòng)區(qū)域,再對(duì)運(yùn)動(dòng)區(qū)域和差分圖像進(jìn)行分析處理,識(shí)別出由于光線(xiàn)突變而引起的運(yùn)動(dòng)區(qū)域,最后對(duì)背景進(jìn)行修正。采用該方法能準(zhǔn)確地提取前景中的運(yùn)動(dòng)目標(biāo)區(qū)域,同時(shí)達(dá)到了自適應(yīng)背景更新的目的,并且算法實(shí)現(xiàn)簡(jiǎn)單,實(shí)時(shí)性較高。
背景差分;區(qū)域分析;背景更新;前景檢測(cè)
近年來(lái),隨著視頻監(jiān)控的迅速發(fā)展和廣泛應(yīng)用,視頻監(jiān)控是對(duì)視頻場(chǎng)景內(nèi)感興趣的區(qū)域和目標(biāo)進(jìn)行檢測(cè)、跟蹤、識(shí)別和預(yù)警。而前景檢測(cè)是后繼處理的基礎(chǔ),制約著整個(gè)視頻監(jiān)控系統(tǒng)穩(wěn)定性、可靠性。對(duì)于視頻背景靜止不動(dòng)的情況,前景檢測(cè)算法有幀差分法、背景差分法兩大類(lèi)。幀差分法速度快,能準(zhǔn)確地獲取運(yùn)動(dòng)目標(biāo)的邊緣,但獲取的前景目標(biāo)上有較多空洞,對(duì)于運(yùn)動(dòng)速度快的目標(biāo),檢測(cè)時(shí)會(huì)產(chǎn)生拖尾現(xiàn)象,而且無(wú)法檢測(cè)靜止目標(biāo)。背景差分法是先對(duì)背景圖像進(jìn)行建模,然后計(jì)算輸入幀和背景圖像之差,以檢測(cè)前景物體。這種方法相對(duì)簡(jiǎn)單,能夠比較完整地提取運(yùn)動(dòng)目標(biāo),也能適應(yīng)環(huán)境變化,有一定的抗干擾能力,但是這種方法對(duì)背景質(zhì)量的要求較高。典型背景建模方法有平均背景法、混合高斯算法等。在背景差分法中,為了獲得準(zhǔn)確的前景,需要對(duì)背景進(jìn)行實(shí)時(shí)更新,背景更新方法關(guān)系到檢測(cè)到的前景是否準(zhǔn)確,對(duì)前景檢測(cè)的實(shí)時(shí)性也有很大影響。
同時(shí),前景檢測(cè)還受光照變化的影響,如路燈的突然開(kāi)和閉、閃電、天氣光照、物體的陰影和反光等產(chǎn)生的干擾。背景更新時(shí),有很多干擾會(huì)影響到背景更新,有些干擾會(huì)引起背景緩慢變化,如環(huán)境光線(xiàn)變化不大時(shí)。有些干擾會(huì)引起背景劇烈變化,如路燈的突然開(kāi)啟和關(guān)閉等。對(duì)于緩慢變化,可以用背景的更新方法將這些變化融入新的背景中。而對(duì)于劇烈變化則會(huì)產(chǎn)生新的干擾目標(biāo)。前景檢測(cè)應(yīng)該判斷出背景的變化是劇烈變化還是緩慢變化,如果是劇烈變化,則要對(duì)背景進(jìn)行修正,以得到準(zhǔn)確的背景。前景檢測(cè)要識(shí)別出干擾目標(biāo)區(qū)域,對(duì)干擾目標(biāo)區(qū)域用背景幀像素更新背景,對(duì)非干擾目標(biāo)區(qū)域用當(dāng)前幀像素更新背景。
視頻環(huán)境的變化有緩變和突變的情況,多數(shù)情況下為緩慢變化,但也有突變,如路燈的突然開(kāi)啟和關(guān)閉。背景突變時(shí),如果不對(duì)背景模型進(jìn)行修正,就不能準(zhǔn)確地提取前景中的運(yùn)動(dòng)目標(biāo)。為了準(zhǔn)確地提取前景目標(biāo),本實(shí)驗(yàn)提出一種新方法,能夠快速地去除背景突變時(shí)產(chǎn)生的干擾。
前景檢測(cè)算法流程圖如圖1所示。
圖1 前景檢測(cè)算法流程圖
1.背景減除法檢測(cè)運(yùn)動(dòng)前景
設(shè)當(dāng)前幀圖像為 Ct(x,y),生成的背景圖像為 Bt( x,y),檢測(cè)到的前景圖像為 Dt(x,y)??梢圆捎帽尘安罘址ㄉ汕熬埃河?jì)算當(dāng)前幀圖像 Ct(x,y)像素與上一幀背景圖像 Bt?1(x,y)像素的差值,若差值大于閾值ε,則認(rèn)為該像素是前景像素點(diǎn),否則是背景像素點(diǎn)。
其中ε為設(shè)定的閾值,Dt(i , j)=0為背景像素,Dt(i , j)=1為前景像素。
獲得差分圖像為: Ft( i , j)=Ct(i,j)?Bt?1(i,j),然后再把差分圖像區(qū)分出前景區(qū)和背景區(qū):
2.自適應(yīng)背景更新
由于視頻環(huán)境在不斷地變化,特別是突變的光照,會(huì)造成背景圖像的變化,所以需要及時(shí)對(duì)背景進(jìn)行更新。通過(guò)當(dāng)前幀圖像Ct(x,y)和前一幀生成的背景圖像 Bt?1( x,y)獲得當(dāng)前幀的背景圖像,更新算法如下:
這種背景更新方法只適用于背景變化緩慢的情況,當(dāng)背景變化劇烈時(shí),必須識(shí)別出劇烈變化的區(qū)域,背景更新時(shí),必須對(duì)這些區(qū)域進(jìn)行背景修正。
3.背景修正
由于背景的光照劇烈變化,背景更新時(shí)會(huì)把這種變化誤認(rèn)為是前景目標(biāo),從而造成背景更新錯(cuò)誤。背景更新時(shí)必須識(shí)別出這樣的劇烈變化,并對(duì)背景進(jìn)行修正。
(1)提取連通區(qū)域
在D(i,j)中檢測(cè)出一系列矩形區(qū)域 Sk,設(shè)Imax,k是區(qū)域 Sk的上邊界,Imin,k是區(qū)域Sk的下邊界,Jmax,k是區(qū)域Sk的右邊界,Jmin,k是區(qū)域 Sk的左邊界。這樣就可以計(jì)算出矩形區(qū)域 Sk的高度 Hk、寬度 Wk,也可以計(jì)算出該矩形區(qū)域內(nèi)前景像素點(diǎn)的個(gè)數(shù)SUMk。即
矩形區(qū)域面積用像素點(diǎn)的個(gè)數(shù)SUMk表示:
count=0
for
(i=Imin,k,j=Jmin,k;
{
if Sk(i,j) =1 then
count=count+1;
}
SUMk=count;
(2)分析處理連通區(qū)域
光照劇烈變化,而背景還沒(méi)有及時(shí)更新時(shí),會(huì)產(chǎn)生干擾運(yùn)動(dòng)目標(biāo)。為了提高背景更新的精度,必須排除由于亮度突變產(chǎn)生的前景目標(biāo)區(qū)域。本實(shí)驗(yàn)采用像素灰度的均值對(duì)檢測(cè)到的所有前景目標(biāo)進(jìn)行判斷,能夠快速區(qū)分出這些區(qū)域是亮度劇烈變化產(chǎn)生的變化區(qū)域,還是真正運(yùn)動(dòng)目標(biāo)區(qū)域。
1)前景目標(biāo)區(qū)域處理與分析
設(shè)為Sk(i,j)中某像素的灰度值為 v( i,j),先分別計(jì)算出該區(qū)域內(nèi)像素灰度的均值μij和差分圖像背景區(qū) Ft" ( i,j)內(nèi)像素的均值μB和標(biāo)準(zhǔn)差σB。
參考均值μB是非常重要的參數(shù),它是判斷前景目標(biāo)區(qū)域是否為希望檢測(cè)的運(yùn)動(dòng)區(qū)域的重要依據(jù)。為使μB體現(xiàn)更多的背景信息,引入學(xué)習(xí)機(jī)制,對(duì)μB進(jìn)行更新,即μB=α×μB+( 1-α)×μij,α為更新率,其值一般在( 0.5,1) 區(qū)間選取,實(shí)驗(yàn)中α值均設(shè)定為0.8。
然后再對(duì)該前景目標(biāo)區(qū)域進(jìn)行逐點(diǎn)掃描,判別該區(qū)域Sk( i,j)內(nèi)的像素是屬于背景點(diǎn)或前景點(diǎn)。判斷方法如下:
①count=0; 統(tǒng)計(jì)v( i,j)屬于背景點(diǎn)的數(shù)目;
②if | v( i,j)-μB| < T1 count=count+1; 即 v( i,j)∈背景點(diǎn);
③if count / SUMk>= T2
其中,T2為分類(lèi)閾值設(shè)為 0.8,分類(lèi)閾值 T1設(shè)為 3σB,而Sk" ( i ,j)是正確的運(yùn)動(dòng)目標(biāo),而 Sk'(i,j)是亮度劇烈變化產(chǎn)生的變化區(qū)域,是虛假的運(yùn)動(dòng)目標(biāo)。
2)修正背景
準(zhǔn)確區(qū)分出需要檢測(cè)的運(yùn)動(dòng)目標(biāo)區(qū)域和干擾產(chǎn)生的運(yùn)動(dòng)區(qū)域后,就需要把這些干擾區(qū)域的進(jìn)行修正,修正的方法就是用當(dāng)前幀的像素值對(duì)這些干擾區(qū)域進(jìn)行更新。
若 Sk(i,j)為亮度劇烈變化產(chǎn)生的變化區(qū)域,則用當(dāng)前幀圖像 Ct(x ,y)中的相應(yīng)點(diǎn)像素值更新; 若 Sk(i,j)為正確的運(yùn)動(dòng)目標(biāo),則用背景圖像 Bt?1(x,y) 中的相應(yīng)點(diǎn)像素值更新。
本實(shí)驗(yàn)采用C++和OpenCV 為開(kāi)發(fā)工具,在Pentium(R)4 CPU為3.0GHz,內(nèi)存為512MB的微型機(jī)上,提出對(duì)一段視頻進(jìn)行實(shí)驗(yàn)、測(cè)試,獲得處理速度為每秒15 幀。下圖是視頻序列中截取的突然開(kāi)燈時(shí),如圖(a),程序分別用無(wú)背景修正和有背景修正算法,對(duì)視頻序列進(jìn)行前景檢測(cè)。無(wú)背景修正時(shí),得到圖(b)前景,突然亮起的燈也被檢測(cè)為前景目標(biāo)。而有背景修正算法時(shí),突然亮起的燈則被正確地更新到背景中,沒(méi)有被檢測(cè)出來(lái)??梢?jiàn),本文提出的算法能夠有效地適應(yīng)背景光照突然變化,并能夠正確檢測(cè)出前景目標(biāo),如圖(c)。果表明該方法快速、準(zhǔn)確,有廣泛的適用性。
(四)總結(jié)
[1] Takashi Matsuyama , Toshikazu Wada , Hitoshi Habe , et al .Background Subtraction Under Varying Illumination[C] .Systems and Computers in Japan[A] . 2006 ,37 (4) :77288.
[2] Chris Stauffer , Grimson W E L. Adaptive Background Mixture Models for Real2time Tracking[C].Computer Vision and Pat2 tern Recognition ,1999.IEEE Computer Society Conference,1999:2462252.
[3] 莫林,廖鵬,劉勛.一種基于背景減除與三幀差分的運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J].微計(jì)算機(jī)信息,2009,(12).
[4] 邱尚斌,李剛,林凌.一種新的運(yùn)動(dòng)目標(biāo)檢測(cè)和背景更新方法[J].遼寧工學(xué)院學(xué)報(bào),2005,(2).
[5] 鄒承明,李偉.一種改進(jìn)的自適應(yīng)背景更新算法[J].武漢理工大學(xué)學(xué)報(bào),2009,(2).
TP301.6
A
1008-1151(2011)06-011-02
2011-04-01
易向陽(yáng),廣西大學(xué)計(jì)算機(jī)與電子信息學(xué)院工程碩士研究生。