国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

視頻跟蹤算法在Davinci SOC上的實(shí)現(xiàn)與優(yōu)化

發(fā)布時(shí)間:2010-12-6 20:23    發(fā)布者:designer
關(guān)鍵詞: DaVinci , SoC , 跟蹤算法 , 視頻
目標(biāo)跟蹤作為計(jì)算機(jī)視覺(jué)的一個(gè)極具挑戰(zhàn)性的研究任務(wù),已被廣泛的應(yīng)用在人機(jī)交互、智能監(jiān)控、醫(yī)學(xué)圖像處理等領(lǐng)域中。目標(biāo)跟蹤的本質(zhì)是在圖像序列中識(shí)別出目標(biāo)的同時(shí)對(duì)其進(jìn)行精確定位。為了克服噪聲、遮擋、背景的改變等對(duì)目標(biāo)識(shí)別帶來(lái)的困難,出現(xiàn)了很多的跟蹤算法。

因?yàn)槟繕?biāo)跟蹤算法需要處理的數(shù)據(jù)量大、運(yùn)算復(fù)雜,需要性能強(qiáng)大的處理器才能實(shí)時(shí)處理。我們選用TI推出的最新產(chǎn)品TMS320DM6446實(shí)現(xiàn)算法。TMS320DM6446是一款高度集成的片上系統(tǒng),集成了可以運(yùn)行頻率高達(dá)594MHz的C64x+ DSP核和297MHz的ARM926處理器核。另外它還集成了數(shù)字視頻所需的許多外部組件,如視頻加速器,網(wǎng)絡(luò)外設(shè)及高速外部存儲(chǔ)接口。本設(shè)計(jì)充分利用DM6446的強(qiáng)大運(yùn)算能力,在DSP內(nèi)核上實(shí)時(shí)運(yùn)行目標(biāo)跟蹤算法。 設(shè)計(jì)還在ARM處理器上執(zhí)行多線程應(yīng)用程序,負(fù)責(zé)視頻采集,顯示,網(wǎng)絡(luò)通信,外圍器件控制等工作。

算法介紹

本系統(tǒng)實(shí)現(xiàn)的視頻跟蹤算法可參考文獻(xiàn)-,整個(gè)算法分為基本算法和改進(jìn)算法兩部分。本算法是一種基于模板匹配技術(shù)的跟蹤算法,即在手工選定或自動(dòng)選定了待跟蹤目標(biāo)后,提取目標(biāo)的外觀信息作為模板,在后續(xù)的視頻序列中,將候選圖像區(qū)域與目標(biāo)模板進(jìn)行匹配,將最相似的圖像區(qū)域作為運(yùn)動(dòng)目標(biāo)當(dāng)前的位置。在本文中,采用結(jié)構(gòu)相似度,即“歸一化互相關(guān)系數(shù)”作為候選區(qū)域與目標(biāo)模板相似程度的度量標(biāo)準(zhǔn),其計(jì)算公式如下所示:

上式中,f(m,n)和g(m,n)分別為目標(biāo)模板和候選區(qū)域的灰度值矩陣,尺寸為MxN。uf和ug分別為目標(biāo)模板和候選區(qū)域的灰度平均值,然后再求出f(m,n)和g(m,n)的協(xié)方差、f(m,n)的方差、g(m,n)的方差后,求出歸一化互相關(guān)系數(shù)。式(1)通過(guò)從灰度值矩陣中減去灰度均值,有效地消除了光照給跟蹤結(jié)果帶來(lái)的影響。而對(duì)于匹配圖像區(qū)域的搜索,為了達(dá)到減少匹配次數(shù)從而降低計(jì)算量的目的,我們借鑒了視頻壓縮領(lǐng)域中的三步搜索法(Three Step Search, TSS) 作為最匹配點(diǎn)的搜索算法。

