圖像采集綜合評(píng)估的嵌入式指紋識(shí)別系統(tǒng)設(shè)計(jì)
由于具有其持久性和唯一性,指紋被廣泛應(yīng)用在個(gè)人身份識(shí)別系統(tǒng)。指紋識(shí)別在全世界范圍內(nèi)的廣泛應(yīng)用,不僅為防范犯罪,同時(shí)也作為處理個(gè)人事務(wù)和信息安全的一個(gè)關(guān)鍵技術(shù)。
本文引用地址:http://cafeforensic.com/article/201710/366969.htm在指紋識(shí)別技術(shù)領(lǐng)域,歐美國家在研究和開發(fā)中處于領(lǐng)先地位。美國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ì)量,但這種方法只是從指紋圖像局部紋理進(jìn)行分析,不足以反映指紋圖像全局信息;Hong 等人通過計(jì)算指紋圖像每一圖塊指紋紋線垂直方向上的灰度方差評(píng)估指紋圖像質(zhì)量,它在圖像噪聲較大時(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)行修正的目的。
1 指紋識(shí)別系統(tǒng)硬件設(shè)計(jì)
1.1 嵌入式指紋采集系統(tǒng)組成
具有提示信息的指紋識(shí)別裝置包括處理器,系統(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)圖
指紋專用芯片,是指內(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。
1.3 指紋采集傳感器
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 的接口原理圖
將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ù)。
1.4 指紋圖像評(píng)估狀態(tài)顯示模塊
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 顯示屏模塊接口原理圖
2 指紋圖像評(píng)估研究與分析
2.1 指紋圖像評(píng)估流程
在指紋采集輸入過程中,由于手指的指紋質(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)工作流程圖
2.2 指紋圖像隔點(diǎn)采樣
用隔點(diǎn)的方式對(duì)指紋灰度圖像進(jìn)行采樣,隔點(diǎn)獲得原始指紋灰度圖像,在不改變指紋特征碼的基礎(chǔ)上減少數(shù)據(jù)采集量。
2.3 指紋灰度圖像的前、背景分離
用點(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ì)算:
其中,f(i, j)為(i, j)點(diǎn)的灰度值;為I方向上灰度值的累加和;Smax 為累加和值的上限值;Smin 為累和值的下限值。如果滿足公式(2) 的條件,則當(dāng)前點(diǎn)為前景點(diǎn);否則為背景點(diǎn)。
2)依據(jù)小塊內(nèi)背景點(diǎn)的比例,判斷各圖像塊是前景塊或背景塊。如果小塊內(nèi)背景點(diǎn)的數(shù)量超過閾值Tb,則認(rèn)為該圖像塊屬于背景塊,否則為前景塊。
2.4 指紋圖像質(zhì)量分析
通過圖像質(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)。
2.5 手指干/ 濕度分析
根據(jù)指紋圖像分析,過干手指的指紋圖像對(duì)比度較小,灰度較大;過濕手指的指紋圖像對(duì)比度較小,灰度較小。手指干/ 濕度分析算法要計(jì)算指紋圖像的灰度均值和標(biāo)準(zhǔn)差。具體步驟如下:
1)分別計(jì)算每一個(gè)前景圖像塊的灰度均值m、各前景塊所有像素的標(biāo)準(zhǔn)差δ、塊內(nèi)小于均值m 的所有像素的灰度均值μ;
2)求圖像塊的對(duì)比度Cd:
Cd = μ / δ (5)
若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 = μ / δ (6)
如果Cs 小于預(yù)設(shè)的閾值STH1,則標(biāo)記該圖像塊為濕圖像塊;
6)統(tǒng)計(jì)所有濕圖像塊占前景圖像的比例,即為濕度。若濕度超過濕圖像塊比例閾值STH2,則提示用戶手指過濕。若濕度≤ STH2,則該指紋圖像判定為低質(zhì)量圖像。
2.6 手指位置分析
無論何種類型的指紋,其脊線都呈拋物線形,可通過分析指紋圖像中心區(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)行顯示。
3 指紋信息的數(shù)字水印技術(shù)應(yīng)用
具有指紋采集狀態(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)指紋采集界面
圖6 EMR 系統(tǒng)病號(hào)信息錄入界面
XML 可在不同平臺(tái)下進(jìn)行數(shù)據(jù)交換。利用XML 語言將電子病歷生成XML 文檔,使用Rijindael 算法,加密、解密使用同一密鑰。加密時(shí),用密鑰將明文加密后寫入文檔;解密后,將明文寫入結(jié)果文件中。
部分電子病歷的XML 文檔:
圖5 EMR 系統(tǒng)指紋采集界面
4 結(jié)論
文中設(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)定性。
評(píng)論