新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 嵌入式指紋識別系統(tǒng)設(shè)計

嵌入式指紋識別系統(tǒng)設(shè)計

作者: 時間:2016-10-22 來源:網(wǎng)絡(luò) 收藏

技術(shù)在整個生物特征識別領(lǐng)域占據(jù)著重要地位,目前傳統(tǒng)的系統(tǒng)在指紋匹配準(zhǔn)確度上也已經(jīng)達(dá)到了比較理想的效果。然而,隨著數(shù)據(jù)信息的膨脹,在很多應(yīng)用場合下指紋數(shù)據(jù)庫的規(guī)模越來越大,當(dāng)系統(tǒng)需要處理大容量的指紋數(shù)據(jù)庫時,如果采用傳統(tǒng)的一對一的模式,則將消耗相當(dāng)長的時間。這對于實(shí)時性要求較強(qiáng)的應(yīng)用系統(tǒng)而言,顯然是不可接受的。為了提高大容量數(shù)據(jù)庫下指紋識別的效率,一種基于指紋檢索策略的快速搜索方案被提出,這一方案將有效降低整個指紋識別過程的耗時量。

本文引用地址:http://butianyuan.cn/article/201610/309213.htm

此外,在技術(shù)高速發(fā)展的今天,市場對于高度集成化、便攜化、智能化的指紋系統(tǒng)有著強(qiáng)烈的需求??紤]到指紋系統(tǒng)需要進(jìn)行現(xiàn)場指紋采集、指紋查找和驗(yàn)證等過程,則更需要合理的策略來保證系統(tǒng)的實(shí)時性和可靠性。因此,設(shè)計高效的嵌入式指紋檢索算法,并在具有大容量指紋數(shù)據(jù)庫的嵌入式系統(tǒng)下實(shí)現(xiàn)指紋的快速檢索與匹配,有著重要的研究意義和廣泛的商業(yè)價值。

1. 自動指紋識別系統(tǒng)研究

隨著計算機(jī)和信息技術(shù)的發(fā)展,F(xiàn)BI和法國巴黎警察局于上世紀(jì)六十年代開始了對自動指紋識別系統(tǒng)AFIS(Automatic Fingerprint Identification System)的研究。自動指紋識別系統(tǒng)(AFIS)最初使用于刑事案件偵破之中,到了九十年代,被廣泛用于個人身份的鑒定。

自動指紋識別系統(tǒng)(AFIS)是一個典型的生物特征識別系統(tǒng),它包括了指紋圖像采集模塊、圖像預(yù)處理模塊、指紋特征分析與提取模塊、指紋對比匹配模塊等幾個部分。在實(shí)際應(yīng)用中,一個完整的自動指紋識別系統(tǒng)一般可以實(shí)現(xiàn)指紋注冊和指紋匹配兩大功能。在進(jìn)行指紋注冊時,系統(tǒng)首先通過指紋圖像采集模塊采樣得到待注冊用戶的指紋圖像數(shù)據(jù);隨后將這些數(shù)字化的圖像信息傳入主控制器,并由圖像預(yù)處模塊進(jìn)行預(yù)處理加工;接著由指紋特征分析與提取模塊提取出需要的指紋特征,并生成指紋特征模板;最后將特征模板存放到指紋數(shù)據(jù)庫中。在進(jìn)行指紋匹配時,首先依然是采集待鑒定用戶的指紋圖像數(shù)據(jù);接著同樣進(jìn)行圖像預(yù)處理和指紋特征提??;然后利用提取到的待測指紋特征與指紋庫中的指紋特征模板進(jìn)行對比;最后給出認(rèn)證結(jié)果以確認(rèn)身份是否匹配。自動指紋識別系統(tǒng)基本工作流程如圖1所示。

圖1  自動指紋識別系統(tǒng)基本工作流程圖
圖1 自動指紋識別系統(tǒng)基本工作流程圖

