汲清波,王飛祥,謝宇
哈爾濱工程大學(xué)信息與通信工程學(xué)院,黑龍江哈爾濱 150001
基于RF5的紅外弱小目標(biāo)跟蹤系統(tǒng)的實(shí)時(shí)性改進(jìn)方法
汲清波,王飛祥,謝宇
哈爾濱工程大學(xué)信息與通信工程學(xué)院,黑龍江哈爾濱 150001
利用基于粒子濾波的檢測前跟蹤算法對紅外弱小目標(biāo)進(jìn)行檢測跟蹤時(shí),由于算法的復(fù)雜性以及所處理數(shù)據(jù)量大等原因,使得該系統(tǒng)不能滿足實(shí)時(shí)性的要求。針對這一問題,提出了在RF5框架下實(shí)現(xiàn)基于粒子濾波的檢測前跟蹤算法的改進(jìn)方案,并成功地在DM642上實(shí)現(xiàn)了該算法。實(shí)驗(yàn)結(jié)果表明,與傳統(tǒng)的單線程方式相比,系統(tǒng)的實(shí)時(shí)性得到了很大提高,可以滿足系統(tǒng)實(shí)時(shí)性的要求。
粒子濾波;RF5框架;紅外弱小目標(biāo);DM642
隨著紅外圖像處理技術(shù)的發(fā)展,紅外跟蹤系統(tǒng)在軍用和民用領(lǐng)域得到了廣泛的應(yīng)用,而紅外弱小目標(biāo)檢測[1]和跟蹤作為其中一項(xiàng)關(guān)鍵技術(shù),逐漸成為了國內(nèi)外研究的熱點(diǎn)[2]。在跟蹤算法的選擇上,由于粒子濾波算法在處理非線性、非高斯信號(hào)上的優(yōu)勢[3],許多學(xué)者都將其用于紅外弱小目標(biāo)的檢測和跟蹤。但是簡單的利用單線程在DSP上實(shí)現(xiàn)該算法,由于算法的復(fù)雜性以及所處理的數(shù)據(jù)量大等原因,使得系統(tǒng)的實(shí)時(shí)性差,無法滿足實(shí)際需要。
RF5是TI公司推出的DSP軟件開發(fā)的起步代碼參考框架,它以DSP/BIOS為基礎(chǔ),利用其中的數(shù)據(jù)處理元素和數(shù)據(jù)通信元素方便快捷地完成DSP軟件的設(shè)計(jì)與開發(fā)[4]。RF5主要實(shí)現(xiàn)3個(gè)功能:存儲(chǔ)管理、線程模型和通道封裝。在利用RF5對系統(tǒng)程序進(jìn)行設(shè)計(jì)時(shí),可以借助存儲(chǔ)管理功能對數(shù)據(jù)進(jìn)行合理的管理以提高數(shù)據(jù)的利用率;可以利用線程模型進(jìn)行多線程同步執(zhí)行提高算法的實(shí)時(shí)性;還可以利用通道封裝將封裝好的算法封裝在通道之中,提高算法的處理速度[5]。
文中采用了實(shí)時(shí)操作系統(tǒng)DSP/BIOS,并通過TI推出的RF5框架進(jìn)行系統(tǒng)的軟件設(shè)計(jì),從而大幅度提高了算法的執(zhí)行效率,提高了系統(tǒng)的實(shí)時(shí)性。
粒子濾波,又稱作蒙特卡洛濾波,它通過非參數(shù)化的蒙特卡洛模擬方法實(shí)現(xiàn)遞推貝葉斯濾波,適用于非線性非高斯模型描述的動(dòng)態(tài)系統(tǒng)。遞推貝葉斯估計(jì)的實(shí)質(zhì)是構(gòu)造狀態(tài)變量的后驗(yàn)概率密度,進(jìn)而可得到狀態(tài)的最優(yōu)估計(jì),由預(yù)測和更新步驟反復(fù)迭代可最優(yōu)地估計(jì)出后驗(yàn)概率密度的準(zhǔn)確解。
1)預(yù)測模型
2)更新模型
式中:k表示時(shí)刻,z表示狀態(tài),x表示觀測量。
2.1 構(gòu)成RF5框架底層的DSP/BIOS
DSP/BIOS是一個(gè)簡易的實(shí)時(shí)嵌入式操作系統(tǒng),主要用于實(shí)時(shí)調(diào)度與同步、主機(jī)/目標(biāo)系統(tǒng)通訊以及實(shí)時(shí)監(jiān)測等應(yīng)用,具有實(shí)時(shí)操作系統(tǒng)的諸多功能,如任務(wù)的調(diào)度管理、任務(wù)間的同步和通訊、內(nèi)存管理、實(shí)時(shí)時(shí)鐘管理、中斷服務(wù)管理、外設(shè)驅(qū)動(dòng)程序管理等。TI已在其DSP集成開發(fā)環(huán)境CCS中嵌入了DSP/BIOS開發(fā)工具。DSP/BIOS由3個(gè)部分組成:DSP/BIOS實(shí)時(shí)內(nèi)核與API、DSP/BIOS分析工具以及DSP/BIOS配置工具。DSP/BIOS為用戶提供150多個(gè)API函數(shù),根據(jù)應(yīng)用程序的具體使用情況,DSP/BIOS的代碼大小從500字到6 500字不等;DSP/BIOS分析工具可以輔助CCS實(shí)現(xiàn)程序的實(shí)時(shí)調(diào)試;DSP/BIOS的配置工具可以進(jìn)行可視化地設(shè)置DSP/BIOS模塊參數(shù),建立DSP/BIOS對象,如軟件中斷和任務(wù)等[6]。
2.2 RF5框架的各個(gè)組成要素
RF5是RF的最新版本,其區(qū)別于RF1和RF3的顯著特點(diǎn)是其支持動(dòng)態(tài)對象創(chuàng)建和支持線程(任務(wù))掛起功能,因此適合系統(tǒng)較復(fù)雜的應(yīng)用場合[7]。RF5共有4個(gè)基本的數(shù)據(jù)處理部件:任務(wù)(task)、通道(channel)、單元(cell)和標(biāo)準(zhǔn)算法(XDAIS algo-rithms)[8],它們之間的關(guān)系如圖1所示。任務(wù)總是順序的執(zhí)行所包含的通道,任務(wù)在一個(gè)比較高的級別上把數(shù)據(jù)組織在一起,他們可以與其他任務(wù)、設(shè)備驅(qū)動(dòng)以及其他類似結(jié)構(gòu)進(jìn)行通訊。每個(gè)任務(wù)都在不斷地等待消息、處理數(shù)據(jù),并將結(jié)果發(fā)送給其他任務(wù),同時(shí)有可能還要發(fā)送同步消息給其他任務(wù)以實(shí)現(xiàn)任務(wù)間的通訊[9]。其中任務(wù)間的通信通過SCOM實(shí)現(xiàn)。
圖1 RF5的基本要素
2.3 任務(wù)間的通信對象SCOM
SCOM消息是用戶自定義的一個(gè)結(jié)構(gòu),RF5使用SCOM對象來實(shí)現(xiàn)線程間的通訊。SCOM消息是用戶定義的一個(gè)數(shù)據(jù)結(jié)構(gòu),用于task之間交換信息。為實(shí)現(xiàn)信息傳遞,某個(gè)task申請一定大小的數(shù)據(jù)緩沖區(qū),以供其他task讀、寫數(shù)據(jù)。每個(gè)task需要知道其他task的緩沖區(qū)位置,并阻止多個(gè)task同時(shí)訪問自己的緩沖區(qū)。為保證這些功能,利用SCOM消息作為緩沖區(qū)描述器,并將其在任務(wù)之間傳遞,如圖2所示。
圖2 線程之間的通信
3.1 軟件框架的實(shí)現(xiàn)
根據(jù)本系統(tǒng)所要實(shí)現(xiàn)的功能,可將應(yīng)用程序分為3個(gè)線程,根據(jù)實(shí)時(shí)性的要求以及各個(gè)線程的工作特點(diǎn),將其設(shè)置了相同的優(yōu)先級,如圖3所示。
各個(gè)線程及其功能如下:
1)tskVideoInput:主要負(fù)責(zé)采集攝像機(jī)的視頻圖像,為tskVideoProcess線程提供清晰的圖像幀以備處理。
2)tskVideoOutput:主要的任務(wù)是將tskVideo-Process線程處理后的圖像幀傳遞到顯示器進(jìn)行顯示。
3)tskVideoProcess:對tskVideoInput線程傳遞來的圖像進(jìn)行紅外弱小目標(biāo)的檢測與跟蹤,并將處理后的視頻圖像傳遞給tskVideoOutput線程。
圖3 線程在DSP/BIOS下的設(shè)置
系統(tǒng)的軟件執(zhí)行流程圖如圖4所示。
圖4 本系統(tǒng)的軟件執(zhí)行流程
3.2 具體各個(gè)線程的實(shí)現(xiàn)
1)tskVideoInput線程。
tskVideoInput線程主要的功能是獲取實(shí)時(shí)的視頻圖像,它首先從攝像機(jī)獲得一幀視頻圖像,對這幀圖像進(jìn)行隔行隔列操作之后,將圖像數(shù)據(jù)存入InBuf緩沖區(qū)中,然后發(fā)送一個(gè)SCOM消息給tskVideoPro-cess線程,此SCOM消息包含了指向InBuf緩沖區(qū)的指針,操作完成后,tskVideoInput線程轉(zhuǎn)為掛起狀態(tài),直至tskVideoOutput線程發(fā)送SCOM消息再次激活此線程。
2)tskVideoOutput線程。
tskVideoOutput線程的主要功能是把結(jié)果圖像輸出到顯示器進(jìn)行顯示。視頻輸出啟動(dòng)后,它首先為掛起狀態(tài),等待tskVideoProcess線程發(fā)送的SCOM來激活它;當(dāng)接受到發(fā)送來的SCOM消息后,將指針指向輸出緩沖區(qū)OutBuf進(jìn)行顯示,顯示完畢后,發(fā)送SCOM消息給tskVideoInput線程,之后它轉(zhuǎn)為掛起狀態(tài)直到下一幀的到來。
3)tskVideoProcess線程。
tskVideoProcess線程主要功能是對輸入的圖像進(jìn)行紅外弱小目標(biāo)的檢測前跟蹤,tskVideoProcess線程首先為掛起狀態(tài),當(dāng)它接受到tskVideoInput線程發(fā)送來的SCOM消息后,此線程得以激活,此時(shí)對指針指向的輸入緩沖區(qū)的圖像進(jìn)行紅外弱小目標(biāo)的跟蹤,跟蹤完畢后,發(fā)送SCOM消息給tskVideoOut-put線程,通知其進(jìn)行顯示,之后此線程轉(zhuǎn)為掛起狀態(tài),等待tskVideoInput線程發(fā)送SCOM消息再次激活它。
為了比較該方案相對于傳統(tǒng)的單線程系統(tǒng)在實(shí)時(shí)性上的優(yōu)劣,文中首先使用傳統(tǒng)的單線程系統(tǒng)來跟蹤模擬的紅外弱小目標(biāo)。紅外弱小目標(biāo)的模擬方法為:在采集的紅外圖像中加入2×2像素大小的模擬紅外弱小目標(biāo),并編寫目標(biāo)運(yùn)動(dòng)軌跡函數(shù)TRACE讓紅外弱小目標(biāo)按照一定的軌跡運(yùn)動(dòng);然后再按照本方案所設(shè)計(jì)的系統(tǒng)來對該模擬紅外弱小目標(biāo)進(jìn)行跟蹤,最后利用DSP/BIOS系統(tǒng)提供的實(shí)時(shí)分析工具來觀察系統(tǒng)處理效率的變化。
跟蹤系統(tǒng)軟硬件實(shí)施環(huán)境為:計(jì)算機(jī):ACPI Multiprocessor PC;系統(tǒng):Windows XP系統(tǒng);內(nèi)存:1 GB;CPU:Intel Pentium 4;仿真軟件:CCS2.2;仿真環(huán)境:系統(tǒng)運(yùn)行的環(huán)境為實(shí)驗(yàn)室,實(shí)驗(yàn)室長9 m、寬5 m,室內(nèi)溫度在15~18℃。
系統(tǒng)硬件平臺(tái)由紅外成像儀、ICETEK-DM642-PCI開發(fā)板和顯示器組成,其中ICETEK-DM642-PCI開發(fā)板為系統(tǒng)的數(shù)據(jù)處理平臺(tái),該平臺(tái)以TMS320DM642(DSP)為數(shù)據(jù)處理核心。
1)在信噪比為2.901 7,粒子數(shù)為500的前提下,系統(tǒng)的跟蹤效果如圖5所示。
圖5 跟蹤結(jié)果
可見系統(tǒng)能夠精確地對紅外弱小目標(biāo)進(jìn)行跟蹤,經(jīng)統(tǒng)計(jì)分析,此時(shí)系統(tǒng)的檢測概率為95.47%,虛警概率為0。
2)在信噪比均為2.901 7的前提下,改變系統(tǒng)的粒子數(shù),比較系統(tǒng)實(shí)時(shí)性上的優(yōu)劣,系統(tǒng)的處理效率如表1所示。
表1 系統(tǒng)處理效率的變化(粒子數(shù)改變)
由表1可以看出:在不同粒子數(shù)的情況下,本方案相對于傳統(tǒng)的單線程方案在算法處理效率上提高了一倍左右,但是隨著粒子數(shù)的提高,這種效率上的提升逐漸變小。
2)在粒子數(shù)均為500的情況下,改變系統(tǒng)的信噪比,比較系統(tǒng)實(shí)時(shí)性上的優(yōu)劣,系統(tǒng)的處理效率如表2所示。
表2 系統(tǒng)處理效率的變化(信噪比改變)
從表2可以看出:在不同信噪比的情況下,本方案相對于傳統(tǒng)的單線程方案在算法處理效率上上提高了一倍左右,但是隨著信噪比的提高,這種效率上的提升會(huì)出現(xiàn)上下波動(dòng)。
文中利用RF5框架對傳統(tǒng)的單線程紅外弱小目標(biāo)跟蹤系統(tǒng)進(jìn)行了軟件框架的設(shè)計(jì),將原先的單線程系統(tǒng)改進(jìn)為多線程并行執(zhí)行,并且成功地在DM642開發(fā)板上實(shí)現(xiàn)了該算法。實(shí)驗(yàn)表明,該方案大幅度地提高了系統(tǒng)的處理效率,改善了系統(tǒng)的實(shí)時(shí)性,并且該方案也為其他復(fù)雜算法系統(tǒng)的設(shè)計(jì)提供了參考。但是該方案的缺點(diǎn)在于并沒有將算法封裝進(jìn)通道,進(jìn)一步的工作將著重于此,從而提高算法的移植性。
[1]楊洋.基于粒子濾波的紅外弱小目標(biāo)檢測前跟蹤算法的DSP實(shí)現(xiàn)[D].哈爾濱:哈爾濱工程大學(xué),2011:1-66.
[2]潘濤.基于DM642的紅外運(yùn)動(dòng)目標(biāo)檢測與跟蹤技術(shù)實(shí)現(xiàn)[D].南京:南京理工大學(xué),2012:1-66.
[3]朱志宇.粒子濾波算法及其應(yīng)用[M].北京:科學(xué)出版社,2010:1-257.
[4]鄭仁福,劉杰.基于RF5框架的X264編碼器的實(shí)現(xiàn)[J].電視技術(shù),2009,33(3):26-27,33.
[5]李雁斌,曹作良,劉常杰,等.基于DSP利用粒子濾波算法實(shí)現(xiàn)目標(biāo)跟蹤[J].光電子·激光,2009,20(6):771-774.
[6]尹勇,歐光軍,關(guān)榮鋒.DSP集成開發(fā)環(huán)境CCS開發(fā)指南[M].北京:北京航空航天大學(xué)出版社,2003:1-278.
[7]曹磊,范彩霞.基于RF5框架的視頻處理系統(tǒng)研究[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2008(6):17-19.
[8]蔣宇.基于DSP的運(yùn)動(dòng)目標(biāo)檢測系統(tǒng)的實(shí)現(xiàn)[D].天津:天津大學(xué),2010:1-48.
[9]李志遠(yuǎn).基于RF5框架及算法標(biāo)準(zhǔn)下的多任務(wù)程序設(shè)計(jì)[D].西安:西安理工大學(xué),2009:1-59.
The real-time improvment method for the infrared small dim target’s tracking system based on RF5
JI Qingbo,WANG Feixiang,XIE Yu
College of Information and Communication Engineering,Harbin Engineering University,Harbin 150001,China
When the track-before-detect(TBD)algorithm based on particle filtering(PF)is utilized to detect and track the infrared small dim target,the system can not meet the real-time requirement because of complexity of the algorithm and a large amount of data needed to be processed.An improved TBD algorithm based on particle filtering under the frame of RF5 is proposed to solve the problem.Furthermore,the algorithm is successfully implemented on DM642.Simulation results show that the real-time of the system is greatly improved in comparison with the tradi-tional single-thread way,which basically meets the real-time requirement.
particle filtering;RF5 framework;infrared small dim target;DM642
TN911.73
A
1009-671X(2014)05-019-04
10.3969/j.issn.1009-671X.201310020
http://www.cnki.net/kcms/doi/10.3969/j.issn.1009-671X.201310020.html
2013-11-01.
日期:2014-09-22.
黑龍江省自然科學(xué)基金資助項(xiàng)目(F201407).
汲清波(1975-),女,副教授,工學(xué)博士;
王飛祥(1988-),男,碩士研究生.
王飛祥,E-mail:wangfeixiang0824@163.com.