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