1 引 言
小目標檢測系統的任務是根據探測器獲取的圖像序列實時地把小目標從噪聲中檢測出來,它的實現是目標識別跟蹤的前提和基礎。小目標檢測需要對探測到的圖像進行實時處理,運算量巨大。另外,特殊的應用環境又對小目標檢測系統在低功耗、輕小型化等方面提出了更高的要求。因此,完成小目標檢測任務不僅需要尋求合理的小目標檢測算法,在實現時還需要考慮處理性能和體積功耗。
2 DPA算法簡介
探測器與目標較遠時,目標在紅外圖像上的成像面積很小,一般不超過探測器像元的大小,因此表現為小目標,而且圖像信噪比很低。低信噪比條件下的小目標檢測,首先要解決的是目標能量積累的問題?;趧討B規劃的能量累加算法(DPA算法)可以對小目標進行有效的能量積累。如圖1所示,DPA算法主要包括三個部分: ①基于動態規劃的小目標能量累加; ②門限分割; ③基于軌跡關聯與置信度檢驗的目標軌跡處理,下面對這三部分進行簡單介紹。
?
圖1 小目標檢測算法結構圖
基于動態規劃(DP)的能量累加算法是一種典型的先跟蹤后檢測算法。在多幀圖像序列中首先估計目標的運動軌跡,沿軌跡進行目標能量積累,然后對能量積累后獲得的圖像進行檢測判決。由于目標能量在不同幀之間是相關的,而噪聲在不同幀之間是不相關的,因此沿目標軌跡上的能量積累將大于非目標軌跡上的能量積累,能量積累后的圖像有效提高了信噪比,從而獲得較好的檢測性能。
經過動態規劃能量累加后的圖像為灰度累加和圖像,此時目標點的能量遠大于噪聲,因此可以根據某一準則確定分割門限,剔除絕大部分噪聲軌跡點,獲得候選目標點集,進而完成目標檢測。
經過目標能量累加和恒虛警門限分割后,得到候選目標集。從這些候選目標集中找到真實目標的軌跡,共需要四部分的工作:新軌跡的建立、軌跡關聯匹配、目標軌跡狀態預測、滑動軌跡置信度檢驗。
3 系統實現
根據前面對小目標檢測算法的特點分析,動態小目標能量累加算法操作簡單,運算量大,處理時間要求嚴格,適合用硬件實現;而軌跡關聯算法操作復雜,但處理的數據量小、時間相對寬裕,適合用軟件來實現。在綜合考慮了系統的體積、功耗、穩定性等因素后,最終選取了SOPC的實現方案,將整個系統集成于一塊核心芯片———Virtex - 4 FPGA上。能量累加由構建于FPGA內部的專用硬件子系統來完成;軌跡關聯部分則由Virtex - 4 FPGA內嵌的PowerPC405處理器來完成。
小目標檢測系統總體結構如圖2所示。
?
圖2 小目標檢測系統總體結構圖
3. 1 專用硬件子系統設計
專用硬件子系統主要由6個模塊組成:能量累加模塊、累加值統計模塊、存儲器接口模塊、PPC接口模塊, F IFO模塊、計數模塊。如圖3所示。
?
圖3 專用硬件子系統結構框圖
·能量累加模塊:完成能量累加;·存儲器接口模塊:完成與外部存儲器的接口工作,控制外部存儲器讀出與存儲中間累加結果;·累加值統計模塊:對能量累加后的中間累加值進行統計,計算灰度累加和以及灰度平方和,然后根據PowerPC微處理器傳輸的門限,對圖像進行門限分割,對于超過門限的像素點,把該點的位置信息寫到ZBT SRAM的相應地址空間;·PPC接口模塊:完成FPGA 與PowerPC微處理器之間的接口工作。在系統運行之初,把PowerPC微處理器系統發出的控制命令信號以及PowerPC微處理器系統計算好的分割門限值寫到專用硬件子系統相應的寄存器里,在圖像分割好后,給PowerPC微處理器發中斷,然后PowerPC會以中斷響應的方式把ZBT SRAM中的候選點位置信息讀到PowerPC微處理器系統的DDR SDRAM中;·FIFO模塊:能量累加模塊輸出的灰度累加結果經過一個行FIFO 后寫到ZBT SRAM里,更新第N - 1幀累加數據為第N幀累加數據;·計數模塊:接收外部的幀同步信號( Fsyn) 、數據時鐘(Dclk)信號,對其進行計數,從而產生控制所有其它模塊的控制信號。
3. 2 微處理器子系統設計
PowerPC微處理器子系統以PowerPC微處理器硬核為核心,通過處理器局部總線( PLB)與片內塊RAM連接,進行高速數據傳輸;通過OPB總線與外圍慢速設備進行交互,外設通過相應的外設接口IP控制器與總線互連。根據系統設計需求,需要用到的外設接口IP主要有: GPIO控制器(用于外部中斷信號輸入、控制命令輸出以及單個數據的傳輸)、EMC接口控制器(訪問外部ZBT SRAM)、DDR SDRAM控制器(控制DDR SDRAM)、UART控制器(與上位機通信,便于調試和產生按鍵輸入中斷控制系統功能)、Timer定時器/計數器(對軌跡關聯及門限值求取的處理時間進行監控)、INTR中斷控制器(多中斷輸入管理)等。系統組成如圖4所示。
?
圖4 PowerPC微處理器系統框圖
4 PowerPC微處理器子系統調試及分析
為了驗證開發的應用程序是否能實時實現軌跡關聯,在應用程序中設計一個生成候選點的圖像程序塊, 生成好這些處理對象, 然后利用計時器( timer) ,監視處理完每一幀圖像消耗的時間,同時把PowerPC微處理器子系統檢測到的軌跡信息以及消耗的時間輸出在超級終端,以檢查PowerPC微處理器子系統的工作情況。
本次調試中,設計的每幀候選點圖像中都只包含兩個目標點,而且都按Vx = 1,Vy = 1的速率作勻速直線運動。圖5給出一組軌跡關聯測試結果。通過數據分析可知,系統處理一條軌跡長度超過15的軌跡平均耗時也不會超過0. 04ms。對于100幀/秒的輸入圖像數據,經過5幀一階段的能量累加過后,得到的候選點圖像幀頻為20幀/秒。假設一幀候選點圖像包含300個候選點,則可以設置軌跡關聯最大預設軌跡數為1000,那么, 1000條軌跡的關聯處理不會超過40ms,還在候選點圖像幀周期之內。所以PowerPC完全能夠實時完成軌跡關聯任務。
?
圖5 軌跡關聯測試結果圖
5 結 論
經調試驗證, 本設計達到了預期效果?;赑owerPC的小目標檢測系統能夠實時實現小目標檢測,而且硬件資源的余量以及處理器處理能力的潛力都為系統改進和升級提供了可能。
評論
查看更多