SoPC自動指紋識別系統設計
摘 要: 設計了一種基于SoPC的新型結構的自動指紋識別系統。指紋識別系統是一個典型的模式識別系統,包括指紋圖像獲取、處理、特征提取和比對等模塊。通過專門的指紋采集儀可以采集活體指紋圖像。目前,指紋采集儀主要有活體光學式、電容式和壓感式。對于分辨率和采集面積等技術指標,公安行業已經形成了國際和國內標準,但其他還缺少統一標準。根據采集指紋面積大體可以分為滾動捺印指紋和平面捺印指紋,公安行業普遍采用滾動捺印指紋。另外,也可以通過掃描儀、數字相機等獲取指紋圖像。
本文引用地址:http://www.j9360.com/article/161621.htm目前,基于FPGA的自動指紋識別系統主要有純硬件方式實現和在以Nios II為CPU的軟核中實現[2-4]兩種方式。以純硬件方式實現雖然速度較快,但由于指紋處理算法比較復雜,實現困難,同時算法精度差,設計周期長;而以下載到FPGA的軟核Nios II為控制模塊,具有靈活的設計方式,并具備軟硬件在系統可編程的功能,較大程度上提高了系統速度,但是該方案中軟硬件處理交替進行,涉及到軟硬件之間頻繁的指紋數據傳輸,限制了系統的速度,同時增加了系統的復雜度。
本文提出了一種基于SoPC的新型結構的自動指紋識別設計方案。具有以下特點:
(1)根據對指紋識別算法的分析和優化,在軟、硬件結合的基礎上將軟件設計和硬件設計分開,把指紋識別系統中耗時較大的圖像預處理部分用硬件來實現,而耗時較少的特征提取、匹配和操作控制等部分則在NiosⅡ軟核中實現。從而使得系統結構明晰,處理性能得到提升。
(2)用一塊SRAM作指紋處理中間數據的緩存。指紋圖像前期處理以硬件實現,中間數據緩存于SRAM中;指紋圖像后期處理軟件從SRAM中將所有數據讀入NiosⅡ的數據存儲器。這樣的存儲設計使得軟件處理和硬件處理之間不涉及大量的數據流傳輸,使軟硬件數據接口簡單,數據流的控制更加簡單易行,同時避免了頻繁的軟硬件數據傳輸帶來的時間消耗。
(3)在軟硬件處理結合的基礎上使指紋處理時間大大降低,1.5 s內可以完成一幅指紋圖像的預處理,3 s內可以完成一幅指紋圖像的比對。
1 設計思路
1.1 指紋系統結構
在的計算機應用中,包括許多非常機密的文件保護,大都使用用戶ID+密碼的方法來進行用戶的身份認證和訪問控制。但是,如果一旦密碼忘記,或被別人竊取,計算機系統以及文件的安全問題就受到了威脅。
從整個指紋處理系統的角度來考慮,根據各算法處理特性仔細地劃分系統子模塊。通過對指紋處理算法的分析發現,指紋的預處理部分使用到多次數據循環運算,運算量較大而且單一,使用硬件實現明顯降低時間消耗,所以選擇對指紋的預處理部分實行整體硬件化;對于指紋匹配部分,運算量相對較少但算法復雜多樣,使用軟件算法相對比較簡單而且可以達到很高的精度,所以使用Nios II軟件算法來實現。選擇預處理部分整體硬件化,匹配部分整體軟件化的另外一個好處是軟硬件處理不需要進行頻繁的數據交換傳輸,節省時間的同時降低了系統的復雜度。
評論