《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 結(jié)合DM8168的實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng)設(shè)計(jì)
結(jié)合DM8168的實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng)設(shè)計(jì)
2015年微型機(jī)與應(yīng)用第14期
姚燦榮,劉韶濤
(華僑大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,福建 廈門(mén) 361021)
摘要: 結(jié)合DM8168多核多通道的特點(diǎn),設(shè)計(jì)了一個(gè)實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng),能夠?qū)崿F(xiàn)視頻數(shù)據(jù)的采集、實(shí)時(shí)運(yùn)動(dòng)檢測(cè)、編解碼以及傳輸?shù)裙δ?。采用ViBe的目標(biāo)檢測(cè)算法,并利用中值濾波進(jìn)行改進(jìn),解決了背景中容易出現(xiàn)Ghost區(qū)的問(wèn)題,提高了運(yùn)動(dòng)目標(biāo)識(shí)別能力。最后采用像素掃描標(biāo)記法實(shí)現(xiàn)了目標(biāo)跟蹤。實(shí)驗(yàn)結(jié)果表明,所提出的方法能在達(dá)芬奇平臺(tái)上實(shí)現(xiàn)實(shí)時(shí)魯棒的運(yùn)動(dòng)目標(biāo)檢測(cè)和跟蹤。
Abstract:
Key words :

  摘  要: 結(jié)合DM8168多核多通道的特點(diǎn),設(shè)計(jì)了一個(gè)實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng),能夠?qū)崿F(xiàn)視頻數(shù)據(jù)的采集、實(shí)時(shí)運(yùn)動(dòng)檢測(cè)、編解碼以及傳輸?shù)裙δ堋2捎肰iBe的目標(biāo)檢測(cè)算法,并利用中值濾波進(jìn)行改進(jìn),解決了背景中容易出現(xiàn)Ghost區(qū)的問(wèn)題,提高了運(yùn)動(dòng)目標(biāo)識(shí)別能力。最后采用像素掃描標(biāo)記法實(shí)現(xiàn)了目標(biāo)跟蹤。實(shí)驗(yàn)結(jié)果表明,所提出的方法能在達(dá)芬奇平臺(tái)上實(shí)現(xiàn)實(shí)時(shí)魯棒的運(yùn)動(dòng)目標(biāo)檢測(cè)和跟蹤。

  關(guān)鍵詞智能監(jiān)控;目標(biāo)檢測(cè);中值濾波;像素標(biāo)記法

0 引言

  迅速發(fā)展的視頻監(jiān)控在日常生活中起著十分重要的作用,實(shí)時(shí)處理和智能化分析已經(jīng)成為視頻監(jiān)控發(fā)展的一種趨勢(shì)。當(dāng)前,TI公司推出的TMS320DM8168 Davinci平臺(tái)集成了多個(gè)處理器與高效的異構(gòu)多核和多通道軟件開(kāi)發(fā)框架,極大地滿足了人們對(duì)高集成度、多功能視頻監(jiān)控的需求。本文綜合利用DM8168及其異構(gòu)多核視頻的開(kāi)發(fā)套件DVRRDK,設(shè)計(jì)并實(shí)現(xiàn)了嵌入式平臺(tái)的實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測(cè)系統(tǒng)。

  傳統(tǒng)的運(yùn)動(dòng)目標(biāo)檢測(cè)方法[1]存在魯棒性較低,計(jì)算量較大且適應(yīng)復(fù)雜背景變化的問(wèn)題。為了適應(yīng)嵌入式平臺(tái)的軟硬件系統(tǒng),本文采用并改進(jìn)ViBe運(yùn)動(dòng)目標(biāo)檢測(cè)算法,在運(yùn)動(dòng)檢測(cè)中能有效應(yīng)對(duì)光照變化和抖動(dòng)等影響,而且計(jì)算量非常小。最后,在檢測(cè)的基礎(chǔ)上利用像素掃描標(biāo)記方法[2-4]對(duì)目標(biāo)進(jìn)行分類(lèi),根據(jù)分類(lèi)結(jié)果實(shí)現(xiàn)運(yùn)動(dòng)目標(biāo)的跟蹤。

