郭 愷,陳祖爵,劉小強(qiáng)
(1 江蘇大學(xué) 計(jì)算機(jī)科學(xué)與通信工程學(xué)院,江蘇 鎮(zhèn)江 212013;2 江蘇超創(chuàng)信息軟件發(fā)展股份有限公司 江蘇 鎮(zhèn)江212013)
由于具有其持久性和唯一性,指紋被廣泛應(yīng)用在個(gè)人身份識(shí)別系統(tǒng)。指紋識(shí)別在全世界范圍內(nèi)的廣泛應(yīng)用,不僅為防范犯罪,同時(shí)也作為處理個(gè)人事務(wù)和信息安全的一個(gè)關(guān)鍵技術(shù)[1]。
在指紋識(shí)別技術(shù)領(lǐng)域,歐美國家在研究和開發(fā)中處于領(lǐng)先地位[2]。美國ZK Software在1992年就發(fā)布了ZKFinger 1.0 版,2008年發(fā)布了ZKTime7.0、ADMS解決方案、指紋鎖、集成具有美國聯(lián)邦政府推出的FIPS201認(rèn)證的Lumidign和Secugen指紋儀;法國Segam公司,是安全解決方案的市場領(lǐng)導(dǎo)者之一,有遍布5大洲超過85個(gè)分公司和分支機(jī)構(gòu),其生產(chǎn)的集成系統(tǒng)部署在100多個(gè)國家和地區(qū)。亞洲在指紋識(shí)別技術(shù)上較為先進(jìn)的公司有:韓國現(xiàn)代、朝鮮的培富士、日本的NEC 等。
中國雖然在指紋識(shí)別技術(shù)方面發(fā)展較晚,但目前也已有具備指紋識(shí)別專用芯片研發(fā)生產(chǎn)和應(yīng)用能力的企業(yè),如杭州晟元芯片技術(shù)有限公司、國民技術(shù)股份有限公司等。
在指紋圖像評(píng)估算法研究領(lǐng)域,Tabassi等人通過提取指紋圖像各子塊的對(duì)比度和曲率特征評(píng)估指紋圖像質(zhì)量[3],但這種方法只是從指紋圖像局部紋理進(jìn)行分析,不足以反映指紋圖像全局信息;Hong等人通過計(jì)算指紋圖像每一圖塊指紋紋線垂直方向上的灰度方差評(píng)估指紋圖像質(zhì)量[4],它在圖像噪聲較大時(shí)并不能很好獲得指紋圖像的方向圖,從而影響最后的評(píng)估效果。
文中采用一種指紋圖像綜合評(píng)估算法,設(shè)計(jì)具有信息提示功能的指紋識(shí)別系統(tǒng),并將評(píng)估結(jié)果輸出到顯示屏,實(shí)現(xiàn)了提高指紋識(shí)別成功率,讓用戶直觀了解指紋采集的某個(gè)環(huán)節(jié)出現(xiàn)問題,以及如何進(jìn)行修正的目的。
具有提示信息的指紋識(shí)別裝置[5]包括處理器,系統(tǒng)結(jié)構(gòu)圖如圖1所示。處理器以不同的接口分別連接LCD漢字顯示屏、指紋傳感器、JTAG調(diào)試接口、復(fù)位電路、外部SRAM數(shù)據(jù)存儲(chǔ)器、串口及USB接口;電源管理模塊為上述各部分中的芯片和電路提供電源管理。其中,漢字顯示屏用來顯示指紋圖像初始評(píng)估的結(jié)果,提示用戶手指的放置是否正確、若不正確如何修正;指紋傳感器用來獲取手指的指紋圖像信息;JTAG調(diào)試接口用來與上位機(jī)連接進(jìn)行調(diào)試;復(fù)位電路用來初始化指紋識(shí)別裝置;FLASH程序存儲(chǔ)器用來存儲(chǔ)指紋識(shí)別裝置運(yùn)行的程序;外部SRAM數(shù)據(jù)存儲(chǔ)器用來存儲(chǔ)指紋識(shí)別裝置運(yùn)行過程中產(chǎn)生的臨時(shí)數(shù)據(jù);串口和USB接口用于與上位機(jī)的連接通信;安全控制器是指紋識(shí)別裝置的核心,控制指紋識(shí)別裝置的運(yùn)行。
圖1 指紋采集系統(tǒng)結(jié)構(gòu)圖Fig.1 Structure diagram of fingerprint acquisition system
指紋專用芯片,是指內(nèi)嵌指紋識(shí)別技術(shù)的芯片產(chǎn)品,能夠片上實(shí)現(xiàn)指紋的圖像采集、特征提取、特征比對(duì)的芯片,使開發(fā)過程變得簡單,開發(fā)者可以方便的實(shí)現(xiàn)指紋識(shí)別的功能,同時(shí)芯片價(jià)格適中,利于普及使用。
指紋專用芯片采用杭州晟元芯片技術(shù)有限公司生產(chǎn)的AS602芯片,采用哈佛結(jié)構(gòu)32位RISC處理器內(nèi)核,內(nèi)置專用DSP指令集和加速器。其主要特點(diǎn)是具有SEA/RSA加速引擎、內(nèi)置存儲(chǔ)器(Flash/OTP)、指紋處理加速器和專用算法軟件。AS602芯片主頻高達(dá)128 MHz,內(nèi)置128 KB高速靜態(tài)隨機(jī)存儲(chǔ)器(SRAM),嵌入了1 MB大容量FLASH,64 kB ROM和4 kB OTP ROM,并具備豐富的對(duì)外接口:除了USB2.0全速接口外,還具備3組USART接口、4通道PWM接口、ISO7816智能卡接口、APC主接口、片上實(shí)時(shí)鐘、對(duì)稱算法引擎(SEA)加速器、RSA加解密引擎、真隨機(jī)數(shù)產(chǎn)生器(TRNG),以及51路GPIO。
FPC1011F指紋傳感器由152×200個(gè)傳感器陣列組成,每一個(gè)陣列是一個(gè)金屬電極。放在傳感面上的手指的對(duì)應(yīng)點(diǎn)則作為另外一極,其工作原理是改變極板間距的電容式傳感器,整個(gè)傳感器(或其中的一部分)是通過讀取感應(yīng)器的指令來讀取的,采集區(qū)域的大小是由寄存器XSHIFT和YSHIFT值的決定的。
FPC1011F與處理器芯片的接口原理圖如圖2所示。將AS602的USART0配置為SPI模式。AS602的61腳作為時(shí)鐘輸出,60腳作為數(shù)據(jù)主輸出,連接FPC1011F的6號(hào)腳;59腳作為數(shù)據(jù)主輸入,連接FPC1011F的1號(hào)腳。FPC1011F 4號(hào)引腳SPI_CK與AS602的61腳連接得到系統(tǒng)時(shí)鐘。
圖2 AS602與FPC1011F的接口原理圖Fig.2 Schematic diagram of the interface between AS602 and FPC1011F
將FPC1011F的CPHA和CPOL分別置為0,此時(shí)FPC1011F為從設(shè)備。指紋圖像數(shù)據(jù)通過傳感器輸入FIFO。指紋采集通過查詢方式,用rd_spidtat指令不停地查詢SPI_STATUS寄存器的DA狀態(tài)是否為1。當(dāng)SPI_STATUS的DA狀態(tài)為1時(shí),用rd_spidata指令來讀取FPC1011F的FIFO中的數(shù)據(jù)。
HS1602A LCD是16×2行,5×7字符點(diǎn)陣液晶模塊,其內(nèi)部的字符發(fā)生器ROM中自帶數(shù)字和英文字母及一些特殊符號(hào)的字符庫,雖然沒有漢字,但是利用HS1602A可以建立5×7點(diǎn)陣自定義字庫的特點(diǎn),形成所需要的漢字點(diǎn)陣。HS1602A與傳感器芯片的接口原理圖如圖3所示。
圖3 AS602與HS1602A LCD顯示屏模塊接口原理圖Fig.3 Schematic diagram of the interface between AS602 and HS1602A LCD display module
在指紋采集輸入過程中[6-7],由于手指的指紋質(zhì)量、安放位置及干濕狀態(tài)等原因,都可能無法正確識(shí)別指紋信息。為提高指紋識(shí)別效率,先對(duì)采集的指紋信息進(jìn)行評(píng)估。安全控制器對(duì)指紋圖像進(jìn)行指紋灰度圖像隔點(diǎn)采樣,指紋圖像點(diǎn)方向圖計(jì)算,指紋灰度圖像的前、背景圖分離,指紋前景圖面積分析,指紋圖像質(zhì)量分析等圖像處理過程,并對(duì)評(píng)估的結(jié)果用漢字進(jìn)行顯示。若評(píng)估不合格,根據(jù)顯示信息,重新采集指紋圖像信息,直到通過評(píng)估。系統(tǒng)工作流程圖如圖4所示。
圖4 系統(tǒng)工作流程圖Fig.4 System’s work flow chart
用隔點(diǎn)的方式對(duì)指紋灰度圖像進(jìn)行采樣,隔點(diǎn)獲得原始指紋灰度圖像[8],在不改變指紋特征碼的基礎(chǔ)上減少數(shù)據(jù)采集量。
用點(diǎn)方向圖表示所述隔點(diǎn)原始指紋灰度圖像中每一像素點(diǎn)處的局部紋理走向,具體如下:
指紋圖像是由局部平行的脊線和谷線構(gòu)成的一種方向模式。通過指紋圖像點(diǎn)方向圖計(jì)算,可將指紋圖像中的各個(gè)圖像塊劃分為前景塊或背景塊。采用7×7模板,基準(zhǔn)點(diǎn)位于模板中心,從水平位置開始每隔π/4確定一個(gè)方向,定義I=1,2,3,4,對(duì)應(yīng)0,π/4,2π/4,3π/4,π四個(gè)方向。按公式(1)計(jì)算各個(gè)方向的灰度變化DI,比較DI,找到最小值,就代表該點(diǎn)的方向,見公式(1):
式中, 是沿I方向上點(diǎn)的灰度均值,f1(ik,jk)是I方向上點(diǎn)的灰度值。
圖像的前景塊是分布有指紋脊線的圖像塊,其余部分為背景塊。將前景塊設(shè)置為1,背景塊設(shè)置為0,實(shí)現(xiàn)指紋灰度圖像的前、背景圖分離。具體如下:
1) 使用公式(2)進(jìn)行計(jì)算:
2)依據(jù)小塊內(nèi)背景點(diǎn)的比例,判斷各圖像塊是前景塊或背景塊。如果小塊內(nèi)背景點(diǎn)的數(shù)量超過閾值Tb,則認(rèn)為該圖像塊屬于背景塊,否則為前景塊。
通過圖像質(zhì)量判斷條件,比較質(zhì)量評(píng)估參數(shù)Q與閾值TQ。若Q≤TQ,說明圖像質(zhì)量未達(dá)到要求,需要進(jìn)行手指干/濕狀態(tài)分析,并在漢字顯示屏上提示分析結(jié)果;若Q>TQ,說明圖片質(zhì)量達(dá)到要求,但還需判斷手指位置是否放置正確。具體如下:
1)依據(jù)該塊內(nèi)的各點(diǎn)是否大部分屬于某一特定方向,判斷一個(gè)前景圖像塊是否具有方向優(yōu)勢;
2)計(jì)算各圖像塊的方向,求出各塊的方向直方圖。如果具有某一個(gè)方向D的像素?cái)?shù)目超過預(yù)設(shè)值T1,則該塊的優(yōu)勢方向被標(biāo)記為D;
3)指紋圖像的質(zhì)量可以通過計(jì)算連續(xù)的優(yōu)勢方向區(qū)域占所有指紋前景圖的比例進(jìn)行描述。采取一種加權(quán)的方法,距離參考點(diǎn)越遠(yuǎn)的圖像塊,它所包含的信息越可靠,其權(quán)值也就越高;
4)對(duì)于指紋前景圖中的任一圖像塊xi,可以用公式具有連續(xù)優(yōu)勢方向塊的權(quán)值與所有指紋前景塊的權(quán)值之比來確定其圖像質(zhì)量;
q為相對(duì)權(quán)值常數(shù),xc為指紋前景質(zhì)心,Q為質(zhì)量比例;
5)將指紋圖像質(zhì)量比例Q與指紋圖像質(zhì)量評(píng)價(jià)的下限值TQ進(jìn)行比較,若Q>TQ,表示指紋圖像質(zhì)量合格。若手指位置正確,則提示“指紋輸入正確”,進(jìn)行圖像預(yù)處理;若手指位置有偏向,則對(duì)手指位置的偏向進(jìn)行分析,并顯示相應(yīng)的提示內(nèi)容。
6)若Q≤TQ,表示指紋圖像質(zhì)量不合格,則進(jìn)入手指干/濕狀態(tài)分析,根據(jù)分析結(jié)果,提示手指的干/濕狀態(tài)。
根據(jù)指紋圖像分析,過干手指的指紋圖像對(duì)比度較小,灰度較大;過濕手指的指紋圖像對(duì)比度較小,灰度較小。手指干/濕度分析算法要計(jì)算指紋圖像的灰度均值和標(biāo)準(zhǔn)差。具體步驟如下:
1)分別計(jì)算每一個(gè)前景圖像塊的灰度均值m、各前景塊所有像素的標(biāo)準(zhǔn)差δ、塊內(nèi)小于均值m的所有像素的灰度均值μ;
2)求圖像塊的對(duì)比度Cd:
若Cd大于干圖像塊對(duì)比度閾值DTH1,則該圖像塊確認(rèn)為干圖像塊;
3)若Cd≤DTH1,還需用圖像塊8鄰域中對(duì)比度最大值和最小值的差值Var(Cd)與閾值DTH2進(jìn)行比較。如果Var(Cd)>DTH 2,則將該圖像塊標(biāo)記為干圖像塊;
4)計(jì)算所有干圖像塊占前景圖像的比例,即為干度。如果干度超過閾值DTH3,則認(rèn)為該手指過干,在漢字顯示屏上提示用戶手指過干;否則進(jìn)行手指濕度分析;
5)為分析、計(jì)算手指濕度,引入濕度特征量:
如果CS小于預(yù)設(shè)的閾值STH1,則標(biāo)記該圖像塊為濕圖像塊;
6)統(tǒng)計(jì)所有濕圖像塊占前景圖像的比例,即為濕度。若濕度超過濕圖像塊比例閾值STH2,則提示用戶手指過濕。若濕度≤STH2,則該指紋圖像判定為低質(zhì)量圖像。
無論何種類型的指紋,其脊線都呈拋物線形,可通過分析指紋圖像中心區(qū)域是否存在一條較為完整的脊線來確定手指是否放偏。本文使用基于方向圖的跟蹤方法判斷手指的放置位置是否正確。具體如下:
1)構(gòu)造坐標(biāo)系,以前景圖的質(zhì)心為原點(diǎn),構(gòu)建坐標(biāo)系;
2)在x軸的左半軸,選擇一個(gè)優(yōu)勢方向不為0的圖像塊作為起始參考位塊;
3)根據(jù)塊內(nèi)的各點(diǎn)是否大部分屬于某一特定方向來判斷圖像塊的優(yōu)勢方向。若塊優(yōu)勢方向?yàn)?,則重新選擇起始參考位塊;若塊優(yōu)勢方向不為0,則根據(jù)當(dāng)前圖像塊的方向,向右搜索下一個(gè)圖像塊;
4)判斷該圖像塊與前一個(gè)圖像塊的方向變化。如果圖像塊與前一個(gè)圖像塊的方向變化超過90°,表明當(dāng)前圖像塊的方向發(fā)生突變,根據(jù)脊線的連續(xù)性,將當(dāng)前圖像塊的方向替代前一個(gè)圖像塊的方向,在此基礎(chǔ)上搜索下一個(gè)圖像塊;
5)若圖像塊的方向沒超過90°,則還需判斷是否搜索到一條完整的脊線。
若找到完整的脊線,采集的指紋圖像正確,在顯示屏上提示輸入正確,結(jié)束指紋圖像搜索;否則,說明當(dāng)前圖像塊沒有足夠接近x軸的正半軸,還需繼續(xù)搜索下一個(gè)圖像塊;
6)判斷x軸的負(fù)半軸是否完成搜索。若未搜索完畢,則繼續(xù)搜索;若x軸的負(fù)半軸已經(jīng)完成搜索,還需搜索x軸的正半軸;
7)搜索x軸的正半軸的方法與x軸負(fù)半軸類似,方向相反。
如果搜索到一條完整的脊線,則在顯示屏上提示輸入正確,結(jié)束指紋圖像搜索;否則還需繼續(xù)搜索。如果從x軸的正、負(fù)半軸都無法確定一條完整的脊線,則表明該指紋圖像過偏,按照質(zhì)心的位置提示用戶,需重新采集指紋。
根據(jù)所選質(zhì)心的位置和判斷的結(jié)果,分別在信息提示顯示屏上進(jìn)行顯示。
具有指紋采集狀態(tài)顯示功能的指紋識(shí)別儀可應(yīng)用于多種場合,如基于指紋技術(shù)的門禁系統(tǒng)、交易系統(tǒng)、電子病歷和電子處方的簽名認(rèn)證、銀行內(nèi)部管理、電子政務(wù)系統(tǒng)和企業(yè)內(nèi)部辦公系統(tǒng)等諸多領(lǐng)域。
實(shí)現(xiàn)電子病歷(EMR)是醫(yī)院信息系統(tǒng)的一個(gè)重要研究課題。應(yīng)用本文設(shè)計(jì)的系統(tǒng),已建立醫(yī)療機(jī)構(gòu)的EMR系統(tǒng),如圖5、圖6所示。
圖5 EMR系統(tǒng)指紋采集界面Fig.5 Fingerprint acquisition interface of EMR system
圖6 EMR系統(tǒng)病號(hào)信息錄入界面Fig.6 Patient's information input interface of EMR system
XML可在不同平臺(tái)下進(jìn)行數(shù)據(jù)交換。利用XML語言將電子病歷生成XML文檔,使用Rijindael算法,加密、解密使用同一密鑰。加密時(shí),用密鑰將明文加密[9]后寫入文檔;解密后,將明文寫入結(jié)果文件中。
部分電子病歷的XML文檔:
文中設(shè)計(jì)的指紋識(shí)別系統(tǒng)和指紋圖像綜合評(píng)估算法,對(duì)指紋圖像進(jìn)行前、背景分離,對(duì)圖像做出圖像質(zhì)量、圖像有效面積大小、手指干濕程度、手指位置偏向性的綜合分析,實(shí)現(xiàn)人體指紋的采集和評(píng)估,便于指紋圖像的后續(xù)處理。運(yùn)用本文提出的指紋識(shí)別系統(tǒng)和指紋圖像綜合評(píng)估算法,在醫(yī)療系統(tǒng)建立了EMR系統(tǒng)。在實(shí)際應(yīng)用中,提高了指紋識(shí)別的效率,具有很好的穩(wěn)定性。
[1]Dong Sun Park.Fingerprint Quality Analysis and Estimation for Fingerprint Matching[C]// State of the Art in Biometrics,2011:3-25.
[2]鄭杰. 指紋識(shí)別算法研究[D]. 北京:北京工業(yè)大學(xué),2008.
[3]TABASSI E,WILSON C L,WATSON C I.Figerprint image quality [R].Gaitherburg.USA: National Institute of Standard Technology,2004.
[4]Lin Hong, Wan Yifei, Jain A. Fingerprint image enhancement algorithm and performance evaluation [J]. IEEE Trans. on Pattern Analysis and Machine Inte lligent, 1998, 20(8): 777-789.
[5]胡贊民. 基于ARM_Linux平臺(tái)指紋采集識(shí)別系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].長沙:湖南大學(xué),2011.
[6]ALTARAWNEH M S , WOO W L ,DLAY S S .Objective Fingerprint Image Quality Assessment Using Gabor Spectrum[C]// Proceeding of the 15th International Conference on Digital Signal Processing,Walse,UK, 2007:248-251.
[7]Heeseung Choi. Fingerprint matching incorporating ridge features with minutiae [J]. IEEE Trans. on Information Forensics and Security,2011, 6(2): 338-345.
[8]蔡秀梅,張永健,梁輝.結(jié)合方差和方向的指紋圖像分割算法[J].現(xiàn)代電子技術(shù),2011(12):111-113.
CAI Xiu-mei,ZHANG Yong-jian,LIANG Hui.Fingerprint image segmentation algorithm based on variance and orientation[J].Modern Electronics Technique, 2011(12):111-113.
[9]徐小云,禹思敏,徐禮國.基于DSP的混沌數(shù)字圖像加密與硬件實(shí)現(xiàn)[J].電子科技,2011(3):1-5.
Xu Xiao-yun,Yu Si-min,Xu Li-guo.Chaotic Digital image encryption and its hardware implementation based on DSP technology[J]. Electronic Science and Technology, 2011(3):1-5.