本發(fā)明涉及計算機(jī)圖像處理技術(shù)和計算機(jī)圖形學(xué)領(lǐng)域,特別是關(guān)于一種基于指數(shù)遺忘的自適應(yīng)背景重建算法。
背景技術(shù):
近年來,城市的大規(guī)模發(fā)展過程中,車輛和道路的矛盾日益突出。頻繁的交通事故、嚴(yán)重的交通堵塞成為城市發(fā)展的一個致命傷。然而,目前國內(nèi)的智能交通系統(tǒng)研究還處于起步階段。
根據(jù)車輛視頻監(jiān)測和傳輸特點(diǎn),將從視頻中采集得到的圖像數(shù)據(jù)首先做背景重建,然后利用背景重建后得到的背景進(jìn)行視頻對象分割,最后將重建的背景、視頻對象以及視頻對象在視頻圖像中的位置保存,作為后續(xù)視頻檢測分析的依據(jù)。
針對視頻對象分割的常用方法包括連續(xù)幀間差分法、背景差分法和光流法。其中,連續(xù)幀間差分法對于動態(tài)環(huán)境有很好的適應(yīng)性,但在實際應(yīng)用中,對目標(biāo)運(yùn)動速度很快或很慢時,往往檢測到的區(qū)域和實際區(qū)域會出現(xiàn)很大的偏差,檢測效果差。背景差分法能夠提供比較完整的運(yùn)動目標(biāo)信息,但隨著時間的推移,對光照和外部條件造成的動態(tài)場景變化比較敏感,魯棒性差。光流法能夠在不知道場景任何信息的情況下檢測出運(yùn)動目標(biāo),但是光流法對噪聲比較敏感,魯棒性差,且計算復(fù)雜,計算量非常大,不適于實時處理,且精度較低。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題是:為了解決現(xiàn)有技術(shù)中計算復(fù)雜、魯棒性差和檢測效果差的問題,本發(fā)明提供一種基于指數(shù)遺忘的自適應(yīng)背景重建算法來解決上述問題。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:一種基于指數(shù)遺忘的自適應(yīng)背景重建算法,用于針對將車輛監(jiān)控視頻分割成的連續(xù)多幀圖像進(jìn)行處理得到背景視頻,包括以下步驟:1)采用當(dāng)前幀圖像in和原背景圖像bn-1做差分,得到臨時運(yùn)動區(qū)域模板mn;
其中,areaofin為當(dāng)前幀圖像in中像素點(diǎn)數(shù)目,表示運(yùn)動區(qū)域中的像素點(diǎn)數(shù)目占當(dāng)前幀圖像in像素點(diǎn)總數(shù)目的比重得到更新權(quán)重α;4)遍歷運(yùn)動區(qū)域模板mn'中每一像素點(diǎn),并判斷運(yùn)動區(qū)域模板mn'中當(dāng)前像素點(diǎn)是否是運(yùn)動區(qū)域像素點(diǎn)?若當(dāng)前像素點(diǎn)的像素值為1,則該像素點(diǎn)為運(yùn)動區(qū)域像素點(diǎn),進(jìn)入步驟5);若當(dāng)前像素點(diǎn)的像素值為0,則該像素點(diǎn)為非運(yùn)動區(qū)域像素點(diǎn),進(jìn)入步驟6);5)將當(dāng)前像素點(diǎn)在原背景圖像bn-1中的像素值賦給更新后背景圖像bn中對應(yīng)的像素點(diǎn),得到運(yùn)動區(qū)域圖像,進(jìn)入步驟7);6)原背景圖像bn-1使用背景更新公式更新當(dāng)前像素點(diǎn),得到非運(yùn)動領(lǐng)域圖像,進(jìn)入步驟7):其中,背景更新公式為
所述步驟2)包括以下步驟:21)找到臨時運(yùn)動區(qū)域模板mn中任意一個運(yùn)動區(qū)域的起始點(diǎn);22)從起始點(diǎn)開始,根據(jù)方向編碼對選定運(yùn)動區(qū)域進(jìn)行編碼;23)編碼后,從該運(yùn)動區(qū)域的起始點(diǎn)圍繞運(yùn)動區(qū)域邊緣,按順時針方向取值,獲得該運(yùn)動區(qū)域的連通域編碼串;24)按照步驟21)-步驟23)獲取臨時運(yùn)動區(qū)域模板mn中各個連通域編碼串以及起始點(diǎn),遍歷臨時運(yùn)動區(qū)域模板mn中每個連通域并對該連通域中的空洞進(jìn)行填充,填充之后得到運(yùn)動區(qū)域模板mn'。
所述步驟21)中,起始點(diǎn)的像素值為1,且第一次出現(xiàn)。
本發(fā)明的有益效果是:本發(fā)明采用本發(fā)明首先通過當(dāng)前幀圖像與原圖像進(jìn)行差分運(yùn)算并將結(jié)果取絕對值得到臨時運(yùn)動模板,對臨時運(yùn)動模板使用freeman鏈碼提取算法得到臨時運(yùn)動模板中各個運(yùn)動區(qū)域的連通域,然后遍歷每個連通域進(jìn)行空洞填補(bǔ),保持了原移動領(lǐng)域大小形狀不變,接著計算移動領(lǐng)域的像素點(diǎn)數(shù)目占整個圖像像素點(diǎn)總數(shù)目的比重得到背景的新的更新權(quán)重,非運(yùn)動區(qū)域根據(jù)新的更新權(quán)重、原背景、當(dāng)前幀三個部分更新非運(yùn)動區(qū)域背景,運(yùn)動區(qū)域直接取與之對應(yīng)的原背景像素值,最后將更新后的運(yùn)動區(qū)域與更新后的非運(yùn)動區(qū)域使用邏輯或運(yùn)算得到重建后背景圖像,用重建后的背景更新原背景。本發(fā)明相對現(xiàn)有背景更新方法在更新權(quán)重α的計算和背景更新的方法相對簡單,對于更新權(quán)重α的計算,減小了視頻序列處理的計算量,本發(fā)明的方法不僅能夠?qū)饩€的變化、場景中物體的反復(fù)運(yùn)動、物體通過背景雜亂區(qū)域、運(yùn)動緩慢的物體以及從場景中移入或移除的物體都具有比較好的魯棒性。本發(fā)明消除的傳統(tǒng)更新算法中存在的“鬼影”現(xiàn)象并且建模后的背景非常穩(wěn)定。鑒于以上理由,本發(fā)明可以廣泛用于計算機(jī)圖像處理技術(shù)和計算機(jī)圖形學(xué)領(lǐng)域。
附圖說明
下面結(jié)合附圖和實施例對本發(fā)明進(jìn)一步說明。
圖1為本發(fā)明主要流程圖;
圖2為本發(fā)明實施例示意圖,其中,圖2-1為當(dāng)前幀圖像,圖2-2為原背景圖像,圖2-3為運(yùn)動區(qū)域模板,圖2-4為非運(yùn)動領(lǐng)域圖像,圖2-5為運(yùn)動區(qū)域圖像,圖2-6為更新后的背景圖像;
圖3為本發(fā)明采用的方向編碼示意圖;
圖4為編碼串示意圖。
具體實施方式
現(xiàn)在結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)的說明。這些附圖均為簡化的示意圖,僅以示意方式說明本發(fā)明的基本結(jié)構(gòu),因此其僅顯示與本發(fā)明有關(guān)的構(gòu)成。
如圖1和圖2所示,本發(fā)明一種基于指數(shù)遺忘的自適應(yīng)背景重建算法,它包括以下步驟:
1)采用當(dāng)前幀圖像in和原背景圖像bn-1做差分,得到臨時運(yùn)動區(qū)域模板mn;
由于車輛監(jiān)控視頻的相鄰幀具有時間相關(guān)性,因此可以連續(xù)獲取多幀相鄰圖像。
假定當(dāng)前幀圖像為in,in-1,in是連續(xù)的兩幀圖像,bn為更新后的背景圖像,bn-1為原背景圖像。
當(dāng)n=1時,in=bn-1=in-1;
當(dāng)n>1時,遍歷當(dāng)前幀圖像in(如圖2-1所示)與原背景圖像bn-1(如圖2-2所示)每個對應(yīng)的像素點(diǎn)做差值運(yùn)算,之后取絕對值,即差分運(yùn)算:
若當(dāng)前幀圖像in與原背景圖像bn-1的對應(yīng)像素點(diǎn)(x,y)像素值之差的絕對值小于閾值l,則該像素點(diǎn)為背景像素點(diǎn),該像素點(diǎn)在臨時運(yùn)動區(qū)域模板mn中的像素值為0;否則,該像素點(diǎn)為運(yùn)動前景像素點(diǎn),該像素點(diǎn)臨時運(yùn)動區(qū)域模板mn中的像素值為1,進(jìn)而得到當(dāng)前幀圖像in的臨時運(yùn)動區(qū)域模板mn:
其中,mn(x,y)為臨時運(yùn)動區(qū)域模板mn中(x,y)位置處的像素值;in(x,y)為當(dāng)前幀圖像in中(x,y)位置處的像素值;bn-1(x,y)為原背景圖像bn-1中(x,y)位置處的像素值,且x=1,2,3,...,n,y=1,2,3,...,n。
2)針對臨時運(yùn)動區(qū)域模板mn中的空洞采用freeman鏈碼提取算法進(jìn)行填充,得到運(yùn)動區(qū)域模板mn'。
由于通過計算得到的臨時運(yùn)動區(qū)域模板mn中的像素點(diǎn)并不是都被認(rèn)定為運(yùn)動區(qū)域的像素點(diǎn),因此臨時運(yùn)動區(qū)域模板mn對應(yīng)實際運(yùn)動區(qū)域內(nèi)殘存了空洞。
本發(fā)明采用freeman鏈碼提取算法對臨時運(yùn)動區(qū)域模板mn中的空洞進(jìn)行填充,遍歷臨時運(yùn)動區(qū)域模板mn,其過程如下:
21)首先找到臨時運(yùn)動區(qū)域模板mn中任意一個運(yùn)動區(qū)域的起始點(diǎn),即該點(diǎn)像素值為1并且該點(diǎn)第一次出現(xiàn),并記錄該起始點(diǎn)坐標(biāo),起始點(diǎn)可以是該運(yùn)動區(qū)域邊緣上的任意一點(diǎn);
22)從起始點(diǎn)開始,根據(jù)方向編碼(如圖3所示)對選定運(yùn)動區(qū)域(如圖4所示)進(jìn)行編碼;
23)編碼后,從該運(yùn)動區(qū)域的起始點(diǎn)圍繞運(yùn)動區(qū)域邊緣按順時針方向取值即獲得該運(yùn)動區(qū)域的連通域編碼串010707645443422,此時可以通過起始點(diǎn)求得連通域的邊緣各個點(diǎn)的坐標(biāo),這樣便于區(qū)別不同的連通域和填充連通域中存在的空洞。
24)按照步驟21)-步驟23)獲取臨時運(yùn)動區(qū)域模板mn中各個連通域編碼串以及起始點(diǎn)的情況下,遍歷臨時運(yùn)動區(qū)域模板mn中每個連通域并對該連通域中的(黑色)空洞進(jìn)行填充,在不改變運(yùn)動區(qū)域大小的前提下填充空洞。填充之后得到?jīng)]有空洞的封閉連通域,即運(yùn)動區(qū)域模板mn'(如圖2-3所示)。
3)根據(jù)填充之后的運(yùn)動區(qū)域模板mn',計算原背景圖像bn-1的更新權(quán)重α,該更新權(quán)重α的公式如下:
其中,areaofin為當(dāng)前幀圖像in中像素點(diǎn)數(shù)目,表示運(yùn)動區(qū)域中的像素點(diǎn)數(shù)目占當(dāng)前幀圖像in像素點(diǎn)總數(shù)目的比重得到更新權(quán)重α。
α是一個連續(xù)更新的值,是原背景圖像bn-1對當(dāng)前幀圖像in的更新率由更新權(quán)重α控制著更新的敏感性,當(dāng)前幀圖像in與原背景圖像bn-1的亮度變化越快(或者出現(xiàn)移動物體),更新的速度越慢,(幾乎接近為0)。所以此時原背景圖像bn-1的大部分都被當(dāng)前幀圖像in所影響著。
本發(fā)明采用公式
a、使用上述公式之后,整個背景重建更新的過程幾乎是自動完成的。
b、使用公式后,可以適應(yīng)所有可能出現(xiàn)的光照變化和移動狀況。
4)遍歷運(yùn)動區(qū)域模板mn'中每一像素點(diǎn),并判斷運(yùn)動區(qū)域模板mn'中當(dāng)前像素點(diǎn)是否是運(yùn)動區(qū)域像素點(diǎn)?若當(dāng)前像素點(diǎn)的像素值為1,則該像素點(diǎn)為運(yùn)動區(qū)域像素點(diǎn),進(jìn)入步驟5);若當(dāng)前像素點(diǎn)的像素值為0,則該像素點(diǎn)為非運(yùn)動區(qū)域(靜止區(qū)域)像素點(diǎn),進(jìn)入步驟6);
5)將當(dāng)前像素點(diǎn)在原背景圖像bn-1中的像素值賦給更新后背景圖像bn中對應(yīng)的像素點(diǎn),得到運(yùn)動區(qū)域圖像(如圖2-5所示),進(jìn)入步驟7);
6)原背景圖像bn-1使用背景更新公式更新當(dāng)前像素點(diǎn),得到非運(yùn)動領(lǐng)域圖像(如圖2-4所示),進(jìn)入步驟7)。
其中,背景更新公式:
其中,bn(x,y)為更新后背景(x,y)位置處的像素值。
由于交通監(jiān)控視頻中車輛為圖像序列的主要運(yùn)動對象,而每一幀中車輛區(qū)域占整幅圖像的比例不高于50%,一般為10%-20%,因此α的取值范圍是0.8-0.9。背景建模過程中我們將當(dāng)前幀圖像in的更新權(quán)重設(shè)定為α,前一幀圖像in-1對應(yīng)的原背景圖像bn-1的更新權(quán)重1-α,因為若將更新權(quán)重對調(diào),那么在背景建模過程中的誤差在10幀以后α10在0.11-0.35范圍內(nèi),按照現(xiàn)在的權(quán)重設(shè)定方案進(jìn)行建模,10幀以后誤差的殘留幾乎為0,即為本發(fā)明基于指數(shù)遺忘的體現(xiàn)。
7)運(yùn)動區(qū)域圖像和非運(yùn)動領(lǐng)域圖像進(jìn)行邏輯或運(yùn)算;
8)得到重建后的背景圖像(如圖2-6所示),并將該重建后的背景返回到步驟1)更新原背景圖像bn-1,即重建后的背景圖像作為原背景圖像bn-1。
9)重復(fù)步驟1)-步驟8)直至車輛監(jiān)控視頻結(jié)束,得到建模后的背景視頻。
以上述依據(jù)本發(fā)明的理想實施例為啟示,通過上述的說明內(nèi)容,相關(guān)工作人員完全可以在不偏離本項發(fā)明技術(shù)思想的范圍內(nèi),進(jìn)行多樣的變更以及修改。本項發(fā)明的技術(shù)性范圍并不局限于說明書上的內(nèi)容,必須要根據(jù)權(quán)利要求范圍來確定其技術(shù)性范圍。