基于NETFPGA的手背靜脈身份認證系統(tǒng)
1. 流水線處理
本文引用地址:http://www.ex-cimer.com/article/119031.htm流水線處理是高速設計中的一個常用手段。如果某個設計的處理流程分為若干步驟且數(shù)據(jù)處理都是單流向的,前一個步的輸出作為下一個步的輸入;那么就可以采用流水線設計方法提高系統(tǒng)的工作效率。對于我們的圖像處理算法來說,存在很多同一條指令連續(xù)處理很長一段數(shù)據(jù)的情況,此時提高吞吐率就顯得非常有意義。另外,主處理芯片Virtex-II Pro的邏輯門資源相對富裕,對流水線的實現(xiàn)規(guī)模約束很小。圖像的預處理不存在迭代式的反饋回路,使得單元結構更加規(guī)則,也非常適合通過Virtex-II Pro實現(xiàn)[2]。
圖像預處理過程分為濾波、閾值分割、開操作、閉操作這四個步驟。開始處理時,預處理流水線每個時鐘周期讀入一個像素數(shù)據(jù),流水線填滿后,每個時鐘周期內,預處理流水線再輸出一個處理完的像素數(shù)據(jù),各個模塊間連接,無需緩存。其中開操作由一次腐蝕和一次膨脹構成,閉操作由一次腐蝕和一次膨脹實現(xiàn)。圖3以膨脹運算為例說明了流水線處理過程。
以圖像膨脹流水線模塊為例說明:像素數(shù)據(jù)流進入模塊后,先進入三行緩沖器,每行緩沖器輸出接到一個三像素緩沖器,相當于把圖像信息送入了 鄰域。這樣就可以在每一個時鐘周期都進行一次或操作,得到一個像素點的新數(shù)據(jù),完成了膨脹算法。其他模塊與之類似,在此不再贅述[3-4]。
2. 軟硬協(xié)同處理[5]
圖像匹配是一項運算量大且耗時的工作。采用軟硬協(xié)同處理的設計策略,利用硬件模塊完成大部分運算,軟件負責控制和調度,系統(tǒng)效率大為提升。匹配算法需要進行多次迭代運算(主要針對于平移和旋轉),不適合流水線處理。匹配過程中需要讀取返回值進行控制(如控制模板平移的位置,對每次匹配的結果做比較等),由PowerPC軟件程序完成。在硬件系統(tǒng)中,BRAM資源非常有限,不可能同時用很大的內存空間做點集匹配。我們采用BRAM的空間并行化方法。通過改變BRAM的地址來讀取的圖像信息就可達到平移圖像的目的。匹配算法的軟硬協(xié)同實現(xiàn)框架如圖4所示:
系統(tǒng)測試方案及測試結果
匹配認證結果測試
測試方法:對該系統(tǒng)做多樣本的綜合輸入測試,計算拒識率、誤識率,建立樣本庫為50的數(shù)據(jù)庫,反復測試并記錄結果。
錯誤輸入1:使用沒有注冊的手,用正確的方式(位移+3mm,角度+5度,上下+10度以內)如表1。
錯誤輸入2:使用已經(jīng)注冊的手,用錯誤的方式(平移,旋轉隨機)如表2。
正確輸入:使用已經(jīng)注冊的手,用正確的方式(位移+3mm,角度+5度,上下+10度以內)如表3。
出現(xiàn)拒識現(xiàn)象,主要是因為輸入物體的錯誤或是系統(tǒng)使用時,忽視固定裝置,隨意擺放造成的。因此,當正確擺放手時,系統(tǒng)有極高的匹配率。
評論