基于FPGA的灰度形態(tài)學濾波器實現
3 仿真設計及注意事項
本設計在ModelSim SE 5.6e軟件平臺下仿真。輸入圖像大小為256×256,仿真需要的數據量相當大,而且還要求各輸入數據的時序一致,仿真測試文件中數據輸入采用讀文件的方法無法保證數據輸入的時序同步。同樣,濾波輸出的數據量也非常大,直接看波形顯然行不通。因此本設計先在C++ Builder環(huán)境下將圖像文件中的灰度數據轉換為測試向量,然后拷貝到仿真測試文件中。雖然測試文件相當大,但可以保證圖像灰度值同步輸入。對于仿真結果輸出,采用寫文件的方法,將形態(tài)學濾波的輸出寫入到文件中。通過計算機比較仿真輸出文件和同一幅圖像在C++ Builder環(huán)境下生成的濾波結果文件是否有差異,即可判斷功能仿真的正確性。時序仿真時數據輸出的時間也要保存到仿真結果文件中。
設計時要注意以下問題:
(1)濾波器要求嚴格的時序關系,宜采用同步設計。
(2)實際使用時圖像是連續(xù)輸入的,需要用場信號將濾波器復位。
(3)行延遲FIFO宜采用XC2S400E片內的Block RAM生成。
(4)對于256×256的輸入圖像和3×3的結構元,理論上的有效結果圖像大小是254×254。在實際使用中,對于不同大小的結構元,濾波結果輸出會滯后幾個行周期,在圖像輸入完以后,象素時鐘信號也會撤銷,而此時形態(tài)學濾波還沒有結束,所以輸出的圖像大小比理論值還要小。不過沒有輸出的濾波結果數據絕大部分都是無效數據,只有幾個象素是有效的。如果需要得到未能輸出的幾個有效數據,可以在一幀圖像輸入結束之后再人為地加入幾個時鐘脈沖。
(5)為了方便下一級處理單元接收濾波數據,輸出圖像的大小也應設為256×256,相應的地址生成器也應設為256×256,同時需要將無效數據設置為某個定值。
4 結束語
根據實際應用要求,本文設計了3×3結構元素的形態(tài)學開操作濾波器,將其簡化后設計了相應的硬件原理框圖,并在XC2S400E上實現。該設計已經成功地應用到實際中。在本文設計的開操作濾波器基礎上,通過簡單地改變結構元素或改變?yōu)V波子模塊次序,即可得到其他性能的形態(tài)學濾波器。同時FPGA器件的可編程特性,可以方便地對電路進行改進,以進一步提高電路的性能。
參考文獻
1 劉志敏,楊杰.基于數學形態(tài)學的圖像形態(tài)濾波.紅外與激光工程,1999;28(4)
2 杜崢,張桂林,王超.紅外弱小目標預處理及檢測方法研究.計算機與數字工程,2003;31(4)
3 Singh B,Siddiqi M U.A Simplified Algorithm for Approximate Separable Decomposition of Morphological Templates.Pattern Recognition,1996;29(9)
4 Shih F Y,Mitchell O R.Decomposition of Grey-Scale Morphological Structuring Elements.Pattern Recognition,1995;24(3)
5 Robin F,Renaudin M,Privat G et al.Functionally Asynchronous Array Processor for Morphological Filtering of Greyscale Images.IEEE Proceedings:Computers and Digital Techniques,1996;143(5)
評論