1 引言
利用紅外成像傳感器實現實時目標成像跟蹤是精確制導武器的核心技術,圖像中目標的分割效果尤其是有效地使目標從背景中分離出來是保證系統穩定跟蹤的關鍵,Otsu分割算法因其簡單有效在實時目標成像跟蹤系統中得到了很廣泛的應用,用這種聚類準則分割圖象,當目標在圖象中占有適當的比例時,分割結果比較好。然而對小目標圖象卻不能把目標從背景中分割出來,經常會把很多背景錯分為目標,本文提出了利用改進的快速局部遞歸Otsu分割算法對圖象分割。并且依靠并行Nios II軟核和硬件邏輯結合的速度優勢對算法實時實現。
2 算法原理
Otsu方法(即大律方法)在獲得圖像灰度直方圖的條件下,利用概率論的知識,通過計算最大類間方差而得到分割門限.在較為理想的“雙峰”條件下,用Otsu準則能夠得到較好的分割效果。Otsu算法步驟如下:
在冷背景(如天空)下的紅外飛機圖像中,飛機目標的灰度級比較高,而且目標區域的面積往往要比背景區域的面積小一些,當兩者面積相差懸殊時,簡單的一次Otsu分割會錯誤地將部分背景劃分到目標區域Otsu,考慮到一次Otsu分割的結果圖像可以分為兩部分:背景區域和(含有部分背景的)目標區域.由于只對目標區域感興趣,把背景區域去掉并不會丟失目標信息.那么,可以對結果圖像的(含有部分背景的)目標區域進行Otsu分割得到新的結果圖像,接著,把新的結果圖像中背景區域去掉,若目標區域還包含有部分背景,則再對(含有部分背景的)目標區域進行Otsu分割,依次遞歸下去,直到得到比較理想的分割圖像為止.這種方法稱為Otsu局部遞歸分割方法。
對紅外圖像數據流處理時,由于Otsu局部遞歸分割算法需要對圖像進行多次迭代處理,而且對每場圖像分割需要的迭代次數不同,所以很難保證分割的實時性,為此我們提出了利用Otsu準則對圖象進行兩次局部遞歸分割。即在第一次Otsu方法分割之后,將分割得到的亮像素再次利用Otsu分割準則計算得到新的分割閾值。實驗表明,即使存在復雜的云層背景的情況下,經過兩次迭代分割后,目標也較好地被分割出來。
3 雙Nios II的實現方案
Nios II嵌入式處理器是Altera公司于2004年6月推出的第二代用于可編程邏輯器件的可配置的軟核處理器,性能超過100 DMIPS。NioslI是基于哈佛結構的RISC通用嵌入式處理器軟核,能與用戶邏輯相結合,編程至Altera的FPGA中。處理器具有32位指令集,32位數據通道和可配置的指令以及數據緩沖。它特別為可編程邏輯進行了優化設計,也為可編程單芯片系統(SOPC)設計了一套綜合解決方案。NioslI處理器系列包括三種內核:一種是高性能的內核(Nios II/f);一種是低成本內核(Nios II/e);一種是性能/成本折中的標準內核(Nios II/s),它是前兩種的平衡。本系統采用高性能內核。Nios II處理器支持256個具有同定或可變時鐘周期操作的定制指令;允許Nios II設計人員利用擴展CPU 指令集,通過提升那些對時間敏感的應用軟件的運行速度,來提高系統性能。
根據紅外焦平面成像特性,為了保證算法的實時性,采用雙Nios II軟核和硬件加速器協同設計的方式,在圖像場的間隙做實時Otsu局部遞歸分割處理。如圖 1 所示實現算法原理圖
圖 1 算法實現原理圖
局部遞歸區域提取單元將需要分割的紅外數據讀入FPGA內部雙端口RAM0,直方圖統計對數據統計直方圖,存放于雙端口RAM2,聚類統計單元分別對直方圖依次從高低兩個方向計算類內均值和概率,把累加結果存入三端口RAM0和RAM1中,聚類統計結束后,兩個Nios II并行對高低兩個方向的聚類統計結果進行類間方差計算并分別求最大值。取兩者最大為分割閾值,完成一次分割后,局部遞歸區域提取單元依據得到的閾值提取出目標區域存入雙端口RAM1中,接著按照第一次分割步驟完成快速局部0tsu遞歸分割算法。
實現算法的CPU互聯結構:
為了最大化的提高算法的處理速度,系統采用CPU并行工作方式。如圖 2 所示,兩個Nios II同時負責收發處理數據。當其中一個CPU執行完制定的任務后等待另一Nios II,當兩個Nios II任務全部完成后,Nios II0從MailBox中取出Nios II1的處理結果計算最終分割閾值,采用這種將數據塊分細處理結構,減少單個CPU處理的數據量,縮短了算法延遲。
考慮到算法需要進行循環的浮點數計算,采用Nios II的定制指令和VHDL編寫硬件算法加速器保證系統運行速度,如圖3 所示采用自定義浮點指令和軟件實現浮點運算性能對比。定制指令邏輯和Nios II的連接在SoPC Builder 中完成。Nios II CPU配置向導提供了一個可添加256條定制指令的圖形用戶界面,在該界面中導入設計文件,設置定制指令名,并分配定制指令所需的CPU時鐘周期數目。系統生成時,Nios II IDE為每條用戶指令產生一個在系統頭文件中定義的宏,可以在C或C++應用程序代碼中直接調用這個宏。圖4 Nios II軟件實現系統算法和自定義指令實現性能對比。
4 結束語
局部遞歸Otsu分割方法,通過遞歸計算對圖像中目標不斷的逼近,因此在復雜的背景下,對紅外圖像目標分割有很好的效果,但是由于算法迭代繁瑣很難實時實現,本文提出了一種基于雙Nios II嵌入式處理器的紅外圖像快速局部遞歸Otsu分割實時實現方法。通過在Altera的Stratix FPGA 中集成兩個l00 MHz軟核配合一定的硬件邏輯,大大減小了算法的處理時間,實現了算法的實時處理,實驗表明,該設計每秒可處理25幀320x240x8bits的紅外圖像。如圖 3 所示對系統對3公里外的坦克目標分割效果圖,(a)為原始圖像,圖像中心位置有一坦克目標,(b)圖像一次Otsu分割結果,由于背景比較復雜,坦克目標與背景沒有完全分割開,(c)經過本文快速局部遞歸Otsu分割后效果圖,圖中的坦克目標從背景中很好的分割出來。
責任編輯:gt
-
傳感器
+關注
關注
2551文章
51099瀏覽量
753606 -
處理器
+關注
關注
68文章
19286瀏覽量
229853 -
可編程
+關注
關注
2文章
862瀏覽量
39825
發布評論請先 登錄
相關推薦
評論