為了增加模板匹配視頻目標(biāo)跟蹤算法的魯棒性,我們?cè)诨舅惴ǖ幕A(chǔ)上實(shí)現(xiàn)了改進(jìn)算法的部分。改進(jìn)算法具有自適應(yīng)遮擋處理與模板漂移抑制的能力,能夠很好地解決前面提到模板匹配的視頻目標(biāo)跟蹤算法需要解決的難題。具體來(lái)說(shuō),主要有如下四點(diǎn)改進(jìn):(1) 抑制漂移的帶掩蔽卡爾曼外觀濾波算法(Drift-Inhibitive Masked Kalman Appearance Filter, DIMKAF )  ;(2) 內(nèi)容自適應(yīng)漸進(jìn)式遮擋分析算法(Content-Adaptive Progressive Occlusion Analysis, CAPOA);(3) 可變掩蔽模板匹配算法(Variant-Mask Template Matching, VMTM);(4) 局部最優(yōu)匹配鑒定算法(Local Best Match Authentication, LBMA)。 改進(jìn)后整個(gè)算法的流程圖如下所示:







圖 1 跟蹤算法主流程圖

算法在DavinciSOC上的實(shí)現(xiàn)

DSP平臺(tái)的選擇

DM6446采用ARM與DSP 雙核結(jié)構(gòu),其中ARM子系統(tǒng)搭載297 MHz主頻的ARM926 核,DSP部分則采用594 MHz的C64x+DSP核,外圍存儲(chǔ)均支持256 MB DDR2 RAM和各類(lèi)存儲(chǔ)卡,另外使用了VPSS 子系統(tǒng)豐富的視頻前后處理功能,且都配備了完善的外設(shè)接口。目標(biāo)跟蹤算法需要做大量運(yùn)算,DM6446 DSP核強(qiáng)大的運(yùn)算處理能力保證了算法的實(shí)時(shí)處理。同時(shí)DM6446的ARM核可以進(jìn)行系統(tǒng)管理,數(shù)據(jù)讀寫(xiě),網(wǎng)絡(luò)傳輸?shù)忍幚怼?

我們使用Spectrum Digital公司的DVEVM平臺(tái)進(jìn)行算法仿真、原型制作和軟件優(yōu)化。DVEVM?還可實(shí)現(xiàn)視頻輸入/輸出連接、網(wǎng)絡(luò)接口、存儲(chǔ)器接口以及標(biāo)準(zhǔn)的子卡連接等。

系統(tǒng)軟件框架

整個(gè)系統(tǒng)的軟件框架如圖2如示。DM6446的ARM核運(yùn)行基于Linux操作系統(tǒng)的應(yīng)用程序,所用的外圍設(shè)備都由ARM負(fù)責(zé)控制。ARM端的HTTP服務(wù)器通過(guò)Linux網(wǎng)絡(luò)協(xié)議棧來(lái)處理HTTP請(qǐng)求,并發(fā)送壓縮視頻數(shù)據(jù)。視頻跟蹤的應(yīng)用程序由五個(gè)POSIX線程組成,分別是視頻捕捉線程,視頻跟蹤線程,視頻壓縮線程,顯示線程,系統(tǒng)控制線程。視頻捕捉線程通過(guò)V4L2接口設(shè)備驅(qū)動(dòng)從攝像頭讀取原始視頻數(shù)據(jù)。視頻跟蹤線程把視頻數(shù)據(jù)送到ARM和DSP的共享緩沖內(nèi)存,并通知DSP執(zhí)行跟蹤算法。壓縮線程負(fù)責(zé)控制DSP側(cè)的壓縮算法并從共享內(nèi)存中讀取壓縮數(shù)據(jù)。視頻顯示線程從視頻緩存中讀取視頻數(shù)據(jù)幀,并疊加目標(biāo)跟蹤框,最后通過(guò)Frame Buffer設(shè)備驅(qū)動(dòng)輸出顯示。系統(tǒng)控制線程負(fù)責(zé)響應(yīng)遙控器和鼠標(biāo)并執(zhí)行相應(yīng)操作。




圖 2 軟件結(jié)構(gòu)圖

DM6446的DSP核上運(yùn)行DSP/BIOS實(shí)時(shí)操作系統(tǒng)和目標(biāo)檢測(cè),跟蹤算法,視頻壓縮算法。所有的算法的接口都符合TI xDAIS標(biāo)準(zhǔn),由Codec Engine調(diào)用。除了算法,DSP核上還集成了管理內(nèi)存和DMA的Framework Component。