為了應(yīng)對某些大容量指紋數(shù)據(jù)庫下自動指紋識別系統(tǒng)運(yùn)行效率低下的問題,目前學(xué)術(shù)界也提出了相關(guān)優(yōu)化措施,其中以指紋分類策略和指紋檢索策略最具代表性。指紋分類技術(shù)的不足之處在于人體指紋并非均勻的分布在各個指紋類中,在很大的數(shù)據(jù)庫下并不能很有效的減小對比范圍;另外對于模糊指紋,并不能起到準(zhǔn)確的分類效果。而指紋檢索技術(shù)則能較好的避免以上問題,在縮小對比范圍的同時,也克服了模糊指紋分類不確定的缺陷。

2. 指紋檢索算法與程序設(shè)計

2.1指紋圖像預(yù)處理算法

指紋檢索的首要環(huán)節(jié)就是進(jìn)行指紋圖像的預(yù)處理工作,其目的是為了去除圖像無效區(qū)域、降低噪聲,從而提高指紋檢索的效率。在利用指紋采集器獲取到灰度化的原始指紋圖像后,首先是進(jìn)行指紋圖像的分割,提取出指紋前景區(qū);然后再通過計算平均像素灰度的方法對圖像進(jìn)行標(biāo)準(zhǔn)化處理,使指紋圖像的灰度和對比度調(diào)整到一個統(tǒng)一標(biāo)準(zhǔn)的范圍內(nèi)。

預(yù)處理的第二環(huán)節(jié)是圖像的濾波增強(qiáng),本文采用基于方向場和頻率場特性的Gabor濾波增強(qiáng)算法對指紋圖像進(jìn)行增強(qiáng)處理。在濾波前首先需要計算指紋圖像的脊線方向場圖像和頻率特性 圖,對于指紋脊線方向場信息,采用經(jīng)典的Sobel算子求取像素的梯度值,然后利用求出的像素橫向梯度矢量Gx和縱向梯度矢量Gy計算方向角度值;對于指紋頻率信息,則通過計算某一區(qū)域指紋脊線間平均像素距離而得到。獲得以上信息后,再利用Gabor濾波函數(shù)對指紋圖像做增強(qiáng)處理。

得到增強(qiáng)的指紋圖像后,還要對圖像進(jìn)行二值化和細(xì)化處理。二值化是使灰度圖像變成黑白圖像,將圖像在灰度層次上從原來的256色降為黑白2色,對指紋圖像信息量進(jìn)行了壓縮;細(xì)化則是在不改變原有圖像像素拓?fù)溥B接關(guān)系的條件下,保留了紋線的主要信息,使指紋圖像的脊線分布變得簡單明了,為指紋特征的提取和索引做準(zhǔn)備,因此也是圖像預(yù)處理中非常重要的一步。

2.2 指紋特征提取算法

指紋特征提取的主要目的是計算指紋核心點(diǎn)(Core)和細(xì)節(jié)點(diǎn)(Minutia)的特征信息。在提取指紋核心點(diǎn)時,采用的是Poincare Index算法,該算法的思路是在指紋圖像某像素點(diǎn)區(qū)域內(nèi),按圍繞該點(diǎn)的閉合曲線逆時針方向旋轉(zhuǎn)一周,計算方向角度旋轉(zhuǎn)變化量的和,最后以計算結(jié)果來尋找核心點(diǎn)。計算過程中如果某像素點(diǎn)的Poincare Index值為π則判定為核心點(diǎn),然后便提取該點(diǎn)的坐標(biāo)與方向場信息,記為P(Cx, Cy, θc)。

對于指紋的細(xì)節(jié)點(diǎn)特征,在本設(shè)計中只要求提取指紋脊線端點(diǎn)(Ending)和脊線分叉(Bifurcation)兩種細(xì)節(jié)點(diǎn)。在細(xì)化的指紋圖像中,這兩種細(xì)節(jié)點(diǎn)的形態(tài)如圖2和圖3所示:

指紋特征提取算法

在提取指紋細(xì)節(jié)點(diǎn)時,首先為細(xì)化圖像中的每個像素點(diǎn)P建立一個8鄰域像素區(qū),如圖4所示。其中P1~P8為像素點(diǎn)P周圍的鄰近環(huán)繞像素點(diǎn)。P1~P8中黑色點(diǎn)的值設(shè)為1,白色點(diǎn)的值設(shè)為0。

圖4 8鄰域像素圖
圖4 8鄰域像素圖

