- 相關(guān)推薦
嵌入式指紋識別系統(tǒng)開發(fā)
摘要:介紹了指紋識別技術(shù)的基本原理,嵌入式操作系統(tǒng)的選擇及定制。計算機控制單元的軟件及硬件設(shè)計包括:指紋并口采集板設(shè)計及初始化程序,前臺指紋建檔(比對程序,局域網(wǎng)通訊程序,數(shù)據(jù)處理程序等。關(guān)鍵詞:指紋識別 嵌入式 通訊 操作系統(tǒng)
生理測定技術(shù)是當(dāng)前研究的熱點之一。目前,有很多技術(shù)等生物測定技術(shù)可用于身份認(rèn)證,包括:虹膜識別、視網(wǎng)膜識別、面部識別、簽名識別、聲音識別技術(shù)、指紋識別技術(shù)等。其中指紋因具有終生不變性及穩(wěn)定性,是目前應(yīng)用前景較好的生物識別系統(tǒng)。但指紋識別目前在國內(nèi)乃至世界仍未普及的主要原因是:(1)速度慢:目前一般系統(tǒng)辨別需要數(shù)秒鐘甚至更長;(2)性能差:錯誤拒識率(FRR)和錯誤接受率(FAR)過高,目前市場上出現(xiàn)的系統(tǒng)一般FRR<3%,FAR<1/106;(3)價格高:由于目前國內(nèi)主要引用國外成熟的指紋識別技術(shù),并且比對系統(tǒng)采用PC機處理,體積龐大,不便移動。本系統(tǒng)在對指紋識別技術(shù)優(yōu)化的基礎(chǔ)上,與嵌入式技術(shù)相結(jié)合,可較好地解決上述問題。
1 指紋識別原理
指紋識別的基本原理為:采用細節(jié)點坐標(biāo)模型來做細節(jié)匹配,即對指紋的脊線末梢和指紋的脊線分支點提取特征點鑒定指紋。具體的自動指紋識別系統(tǒng)框圖見圖1。
(范文先生網(wǎng)www.qkfawen.com收集整理)
指紋圖像的預(yù)處理:目的是去除指紋圖像中的噪音,將其轉(zhuǎn)化為一幅清晰的點線圖,便于提取正確的指紋特征。預(yù)處理影響指紋識別的效果,具有重要的意義。它分四步進行,即灰度濾波、二值化、二值去噪、細化。
對圖像細化后,采用細節(jié)點模反提取出指紋圖像的脊線末梢和脊線分支點的位置,將指紋認(rèn)證問題轉(zhuǎn)化成為點模式匹配問題。建檔時將特征位置點坐標(biāo)轉(zhuǎn)化為極坐標(biāo)后存入數(shù)據(jù)庫,作為建檔模板。指紋比對時,采用同樣的方法,得到比對模板。由于要考慮指紋的平移和旋轉(zhuǎn)(對極坐標(biāo)只考慮旋轉(zhuǎn)),對每個關(guān)鍵點A,在指紋圖像上尋找兩個與其最后的關(guān)鍵點R、S,把A、R、S點的類型(末梢或分支點)分別紀(jì)錄為nType1、nType2、nType3;把連接點A與點R、點A與點S、點R與點S的3條虛擬線段所跨越的脊線數(shù)分別記為nCrossNum1、nCrossNum2、nCrossNum3。如果這兩點滿足一定茶杯條件,則認(rèn)為點A與點B初匹配成功,如此可選擇出最好的3組對應(yīng)點,計算出比對模板相對建檔模板的旋轉(zhuǎn)角度,將比對模板矯正后,再進行細節(jié)點的精細匹配,根據(jù)隸屬函數(shù)可計算兩個指紋的相似度。如大于某個閾值,則認(rèn)為是同一指紋。
2 系統(tǒng)的定制
2.1 選擇嵌入式操作系統(tǒng)
隨著微電子技術(shù)的進步,芯片的制造成本和銷售價格都大大降低了,而功能和內(nèi)部支持的端口卻大大擴展了,16位和32位嵌入式處理器逐漸成為電子產(chǎn)品設(shè)計的主流。為了縮短產(chǎn)品設(shè)計周期和運行時間,使工作更穩(wěn)定、更可靠和更高效并實現(xiàn)需要的復(fù)雜功能,需要運行于嵌入式處理器上的嵌入式操作系統(tǒng),才能形成完整的系統(tǒng)平臺。當(dāng)前嵌入式操作系統(tǒng)包括Microsoft Embedded NT 4.0、Microsoft Windows CE、Nucleus PLUS、pSOSystem等。由于指紋識別對系統(tǒng)計算能力要求較高,需要具有強大的管理功能,并不需要硬實時功能,在實際開發(fā)中選用Microsoft Embedded NT 4.0嵌入式操作系統(tǒng),它具有操作系統(tǒng)的完善功能和強大的TCP/IP網(wǎng)絡(luò)功能;開發(fā)環(huán)境可選用Visual C++ 6.0并支持組件對象模型、MFC、ATL等。經(jīng)過實驗驗證,可滿足設(shè)計要求。
2.2 系統(tǒng)硬件選擇及開發(fā)
系統(tǒng)硬件框圖見圖2。
(1) 工控主板選用研祥PI6584V工控主板,并配如下部件:CPU(AMD K6-2)、內(nèi)存(168線64MB)、PC 104以太網(wǎng)卡、32MB DOM。該部分采用5V供電,靜態(tài)耗電50μA。峰值耗電量50mA。體積為50mm×80mm×20mm。工控主板在系統(tǒng)中所起作用:搭載系統(tǒng)應(yīng)用軟件;使用EPP1.9模式,通過并口從并口板讀取指紋圖像數(shù)據(jù);將指紋圖像數(shù)據(jù)通過指紋建檔算法轉(zhuǎn)化為指紋特征值存入DOM中;實時采集指紋與DOM中指紋特征值進行比對;接收鍵盤輸入鍵值并根據(jù)按鍵功能定義進行相應(yīng)操作;系統(tǒng)狀態(tài)信息通過串口輸出到控制板中,完成人機操作界面顯示。
(2) 指紋采集頭組件(COMS板)。COMS板的主要功能為:實時通過光學(xué)指紋采集儀將指紋圖像折射到采像芯片上,由采像芯片完成模擬量到數(shù)字量的轉(zhuǎn)換,并送往并口板存儲器中暫存。COMS板的核心器件為OV7120和指紋采集儀。OV7120為黑白單元COMS VGA采像器件。指紋采集儀為光光采像頭,型號為ZYZ202A。該型號采像頭為長春方圓定型產(chǎn)品,主要技術(shù)參數(shù):手指接觸面:光學(xué)玻璃;采像有效面積:22mm×22mm;成像方式:棱鏡折射式;圖像分辨率:450dpi。
(3) 并口板主要功能為:通過I2C總線對COMS板中采像芯片OV7120設(shè)置有關(guān)參數(shù);從COMS板提取指紋采像數(shù)據(jù)并暫存于存儲器中;每存取一幀圖像數(shù)據(jù)即通過并口(EPP模式)向工控主板發(fā)出請求信號;根據(jù)工控主板發(fā)出的數(shù)據(jù)提取信號將指紋圖像數(shù)據(jù)輸入系統(tǒng)進行有關(guān)處理;實時檢測整機內(nèi)部環(huán)境溫度并控制相關(guān)排風(fēng)扇的工作。并口板的核心器件為EPM7032、AT89C2051、IS61C1024L。EPM7032為FPGA,其主要作用是完成COMS板指紋圖像數(shù)據(jù)到工控主板的數(shù)據(jù)傳遞。AT89C2051是通用8位單片機。IS61C1024L為128K×8bit高速COMS靜態(tài)存儲器,與并口板之間采用IDC-20P雙排針接口。
(4) 控制板主要功能為:接受外部命令并將對應(yīng)鍵值輸入工控主板以完成相關(guān)操作,通過串口從控主板獲取顯示內(nèi)容并轉(zhuǎn)化為液晶屏顯示所需格式?刂瓢搴15個銨鍵,為導(dǎo)電膠方式。按鍵包括:Menu、Cancel、OK、0~9、<、>共15個鍵。控制板的核心器件為鍵盤掃描芯片EM83050和標(biāo)準(zhǔn)8位單片機AT89C2051。與工控主板之間采用TJC3-3P插座;與液晶屏之間采用TJC3-9P插座。
(5) 液晶屏主要用來顯示系統(tǒng)所處狀態(tài)。液晶屏型號為WGM12232H,點陣大小122×32。
串口LED顯示采用RS232/485接口與計算機通信,通信方式:RS232接口、115200bps、異步8位、1位起始位、8位數(shù)據(jù)位、1位停止位。
發(fā)送數(shù)據(jù)格式如下:
55H AAH XX顯示數(shù)據(jù)
其中,55H AAH為數(shù)據(jù)頭標(biāo)志,XX為背光控制字:48H點亮背光,其余不點亮背光。
通信說明:通信主動方為PC,被動方向LCD。首先PC發(fā)送數(shù)據(jù)頭命令55H、AAH,LCD接收到數(shù)據(jù)頭后,判斷是否正確。若正確則開始接收背光控制字并顯示數(shù)據(jù);否則退出接收狀態(tài)。傳輸數(shù)據(jù)中,當(dāng)LCD端檢測到傳輸中斷超時,即退出接收狀態(tài)。LCD值守狀態(tài)時處于背光熄滅狀態(tài),當(dāng)檢測有鍵按下或有指紋時,上位機發(fā)送背光控制字(48H)使背光點亮。
完成硬件設(shè)計,通過編寫測試軟件在PC平臺上進行測試,基本可滿足系統(tǒng)要求。
3 軟件及驅(qū)動編寫
3.1 嵌入式NT系統(tǒng)定制
硬件測試完成后,根據(jù)硬件的中斷號、插槽及系統(tǒng)要求的性能,需要對嵌入式NT進行定制。在NT系統(tǒng)裁減器中,主要選擇如下:
(1) 選擇Minimal With Network Copy至Minimal With Network;
(2) System中Devices選擇Display-NullVga,Serial Ports-com1/com2(中斷號:5/6),Parallel Ports-LPT1;
(3) Networks:Network adapters-Novel NE2000 Compatile Adapts,Network Protocol-TCP/IP,Network Services-LAN Manage Workstations、Simple TCP Service、DHCP client Winsock;
(4) Share System Component中選擇Display Common、Keyboard driver common、Network Common、Virtual memory mamage;
(5) Applications中選擇Shell-command Shell,Utilities-Windows NT Command Prompt。
生成操作系統(tǒng)后,做一張嵌入式NT啟動盤,用啟動盤格式化DOM,鍵入NTBoot>后將操作系統(tǒng)拷貝至DOM,NT操作系統(tǒng)即可運行。
3.2 軟件編寫
系統(tǒng)流程圖見圖3。
系統(tǒng)啟動部分主要功能:初始化指紋識別模塊InitFp();初始化串口和刷新液晶LCDInit(int(hWnd));初始化字庫IniFontLib();初始化鍵盤響應(yīng)InitKeySys();初始始化字庫IniFontLib();初始化鍵盤響應(yīng)InitKeySys();初始化并口采像設(shè)備InitParrel();初始化液晶顯示InitDispary();將指紋庫,密碼庫裝入內(nèi)存LoadAll()。系統(tǒng)啟動完成后開始線程ThreadMain(),在線程中進入程序死循環(huán),在循環(huán)中主要響應(yīng)按鍵和采集圖像進行指紋比對其中按鍵響應(yīng)分三部分;
(1) 當(dāng)輸入的按鍵個數(shù)等于設(shè)定個數(shù)(人員代碼長度+密碼長度)時,進行密碼考勤;
(2) 指紋考勤分為分組考勤(即輸入接鍵的數(shù)字鍵數(shù)目為1時進行)、1:1考勤(即輸入按鍵數(shù)目等于人員代碼長度時進行);
(3) 值守狀態(tài)下,按MENU鍵,輸入正確系統(tǒng)密碼進入管理狀態(tài)。
系統(tǒng)菜單包括:值守,指紋建檔,1:1建棣,密碼建檔,指紋刪除,密碼刪除,指紋查詢,指紋分組查詢,密碼查詢,系統(tǒng)日期,系統(tǒng)時間,默認(rèn)組設(shè)置,修改IP地址,語言設(shè)置,代碼長度設(shè)置,系統(tǒng)密碼。
采集圖像進行指紋比對:在大循環(huán)中,先讀圖像:ReadImg(Img,50);如果讀圖像成功,進行比對:SysMatch(Img);比對成功后,顯示人員代碼、姓名。
3.3 數(shù)據(jù)傳輸部分
定義流水帳結(jié)構(gòu)為:考勤時間:_SYSTEMTIME T;人員代碼:char Code[16];出入標(biāo)志:Byte Inout。網(wǎng)絡(luò)傳輸采用標(biāo)準(zhǔn)TFTP和UDP協(xié)議進行通信,詳細通信協(xié)議如下:
上傳下載采用TFTP協(xié)議,主要完成的功能包括:上載人員名單、備份、下傳流水帳、備份數(shù)據(jù)至主機。UDP主要負(fù)責(zé)打開、關(guān)閉TFTP服務(wù)。網(wǎng)絡(luò)通信模塊采用標(biāo)準(zhǔn)TFTP協(xié)議:
報頭==0x81 下載
報頭==0x82 上載
傳遞文件只能為流水賬、配置表、指紋數(shù)據(jù)、密碼裝飾。
4 實驗及測試結(jié)果
系統(tǒng)設(shè)計完成后,可脫機值守工作。122×32點陣LCD實時顯示時鐘、操作狀態(tài),并具有15鍵操作鍵盤,可獨立完成建檔及查詢等功能。系統(tǒng)核查指紋1:N、1:1兩種方式兼容,體積小巧,支持桌面及壁掛放置(外形尺寸:255mm×176mm×100mm),提供RS232/R485、RJ45接口,支持局域網(wǎng)連接。提供識別記錄的標(biāo)準(zhǔn)數(shù)據(jù)格式,可用于二次開發(fā)或與人事工資等管理軟件掛接。指紋登記個數(shù)≥3000枚,數(shù)據(jù)存儲容量≥50萬條記錄。
為驗證系統(tǒng)性能,選取1000枚指紋作實驗,其中每300枚指紋為一組,實驗結(jié)果如下:
(1) 指紋核查通過時間:<2s;
(2) 誤識率(FAR):<0.001%;
(3) 拒識率(FRR):<1%;
(4) 功耗:<60W;
(5) 分辨率:450dpi。
上述指紋管理系統(tǒng)已初步通過實驗檢測,運行正常,并通過了有關(guān)部分初步驗證。本系統(tǒng)將指紋識別與嵌入式技術(shù)結(jié)合在一起,降低了系統(tǒng)成本,可廣泛用于生活小區(qū)物業(yè)管理,學(xué)校的考場管理,軍事、政府部門的身份鑒別。應(yīng)用前景廣闊。
但是,該系統(tǒng)還存在兩個問題:(1)對指紋質(zhì)量比較差的指紋存在建檔較難的問題(FFR過高);(2)算法過于復(fù)雜,影響系統(tǒng)性能。還對應(yīng)算法和操作系統(tǒng)性能進一步優(yōu)化。
【嵌入式指紋識別系統(tǒng)開發(fā)】相關(guān)文章:
Linux嵌入式系統(tǒng)開發(fā)平臺選型探討08-06
PPSM嵌入式RTOS中的窗口系統(tǒng)開發(fā)08-06
DSP上的指紋識別模塊的實現(xiàn)08-06
基于DSP的自動指紋識別系統(tǒng)08-06
基于USB與DSP的指紋識別系統(tǒng)的設(shè)計實現(xiàn)08-06
物資管理信息系統(tǒng)開發(fā)08-06