基于arm的指紋識別門禁系統(tǒng)是如何設(shè)計(jì)的
引言
現(xiàn)代社會高速發(fā)展,很多場合需要身份確認(rèn),傳統(tǒng)的身份識別技術(shù)已經(jīng)不能滿足社會要求。人的身體特征具有不可復(fù)制性,因此人們開始研究生物識別技術(shù),而指紋具有唯一性、終生不變性、難于偽造等特點(diǎn),安全性高,因而得到了廣泛應(yīng)用。在一些機(jī)要部門,如銀行、賓館、機(jī)房等一般都安裝有門禁系統(tǒng),門禁系統(tǒng)是為保障人們生活、工作及財(cái)產(chǎn)安全, 對重要通道的出入口進(jìn)行管理與控制的系統(tǒng),基于指紋識別技術(shù)的門禁系統(tǒng)是一項(xiàng)高科技安全設(shè)施,提高了系統(tǒng)的安全性。ARM作為一種嵌入式系統(tǒng)處理器,具有高性能、低功耗、低成本等特點(diǎn),因而在工業(yè)控制領(lǐng)域、成像和安全產(chǎn)品方面得到了廣泛應(yīng)用。本文介紹了基于嵌入式ARM9體系結(jié)構(gòu)的指紋識別原理與處理方法,以及指紋識別門禁系統(tǒng)的軟硬件設(shè)計(jì)方法。
1 指紋識別原理及處理方法
指紋識別技術(shù)通過分析指紋的局部特征,從中抽取詳盡的特征點(diǎn),從而可靠地確認(rèn)個人身份。指紋識別技術(shù)主要涉及四個功能:讀取指紋圖象、提取特征、保存數(shù)據(jù)和比對。首先從獲取的指紋圖像上找到“特征點(diǎn)”,然后根據(jù)特征點(diǎn)的特性建立用戶活體指紋的指紋特征數(shù)據(jù)(一種單向的轉(zhuǎn)換,可以從指紋圖像轉(zhuǎn)換成特征數(shù)據(jù)但不能從特征數(shù)據(jù)轉(zhuǎn)換成為指紋圖像)。由于兩枚不同的指紋不會產(chǎn)生相同的特征數(shù)據(jù),所以通過對所采集到的指紋圖像的特征數(shù)據(jù)和存放在數(shù)據(jù)庫中的指紋特征數(shù)據(jù)進(jìn)行模式匹配,從而計(jì)算出它們的相似程度,最終得到兩個指紋的匹配結(jié)果,根據(jù)匹配結(jié)果來鑒別用戶身份。
1.1 指紋圖像的采集
光學(xué)取像有著悠久的歷史,它可以追溯到上世紀(jì)70年代,依據(jù)的是光的全反射原理?,F(xiàn)在一般采用光學(xué)指紋傳感器來采集指紋,取得指紋具有圖像清晰、功耗低、穩(wěn)定性高等特點(diǎn)。本系統(tǒng)采用的是TFS—D0303光學(xué)指紋傳感器。
1.2 指紋識別的算法實(shí)現(xiàn)
指紋識別算法的有效性直接影響著指紋識別的精確度和指紋識別門禁系統(tǒng)的安全性和穩(wěn)定性,對整個門禁的安全性和可靠性起著決定性的作用。指紋識別算法的處理過程主要包括:圖像處理、紋路細(xì)化、特征提取和特征匹配等。
預(yù)處理在指紋識別中是不可缺少的步驟。其目的是去除圖像獲取時所引入的噪聲,消除低質(zhì)量圖像的影響,以便后續(xù)環(huán)節(jié)能夠正確地進(jìn)行特征提取和分類識別。預(yù)處理過程主要包括圖像分割、平滑、圖像增強(qiáng)、二值化和細(xì)化等步驟,每經(jīng)過一個步驟都可以改善圖像的質(zhì)量,有利于后面的工作。
環(huán)境溫度的影響或手指干燥可能會使指紋圖像產(chǎn)生紋線不連續(xù)。對于指紋紋線不連續(xù)的指紋圖像,一般要經(jīng)過平滑濾波處理,這也是對圖像進(jìn)行模糊化,使斷裂的紋線邊界經(jīng)過模糊后連接起來。在本算法中采用低通濾波器對各塊指紋圖像的方向信息進(jìn)行塊水平的平滑,修正不準(zhǔn)確的計(jì)算結(jié)果。
具體方法為先計(jì)算0(x,y)在X軸和Y軸上的投影分量:
式中,H(u,v) 為二維低通濾波器;w1×w1為5×5濾波器尺寸;w為圖像子塊尺寸(本算法取w=10個像素大小)。
經(jīng)過紋路細(xì)化, 二值化圖像的紋路線被細(xì)化為只有一個像素寬的連接線段。顯示了原始指紋圖像、增強(qiáng)后的二值化圖像以及細(xì)化后的二值化圖像。指紋的特征點(diǎn)信息是從細(xì)化后的二值化圖像中提取的。從細(xì)化后的二值化圖像中找到分叉點(diǎn)或端點(diǎn),然后從這些點(diǎn)開始尋找紋路軌跡。通過這些點(diǎn),紋路的形狀被計(jì)算出來。這些形狀數(shù)據(jù)、點(diǎn)的類型以及點(diǎn)的位置就作為該指紋圖像的特征點(diǎn)被記錄下來。
特征匹配是根據(jù)兩幅圖像特征點(diǎn)的最大匹配點(diǎn)支持?jǐn)?shù)來確定的。假設(shè)有甲和乙兩幅圖像,首先依次以甲圖的每一個特征點(diǎn)為基準(zhǔn),依次計(jì)算乙圖像中每個和甲圖中基準(zhǔn)特征點(diǎn)類型相同的特征點(diǎn)到乙圖中每個特征點(diǎn)的距離和方向,根據(jù)這個距離和方向,再以甲圖中的基準(zhǔn)點(diǎn)為原點(diǎn),計(jì)算出甲圖中的一個點(diǎn),然后判斷是否也是甲圖的特征點(diǎn),如果是,則匹配支持?jǐn)?shù)加1。按甲圖中特征點(diǎn)順序依次計(jì)算,取最大值就是兩幅圖像的最大支持匹配點(diǎn)數(shù)。如果最大匹配支持點(diǎn)數(shù)大于規(guī)定的值,則認(rèn)為兩幅圖像匹配。否則,不匹配。
2 系統(tǒng)硬件設(shè)計(jì)
基于RISC體系結(jié)構(gòu)的ARM微處理器因其體積小、功耗低、執(zhí)行速度快等優(yōu)點(diǎn)在多個領(lǐng)域得到廣泛應(yīng)用。本系統(tǒng)采用的是三星公司的嵌入式微處理器S3C2440AL,這是一款高性能、低功耗的功能強(qiáng)大的嵌入式應(yīng)用處理器產(chǎn)品,它采用Intel X-Scale微結(jié)構(gòu)體系框架,集成了許多常用的外圍接口,功能強(qiáng)大。S3C2440AL主頻為400MHz,最高為533MHz;TFS-D0303指紋傳感器由256×300個電容傳感陣列組成,其分辨率高達(dá)500dpi,工作電壓范圍為3.3~5V,傳感器內(nèi)部有8位ADC,并具有2組采樣保持電路。
系統(tǒng)存儲器接口采用128MB SDRAM存儲器,支持16、64、128、256MB DRAM技術(shù),4個SDRAM區(qū),每個區(qū)支持64M存儲器。時鐘允許(一個CKE引腳用于把整個SDRAM接口置為自我刷新),支持最多至6個靜態(tài)存儲器器件(SRAM、Flash、ROM),支持2個PCMCI/CF插槽。時鐘采用3.6864M-Hz振蕩器,具有核PLL和外圍PLL,可產(chǎn)生各種工作頻率,32.768kHz振蕩器可驅(qū)動實(shí)時時鐘、電源管理器和中斷控制器。電源控制器可控制快速/運(yùn)行、空閑和睡眠工作方式。LCD控制器支持被動(DSTN)和主動(TFT)LCD顯示,最大分辨率800×600×16,2個專用DMA通道,允許LCD控制器支持單層或雙層顯示。實(shí)時時鐘(RTC),可產(chǎn)生周期性中斷,把應(yīng)用處理器從睡眠狀態(tài)喚醒。串行口通信USB從模塊,符合USB規(guī)范,支持v1.1版本,支持多達(dá)16個端點(diǎn)提供48MHz的內(nèi)部時鐘。
3 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)的軟件設(shè)計(jì)主要有以下幾個流程:上電系統(tǒng)初始化、指紋識別、控制電鎖的開啟。系統(tǒng)的精度絕大部分取決于指紋識別的算法。程序初始化后進(jìn)入低功耗模式,等待各種具體操作。當(dāng)有指紋采集時,就進(jìn)入指紋數(shù)據(jù)采集和處理模塊,處理結(jié)束后,又重新退回低功耗等待模式,等待其他操作。同理,當(dāng)有讀卡數(shù)據(jù)或者時鐘設(shè)置響應(yīng)時,便進(jìn)入相應(yīng)的操作模塊進(jìn)行處理。
3.1 對S3C2440AL的初始化
系統(tǒng)初始化對于嵌入式系統(tǒng),要在其程序存儲器中有系統(tǒng)初始化代碼。系統(tǒng)執(zhí)行了初始化代碼后,才能正確執(zhí)行其他應(yīng)用程序,初始化在系統(tǒng)復(fù)位后自動完成。系統(tǒng)的初始化必須包含下列初始化代碼,有設(shè)置中斷向量表、初始化寄存器、初始化堆棧指針寄存器、初始化端口、改變處理器的工作模式。系統(tǒng)在用戶模式下才能開中斷。在對指紋傳感器的初始化中,應(yīng)按要求逐步對控制寄存器進(jìn)行初始化。
3.2 指紋采集
指紋采集可以工作在中斷方式,也可以工作在查詢方式。本系統(tǒng)采用的是查詢工作方式。程序流程大致如下,先初始化各寄存器,先往相應(yīng)的寄存器寫入控制字,設(shè)置采集指紋的參數(shù),當(dāng)指紋被自動采集進(jìn)入數(shù)據(jù)寄存器,把指紋數(shù)據(jù)存入到指定的存儲空間。
3.3 與計(jì)算機(jī)之間的通信
RS232串口用于S3C2440AL與上位機(jī)的通信,當(dāng)存儲圖像過多時,可把圖像存儲在上位機(jī)上。S3C2440AL的UART可工作在中斷模式或DMA模式下。本系統(tǒng)選用的是中斷模式,也可以用查詢方式。程序可以控制端口的波特率、數(shù)據(jù)寬度(5、6、7、8位)、停止位(1到2位)、極性控制等通信協(xié)議的設(shè)置。
4 結(jié)束語
本文介紹了基于ARM的指紋識別門禁系統(tǒng)的軟硬件設(shè)計(jì)。ARM體系結(jié)構(gòu)有豐富的接口,在門禁、監(jiān)控等領(lǐng)域正發(fā)揮越來越重要的作用,面向可集成、可移植的特定嵌入式系統(tǒng)越來越多地出現(xiàn)在工程應(yīng)用領(lǐng)域。本文實(shí)現(xiàn)的指紋識別門禁系統(tǒng)具有輕便、易安裝、成本低的優(yōu)點(diǎn),具有良好的發(fā)展前景。