根據(jù)Crossing Number (CN)理論,在8鄰域像素圖中按照公式1計算像素點(diǎn)的CN值。例如在圖2和圖3中,8領(lǐng)域像素區(qū)域內(nèi)中心點(diǎn)的CN值分別為1和3。

指紋特征提取算法

最后按上述方法對細(xì)化指紋圖像中的所有像素點(diǎn)進(jìn)行CN值計算,當(dāng)CN值為1時,可判定所檢測的P點(diǎn)為脊線端點(diǎn),當(dāng)CN值為3時,則可判定P點(diǎn)為脊線分叉點(diǎn)。檢測到細(xì)節(jié)點(diǎn)之后返回該點(diǎn)的坐標(biāo)(x,y),并根據(jù)CN的值返回細(xì)節(jié)點(diǎn)的類型T,然后再讀取該點(diǎn)的方向角θ。因此,在本算法中一個指紋細(xì)節(jié)點(diǎn)的具體特征最后用M(x, y, θ ,T)算子來表征。

2.3 指紋索引與檢索算法

在得到一系列的指紋特征后,接下來就是設(shè)計指紋綜合索引因子。索引因子以多維向量的形式表示,概括了一枚指紋圖像的綜合特征。指紋檢索時通過將待查詢指紋的索引因子與數(shù)據(jù)庫中指紋的索引因子相比較,可快速計算得出與目標(biāo)指紋相似度較高的一批候選指紋,達(dá)到有效縮減匹配范圍的目的。指紋綜合索引因子的設(shè)計描述如下:

指紋特征提取算法

公式2中Θm×n代表將指紋圖像劃分為m×n塊以后,由指紋圖像每一子塊局部脊線方向場組成的角度矩陣;Fm×n代表指紋的局部脊線頻率矩陣;D代表以指紋核心點(diǎn)P(Cx,Cy)為中心,固定半徑R內(nèi)所有細(xì)節(jié)點(diǎn)到核心點(diǎn)距離的平均值;Δ則代表離核心點(diǎn)最近的三個細(xì)節(jié)點(diǎn)(設(shè)M1, M2, M3)的方向角與核心點(diǎn)方向角的差值,記作Δ={ω1, ω2, ω3}(ωi=θic,且-πωiπ)。

檢索開始時,設(shè)待查詢指紋的綜合索引因子為S{Θm×n,F(xiàn)m×n,D,Δ}, 指紋數(shù)據(jù)庫中的指紋綜合索引因子為S’{Θ’m×n,F(xiàn)’m×n,D’,Δ’}。然后計算以下各項(xiàng)相似度分?jǐn)?shù):

指紋特征提取算法

其中dj=θ[j]-θ’[j], (j=1,2,…,m×n;θ[j]為指紋圖像第j塊的局部脊線方向角)。

指紋特征提取算法

最后根據(jù)以上4個相似度值計算S和S’這兩枚指紋的總體相似分?jǐn)?shù)T。

指紋特征提取算法

公式7中μ表示各部分相似度值的權(quán)重因子。根據(jù)實(shí)際測試,在保證檢索效果最佳時,μ的各項(xiàng)經(jīng)驗(yàn)值分別?。?mu;1=0.28,μ2=0.16,μ3=0.30,μ4=0.26。檢索算法按照索引因子比對法則將待查詢指紋與數(shù)據(jù)庫中的所有指紋進(jìn)行檢索對比,在遍歷完整個指紋數(shù)據(jù)庫以后,得到了一系列的相似度分?jǐn)?shù)。最后根據(jù)設(shè)定的閾值分?jǐn)?shù),選出分?jǐn)?shù)最高的一部分指紋,從而降低指紋對比識別的范圍。

2.4 軟件程序設(shè)計