1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)與實(shí)現(xiàn)

  1.1 總體結(jié)構(gòu)設(shè)計(jì)

  系統(tǒng)采用TI DM8168評(píng)估板,由一塊負(fù)責(zé)視頻處理的母板和一塊主要負(fù)責(zé)輸入輸出的子板組成,系統(tǒng)高度集成了Cortex-A8主處理器、視頻處理子系統(tǒng)VPSS、C674x DSP、3D加速模塊等。視頻采集采用子板上的TVP5158芯片,采用Linux操作系統(tǒng)下的TCP/IP協(xié)議進(jìn)行網(wǎng)絡(luò)傳輸,VPSS用來(lái)實(shí)現(xiàn)本地顯示。一個(gè)網(wǎng)絡(luò)監(jiān)控系統(tǒng)主要包括視頻采集、編碼、處理、網(wǎng)絡(luò)發(fā)送、傳輸、接收、解碼與播放等模塊,整體框架如圖1所示。

001.jpg

  攝像頭將采集的模擬信號(hào)譯碼成數(shù)字視頻YUV格式后交給DM8168進(jìn)行處理,算法主要是在DSP上實(shí)現(xiàn),在Video-M3協(xié)處理器上實(shí)現(xiàn)編解碼,本地回放與測(cè)試通過(guò)Vpss-M3實(shí)現(xiàn),Cortex-A8核協(xié)調(diào)各處理器運(yùn)行,把處理后的視頻幀通過(guò)Linux下的網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)發(fā)送到網(wǎng)絡(luò)。

  1.2 系統(tǒng)軟件的實(shí)現(xiàn)

  1.2.1 系統(tǒng)軟件框架

002.jpg

  為了實(shí)現(xiàn)視頻監(jiān)控的基本功能,系統(tǒng)采用DVRRDK開(kāi)發(fā)套件,基于MCFW[5]軟件框架,其結(jié)構(gòu)如圖2所示。本系統(tǒng)主要由3個(gè)從處理器和1個(gè)主處理器構(gòu)成,主處理器為Cortex-A8,負(fù)責(zé)外圍設(shè)備驅(qū)動(dòng)、引導(dǎo)、加載各個(gè)從處理器等。3個(gè)從處理器分別負(fù)責(zé)視頻捕獲、播放、隔行轉(zhuǎn)逐行、視頻的編解碼、運(yùn)動(dòng)目標(biāo)檢測(cè)等各類(lèi)視頻處理計(jì)算。本系統(tǒng)MCFW API包含4個(gè)子系統(tǒng):視頻捕獲、視頻顯示、視頻編碼和視頻解碼子系統(tǒng)。各個(gè)子系統(tǒng)由若干Link API構(gòu)成,MCFW API通過(guò)其下層的Link API實(shí)現(xiàn),構(gòu)成視頻處理數(shù)據(jù)通路。

  1.2.2 視頻處理數(shù)據(jù)通路

  系統(tǒng)的VPSS-M3通過(guò)CaptureLink獲得一路視頻數(shù)據(jù)并傳給DSP,經(jīng)過(guò)DSP視頻算法的處理后進(jìn)行編碼,然后經(jīng)過(guò)DupLink復(fù)制出兩路視頻數(shù)據(jù),一路進(jìn)行本地測(cè)試,一路傳給ARM HOST A8。

  本系統(tǒng)使用CCS編寫(xiě)TI標(biāo)準(zhǔn)的代碼,生成庫(kù)文件并加入到MCFW目錄中,以供調(diào)用。本文的運(yùn)動(dòng)檢測(cè)算法庫(kù)文件運(yùn)行在DSP上,算法接口實(shí)現(xiàn)于alg_link中。運(yùn)動(dòng)目標(biāo)檢測(cè)事件的觸發(fā)是用基于sys/link的支持在異構(gòu)多核之間傳遞消息的組件。

2 結(jié)合中值濾波的ViBe運(yùn)動(dòng)目標(biāo)檢測(cè)算法

  2.1 ViBe運(yùn)動(dòng)目標(biāo)檢測(cè)算法

  ViBe(Visual Background extractor)是VAN D M[6]等人提出一種像素級(jí)的背景減除算法。與傳統(tǒng)的GMM[7]等方法需要假設(shè)模型不同的是,ViBe建立的是樣本模型,采用隨機(jī)更新策略,計(jì)算量小,對(duì)于光照的變化和抖動(dòng)等其效果都十分穩(wěn)定。該算法過(guò)程主要包括:建立背景模型、前景檢測(cè)和模型更新。由于在第一幀中沒(méi)有包含像素的歷史信息,在初始建模時(shí)容易因存在運(yùn)動(dòng)目標(biāo)和噪聲而產(chǎn)生Ghost現(xiàn)象。

  針對(duì)上述提到的不足,本文結(jié)合中值濾波提出了改進(jìn)方法。在初始化模型的過(guò)程中,利用前L幀選取中間的K個(gè)像素值作為初始背景模型。實(shí)驗(yàn)效果如圖3所示,利用中值濾波能在建立背景模型時(shí)有效避免Ghost區(qū)的出現(xiàn),同時(shí)過(guò)濾其他隨機(jī)噪聲。

