指紋識別的DSP實現(xiàn)方案
指紋紋理除了具有穩(wěn)定的方向性特征外,還具有穩(wěn)定的頻率性特點。在指紋圖像的一個局部區(qū)域內(nèi),脊線和谷線的紋理走向平行,同時沿脊谷方向的灰度分布近似于正弦包絡。
脊線頻率被定義為兩條脊線之間間距的倒數(shù)。通過定位該包絡中極大、極小值點,就能得到相應的脊線間距和谷線間距,進而計算出脊線頻率。
3.3 GABOR濾波器
GABOR變換由于具有最佳時域和頻域連接分辨率的特點,能夠同時對圖像局部結(jié)構(gòu)的方向和空域頻率進行解析,可以很好地兼顧指紋圖像的脊線方向和脊線頻率信息。
本系統(tǒng)中采用GABOR濾波器函數(shù)的實部作為模板,以與子塊紋線方向垂直的方向作為濾波器方向,以脊線頻率作為濾波器頻率來構(gòu)建濾波器。濾波過程如下式所示:
其中, 為原始圖像灰度, 是GABOR濾波后的圖像灰度,W為濾波器模板大小,S為模板系數(shù)和,為子塊的域方向值。需要注意的是GABOR濾波器中的 與指紋文理方向垂直。對 和的取值需要進行折衷,取值越大,則濾波器的抗噪性能越好,但也容易聲成假的脊線。這里取 和 。
3.4 指紋匹配
本系統(tǒng)中指紋匹配采用基于特征點集合匹配的校準算法,該算法多為簡單的比較邏輯和加減運算,不需要用到DSP處理單元。
4 系統(tǒng)處理流程
整個系統(tǒng)的處理的過程分為四個步驟:
?⑴ 從圖像傳感器輸出的指紋圖像首先送到FPGA緩沖,同時運用設計好的預處理模塊對數(shù)據(jù)進行處理,得到各像素點的梯度值以及子塊中極大值點的坐標,所有這些數(shù)據(jù)連同原始數(shù)據(jù)以突發(fā)模式存入DDR SDRAM中;
?、?DSP通過FPGA從DDR SDRAM中讀取所有相關數(shù)據(jù),計算出脊線方向和脊線頻率,然后利用GABOR對原始數(shù)據(jù)進行濾波,處理后的圖像數(shù)據(jù)再通過FPGA存入DDR SDRAM中,因此在DDR SDRAM的輸入輸出端都需要進行緩沖;
?、?根據(jù)DSP處理的指令要求,從DDR SDRAM中讀出濾波后的數(shù)據(jù),由FPGA內(nèi)部的比較邏輯提取出指紋圖像中每行(每列)中的極大值點,送到DSP進行進一步處理,完成指紋圖像脊線提取;
⑷ 由DSP完成匹配識別算法,并輸出處理結(jié)果。
5 結(jié)論
以上設計方案綜合考慮了各方面因素,兼顧了DSP處理器和FPGA協(xié)處理器的性能狀況和資源需求來分配任務,而且在數(shù)據(jù)采集的同時完成了指紋方向和頻率提取的部分運算,減少了內(nèi)存操作的次數(shù),采用的根據(jù)系統(tǒng)特點優(yōu)化的基于GABOR的增強算法,提高了系統(tǒng)的實時性,滿足應用要求。
評論