基于DSP CCS2.2實(shí)現(xiàn)指紋識(shí)別預(yù)處理系統(tǒng)
數(shù)字信號(hào)處理器(DSP)是指以數(shù)值計(jì)算的方法對(duì)數(shù)字信號(hào)進(jìn)行處理的芯片。它具有處理速度快、靈活、精確、抗干擾能力強(qiáng)、體積小、使用方便等優(yōu)點(diǎn)。DSP應(yīng)用于指紋識(shí)別已經(jīng)成為一個(gè)新的科技領(lǐng)域和獨(dú)立的學(xué)科體系,當(dāng)前已形成了有潛力的產(chǎn)業(yè)和市場(chǎng)。
本文選定100MHz DSP TMS320VC5402作為指紋信號(hào)的處理器,利用其流水線(xiàn)編碼的操作特點(diǎn),并結(jié)合指紋識(shí)別技術(shù),實(shí)現(xiàn)基于DSP CCS2.2的指紋識(shí)別預(yù)處理系統(tǒng)。CCS 2.2(Code Composer Studio)是一種針對(duì)標(biāo)準(zhǔn)TMS320調(diào)試接口的集成開(kāi)發(fā)環(huán)境(IDE),由TI公司于1999年推出。指紋識(shí)別的處理流程如圖1所示。
圖1 指紋識(shí)別流程圖
指紋處理過(guò)程可分為三個(gè)階段:
(1) 獲取原始指紋圖像,進(jìn)行預(yù)處理;
(2) 提取指紋特征點(diǎn);
(3) 指紋識(shí)別分析判斷。
在上述三個(gè)階段中,指紋圖像的預(yù)處理階段尤為重要,該階段對(duì)圖像處理的好壞直接關(guān)系到后面兩個(gè)階段工作的開(kāi)展。本文結(jié)合TMS320VC5402的特點(diǎn),重點(diǎn)研究指紋識(shí)別的預(yù)處理算法及其DSP實(shí)現(xiàn)問(wèn)題,其中包括指紋的極值濾波、平滑濾波、拉普拉斯銳化、迭代二值化和該算法在DSP開(kāi)發(fā)平臺(tái)CCS2.2的C5000上的仿真實(shí)現(xiàn)。這一問(wèn)題的解決,可為未來(lái)指紋識(shí)別系統(tǒng)的脫機(jī)應(yīng)用提供很有價(jià)值的參考。
1 指紋識(shí)別預(yù)處理算法
指紋識(shí)別預(yù)處理的目的是使指紋圖像更清晰,邊緣更明顯,以便提取指紋的特征點(diǎn)進(jìn)行識(shí)別。本文采取極值濾波和改進(jìn)的平滑濾波進(jìn)行噪聲消除,使圖像不失真;采取拉普拉斯銳化對(duì)指紋進(jìn)行紋線(xiàn)增強(qiáng),突出邊緣信息,為自適應(yīng)閥值的迭代二值化提供方便。
1.1 極值濾波
解梅、馬爭(zhēng)[1]認(rèn)為極值濾波器的設(shè)計(jì)是基于這樣一種理念:在指紋圖像的采集過(guò)程中,指紋圖像所受到的沖擊性噪聲表現(xiàn)為一些斑點(diǎn)或亮點(diǎn)。在一般情況下,可以認(rèn)為絕大數(shù)沖擊性噪聲是被真實(shí)的灰度值所包圍。同時(shí)噪聲污染的像素要遠(yuǎn)遠(yuǎn)小于真實(shí)灰度值的像素。因此在噪聲的消除過(guò)程中,無(wú)需對(duì)大多數(shù)沒(méi)有被噪聲污染的像素進(jìn)行改變處理,只需對(duì)那些被污染的像素進(jìn)行“真實(shí)值”代替處理,而這些值的確定可通過(guò)圖像像素鄰域的相關(guān)性來(lái)確定。
設(shè)有一待處理器像素為s0,其周?chē)?鄰域像素排列為
取鄰域相關(guān)像素的均值為Ai,i∈{1,2,...8},并以四個(gè)像素為一組處理單元,則改進(jìn)的極值濾波[1]算法可表述如下:
如果A0>max(Ai),i∈{1,2,...8},則
如果A0 < min(Ai), i∈{1,2,...8}, 則
s1=s2=s4=s0=min(A1,A2,A4)
s2=s3=s5=s0=min(A2,A3,A5)
s4=s6=s7=s0=min(A4,A6,A7) (3)
s5=s7=s8=s0=min(A5,A7,A8)
如果min(Ai)≤Ai≤max(Ai),i∈{1,2,...8},則將像素原值輸出,不作處理。
實(shí)驗(yàn)結(jié)果表明,該方法能得到與中值濾波類(lèi)似的效果,達(dá)到了初步去除噪聲的目的。
1.2 平滑濾波
經(jīng)過(guò)上面的極值濾波處理之后,圖像傳輸過(guò)程中所形成的大多數(shù)沖擊性噪聲均被除去,但指紋圖像中還存在著隨機(jī)噪聲,需進(jìn)一步對(duì)圖像進(jìn)行平滑處理。本文采取兩次平滑濾波,一次是在極值濾波之后,一次是在銳化濾波之后。改進(jìn)的平滑卷積核為
系數(shù)取1/15而非原來(lái)的1/17的原因在于提高圖像的對(duì)比度;而卷積核中心像素加權(quán)系數(shù)取為5是為了突出該點(diǎn)像素。實(shí)驗(yàn)結(jié)果表明,該改進(jìn)是可行的,有利于突出中心像素并有效去除隨機(jī)噪聲。
1.3 銳化濾波
對(duì)于由于積分運(yùn)算所造成的模糊圖像,有必要對(duì)其模糊進(jìn)行校正,進(jìn)而增強(qiáng)指紋圖像的邊界。具體做法為增強(qiáng)指紋脊線(xiàn)與谷的對(duì)比度。這種增強(qiáng)指紋圖像的高頻成分,使其邊緣清晰的方法稱(chēng)為銳化。因此,銳化的目的在于使經(jīng)過(guò)平均或積分運(yùn)算后變得模糊的圖像的邊緣和輪廓變得清晰,并使細(xì)節(jié)清晰[2]。在本文中,銳化卷積核采用拉普拉斯算子[3]:
通過(guò)該卷積核對(duì)圖像進(jìn)行卷積預(yù)算,能實(shí)現(xiàn)高通濾波,進(jìn)而得到銳化后的指紋脊線(xiàn)。
1.4 迭代閥值二值化
指紋圖像經(jīng)過(guò)極值濾波、平滑濾波、拉普拉斯銳化濾波、平滑濾波后,大多數(shù)噪聲都已被消除,這就為特征點(diǎn)提取提供了基礎(chǔ)。為了提取特征點(diǎn),需對(duì)指紋圖像進(jìn)行分割。本文采取迭代閥值的方法對(duì)指紋圖像進(jìn)行閥值分割。在圖像處理中,反復(fù)地用一種運(yùn)算直至條件滿(mǎn)足而得到輸出圖像的方法稱(chēng)為迭代。迭代閥值方法如下:
①設(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)行處理更有普遍意義,且行之有效。
2 指紋圖像在CCS 2.2上的輸入與輸出
在設(shè)計(jì)中,采用DSP集成開(kāi)發(fā)環(huán)境CCS2.2對(duì)指紋識(shí)別算法進(jìn)行模擬驗(yàn)證。用指紋成像系統(tǒng)采集一幅*bmp格式指紋圖像,如finger.bmp指紋圖像。在該指紋圖像的數(shù)據(jù)上面添加一個(gè)COFF文件的文件頭。以文件名finger.out保存。*.out文件為T(mén)I的公共目標(biāo)文件。利用CCS中的File-Load Data 可以將finger.out的指紋圖像放到DSP的相應(yīng)內(nèi)存中去,本次設(shè)計(jì)中將finger.out存放于DSP的數(shù)據(jù)存儲(chǔ)空間。利用CCS中的Image菜單,通過(guò)設(shè)置相關(guān)選項(xiàng)可以觀察處理前的圖像與處理后的圖像。
3 實(shí)際指紋圖像預(yù)處理效果
依據(jù)上述指紋識(shí)別預(yù)處理算法,通過(guò)CCS2.2的模擬功能,實(shí)現(xiàn)了指紋識(shí)別預(yù)處理的DSP處理,達(dá)到了DSP處理指紋圖像的應(yīng)用目的。結(jié)果如圖2所示。
圖2 實(shí)際指紋預(yù)處理結(jié)果
本文針對(duì)TMS320VC5402 DSP的快速、高效的特點(diǎn),采取了DSP集成開(kāi)發(fā)環(huán)境CCS2.2對(duì)指紋圖像進(jìn)行預(yù)處理。在指紋的預(yù)處理中,由于DSP具有10ns指令周期,使采用改進(jìn)的極值濾波和改進(jìn)的卷積核平滑濾波對(duì)指紋圖像進(jìn)行一次、二次平滑實(shí)時(shí)處理成為可能。實(shí)驗(yàn)結(jié)果表明,該方法能有效地處理指紋圖像的沖擊性噪聲和隨機(jī)噪聲。而迭代二值化的運(yùn)算充分利用了DSP 五級(jí)流水線(xiàn)操作,達(dá)到了利用DSP對(duì)指紋圖像進(jìn)行預(yù)處理的應(yīng)用目的。
評(píng)論