軟件程序是整個指紋檢索算法的映射與實(shí)現(xiàn),它將算法的各個理論環(huán)節(jié)轉(zhuǎn)化為實(shí)際的函數(shù),并封裝成可以在嵌入式系統(tǒng)下執(zhí)行的功能模塊。本文中嵌入式指紋檢索程序?qū)崿F(xiàn)用戶指紋注冊和指紋檢索匹配兩大功能,涵蓋了指紋采集程序、指紋圖像預(yù)處理程序、指紋特征提取程序、指紋索引與檢索程序、指紋匹配程序等部分,其執(zhí)行流程如圖5所示。軟件進(jìn)入到執(zhí)行狀態(tài)后,首先按照用戶指令參數(shù)進(jìn)行模式判斷,選擇進(jìn)入到指紋注冊或者指紋檢索狀態(tài)。當(dāng)選擇指紋注冊入庫時,軟件會先進(jìn)行指紋圖像采集,然后對圖像進(jìn)行預(yù)處理,接著提取出指紋的細(xì)節(jié)特征并建立指紋索引因子,最后將指紋特征模板和對應(yīng)的索引因子入庫保存。而當(dāng)需要進(jìn)行指紋檢索時,系統(tǒng)同樣會先進(jìn)行指紋采集、圖像預(yù)處理、特征提取和索引因子建立,然后利用索引因子進(jìn)行指紋庫檢索,找出與查詢指紋最相似的一批待匹配指紋,最后利用匹配程序?qū)@部分指紋逐一對比,給出匹配結(jié)果。

圖5 嵌入式指紋檢索軟件執(zhí)行流程圖
圖5 嵌入式指紋檢索軟件執(zhí)行流程圖

3. 嵌入式應(yīng)用平臺設(shè)計

為了使所設(shè)計的指紋檢索算法得到實(shí)現(xiàn)和驗(yàn)證,根據(jù)嵌入式指紋檢索系統(tǒng)的要求,還需要設(shè)計嵌入式應(yīng)用平臺。該平臺的設(shè)計主要分為硬件系統(tǒng)和軟件環(huán)境兩部分。

3.1嵌入式硬件系統(tǒng)設(shè)計

本文所設(shè)計的用于指紋檢索算法實(shí)現(xiàn)與驗(yàn)證的嵌入式硬件平臺以東南大學(xué)自主研發(fā)的高性能微處理器SEP6200為核心控制單元。SEP6200是一顆32位的高性能應(yīng)用處理器,主頻達(dá)到800Mhz,有著高效的運(yùn)算和控制能力,能夠較好的執(zhí)行指紋檢索程序。主控制器配合DDR、Nand Flash、LCD、USB指紋采集器等外圍設(shè)備,搭建成了完整的嵌入式指紋檢索硬件平臺,圖6是所設(shè)計的嵌入式指紋檢索系統(tǒng)的硬件框架結(jié)構(gòu)圖。系統(tǒng)中主控制器SEP6200用于控制指紋采樣和進(jìn)行任務(wù)調(diào)度;DDR模塊用來臨時存儲指紋圖像數(shù)據(jù)和執(zhí)行軟件程序;Nand Flash用以存放算法軟件代碼和指紋數(shù)據(jù)庫;LCD顯示屏在執(zhí)行算法時用于提供良好的GUI用戶界面;USB指紋采集器則是用來采集原始指紋圖像,并將圖像數(shù)據(jù)經(jīng)USB接口傳送至核心控制單元。

圖6 嵌入式指紋檢索系統(tǒng)硬件平臺架構(gòu)圖
圖6 嵌入式指紋檢索系統(tǒng)硬件平臺架構(gòu)圖

3.2嵌入式軟件系統(tǒng)配置

嵌入式軟件系統(tǒng)主要涉及到操作系統(tǒng)和設(shè)備驅(qū)動配置兩個方面。

3.2.1. 嵌入式Linux操作系統(tǒng)

本設(shè)計采用Linux2.6內(nèi)核操作系統(tǒng)作為嵌入式底層軟件基礎(chǔ)平臺。Linux操作系統(tǒng)作為一個開源軟件系統(tǒng),有著良好的可配置、可裁剪特性,同時其開發(fā)周期短、成本低、安全性高,非常適用于嵌入式系統(tǒng)下指紋檢索應(yīng)用軟件的開發(fā)和測試。

3.2.2. 驅(qū)動程序配置

