引言
在信息安全領域,,身份識別的需求越來越突出,,生物特征作為身份識別依據越來越受到重視。聲音,、指紋,、人臉、虹膜等生物特征已經逐漸應用于銀行,、國家保密機關,、網上交易等領域。靜脈識別是近年來新興的一種生物識別方法,,是一種具有獨特優(yōu)勢的非接觸式的識別技術,具有廣泛的市場前景,。
人體靜脈識別具有如下的優(yōu)點:
?、焙軓姷钠毡樾院臀ㄒ恍訹1];⒉血管位于體表內部,采用非接觸性的認證方式,,不會使人產生抵觸情緒,,采集過程十分友好;⒊很好的穩(wěn)定性,不易收污染和輕傷等情況影響;⒋由于是身體內部的血管特征,,很難偽造;⒌由于靜脈的穩(wěn)定性和捕捉影像的清晰性,,設備成本低。
因此靜脈識別在身份鑒別領域中越來越受青睞,。在部分國家,,靜脈識別技術已經進入了實用領域。在我國,,雖然靜脈識別技術的研究已經起步,,但市場上幾乎沒有擁有自主知識產權的實用產品,靜脈識別技術必將是以后身份鑒別技術的熱點,,擁有更廣闊的市場和發(fā)展空間,。手部的靜脈識別主要有:指靜脈,手掌靜脈和手背靜脈,,由于指靜脈信息量過少,,手掌靜脈采集難度大,易受掌紋影響,,故選擇合適的手背靜脈作為識別生物特征對象,,進而來開發(fā)系統。
本套手背靜脈身份驗證系統(VAS)作品,,較好解決了圖像采集,、圖像處理,、特征提取與匹配等方面的難題,并在基于NetFPGA的嵌入式開發(fā)板上,,實現了靈活友好的人機交互界面,。創(chuàng)新點在于:安全、魯棒的認證方式;算法硬件化,,流水線工作方式;軟硬件并行協同設計;系統多功能,,具有擴展性。
系統方案
實現原理
手背靜脈身份認證系統的基本原理是根據血液中的血紅素有吸收近紅外線光的特質,,使用專用的裝置采集手背靜脈圖樣,。然后通過濾波、圖像二值化,、細化等手段處理,,即可提取到數字圖像特征。在認證匹配時,,實時采集手背靜脈圖,,先進行圖像預處理,提取特征值,,同存儲注冊的靜脈特征值比對,,采用優(yōu)化的匹配算法對靜脈特征進行匹配,從而對個人進行身份認證,。系統采用非接觸式采集,,具有采集友好、難以偽造,、穩(wěn)定性高等優(yōu)勢,。
系統硬件結構
嵌入式系統模塊
本系統放棄了NetFPGA系統的傳統配置方案,采用以Virtex II Pro上集成的硬核控制器PowerPC為核心,,在Virtex II Pro上配置和開發(fā)了相應的IP核來控制相應的硬件,,主要IP核包括UART、SPI,、IIC串行通信IP核,,MPMC存儲控制器IP核,VGA顯示IP核,,視頻輸入采集IP核等,。主控制硬核PowerPC與各功能IP核之間采用PLB46總線相連。同時利用Spartan II實現了相應的I/O口擴展,。改造后的NetFPGA系統的結構圖如圖2所示,。
算法的硬件實現
系統圖像處理需要大量的緩存,同時需要頻繁的訪問和操作數據,。通常的嵌入式系統存儲單元不是很多,,較低的系統工作頻率也制約了圖像處理的速度,。對FPGA來說,若只用它的硬核PowerPC做軟件開發(fā)效果肯定不佳,,故通過將算法硬件化來達到所需要的系統性能,。
1. 流水線處理
流水線處理是高速設計中的一個常用手段。如果某個設計的處理流程分為若干步驟且數據處理都是單流向的,,前一個步的輸出作為下一個步的輸入;那么就可以采用流水線設計方法提高系統的工作效率,。對于我們的圖像處理算法來說,存在很多同一條指令連續(xù)處理很長一段數據的情況,,此時提高吞吐率就顯得非常有意義,。另外,主處理芯片Virtex-II Pro的邏輯門資源相對富裕,,對流水線的實現規(guī)模約束很小,。圖像的預處理不存在迭代式的反饋回路,使得單元結構更加規(guī)則,,也非常適合通過Virtex-II Pro實現[2],。
圖像預處理過程分為濾波、閾值分割,、開操作、閉操作這四個步驟,。開始處理時,,預處理流水線每個時鐘周期讀入一個像素數據,流水線填滿后,,每個時鐘周期內,,預處理流水線再輸出一個處理完的像素數據,各個模塊間連接,,無需緩存,。其中開操作由一次腐蝕和一次膨脹構成,閉操作由一次腐蝕和一次膨脹實現,。圖3以膨脹運算為例說明了流水線處理過程,。
以圖像膨脹流水線模塊為例說明:像素數據流進入模塊后,先進入三行緩沖器,,每行緩沖器輸出接到一個三像素緩沖器,,相當于把圖像信息送入了鄰域。這樣就可以在每一個時鐘周期都進行一次或操作,,得到一個像素點的新數據,,完成了膨脹算法。其他模塊與之類似,,在此不再贅述[3-4],。
2. 軟硬協同處理[5]
圖像匹配是一項運算量大且耗時的工作,。采用軟硬協同處理的設計策略,利用硬件模塊完成大部分運算,,軟件負責控制和調度,,系統效率大為提升。匹配算法需要進行多次迭代運算(主要針對于平移和旋轉),,不適合流水線處理,。匹配過程中需要讀取返回值進行控制(如控制模板平移的位置,對每次匹配的結果做比較等),,由PowerPC軟件程序完成,。在硬件系統中,BRAM資源非常有限,,不可能同時用很大的內存空間做點集匹配,。我們采用BRAM的空間并行化方法。通過改變BRAM的地址來讀取的圖像信息就可達到平移圖像的目的,。匹配算法的軟硬協同實現框架如圖4所示:
系統測試方案及測試結果
匹配認證結果測試
測試方法:對該系統做多樣本的綜合輸入測試,,計算拒識率、誤識率,,建立樣本庫為50的數據庫,,反復測試并記錄結果。
錯誤輸入1:使用沒有注冊的手,,用正確的方式(位移+3mm,,角度+5度,上下+10度以內)如表1,。
錯誤輸入2:使用已經注冊的手,,用錯誤的方式(平移,,旋轉隨機)如表2,。
正確輸入:使用已經注冊的手,,用正確的方式(位移+3mm,角度+5度,,上下+10度以內)如表3,。
出現拒識現象,主要是因為輸入物體的錯誤或是系統使用時,,忽視固定裝置,,隨意擺放造成的。因此,,當正確擺放手時,,系統有極高的匹配率。
系統優(yōu)化性能測試
程序中可優(yōu)化的算法模塊包括:高斯濾波,局部閾值二值化,,形態(tài)學操作,,細化去刺,特征匹配5個部分,。本次測試分別把這些算法運行環(huán)境設為:PC機(Linux下的C)和 FPGA上的軟硬件協同,。
在程序中添加計數器函數對程序運行時間進行精確計數,對比結果如表4,。由表4分析可得,,在時鐘頻率為125MHz的FPGA上實現的性能幾乎等同于2.0GHz的PC機,而效率為PC機的16倍,,并有進一步優(yōu)化的潛力,。
小結
通過對NetFPGA平臺的改造和擴展,增加了多路模擬視頻輸入,、VGA視頻輸出,、基于SPI總線的SD卡擴展、RS232串行總線等外部I/O接口,,將NetFPGA應用于視頻處理和嵌入式開發(fā),,實現了手背靜脈身份認證。