ARM核和DSP核的通信由TI提供的Codec Engine軟件框架負(fù)責(zé)。Codec Engine是介于應(yīng)用程序和具體算法之間的軟件模塊,其中的VISA API通過(guò)stub和skeleton訪問(wèn)Engine SPI最終調(diào)用算法。ARM和DSP的所用共享緩沖內(nèi)存都是通過(guò)CMEM模塊在DDR中分配的,緩沖內(nèi)存地址連續(xù)且與DSP核Cache對(duì)齊。

跟蹤算法在DSP上的優(yōu)化

為了充分發(fā)揮出Davinci SOC強(qiáng)大的視頻處理能力,滿足實(shí)時(shí)跟蹤的需要,我們通過(guò)算法優(yōu)化和編程優(yōu)化相結(jié)合的方法對(duì)Codec程序進(jìn)行了大量的優(yōu)化。



算法優(yōu)化

算法優(yōu)化是指在不降低算法性能的情況下,采用等效算法來(lái)降低計(jì)算量,我們的工作主要集中在“歸一化互相關(guān)系數(shù)”的計(jì)算例程的簡(jiǎn)化上。根據(jù)均值和方差的性質(zhì),我們可以將(1)式化簡(jiǎn)為:





上式與式(1)比較,減少了大量的加減法計(jì)算,而且將方差和協(xié)方差的計(jì)算轉(zhuǎn)化為大量的乘加運(yùn)算,這為我們后面的編程優(yōu)化也提供了極大的便利。例如M=64, N="64時(shí)",加法次數(shù)從36864減少到12288。

編程優(yōu)化

編程優(yōu)化是在計(jì)算量不變的情況下,根據(jù)Davinci處理器DSP核心的特點(diǎn),通過(guò)優(yōu)化存儲(chǔ)器的存取效率和提高程序的并行化程度來(lái)縮短程序運(yùn)行所需要的指令周期數(shù),以使程序運(yùn)行得更快。我們的編程優(yōu)化工作主要包含使用dsplib、使用線性匯編、使用內(nèi)聯(lián)函數(shù)以及循環(huán)展開(kāi)等五個(gè)方面,下面將一一加以介紹。

dsplib的使用

在優(yōu)化過(guò)程中,我們還采用了CCS中提供的庫(kù)函數(shù)來(lái)對(duì)代碼進(jìn)行優(yōu)化。CCS中針對(duì)c64x+ DSP提供了高度優(yōu)化的dsplib庫(kù)函數(shù)供用戶使用,這些庫(kù)函數(shù)提供了數(shù)字信號(hào)處理中常見(jiàn)的處理例程,而且由匯編語(yǔ)言寫(xiě)成,具有極高效的代碼效率。特別是用于計(jì)算向量?jī)?nèi)積的DSP_dotprod和DSP_vecsumsq函數(shù)正好滿足了我們的計(jì)算需求。在計(jì)算尺寸為32x32的“歸一化互相關(guān)系數(shù)”時(shí),優(yōu)化后計(jì)算

部分只需要271個(gè)DSP時(shí)鐘周期,而計(jì)算

和部分只需要267個(gè)DSP時(shí)鐘周期,這大大提高了程序運(yùn)行的速度。

線性匯編

對(duì)于uf和ug的計(jì)算,如果使用for循環(huán)實(shí)現(xiàn),將會(huì)大大拖累整個(gè)“歸一化互相關(guān)系數(shù)”計(jì)算例程的執(zhí)行效率。我們用手工編寫(xiě)線性匯編代碼的方式實(shí)現(xiàn)了dspsum函數(shù),利用C64x + DSP中的8個(gè)并行計(jì)算單元,在每個(gè)DSP

   

時(shí)鐘周期內(nèi)同時(shí)進(jìn)行4個(gè)16位加16位的加法操作,對(duì)于尺寸為32x32的求和計(jì)算而言,該函數(shù)只需要258個(gè)DSP時(shí)鐘周期。

內(nèi)聯(lián)函數(shù)的使用

C64x+編譯器提供的內(nèi)聯(lián)函數(shù)可快速優(yōu)化C代碼。內(nèi)聯(lián)函數(shù)是直接映射為內(nèi)聯(lián)的C64x+指令的特殊函數(shù),內(nèi)聯(lián)函數(shù)用前下滑線(_)來(lái)表示,使用時(shí)同調(diào)用普通函數(shù)一樣使用它。我們?cè)趦?yōu)化過(guò)程中,使用了許多內(nèi)聯(lián)函數(shù),如_round()等,大大提高了代碼的執(zhí)行效率。