為了使操作系統(tǒng)能夠控制USB指紋采集器和LCD等外設(shè)工作,必須為Linux內(nèi)核配置相關(guān)的設(shè)備驅(qū)動程序。對于USB指紋采集器,本設(shè)計采用V4L2驅(qū)動框架對圖像數(shù)據(jù)進(jìn)行控制管理,V4L2是Linux下開發(fā)視頻設(shè)備驅(qū)動的一套新框架,該框架為驅(qū)動程序定義了一系列對應(yīng)的回調(diào)函數(shù),同時為應(yīng)用程序定義了一套標(biāo)準(zhǔn)的API 調(diào)用,便于用戶在應(yīng)用層通過URB獲得指紋圖像數(shù)據(jù)。此外,對于LCD液晶顯示屏也需要提供相應(yīng)的驅(qū)動支持,LCD通常由微處理器的LCDC(LCD Controller,LCD控制器)進(jìn)行控制。

4. 系統(tǒng)測試與分析

在系統(tǒng)設(shè)計完成之后,筆者對系統(tǒng)的性能和效率等指標(biāo)做了相應(yīng)的測試。實(shí)驗(yàn)中采用了兩個指紋數(shù)據(jù)庫進(jìn)行系統(tǒng)驗(yàn)證,分別是國際標(biāo)準(zhǔn)指紋測試庫FVC2000-DB3和本系統(tǒng)采集自建的指紋數(shù)據(jù)庫庫OWN-DB。FVC2000-DB3包含800張指紋圖像,OWN-DB包了含500張指紋圖像,兩庫中的圖像都以8位灰度的BMP格式保存,圖7和圖8分別為兩個指紋數(shù)據(jù)庫的示例圖像。

FVC2000-DB3指紋圖

指紋檢索算法的性能采用檢索穿透率(Penetration Rate, PR)和檢索錯誤率 (Error Rate, ER)衡量。檢索穿透率(PR)定義為檢索得出的待匹配指紋數(shù)量占整個數(shù)據(jù)庫的比重,該比重可以由算法程序員自行設(shè)定;檢索錯誤率(ER)則定義為在某一穿透率的限制下,在待匹配指紋中未檢測到目標(biāo)指紋的概率,即檢索失敗率。在實(shí)驗(yàn)中利用所述的兩個指紋數(shù)據(jù)庫對系統(tǒng)進(jìn)行測試,得到一系列的實(shí)驗(yàn)數(shù)據(jù),將這些實(shí)驗(yàn)數(shù)據(jù)進(jìn)行曲線擬合,繪制出如圖9所示的曲線圖。

圖9  指紋檢索系統(tǒng)的性能試驗(yàn)數(shù)據(jù)
圖9 指紋檢索系統(tǒng)的性能試驗(yàn)數(shù)據(jù)

從實(shí)驗(yàn)數(shù)據(jù)圖可知,在FVC2000-DB3數(shù)據(jù)庫上,當(dāng)檢索穿透率為10%時,系統(tǒng)檢索錯誤率在6%左右。而在OWN-DB數(shù)據(jù)庫上,當(dāng)穿透率為10%時,系統(tǒng)錯誤率則可降低至4.6%以內(nèi),充分驗(yàn)證了本設(shè)計的可靠性。此外作為嵌入式系統(tǒng),軟件程序的執(zhí)行效率也是一項(xiàng)重要指標(biāo)。在實(shí)驗(yàn)中,當(dāng)系統(tǒng)進(jìn)行1:800檢索時總耗時1.63秒;當(dāng)進(jìn)行1:500檢索時總耗時0.99秒。總體來看,系統(tǒng)的實(shí)時性也達(dá)到了比較良好的指標(biāo)。

結(jié)語

指紋檢索算法是一種應(yīng)用于大容量指紋數(shù)據(jù)庫的快速指紋搜索方案。本文在對傳統(tǒng)自動指紋識別系統(tǒng)研究的基礎(chǔ)上,設(shè)計了基于多維向量指紋索引因子的快速指紋檢索算法,同時利用國產(chǎn)SOC芯片SEP6200,搭建了嵌入式應(yīng)用平臺,并最終將所設(shè)計的算法以應(yīng)用程序的形式在嵌入式目標(biāo)平臺上進(jìn)行映射與實(shí)現(xiàn)。系統(tǒng)經(jīng)過實(shí)驗(yàn)測試與分析,得到了良好的性能指標(biāo),進(jìn)一步論證了本設(shè)計的可行性。



關(guān)鍵詞: 嵌入式 指紋識別

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