引言
生物認(rèn)證技術(shù)是信息時(shí)代的重要產(chǎn)物之一。人體生物特征具有唯一性與穩(wěn)定性,因此,人們開發(fā)了指紋、臉型、語音、虹膜、遺傳基因 (DNA)結(jié)構(gòu)等多種生物特征識(shí)別技術(shù)。在各種生物特征中,指紋的特征性能優(yōu)異,指紋識(shí)別技術(shù)也正日趨成熟。因此,針對(duì)汽車安防領(lǐng)域的市場(chǎng)需求,本文設(shè)計(jì)了一種基于OMAP架構(gòu)的嵌入式指紋識(shí)別系統(tǒng)。該系統(tǒng)識(shí)別率高、處理速度快、可擴(kuò)展性強(qiáng),必然有著廣闊的應(yīng)用前景和研究?jī)r(jià)值。
開放式多媒體應(yīng)用平臺(tái)OMAP
TI 公司的OMAP(Open Multimedia Applications Platform)平臺(tái)是基于DSP的開放式多媒體應(yīng)用平臺(tái)。它采用雙核結(jié)構(gòu),把高性能低功耗的DSP核與控制性能強(qiáng)的ARM微處理器結(jié)合起來,具有集成度高、硬件可靠性和穩(wěn)定性強(qiáng)、速度快、數(shù)據(jù)處理能力強(qiáng)、功耗低、開放性好等優(yōu)點(diǎn)。OMAP平臺(tái)透過先進(jìn)的操作系統(tǒng)平臺(tái)不僅開放了ARM,而且開放了 DSP。通過DSP/BIOS橋,DSP的資源就如同ARM的外設(shè)一樣通過操作系統(tǒng)的API被調(diào)用。DSP/BIOS橋在OMAP平臺(tái)上實(shí)現(xiàn)了雙核的無縫連接。OMAP平臺(tái)支持WinCE、EPOC、Nucleus、VxWorks和Linux等多種操作系統(tǒng),提供了易于使用的開放式編程環(huán)境。
OMAP平臺(tái)采用雙核技術(shù)使操作系統(tǒng)的效率和多媒體代碼的執(zhí)行更加優(yōu)化。實(shí)時(shí)性任務(wù)由DSP完成,非實(shí)時(shí)性任務(wù)和系統(tǒng)控制工作由ARM完成,從而使系統(tǒng)的功耗降至最低,成功地解決了性能與功耗的最佳組合問題。
系統(tǒng)硬件設(shè)計(jì)
基于OMAP架構(gòu)的嵌入式指紋識(shí)別系統(tǒng)(以車載應(yīng)用為例)主要由OMAP5912嵌入式微處理器、FPS200指紋傳感器、人機(jī)界面、CAN總線接口、USB通信接口、電源管理等模塊組成。系統(tǒng)組成原理如圖1所示。
OMAP5912 是整個(gè)系統(tǒng)的核心。它一方面要控制指紋傳感器FPS200進(jìn)行指紋樣本的采集,建立指紋樣本庫,并對(duì)指紋庫進(jìn)行管理和維護(hù);另一方面它還要控制DSP內(nèi)核處理復(fù)雜的指紋識(shí)別算法,進(jìn)行指紋圖像的處理、指紋特征的提取和匹配。在系統(tǒng)的操作過程中,建立友好的人機(jī)界面特別關(guān)鍵。在觸摸屏控制器ADS7846和 OMAP5912的控制下,用戶可以通過觸摸屏以及LCD液晶顯示屏方便快捷地進(jìn)行人機(jī)對(duì)話,如用戶個(gè)人身份碼(PIN)認(rèn)證、指紋庫管理與維護(hù)等。開放式系統(tǒng)必然要求信息資源共享,CAN總線接口能使該系統(tǒng)與汽車上的多個(gè)控制器(即電控單元ECU)進(jìn)行通信。USB通信接口的設(shè)計(jì)使得嵌入式系統(tǒng)的應(yīng)用更加靈活、方便,令系統(tǒng)與多種類型的外設(shè)進(jìn)行通信成為可能。功能強(qiáng)大的電源管理芯片TPS65010為系統(tǒng)核心部分提供了所需的1.6V、1.8V、3V、 3.3V等工作電壓,并合理地進(jìn)行功耗分配。由于指紋圖像數(shù)據(jù)量大、指紋算法復(fù)雜,設(shè)計(jì)時(shí)需要較大的存儲(chǔ)空間,因此系統(tǒng)擴(kuò)展了1個(gè)NOR閃存和1個(gè)DDR SDRAM。系統(tǒng)可通過JTAG接口進(jìn)行在線調(diào)試。
OMAP5912嵌入式微處理器
OMAP5912微處理器是由192MHz的TMS320C55x DSP內(nèi)核和192MHz的低功耗、增強(qiáng)型ARM926微處理器組成的雙核應(yīng)用處理器。
流量控制器(Traffic Controller,簡(jiǎn)稱TC)用于控制對(duì)外部?jī)?nèi)存的存取,其最高工作頻率為75MHz。TC提供了外部?jī)?nèi)存快速接口(EMIFF)、外部?jī)?nèi)存慢接口 (EMIFS)和內(nèi)部存儲(chǔ)器接口 (IMIF)。其中,EMIFF可與SDRAM連接,而EMIFS只能與閃存和速度稍慢的ROM連接。OMAP5912內(nèi)還有192K的內(nèi)部存儲(chǔ)器,由 ARM和DSP共享。TC可以看作儲(chǔ)存資源的守衛(wèi),由它內(nèi)部的仲裁器來決定哪個(gè)核有權(quán)利存取這些資源,以及是否可以讓兩個(gè)核同時(shí)存取這些資源。 OMAP5912中央有一個(gè)高性能的9信道系統(tǒng)直接內(nèi)存存取器(DMA)。這個(gè)9信道DMA允許在不同的埠間傳送數(shù)據(jù),而無需ARM干涉。DMA可作業(yè)的端口包括EMIFF、EMIFS、IMIF和周邊組件。
FPS200指紋傳感器
FPS200 是Veridicom 公司基于標(biāo)準(zhǔn)CMOS工藝的指紋傳感器。利用半導(dǎo)體硅電容效應(yīng),硅傳感器成為電容的一個(gè)極板,手指則是另一極板,手指紋線的脊和谷相對(duì)于平滑的硅傳感器之間的電容差,即可形成8位的指紋灰度圖像。FPS200 指紋傳感器的工作電壓在3.3V至5V之間,低功耗、高效率,可以在較小(1.28cm×1.50cm)的表面上獲得與光學(xué)技術(shù)同樣好甚至更好 (500DPI的較高分辨率)的圖像質(zhì)量。
在硬件設(shè)計(jì)方面,特別要注意的是需要在OMAP5912和FPS200之間增加1個(gè)74LV245收發(fā)器來解決時(shí)序沖突問題,這里不再贅述。
人機(jī)界面設(shè)計(jì)
由于觸摸屏輕薄、輸入方便快捷,本設(shè)計(jì)采用四線電阻式觸摸屏作為人機(jī)界面的輸入設(shè)備。人機(jī)界面系統(tǒng)由OMAP5912微處理器、觸摸屏控制器、四線電阻式觸摸屏以及LCD液晶顯示屏4部分組成。觸摸屏控制器采用 Burn-Brown公司的ADS7846芯片,它是一種典型的帶有連續(xù)逼近型寄存器的12位ADC,內(nèi)部自帶2.5V參考電壓,有一個(gè)和微處理器相連的標(biāo)準(zhǔn)SPI據(jù)接口。ADS7846根據(jù)串行數(shù)據(jù)輸入端 DIN 收到的不同命令字來打開相應(yīng)的開關(guān)通道,并接收返回的模擬電壓,通過A/D轉(zhuǎn)換得出對(duì)應(yīng)的數(shù)字量,再通過串行數(shù)據(jù)輸出端 DOUT 傳回微處理器。觸摸屏控制器ADS7846與微處理器OMAP5912的連接電路如圖2所示。
CAN總線接口設(shè)計(jì)
嵌入式指紋識(shí)別系統(tǒng)完成車主身份認(rèn)證后,需要立即向汽車發(fā)動(dòng)機(jī)電子控制系統(tǒng)(EEC)發(fā)送點(diǎn)火控制信號(hào),從而啟動(dòng)汽車發(fā)動(dòng)機(jī)。因此,本系統(tǒng)設(shè)計(jì)了CAN總線接口來實(shí)現(xiàn)與EEC的通信。CAN總線與微處理器之間的接口電路通常包括CAN控制器和CAN收發(fā)器,本設(shè)計(jì)中采用了Microchip的 MCP2510 CAN協(xié)議控制器,以及飛利浦的 PCA82C250 CAN收發(fā)器。連接關(guān)系如圖3所示。
USB通信接口設(shè)計(jì)
為了使嵌入式系統(tǒng)能與多種類型的外設(shè)進(jìn)行通信,設(shè)計(jì)中擴(kuò)展了USB通信接口。OMAP5912微處理器內(nèi)置了對(duì)應(yīng)于USB1.1的USB主控制器,并且該設(shè)計(jì)支持主從雙重USB通信模式,只需要利用一個(gè)USB接口適配器就可以方便地進(jìn)行主從模式轉(zhuǎn)換。需要注意的是當(dāng)選擇Client模式時(shí),需要設(shè)置FUNC_MUX_CTRL_D [5:3] = 000。
軟件設(shè)計(jì)流程
OMAP5912的軟件架構(gòu)
OMAP5912的軟件結(jié)構(gòu)建立在兩個(gè)操作系統(tǒng)之上:基于ARM的Linux操作系統(tǒng)以及基于DSP的DSP/BIOS。連接兩個(gè)操作系統(tǒng)的核心技術(shù)是DSP/BIOS橋。DSP/BIOS橋提供了一種使用DSP的無縫接口,允許開發(fā)者在 GPP(通用處理器)上使用標(biāo)準(zhǔn)應(yīng)用編程接口訪問并控制DSP的運(yùn)行環(huán)境。利用TI公司的CCS(Code Composer Studio)集成開發(fā)環(huán)境,從開發(fā)者的角度來看,OMAP好像僅用GPP處理器就完成了所有處理功能。這樣,開發(fā)者就不需要為兩種處理器分別編程,從而使編程工作大為簡(jiǎn)化。在OMAP體系結(jié)構(gòu)下,開發(fā)者可以像對(duì)待單個(gè)GPP那樣對(duì)OMAP的雙處理器平臺(tái)進(jìn)行編程。
系統(tǒng)軟件流程圖
為了防止有人盜取指紋并利用指紋膜對(duì)指紋識(shí)別系統(tǒng)進(jìn)行欺騙性攻擊,采取“個(gè)人身份碼(PIN)+ 指紋識(shí)別”的雙重認(rèn)證措施是非常必要的。用戶輸入PIN信息引導(dǎo)系統(tǒng)找到指紋庫中對(duì)應(yīng)的一個(gè)模板,即可與采集到的用戶指紋進(jìn)行1對(duì)1的“最佳”匹配,這樣既能防止欺騙性攻擊,又不需要每次都進(jìn)行1對(duì)N的逐次匹配,可以高效率、快速地完成指紋識(shí)別過程。系統(tǒng)軟件的主要程序流程如圖4所示。
指紋識(shí)別過程
1) 圖像預(yù)處理。圖像預(yù)處理包括3個(gè)步驟,即圖像分割、圖像增強(qiáng)和二值化。分割器讀取并剪切輸入的指紋圖,在基本不損失有用指紋信息的前提下減少以后各步驟中所要處理的數(shù)據(jù)量;圖像增強(qiáng)用以對(duì)分割后的指紋圖像進(jìn)行平滑、銳化、濾波等加工,以提高圖像質(zhì)量;二值化即把8位的灰度指紋圖像轉(zhuǎn)化成0和255的二值圖像,閾值的選取采用了局部閾值法。
2) 細(xì)化處理。為了進(jìn)一步壓縮數(shù)據(jù),還需要對(duì)二值化圖像進(jìn)行細(xì)化處理。細(xì)化時(shí)應(yīng)保持紋線的連接性、方向性不變,還應(yīng)保持紋線的中心基本不變。細(xì)化后的紋線會(huì)出現(xiàn)搭橋及豁口,因此必須進(jìn)行細(xì)化后的去噪工作。
3) 特征提取。指紋的特征點(diǎn)信息是從細(xì)化后的二值化圖像中提取的。從細(xì)化后的二值化圖像中找到分叉點(diǎn)或終結(jié)點(diǎn),然后從這些點(diǎn)開始尋找紋路軌跡。通過這些點(diǎn),紋路的形狀被計(jì)算出來。這些形狀數(shù)據(jù)、點(diǎn)的類型以及點(diǎn)的位置就作為該指紋圖像的特征點(diǎn)被存儲(chǔ)下來。
4) 特征匹配。在提取出指紋特征點(diǎn)后,便會(huì)得到一組矢量點(diǎn)。同樣,在指紋庫中存儲(chǔ)的指紋模板也是一組矢量點(diǎn),要判斷兩個(gè)指紋是否匹配也就轉(zhuǎn)化成判斷兩組矢量點(diǎn)是否匹配。指紋圖像的匹配是根據(jù)兩幅圖像特征點(diǎn)的最大匹配點(diǎn)支持?jǐn)?shù)來確定的,如果最大匹配支持點(diǎn)數(shù)大于規(guī)定的值,則認(rèn)為兩幅指紋圖像匹配。
FPS200的寄存器設(shè)置
在初始化過程中,要往指紋傳感器FPS200相應(yīng)的寄存器中寫入控制字,設(shè)置采集指紋的參數(shù)。其中最關(guān)鍵的是DCR、DTR、PGC這3個(gè)寄存器的參數(shù)設(shè)置。本文通過反復(fù)試驗(yàn)進(jìn)行了寄存器的參數(shù)最佳設(shè)置,圖5說明了分別調(diào)整3個(gè)寄存器的參數(shù)值對(duì)圖像質(zhì)量的影響。
結(jié)語
本文基于OMAP架構(gòu)的嵌入式技術(shù),設(shè)計(jì)了一個(gè)完整的、可獨(dú)立運(yùn)行的嵌入式指紋識(shí)別系統(tǒng),該系統(tǒng)已在實(shí)驗(yàn)室成功通過測(cè)試,并正在申請(qǐng)立項(xiàng)。隨著生物認(rèn)證技術(shù)的快速發(fā)展,該系統(tǒng)的擴(kuò)展空間會(huì)越來越廣闊,系統(tǒng)設(shè)計(jì)也會(huì)越來越完美。車載多媒體網(wǎng)絡(luò)的發(fā)展已經(jīng)成為一個(gè)必然趨勢(shì),該系統(tǒng)可進(jìn)一步開發(fā)GPS車載導(dǎo)航系統(tǒng),OMAP開放式多媒體應(yīng)用平臺(tái)也為今后系統(tǒng)的拓展預(yù)留了足夠的空間。相信該系統(tǒng)一定會(huì)有巨大的市場(chǎng)潛力。
評(píng)論
查看更多