循環(huán)展開(kāi)

由于for技術(shù)循環(huán)需要打斷C64x+ DSP內(nèi)部的軟件流水線,而頻繁的for循環(huán)會(huì)大大降低DSP的處理效率,所以我們?cè)趦?yōu)化過(guò)程中,將部分for循環(huán)進(jìn)行了展開(kāi),以代碼增加為代價(jià)提高了代碼的執(zhí)行效率。通過(guò)上述方法,可將代碼的處理效率提高3-5倍。

測(cè)試結(jié)果

為了獲得視頻跟蹤算法Codec運(yùn)行所需要的DSP時(shí)鐘周期數(shù),進(jìn)而估計(jì)出優(yōu)化后的算法代碼是否已經(jīng)滿足實(shí)時(shí)跟蹤的需要,我們使用CCStudio v3.3對(duì)同一測(cè)試序列,同一起始目標(biāo)位置,不同大小模板的情況進(jìn)行了離線仿真。

表 1 視頻跟蹤算法優(yōu)化結(jié)果




表 2 DSP負(fù)載測(cè)試





結(jié)論

我們?cè)诨陔p核DM6446的系統(tǒng)平臺(tái)上,利用改進(jìn)后的跟蹤算法實(shí)現(xiàn)了智能目標(biāo)跟蹤系統(tǒng)。DM6446 ARM核上的Linux操作系統(tǒng)上的多線程程序負(fù)責(zé)視頻采集、視頻顯示、算法控制、外圍設(shè)備處理等任務(wù)。通過(guò)在TI Codec Engine軟件架構(gòu)下擴(kuò)展目標(biāo)跟蹤算法的接口,我們成功在DM6446的DSP核上運(yùn)行了跟蹤算法。經(jīng)過(guò)算法優(yōu)化和編程優(yōu)化,系統(tǒng)可以對(duì)采集輸入的25fps,720×480分辨率視頻中的128×128大小的目標(biāo)進(jìn)行實(shí)時(shí)跟蹤。實(shí)驗(yàn)結(jié)果表明,該算法可以成功跟蹤目標(biāo),并具有較強(qiáng)的魯棒性。該技術(shù)將會(huì)在智能視頻監(jiān)控、智能用戶接口、基于對(duì)象的視頻壓縮、巡航導(dǎo)彈末端制導(dǎo)和輔助駕駛等領(lǐng)域有廣泛應(yīng)用前景。
本文地址:http://m.qingdxww.cn/thread-44473-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專(zhuān)區(qū)
  • 使用SAM-IoT Wx v2開(kāi)發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開(kāi)發(fā)培訓(xùn)教程
  • 集成高級(jí)模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿(mào)澤電子(Mouser)專(zhuān)區(qū)

相關(guān)在線工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 特级毛片免费| 亚洲天堂第一区| 色综合久久综合网| 中国老太太xxx| 久久综合亚洲色hezyo| 十七岁日本免费完整版BD| 欧美日韩久久中文字幕| 日韩精品一区二区三区中文版 | 夜夜穞狠狠穞| 亚州 色 图 综合| 日韩a免费| 天天夜夜啦啦啦| 成人片在线播放| 无码AV免费精品一区二区三区| 日本jizz强视频69视频| 日本国产在线观看| 亚洲在成人网在线看| 在线aaa| 免费a毛片| 尤物yw193can入口| 欧美一区二区三区不卡免费| 在线观看亚洲精品专区| 一二三四视频观看中文在线看 | 日韩1页| 亚洲国产精品福利片在线观看| 国产精品视频免费视频| 一区二区三区国产| 欧美小网站| 深夜a| 耽肉高h喷汁呻吟| 日本一本在线播放| 日韩理论在线观看| 亚洲国产青草| 中文字幕色网站| 日韩精品真人荷官无码| 人久热欧美在线观看量量| 五月婷婷深深爱| 玉女性经| 日本G奶乳液汁| 亚洲福利二区| 天天干天天干天天|