1 引言
指紋識(shí)別技術(shù)通過分析指紋的局部特征,,從中抽取詳盡的特征點(diǎn),從而可靠地確認(rèn)個(gè)人身份,。指紋識(shí)別的優(yōu)點(diǎn)是指紋作為人體獨(dú)一無二的特征,,它的復(fù)雜度可以提供用于鑒別的足夠特征,具有極高的安全性,。相對(duì)于其他身份認(rèn)證技術(shù),,指紋識(shí)別是一種更為理想的身份認(rèn)證技術(shù),指紋識(shí)別不僅具有許多獨(dú)到的信息安全優(yōu)點(diǎn),,更重要的是具有很高的實(shí)用性,、可行性,已經(jīng)廣泛應(yīng)用于金融,、電子商務(wù)以及安全性能要求教高的行業(yè)中,。
目前多數(shù)指紋識(shí)別系統(tǒng)是將指紋圖象采集到計(jì)算機(jī)中,利用計(jì)算機(jī)進(jìn)行識(shí)別,。國(guó)外一些公司生產(chǎn)的獨(dú)立指紋識(shí)別系統(tǒng),,價(jià)格比較高昂。這些都限制了指紋識(shí)別技術(shù)的普及,。因此,,研究開發(fā)快速、識(shí)別率高,、廉價(jià)的獨(dú)立指紋識(shí)別系統(tǒng)具有很大的市場(chǎng)前景和重要的科學(xué)研究?jī)r(jià)值,。
本文提出了一種新型基于DSP的指紋識(shí)別系統(tǒng),,硬件上利用DSP的高速處理能力,構(gòu)建高速的數(shù)據(jù)處理平臺(tái),,軟件上參考DSP和硬件邏輯的處理特點(diǎn),,對(duì)傳統(tǒng)的指紋算法進(jìn)行改進(jìn),滿足實(shí)時(shí)性和可靠性要求,。
2 硬件系統(tǒng)結(jié)構(gòu)
系統(tǒng)的原理框圖如圖(1)所示:
圖(1)系統(tǒng)結(jié)構(gòu)框圖
本系統(tǒng)整體上可以分為圖像采集模塊、圖像處理及識(shí)別模塊以及輸出模塊三部分組成,。
2.1 圖像采集模塊
圖像采集模塊中,,由于指紋識(shí)別系統(tǒng)中并不需要實(shí)時(shí)觀察圖像,所以對(duì)傳感器要求不是很高,,一般的黑白數(shù)字CMOS傳感器都能滿足要求,。本系統(tǒng)中采用了一款300萬象素的高清晰度黑白傳感器作為圖像獲取器件,非常適合作為指紋圖像傳感器使用,。主要考慮到CMOS器件成本低,、分辨率高、可靠性好的優(yōu)點(diǎn),。缺點(diǎn)為當(dāng)手指汗液多或干裂時(shí)成像質(zhì)量可能變差,。在圖像識(shí)別過程中,采用了基于GABOR的增強(qiáng)算法,,基本上可以克服由此造成的影響,。
2.2 圖像處理及識(shí)別模塊
圖像處理及識(shí)別模塊的結(jié)構(gòu)關(guān)系到系統(tǒng)的性能的總體水平,采用FPGA+DSP的體系結(jié)構(gòu)有利于構(gòu)建高效的數(shù)據(jù)處理流程和方便處理任務(wù)的分配,,提高系統(tǒng)的并行程度和資源利用率,。系統(tǒng)中的SRAM、SDRAM,、FLASH直接連到DSP上供其使用:FLASH用于存放程序和一些固定的表格數(shù)據(jù),;SDRAM作為DSP的系統(tǒng)內(nèi)存,用于系統(tǒng)程序的運(yùn)行,;SRAM是高速的數(shù)據(jù)存儲(chǔ)區(qū),,用于存放程序運(yùn)行是產(chǎn)生的臨時(shí)變量。而DDR SDRAM是專門用于存放采集到的指紋數(shù)據(jù)以及預(yù)處理過程中計(jì)算得到的象素點(diǎn)梯度數(shù)據(jù)等一些大容量的數(shù)據(jù)塊,,直接連接到FPGA,,是系統(tǒng)中最高速的內(nèi)存區(qū)域。FPGA除了作為DSP處理器的擴(kuò)展總線接口外,,還分擔(dān)了部分?jǐn)?shù)據(jù)處理任務(wù),,因?yàn)閮H僅靠一塊DSP是不能勝任所有的運(yùn)算和控制任務(wù)的,指紋數(shù)據(jù)處理時(shí),,經(jīng)常會(huì)遇到一些繁瑣的加減運(yùn)算和比邏輯運(yùn)算,,通常這部分都是由FPGA代為處理的,,考慮到指紋處理算法的特殊性,同時(shí)還要兼顧實(shí)現(xiàn)DDR控制功能,。
由于指紋識(shí)別過程中數(shù)學(xué)運(yùn)算量大,,因此程序設(shè)計(jì)不可避免的需要較大的存儲(chǔ)空間,為了提高整體性能,,需要把繁重的運(yùn)算任務(wù)交給DSP處理,,而圖像采集部分則要盡可能少的占用DSP時(shí)間。另外,,利用圖像采集的間隙,,或是圖像采集的同時(shí),由硬件完成一部分簡(jiǎn)單而繁瑣的運(yùn)算可以分擔(dān)DSP的處理任務(wù),,提高處理的并行度,,滿足對(duì)實(shí)時(shí)性的要求。本系統(tǒng)采用了TMS320VC5402,,其運(yùn)算速度快,,并且具有很高的性價(jià)比。系統(tǒng)中采集到的8bits灰度指紋圖像,,每個(gè)像素占用一個(gè)字節(jié),,圖像尺寸為512×512個(gè)像素大小,存儲(chǔ)一幀圖像需要256k字節(jié)存貯空間,。DSP單元是整個(gè)指紋處理系統(tǒng)的核心,,負(fù)責(zé)對(duì)指紋進(jìn)行實(shí)時(shí)處理。
2.3 輸出模塊
作為獨(dú)立的指紋識(shí)別系統(tǒng),,經(jīng)過系統(tǒng)識(shí)別的數(shù)據(jù)可以通過LCD直接顯示出來,。系統(tǒng)在設(shè)計(jì)時(shí),也可以將系統(tǒng)作為終端使用,,即通過FPGA擴(kuò)展出以太網(wǎng)接口,,作為需要通過網(wǎng)絡(luò)傳送指紋庫(kù)數(shù)據(jù)的大型指紋識(shí)別系統(tǒng)終端。
3 指紋識(shí)別算法
指紋識(shí)別算法是指紋識(shí)別的核心,,本系統(tǒng)中采用的指紋識(shí)別算法流程如圖(2)所示,。
圖(2)指紋識(shí)別算法流程
圖像增強(qiáng)是指紋圖像預(yù)處理需要解決的核心問題,指紋圖像增強(qiáng)的主要目的是為了消除噪聲,,改善圖像質(zhì)量,,便于特征提取。由于指紋紋理由相間的脊線和谷線組成,。這些紋理蘊(yùn)涵了大量的信息,,如紋理方向、紋理密度等等,。在指紋圖像的不同區(qū)域,,這樣的信息是不同的,。指紋圖像增強(qiáng)算法就是利用圖像信息的區(qū)域性差異來實(shí)現(xiàn)的。傳統(tǒng)的指紋圖像增強(qiáng)就是利用圖像的紋理方向信息,,構(gòu)造方向?yàn)V波器模板來實(shí)現(xiàn)濾波的,。濾波器構(gòu)造的簡(jiǎn)單性和指紋圖像復(fù)雜性的矛盾限制了其作用的有效性。本系統(tǒng)中采用的是參考了指紋圖像紋理頻率信息,,并且以GABOR變換這個(gè)能夠同時(shí)對(duì)圖像局部結(jié)構(gòu)的方向和空域頻率進(jìn)行解析的最優(yōu)濾波器作為濾波器的模板,,因而極大的改善了增強(qiáng)算法的效果。
3.1 脊線方向
除奇異區(qū)外,,指紋圖像在一個(gè)足夠小的區(qū)域內(nèi),,紋理近似于相互平行的直線,這就是指紋圖像的方向性特征,。方向性特征是指紋圖像中最為明顯的特征之一,它以簡(jiǎn)化的形式直觀的反映指紋圖像的基本形態(tài)特征,,因而被廣泛應(yīng)用于指紋圖像的分類,、增強(qiáng)、特征提取等方面,。
提取脊線方向方法為:
⑴ 將指紋圖像分割成足夠小的子塊,,以滿足塊中紋理近似平行的條件。
3.2 脊線頻率
指紋紋理除了具有穩(wěn)定的方向性特征外,,還具有穩(wěn)定的頻率性特點(diǎn),。在指紋圖像的一個(gè)局部區(qū)域內(nèi),脊線和谷線的紋理走向平行,,同時(shí)沿脊谷方向的灰度分布近似于正弦包絡(luò),。
脊線頻率被定義為兩條脊線之間間距的倒數(shù)。通過定位該包絡(luò)中極大,、極小值點(diǎn),,就能得到相應(yīng)的脊線間距和谷線間距,進(jìn)而計(jì)算出脊線頻率,。
3.3 GABOR濾波器
GABOR變換由于具有最佳時(shí)域和頻域連接分辨率的特點(diǎn),,能夠同時(shí)對(duì)圖像局部結(jié)構(gòu)的方向和空域頻率進(jìn)行解析,可以很好地兼顧指紋圖像的脊線方向和脊線頻率信息,。
本系統(tǒng)中采用GABOR濾波器函數(shù)的實(shí)部作為模板,,以與子塊紋線方向垂直的方向作為濾波器方向,以脊線頻率作為濾波器頻率來構(gòu)建濾波器,。濾波過程如下式所示:
其中,, 為原始圖像灰度, 是GABOR濾波后的圖像灰度,,W為濾波器模板大小,,S為模板系數(shù)和,, 為子塊的域方向值。需要注意的是GABOR濾波器中的 與指紋文理方向垂直,。對(duì) 和 的取值需要進(jìn)行折衷,,取值越大,則濾波器的抗噪性能越好,,但也容易聲成假的脊線,。這里取 和 。
3.4 指紋匹配
本系統(tǒng)中指紋匹配采用基于特征點(diǎn)集合匹配的校準(zhǔn)算法,,該算法多為簡(jiǎn)單的比較邏輯和加減運(yùn)算,,不需要用到DSP處理單元。
4 系統(tǒng)處理流程
整個(gè)系統(tǒng)的處理的過程分為四個(gè)步驟:
⑴ 從圖像傳感器輸出的指紋圖像首先送到FPGA緩沖,,同時(shí)運(yùn)用設(shè)計(jì)好的預(yù)處理模塊對(duì)數(shù)據(jù)進(jìn)行處理,,得到各像素點(diǎn)的梯度值以及子塊中極大值點(diǎn)的坐標(biāo),所有這些數(shù)據(jù)連同原始數(shù)據(jù)以突發(fā)模式存入DDR SDRAM中,;
⑵ DSP通過FPGA從DDR SDRAM中讀取所有相關(guān)數(shù)據(jù),,計(jì)算出脊線方向和脊線頻率,然后利用GABOR對(duì)原始數(shù)據(jù)進(jìn)行濾波,,處理后的圖像數(shù)據(jù)再通過FPGA存入DDR SDRAM中,,因此在DDR SDRAM的輸入輸出端都需要進(jìn)行緩沖;
⑶ 根據(jù)DSP處理的指令要求,,從DDR SDRAM中讀出濾波后的數(shù)據(jù),,由FPGA內(nèi)部的比較邏輯提取出指紋圖像中每行(每列)中的極大值點(diǎn),送到DSP進(jìn)行進(jìn)一步處理,,完成指紋圖像脊線提?。?/p>
⑷ 由DSP完成匹配識(shí)別算法,,并輸出處理結(jié)果,。
5 結(jié)論
以上設(shè)計(jì)方案綜合考慮了各方面因素,兼顧了DSP處理器和FPGA協(xié)處理器的性能狀況和資源需求來分配任務(wù),,而且在數(shù)據(jù)采集的同時(shí)完成了指紋方向和頻率提取的部分運(yùn)算,,減少了內(nèi)存操作的次數(shù),采用的根據(jù)系統(tǒng)特點(diǎn)優(yōu)化的基于GABOR的增強(qiáng)算法,,提高了系統(tǒng)的實(shí)時(shí)性,,滿
足應(yīng)用要求。
參考文獻(xiàn):
[1] Texas Instruments Incorporate TMS320C54XUser’s Guide [Z] 2002.
[2] 羅西平,,田捷.自動(dòng)指紋識(shí)別中圖像增強(qiáng)和匹配算法[J].軟件學(xué)報(bào),,2002,13(5):946~956.
[3] Lin Hong ,,Yifei Wan,,Anil Jain. Fingerprint Image Enhancement : Algorithm and Performance Evaluation [J]. IEEE Transaction on Pattern Analysis and Machine Intelligence,1998,8(20):777~789.
[4] 吳建明,,施鵬飛.一種基于方向場(chǎng)和細(xì)節(jié)特征匹配的指紋識(shí)別方法[J].計(jì)算機(jī)工程與應(yīng)用,2003,,(2):91~93.