使用SPCE061A的指紋識(shí)別系統(tǒng)設(shè)計(jì)
MBF300傳感器的特點(diǎn)
MBF300表面保護(hù)膜異常堅(jiān)硬,使得該傳感器經(jīng)久耐用。它的工作電壓為2.8V~5V,所以可以利用電池進(jìn)行供電。它具有256*32像素感應(yīng)矩陣,使得指紋的特征采樣數(shù)據(jù)更精確。它的總線接口分別支持USB1.1、增強(qiáng)型8位微處理器接口和SPI串行接口。SPCE061A利用
USB接口芯片PDIUSBD12和MBF300指紋傳感器進(jìn)行通信。
4軟件設(shè)計(jì)
4.1指紋識(shí)別算法
人類的指紋由緊密相鄰的凹凸紋路構(gòu)成,根據(jù)公式3-2,通過對(duì)每個(gè)像素點(diǎn)上利用標(biāo)準(zhǔn)參考放電電流,便可檢測(cè)到指紋的紋路狀況,具體算法分為四部分。
4.1.1指紋識(shí)別預(yù)處理算法
指紋識(shí)別預(yù)處理的目的是使指紋圖像更清晰,邊緣更明顯,以便提取指紋的特征點(diǎn)進(jìn)行識(shí)別。本文采取極值濾波和改進(jìn)的平滑濾波進(jìn)行噪聲消除,使圖像不失真;采取拉普拉斯銳化對(duì)指紋進(jìn)行紋線增強(qiáng),突出邊緣信息,為背景分離算法提供方便。
4.1.2背景分離
采用迭代閥值的方法對(duì)指紋圖像進(jìn)行閥值分割。在圖像處理中,反復(fù)地用一種運(yùn)算直至條件滿足而得到輸出圖像的方法稱為迭代。迭代閥值方法如下:
①設(shè)定初始灰度閾值T(如令T=127),指指紋圖像的灰度值分為兩組R1和R2。
②計(jì)算兩組的平均灰度值u1和u2。
③重新設(shè)定新的灰度閾值T。新的T定義為:T=(u1+u2)/2。
④依據(jù)新的T對(duì)指紋圖像進(jìn)行閥值分割。
這種方法是以自適應(yīng)的閥值對(duì)指紋圖像進(jìn)行二值化處理。實(shí)驗(yàn)結(jié)果表明,該方法比設(shè)定固定閥值進(jìn)行處理更有普遍意義,且行之有效。
4.1.3 特征點(diǎn)提取
采用脊跟蹤法,其基本思想是直接對(duì)圖象進(jìn)行脊線跟蹤,在跟蹤過程中檢測(cè)和提取特征點(diǎn)。
4.1.4分類算法
指紋被分成5大類:拱類、做環(huán)類、右環(huán)類、尖拱類和旋渦類,預(yù)先使用全局特征排序,可以加速指紋的匹配服務(wù)。
4.2程序流程
當(dāng)系統(tǒng)處于空閑狀態(tài)時(shí),SPCE061A利用P_SystemClock單元寫入CPUCLK STOP控制字,使系統(tǒng)從運(yùn)行狀態(tài)轉(zhuǎn)入睡眠狀態(tài),關(guān)閉系統(tǒng)時(shí)鐘(PLL振蕩器)。當(dāng)用戶有指紋或按鍵輸入時(shí), 系統(tǒng)接收到喚醒信號(hào)后接通PLL振蕩器,同時(shí)CPU會(huì)響應(yīng)喚醒事件的處理并進(jìn)行初始化。利用IRQ3_KEY為觸鍵喚醒源,利用FIQ為MBF300指紋傳感器輸入喚醒源。下面是程序流程圖3和IRQ3_KEY喚醒程序的部分代碼。
圖3 程序流程圖
R1=0x0000; //設(shè)置A口為帶下拉電阻的輸入口
評(píng)論