紅外圖像實時跟蹤系統(tǒng)
系統(tǒng)組成及工作原理
實時紅外圖像自動跟蹤系統(tǒng),對紅外成像傳感器獲取的地面場景圖像數(shù)據(jù)中指定目標區(qū)域進行實時自動跟蹤,實時解算出目標在圖像場景中的精確位置,并輸出目標偏離系統(tǒng)視軸的方位,通過伺服控制回路,驅(qū)動穩(wěn)定平臺跟蹤目標。同時,圖像跟蹤系統(tǒng)接受來自外部控制系統(tǒng)的控制命令和數(shù)據(jù),并按總體通訊協(xié)議要求向外部控制系統(tǒng)回送跟蹤系統(tǒng)的狀態(tài)、圖像數(shù)據(jù)和系統(tǒng)關(guān)鍵參數(shù)。
根據(jù)系統(tǒng)總體要求,選擇Altera公司Stratix系列的EP1S25。實時圖像跟蹤系統(tǒng)總體框圖如圖1所示,圖像跟蹤系統(tǒng)接受來自紅外成像焦平面視頻數(shù)據(jù)流,通過視頻信號行場和像素時鐘用來確定視場中每個像素的空間位置,視頻信號分為兩路處理,一路經(jīng)過系統(tǒng)中的Nios II相關(guān)跟蹤部分作自動跟蹤處理,另一路通過采集和顯示邏輯送到LCD監(jiān)視器用來觀察系統(tǒng)跟蹤情況。啟動相關(guān)跟蹤之前,系統(tǒng)通過遠距離的RS485接收目標位置和大小參數(shù),將選定目標分割后的數(shù)據(jù)保存到目標模板存儲區(qū),形成初始模板。利用模板對目標進行跟蹤,對跟蹤結(jié)果進行預(yù)測外推,得到目標的坐標參數(shù)誤差后,通過RS232控制伺服系統(tǒng)對目標進行跟蹤。為了減小外圍電路使用,系統(tǒng)采用對二值化后的數(shù)據(jù)進行相關(guān)匹配方式??紤]到EP1S25帶有1944576 bits的RAM,因此利用RAM模塊用來做高速相關(guān)匹配模板存儲區(qū),例化兩場圖像數(shù)據(jù)需要120000bits,僅占片內(nèi)RAM總?cè)萘康?%。
圖 1 系統(tǒng)的總體結(jié)構(gòu)框圖
跟蹤算法
目前有多種算法可用于目標跟蹤。為了發(fā)揮FPGA實現(xiàn)并行算法的優(yōu)勢和NiosⅡ的靈活性,系統(tǒng)采用自遞歸的0tsu分割和相關(guān)跟蹤算法對紅外目標進行穩(wěn)定跟蹤,為了提高跟蹤精度,克服分割后的噪聲干擾,采用形態(tài)學(xué)方法去除噪聲突出目標。整個算法的實現(xiàn)過程如圖2所示。
圖2 跟蹤原理算法圖
目標分割
目標圖像的分割效果尤其是有效地使目標從背景中分離出來是保證系統(tǒng)穩(wěn)定跟蹤的關(guān)鍵。系統(tǒng)采用自遞歸的Otsu的聚類分割法。用聚類準則分割圖像,當目標在圖像中占有適當?shù)谋壤龝r,分割結(jié)果比較好,而且算法比較簡單,有利于實時處理。然而對小目標圖像卻不能把目標從背景中分割出來,經(jīng)常會把很多背景錯分為目標,為此,我們提出了利用Otsu準則對圖像進行自遞歸分割。即在第一次Otsu方法分割之后,將分割得到的亮像素再次利用Otsu分割準則計算得到新的分割閾值。
圖3 硬件實現(xiàn)相關(guān)匹配算法原理圖
相關(guān)跟蹤
相關(guān)跟蹤算法將系統(tǒng)的基準圖像 (即模板)在實時圖像上以一定的偏移值平移,然后根據(jù)一定的相似性度量準則對基準圖像和與基準圖像同樣大小的實時圖像塊進行相關(guān)匹配,最匹配的那個位置就認為是目標位置。考慮利用FPGA實現(xiàn)算法,系統(tǒng)采用絕對差相關(guān)算法。
為了保證系統(tǒng)實時性,減小算法對圖像RAM的使用量,采取如下方式對算法進行優(yōu)化:圖像經(jīng)過分割后得到二值化圖像,運用異或運算處理來代替相關(guān)度的復(fù)雜計算:即將圖像和模板的二值灰度函數(shù)進行異或運算,其最小值即為正確匹配位置。
目標預(yù)測
在目標跟蹤過程中,根據(jù)目標在運動過程中具有軌跡的連續(xù)性的特點,首先利用目標過去的位置信息預(yù)測當前位置,然后在預(yù)測點周圍一定范圍內(nèi)進行匹配。這樣既能減少計算量,在一定程度上又能排除其它物體對跟蹤的影響,從而保證匹配的可靠性。系統(tǒng)中采用最佳線性逼近預(yù)測法。
模板刷新
相關(guān)跟蹤算法進行跟蹤時,用事先存儲好的模板在波門范圍內(nèi)進行匹配,尋找最佳匹配點。在跟蹤過程中,隨著視場范圍內(nèi)場景的變化,目標形體的變化,需要及時更新模板,使得模板始終正確地反映要跟蹤地目標。
系統(tǒng)采用模板的自適應(yīng)刷新。根據(jù)相關(guān)峰確定是否更換模板,若所尋找到的相關(guān)峰同某個閥值比較,若小于該閥值,則認為此時的目標己經(jīng)和模板存在較大的差距,此時應(yīng)該及時更新模板。經(jīng)大量試驗,閥值選取0.985有較好的跟蹤效果。
跟蹤算法實現(xiàn)
為了滿足系統(tǒng)實時性,系統(tǒng)采用NiosⅡ的定制指令和VHDL編寫硬件算法加速器保證系統(tǒng)運行速度,在系統(tǒng)目標跟蹤算法中,對需要循環(huán)迭代浮點處理的Otsu分割和運動預(yù)測算法,采用自定義的單精度浮點運算指令加速計算結(jié)果,表1 所示為采用自定義浮點指令和軟件實現(xiàn)浮點運算性能對比。定制指令邏輯和Nios II的連接在SOPC Builder 中完成。NiosⅡCPU配置向?qū)峁┝艘粋€圖形用戶界面,在該界面中可導(dǎo)入設(shè)計文件,設(shè)置定制指令名,并分配定制指令所需的CPU時鐘周期數(shù)目。系統(tǒng)生成時,Nios II IDE為每條用戶指令產(chǎn)生一個在系統(tǒng)頭文件中定義的宏,可以在C或C++應(yīng)用程序代碼中直接調(diào)用這個宏。
系統(tǒng)的相關(guān)匹配算法采用VHDL語言硬件并行實現(xiàn),并且作為Avalon總線的用戶外設(shè)集成到Nios II中實現(xiàn)算法的硬件加速單元。通過SOPC Builder中元件編輯器在GUI下將用戶邏輯封裝成一個 Nios Ⅱ的用戶外設(shè)。這樣用戶可以像Altera提供的外設(shè)元件一樣使用自定義的邏輯組件。
圖3為硬件實現(xiàn)相關(guān)匹配算法原理圖,主要包括一個帶圖像行移位FIFO的模板寄存器組和目標模板生成模塊、集成相關(guān)運算的Avalon總線接口。
圖4 系統(tǒng)對2公里外的靶機目標跟蹤效果圖
實驗結(jié)果
系統(tǒng)在夜間對2公里外的多云天空中靶機目標進行跟蹤實驗,圖像格式為384
c++相關(guān)文章:c++教程
評論