目前生物識別——活體指紋識別系統的應用日益廣泛,其中Veridicon推出的I-touch半導體指紋傳感器是一個(gè)300×300點(diǎn)陣、分辨率為 500DPI的低功耗傳感器件,內部集成有溫度傳感器和電阻傳感器,因而可以防止電子欺詐。該傳感器具有“體積小、成本低、耗電小、安全性高”等優(yōu)點(diǎn),而且該芯片表面覆蓋有傳利保護的防護層,可有效防止磨損、腐蝕等,從而得到很多指紋識別系統開(kāi)發(fā)商的使用。但在開(kāi)發(fā)使用I-touch指紋傳感器過(guò)程中同時(shí)也 現I-touch器件對有效圖像捕捉效率存在美中不足的問(wèn)題,因而需要進(jìn)行一些改裝。 1 有效指紋圖像的確認及存在問(wèn)題 指紋圖像捕捉系統在工作時(shí),只有連續兩次捕捉的圖像相同才可決定這個(gè)圖像是有效圖像。而在實(shí)際使用過(guò)程中,往往是傳感器先啟動(dòng)了掃描程序,然后被檢者和放入手指進(jìn)行掃描,所以,開(kāi)始時(shí)可能只是掃到一個(gè)不完整的指紋圖像,等到下一次掃描時(shí),才得到一個(gè)完整的指紋圖像,這樣,就得到兩個(gè)不相同的圖像,因而必須進(jìn)行第三次掃描,但在第三次掃描還未結束時(shí),被檢者由于在傳感器上停留的時(shí)間太長(cháng)而造成不耐煩,可能又把手指取出或移動(dòng),這樣將使最后得出的三個(gè)圖像都不一樣,從而使傳感器會(huì )返回一個(gè)無(wú)效圖像。其最后結果是被檢者要重新掃描指紋。 由于I-touch指紋傳感器工作啟動(dòng)模式只有兩種設定,一是由程序員預設“回車(chē)”鍵啟動(dòng);另一種是開(kāi)機后即自動(dòng)連續進(jìn)行。而I-touch指紋傳感器沒(méi)有識別和控制被檢者是否正確操作的感應裝置。所以上述兩種啟動(dòng)模式都存在著(zhù)在其啟動(dòng)時(shí)被檢者的手指未放置到位以致產(chǎn)生空掃描或不完整掃描 而形成無(wú)效圖像、需要多次操作、影響工作效率的問(wèn)題。 2 啟動(dòng)與同步的改進(jìn)設計 2.1 手指與位觸動(dòng)開(kāi)關(guān) 經(jīng)過(guò)仔細研究和多次試驗,筆者在I-touch指紋傳感器中加裝了一個(gè)手指到位開(kāi)關(guān),只有手指完全到位,系統才開(kāi)始啟動(dòng)指紋掃描程序,從而有效地解決了工作啟動(dòng)與被檢手指到位不同步的問(wèn)題。具體結構如圖1所示,該設計是在I-touch指紋傳感器中加裝了兩個(gè)觸點(diǎn),其中一個(gè)觸點(diǎn)由單片機P1.0腳引出,另一個(gè)直接與地連接。并在滑塊的A點(diǎn)加裝了一個(gè)金屬塊,從而形成一個(gè)觸動(dòng)開(kāi)關(guān)。工作時(shí),使被檢手指推動(dòng)滑塊,由滑槽的B點(diǎn)運動(dòng)至C點(diǎn),待完全到位時(shí),正好接通兩個(gè)觸點(diǎn),并同時(shí)使單片機的輸入P1.0腳置低電平,形成單片機輸入信號,通過(guò)單片機與PC機接口立即啟動(dòng)I-touch指紋傳感器,開(kāi)始進(jìn)行指紋掃描。 2.2 觸動(dòng)開(kāi)關(guān)硬件電路 圖2為觸動(dòng)開(kāi)關(guān)中單片機與PC機接口設計的硬件電路圖。本電路采用ATML89C51、MAX232及一些外圍元件構成串口通訊電路。 電路工作時(shí),開(kāi)關(guān)1接通,P1.0腳由高電平變成低電平,當單片機檢測到P1.0輸入端為低電平時(shí),即通過(guò)MAX232向PC機串口傳送“S”信號,使PC 機控制指紋傳感器執行掃描程序。當PC機要集指紋圖像完成時(shí),再由com2口向單片機發(fā)出“E”信號表示結束,并將P2.0置低電平,同時(shí)使指示燈發(fā)亮,向用戶(hù)表明指紋采集完成。用戶(hù)此時(shí)手指即可離開(kāi)。 2.3 程序設計 PC機端程序采用DHLPHI語(yǔ)言編寫(xiě),程序框圖如圖3所示,單片機程序采用C51語(yǔ)言編寫(xiě),程序框圖見(jiàn)圖4,以下是DELPHI程序代碼: 本程序采用Comport控件,可用來(lái)實(shí)現基于WIN9X平臺與單片機的串口通訊。 Procedure TMAINFORMA.ComPort11RxChar(Sender:Tobject;Count:Integer); Begin ComPort11.ReadStr(Str,Count); If str='S'then Timer40.enabled:=true;//執行指紋采集模塊 End; //輸出控制模塊; ComPort11.WriteStr('E');//輸出驅動(dòng)信號 單片機C51程序代碼如下: #include io51.h“ void DELAY(unsigned int value) { while(value>0) value--; } bit FLAG0=0; static const char TAB[]=“S”; main() { char c=0; SCON=0x50; TMOD=0x20; TH1=0xe6; TR1=1; While(1) { do { if (RI= =1) { R1=0; P2=~SBUF; DELAY(3000); P2=0xff; } } while (P1-0!=0); DELAY(2000); SBUF=TAB[C]; while(TI!=1); TI=0; } } 3 結束語(yǔ) 本設計已成功地應用到湛江師院開(kāi)發(fā)的活體指紋識別通道系統及學(xué)生指紋管理系統中,效果良好,正常操作約0.2~0.3秒內一般都能正常完成指紋集?擅黠@提高指紋有效圖像采集的速率。若應用在替代體指紋識別的通道中,則效果更為明顯。 |