003.jpg

  2.2 基于改進(jìn)ViBe算法的實(shí)時(shí)運(yùn)動(dòng)檢測(cè)

 ?。?)建立背景建模。利用中值濾波方法得到初始背景模型M0;然后對(duì)于當(dāng)前的第t幀建立背景模型,如圖4所示:設(shè)x點(diǎn)處的像素值為p(x),通過(guò)歷史t幀的選擇和更新結(jié)果建立其包含N個(gè)樣本的背景樣本集:

  M(x)={p1,p2,…,pN}(1)

004.jpg

 ?。?)前景檢測(cè)。SR(p(x))是以x為中心、R為半徑的球體區(qū)域,用球體SR(p(x))和背景模型M(x)的交集來(lái)衡量p(x)與M(x)的相似度:

  Sim(x)={SR(p(x)∩{p1,p2,…,pN})(2)

  若Sim(x)大于閾值Th,則待分類(lèi)點(diǎn)p(x)與背景模型相似,那么x點(diǎn)屬于背景點(diǎn),否則為前景。

 ?。?)背景模型更新。采用隨機(jī)更新粗略:在新的一幀中,當(dāng)像素點(diǎn)p(x)被判斷為背景點(diǎn)時(shí),在N個(gè)樣本中選擇替換的樣本值時(shí),一個(gè)樣本值在時(shí)刻t被更新的概率只有1/N,那么在經(jīng)過(guò)時(shí)間dt后,樣本值不被更新的概率是:

  @NZLO58LUI`RWFUHFCFYXWR.png

  式(3)表明,當(dāng)前樣本值在背景模型中被替換的概率與當(dāng)前時(shí)間t無(wú)關(guān)。

  (4)輸出。對(duì)每一幀設(shè)置一個(gè)前景點(diǎn)統(tǒng)計(jì)量F,當(dāng)F大于設(shè)定的閾值時(shí)就輸出當(dāng)前幀。

3 運(yùn)動(dòng)目標(biāo)跟蹤

  本文在上述的檢測(cè)結(jié)果基礎(chǔ)上結(jié)合像素掃描標(biāo)記方法進(jìn)行實(shí)時(shí)的運(yùn)動(dòng)目標(biāo)跟蹤,使目標(biāo)檢測(cè)系統(tǒng)能應(yīng)用于實(shí)際的車(chē)流量統(tǒng)計(jì)、目標(biāo)軌跡提取等方面。具體方法如下:

 ?。?)設(shè)當(dāng)前像素所屬的目標(biāo)類(lèi)為Cxy;M為當(dāng)前矩形框的最小類(lèi)別號(hào);List={V1,V2,…}表示屬于同一個(gè)矩形框的類(lèi)別號(hào)集合;set_List={L1,L2,...}表示所有List的集合。初始化所有像素和背景的類(lèi)別號(hào)都為0。

 ?。?)第一次掃描。將檢測(cè)得到的二值化圖像進(jìn)行掃描,檢查掃描框中像素的最小類(lèi)別號(hào),對(duì)每個(gè)像素進(jìn)行標(biāo)記分類(lèi)。分類(lèi)方法如下:用V表示掃描過(guò)程中的所有分類(lèi)標(biāo)記的類(lèi)別數(shù)。如果像素值為1,則檢查該像素所在矩形框中所有像素的最小類(lèi)別號(hào)M:

  當(dāng)M為0時(shí),如圖5(a)所示,將當(dāng)前像素標(biāo)記為新的類(lèi)別號(hào)V+1,并將Cxy更新為V+1。

  最小M不為0時(shí),類(lèi)似于圖5(b)所示的情況,將當(dāng)前像素標(biāo)記為M類(lèi),將Cxy更新為M。

005.jpg

  (3)歸并。所有的List集合中至少有一個(gè)相同的類(lèi)別號(hào)時(shí),歸并為新集合并標(biāo)記新類(lèi)別號(hào)。此時(shí),這些相同標(biāo)記的點(diǎn)就是一個(gè)完整的目標(biāo)所在區(qū)域。

4 實(shí)驗(yàn)與分析

  4.1 算法仿真實(shí)驗(yàn)

  為了驗(yàn)證算法的有效性,首先在4 GB內(nèi)存、主頻3.2 GHz的PC平臺(tái)上進(jìn)行仿真實(shí)驗(yàn),并與參考文獻(xiàn)[7]、[8]幾種經(jīng)典的背景建模方法進(jìn)行比較,最終得到表1所示的仿真實(shí)驗(yàn)結(jié)果。由表1可以看到,在仿真實(shí)驗(yàn)中改進(jìn)的ViBe目標(biāo)檢測(cè)算法的時(shí)間比幾種傳統(tǒng)的背景建模要更快速。

007.jpg

  4.2 TI DM8168平臺(tái)上的實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測(cè)實(shí)驗(yàn)

  基于TI DM8168 EVM平臺(tái)的實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測(cè)實(shí)驗(yàn),在移植過(guò)程中,為了降低DSP的運(yùn)算量,本文將一些浮點(diǎn)運(yùn)算改為定點(diǎn)計(jì)算,減少了循環(huán)中的復(fù)雜運(yùn)算。如圖6、圖7所示,改進(jìn)的ViBe算法能在嵌入式平臺(tái)中克服背景抖動(dòng),實(shí)現(xiàn)實(shí)時(shí)魯棒的目標(biāo)檢測(cè);采用像素標(biāo)記法能夠準(zhǔn)確掃描并跟蹤目標(biāo)。

006.jpg

5 結(jié)論

  設(shè)計(jì)并實(shí)現(xiàn)了基于DM8168的實(shí)時(shí)視頻監(jiān)控系統(tǒng),利用中值濾波方法解決了ViBe算法中容易出現(xiàn)Ghost的問(wèn)題;然后結(jié)合像素標(biāo)記方法對(duì)目標(biāo)進(jìn)行分類(lèi)并實(shí)現(xiàn)跟蹤;最后,通過(guò)將該算法融合到TI的視頻監(jiān)控軟件框架中,實(shí)現(xiàn)了嵌入式平臺(tái)的實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測(cè)。經(jīng)過(guò)對(duì)系統(tǒng)進(jìn)一步優(yōu)化,本文提出的方案還可以應(yīng)用于安防報(bào)警、數(shù)量統(tǒng)計(jì)等系統(tǒng)的應(yīng)用中。

參考文獻(xiàn)

  [1] 蘇松志,李紹滋,陳淑媛,等.行人檢測(cè)技術(shù)綜述[J].電子學(xué)報(bào),2012,40(4):814-820.

  [2] 衛(wèi)保國(guó),曹慈卓.一種基于標(biāo)記修正和樣本更新的目標(biāo)跟蹤算法[J].計(jì)算機(jī)應(yīng)用研究,2012,29(5):1963-1966.

  [3] 宋南,趙晶.基于改進(jìn)型像素標(biāo)記算法的目標(biāo)定位[J].現(xiàn)代電子技術(shù),2012,35(5):52-54.

  [4] 胡小冉,孫涵.一種新的基于ViBe的運(yùn)動(dòng)目標(biāo)檢測(cè)方法[J].計(jì)算機(jī)科學(xué),2014(2):149-152.

  [5] 朱海.基于DM8168的視頻監(jiān)控系統(tǒng)的實(shí)現(xiàn)[D].成都:電子科技大學(xué),2013.

  [6] VAN D M, PAQUOT O. Background subtraction: experiments and improvements for ViBe[C]. 2012 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops(CVPRW), IEEE, 2012: 32-37.

  [7] 徐成,田崢,李仁發(fā).一種基于改進(jìn)碼本模型的快速運(yùn)動(dòng)檢測(cè)算法[J].計(jì)算機(jī)研究與發(fā)展,2010,47(12):2149-2156.

  [8] 劉靜,王玲.混合高斯模型背景法的一種改進(jìn)算法[J].計(jì)算機(jī)工程與應(yīng)用,2010,46(13):168-170.0

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