專利名稱:指紋鑒別特征提取電路的制作方法
一、概述本發(fā)明屬于計算機圖象信息處理領(lǐng)域。
根據(jù)指紋圖象數(shù)據(jù)庫系統(tǒng)要求,指紋特征提取電路采用專用的ASIC集成電路實現(xiàn),提取算法為了硬件實現(xiàn)需要作了與軟件實現(xiàn)完全不同的特殊處理。ASIC電路和系統(tǒng)結(jié)構(gòu)都經(jīng)過精心設(shè)計,處理速度度甚快,提取一個指紋的特征不足一秒,比軟件要提高2個數(shù)量級,可靠性高、保密性強,高度集成(最高的每片電路含8000邏輯門),體積小,提取方法先進,便利在各種計算機上配套使用,特別適合在微機上推廣使用。
指紋鑒定是辨明個人身份最直觀、最方便、最可信和最有效的方法,以現(xiàn)代技術(shù)實現(xiàn)的指紋鑒別處理機,在公安、銀行、金融、保險、海關(guān)等部門有重要的意義。
本電路采用的方法具有以下技術(shù)特征1.改進了指紋圖梯度g4的方向。
一般的指紋圖梯度方向見圖3(a),本電路指紋圖梯度方向見圖3(b)。圖3(a)中計算點(k,l)的梯度g1、g2、g3、g4時,由于采用從左至右橫掃描,所以必須新取三個點(k-1,l+1)、(k,l)、(k,l-1)的數(shù)據(jù),另外二個點(k-1,l-1)、(k-1,l)在計算點(k-1,l)的梯度時已取出。圖3(b)計算點(k,l)的梯度g1、g2、g3、g4時只需新取二個點(k,l)、(k+1,l-1)的數(shù)據(jù),而其他三個點(k-1,l)、(k-1,l-1)、(k,l-1)的數(shù)據(jù)在計算左邊點的梯度時已取出來。這樣就降低了指紋圖F(k,l)的取數(shù)頻率,由原來一拍取三個數(shù)減為一拍取兩個數(shù),取數(shù)頻率減少了三分之一,保證了控制流和數(shù)據(jù)流的匹配關(guān)系。計算公式如下g1(k,l)=f(k,l)-f(k-1,l)g2(k,l)=f(k,l)-f(k-1,l-1)g3(k,l)=f(k,l)-f(k,l-1)g4(k,l)=f(k,l)-f(k+1,l-1)2.改進了指紋圖在方陣局部區(qū)域內(nèi)總變差ai(k,l)的算法,使計算量減至最少。
根據(jù)要求ai(k,l)=
(m,n)其中 i=1,2,3,4R為以(k,l)為中心點的方陣數(shù)據(jù)區(qū)域,參見圖6。
原用鑲邊方法計算ai(k,l),即ai(k,l)=ai(k-1,l)-ΣPgi(m,n)+ΣOgi(m,n)]]>鑲邊算法及P、Q區(qū)域的含義見圖4。這種方法每計算一個點的ai必須加上Q區(qū)域內(nèi)的gi,同時還要減去P區(qū)域內(nèi)的gi,運算次數(shù)多,速度慢,而且換行計算ai時要經(jīng)過復(fù)雜的初始化處理。
改進后的算法利用以第k-1列第l行為中心點的方陣的ai(k-1,l),以第k-1列第l-1行為中心點的方陣的ai(k-1,l-1),以第k列第l-1行的方陣的ai(k,l-1)來計算以第k列第l行為中心點的方陣的ai(k,l),我們把這4個方陣所復(fù)蓋的方陣稱為以第k列第l行為中心點的擴展方陣,該擴展方陣左上角、右上角、左下角、右下角有定義的梯度分別記為gi(1)、gi(2)、gi(3)、gi(4),見圖5。
從圖5中可以看出
ai(k,l)=ai(k-1,l)-ai(k-1,l-1)+ai(k,l-1)+gi(1)-gi(3)-gi(2)+gi(4)移項得ai(k,l)-ai(k,l-1)=ai(k-1,l)-ai(k-1,l-1)+gi(1)-gi(3)-gi(2)+gi(4)將ai(k,l)-ai(k,l-1)記為△ai(k,l),ai(k-1,l)-ai(k-1,l-1)記為△ai(k-1,l),gi(1)-gi(3)記為△gi(Ⅰ),gi(2)-gi(4)記為△gi(Ⅱ),則可得△ai(k,l)=△ai(k-1,l)+△gi(Ⅰ)-△gi(Ⅱ)并且得ai(k,l)=△ai(k,l)+ai(k,l-1)上式中的△ai(k-1,l)是計算前一點時求得的,△gi(Ⅰ)可以通過△gi(Ⅱ)存于移位寄存器中取得,ai(k,l-1)是上一行計算的數(shù)據(jù),可以從緩沖存儲器中取得。本方法每求一個點的ai(k,l)只需加減運算4次,并且與區(qū)域的大小無關(guān),方陣越大,效率更顯得越高,此外,每行的初始值不必重新計算。
3.改進了計算指紋圖在園陣局部區(qū)域內(nèi)總變差a1i的方法。
設(shè)以上述園陣的園心為中心點,以上述園陣的直徑為邊長的方陣的總變差為ai,則a1i就等于ai減去四個角上屬于該方陣但又不屬于該園陣的所有點在i方向的梯度值(參見圖7)。
本方法規(guī)整統(tǒng)一,不必為園陣a1i的計算增加過多硬件。
4.采用流水線技術(shù)來提高處理速度對于計算較為復(fù)雜的ai(k,l)采用一拍流水,保證每拍能流出一個ai(k,l),經(jīng)過四拍依次流出ai(k,l)、a3(k,l)、a2(k,l)和a4(k,l),達(dá)到最高處理速度,在這個流水速度下DKL,HKL和局部極大值MAX的計算都是四拍一個結(jié)果,注意到瓶頸處理。
5.本方法適應(yīng)性強,它既可用來處理256×256點陣的指紋圖,又可用來處理512×512點陣的指紋圖,而且也能適應(yīng)不同大小方陣和園陣的處理需要。
二、總框圖指紋鑒別特征提取電路總框圖共分單數(shù)據(jù)流方式和雙數(shù)據(jù)流方式兩種。前者又稱MODE2方式,后者又稱MODE1方式,現(xiàn)分別介紹于下1.指紋鑒別特征提取電路單數(shù)據(jù)流方式總框圖(見圖1)。
在該框圖中F(k,l)是存放指紋圖的隨機存貯器。存入的指紋圖象供底下邏輯框SIGMA使用。SIGMA為邏輯電路,由寄存器、加法器、與或門及其它基本邏輯門組成。它的作用有二首先它將從F(k,l)來的指紋信息產(chǎn)生四個方向的梯度和及其各方向梯度之總和,并將其結(jié)果輸出至邏輯框圖G1,2,以便由它產(chǎn)生供框圖HKL使用的參數(shù)q1,q2,G1,2還能將梯度和和梯度之總和輸出至主機;其次,SIGMA還可以和邏輯框圖HAI連在一起用于計算不可定向性方陣圖、園陣圖的四個方向的總變差ai(k,l),這時,SIGMA為邏輯框HAI提供指紋圖方陣大小分別為13×13或5×5的局部區(qū)域上右上角減右下角的梯度之差,所以框圖SIGMA的輸出必須與HAI的輸入相連??驁DM是存放HAI的中間結(jié)果的隨機存貯器,邏輯框圖HAI計算局部區(qū)域4個方向的總變差,計算的結(jié)果ai(k,l)輸出到框圖HKL和DKL,并且把ai(k,l)存入緩沖存貯器M中??驁DHKL為計算不可定向性園陣圖H1或不可定向性方陣圖H2的邏輯電路,它除了利用到HAI輸入的四個方向的總變差ai(k,l)外,還要利用框圖T1(X)、T2(X)的結(jié)果??驁DT1(X)T2(X)為兩個可擦除可編程序只讀存貯器,存放專供H1或H2用的函數(shù)表,所以T1(X)、T2(X)的輸出,必然又是HKL的輸入。經(jīng)HKL計算出的結(jié)果H1(k,l)和H2(k,l)存入隨機存貯器MH,框圖MH除了作為下一框圖MAX的中間結(jié)果外,還有一個輸出與主機連結(jié)。DKL為邏輯電路框圖,供計算指紋方向圖D用。它與HKL的連法有點相似,除了輸入從HAI來的ai(k,l)外,還要用到可擦除可編程序只讀存貯器T3(X)、T4(X)、T5(X)、T6(X)、T7(X),它們都存放計算方向圖D的各種函數(shù)表??驁DMD為存放DKL結(jié)果的隨機存貯器,它有一個輸出可以把方向圖D(k,l)輸至主機。MAX是計算不可定向性方陣圖H2或不可定向性園陣圖H1的局部極大點的邏輯框圖,輸入的是MH中存的H2(k,l)或H1(k,l),輸出的是將本框計算出的局部極大點送入主機。
2.指紋鑒別特征提取電路雙數(shù)據(jù)流方式總框圖(見圖2)。
為了進一步提高處理速度,可以把計算方陣的總變差、不可定向性圖、不可定向性圖的局部極大點與計算園陣的總變差、不可定向性圖、不可定向性圖的局部極大點分開,采用雙套線路完成,以雙數(shù)據(jù)流方式并行工作。因此原先計算方陣的各框用角標(biāo)2表示,即HAI2,M2,HKL2,T21(X),T22(X),MH2,MAX2,計算園陣的各框用角標(biāo)1表示,即HAI1,M1,HKL1,T11(X),T12(X),MH1,MAX1,接法均與單數(shù)據(jù)流總框圖中的相同。
三、指紋圖F的四個方向的梯度、各方向的梯度和σi以及梯度總和σ的計算圖8-SIGMA不斷地從指紋圖F(k,l)中讀出f(k,l),每拍兩個數(shù),前半拍讀出f(k,l-1)經(jīng)FB至后半拍時存入寄存器Xibi,(i=1,2,3,4),后半拍讀出f(k,l)存入寄存器Etbi(i=1,2,3,4),以后,每隔一拍,順次推入寄存器Xii,Eti(i=1,2,3,4),Xiai(i=1,2,3),Etai(i=1,2,3),因此,在Xiai,Etai,Xii,Eti,Xibi,Etbi中,保存的總是f(k-1,l-1),f(k-1,l),f(k,l-1),f(k,l),f(k+1,l-1),f(k+1,l)。
通過absi運算器至gii中分別得到g1(k,l),g2(k,l),g3(k,l),g4(k,l),僅當(dāng)gi(k,l)無定義時,F(xiàn)FGi才封鎖相應(yīng)的門Ai,使之為O。通過運算器addi在寄存器Sg118-101,Sg218-201Sg318-301,Sg418-401中分別將gi(k,l)累加,最后得到四個方向的梯度和σi,同時累加四個σi,在Lfa11-0中得σ的高12位值。
比較器將gi(k,l)與常數(shù)P0比較,如果均小于P0則產(chǎn)生n0進行計數(shù),否則不計數(shù),即由n0分別進入框n012-01和Lfba11-0中,在n012-01中得到N0在Lfba11-0中得到值(65025-N0)/16。四條流水線并行工作,一拍流水,f圖掃描一遍即可求得所有結(jié)果。
圖10-G1,2給出供圖11-HKL用的q1或q2。首先將Lfa11-0通過圖8-SIGMA的出口SNf12-01進入半固定T8(X)查表得T8(Lfa11-0)至A,再由A經(jīng)加法器送B,B再和T8(X)中取出常數(shù)m1(固定地址中)相加于B,然后再和A中的T8(Lfba11-0)相減于B,再通過T9(X)查表出q1、q2的求法只是將B中結(jié)果再和T8(X)中的常數(shù)(在固定地址中)m2相加,然后通過T9(X)查表得出q2。
四、計算不可定向性圖H1和H2的ai(k,l)。
正如上面所述計算不可定向性圖H2中所有的ai(k,l),i=1,2,3,4ai(k,l)=
(m,n) i=1,2,3,4k=7,8,……,250l=7,8,……,250R1={(m,n)|(m,n),(m-1,n)∈S7}R2={(m,n)|(m,n),(m-1,n-1)∈S7}
R3={(m,n)|(m,n),(m,n-1)∈S7}R4={(m,n)|(m,n),(m+1,n-1)∈S7}S7為以(k,l)為中心點的13×13個點的方塊(參見圖6)。
g1(m,n)=f(m,n)-f(m-1,n)g2(m,n)=f(m,n)-f(m-1,n-1)g3(m,n)=f(m,n)-f(m,n-1)g4(m,n)=f(m,n)-f(m+1,n-1)注意g1(k-6,u),g2(k-6,u),g2(v,1-6)g3(v,1-6),g4(k+6,u),g4(v,1-6)無定義(u取值1-6至1+6,v取值k-6至k+6),無定義點取值為零不影響計算結(jié)果。
經(jīng)過簡化得遞推式a1(k-6,l-6)=△a1(k-6,l-6)+a1(k-6,l-7)a2(k-6,l-6)=△a2(k-6,l-6)+a2(k-6,l-7)a3(k-6,l-6)=△a3(k-6,l-6)+a3(k-6,l-7)a4(k-6,l-6)=△a4(k-6,l-6)+a4(k-6,l-7)△a1(k-6,l-6)=△a1(k-7,l-6)+△g1(k-12,l-6)-△g1(k,l-6)△a2(k-6,l-6)=△a2(k-7,l-6)+△g2(k-12,l-6)-△g2(k,l-6)△a3(k-6,l-6)=△a3(k-7,l-6)+△g3(k-13,l-6)-△g3(k,l-6)
△a4(k-6,l-6)=△a4(k-7,l-6)+△g4(k-13,l-6)-△g4(k-1,l-6)△g1(k,l-6)=g1(k,l-13)-g1(k,l)△g2(k,l-6)=g2(k,l-12)-g2(k,l)△g3(k,l-6)=g3(k,l-12)-g3(k,l)△g4(k-1,l-6)=g4(k-1,l-12)-g4(k-1,l)k=1,2,……256,l=1,2,……256,只須假定在點(k,l)使gi(k,l)無定義時,取零值。初值△ai(-6,-5)=0,ai(-5,-6)=ai(-4,-6)=……=ai(256,-6)=0按上式計算得ai(k-6,l-6)i=1,2,3,4k=13,14,……256l=13,14,……256即為所求。
對于計算不可定向性圖H1中所有的ai(k,l),i=1,2,3,4,先將上法中S7改為S2,即5×5個點的區(qū)域(參見圖7),用如下遞推式算出ai(k,l)ai(k-2,l-2)=△ai(k-2,l-2)+ai(k-2,l-3)△a1(k-2,l-2)=△a1(k-3,l-2)+△g1(k-4,l-2)-△g1(k,l-2)△a2(k-2,l-2)=△a2(k-3,l-2)+△g2(k-4,l-2)-△g2(k,l-2)△a3(k-2,l-2)=△a3(k-3,l-2)+△g3(k-5,l-2)-△g3(k,l-2)
△a4(k-2,l-2)=△a4(k-3,l-2)+△g4(k-5,l-2)-g4(k-1,l-2)△g1(k,l-2)=g1(k,l-5)-g1(k,l)△g2(k,l-2)=g2(k,l-4)-g2(k,l)△g3(k,l-2)=g2(k,l-4)-g3(k,l)△g4(k-1,l-2)=g4(k-1,l-4)-g4(k-1,l)i=1,2,3,4,k=1,2,……256 l=1,2,……256同樣,需假定在(k,l)使gi(k,l)無定義時,取零值。初值△ai(-2,-1)=0,ai(-1,-2)=ai(0,-2)=……=ai(254,-2)=0,在k=13,14,……256,l=13,14,……256時的ai(k-2,l-2)即為所求。然后再將剛算得的S2上的ai(k,l)換算成R2上的ai(k,l),見圖7。
a′1(k-2,l-2)=a1(k-2,l-2)-〔g1(k-3,l-4)+g1(k-3,l)+g1(k,l-4)+g1(k,l)〕=a1(k-2,l-2)-Sumg1(k-3,l)-Sum g1(k,l)a′2(k-2,l-2)=a2(k-2,l-2)-〔g2(k-3,l-3)+g2(k,l)〕=a2(k-2,l-2)-Sum g2(k-3,l-3)-Sum g2(k,l)a′3(k-2,l-2)=a3(k-2,l-2)-〔g3(k-4,l-3)+g3(k-4,l)+g3(k,l-3)+g3(k,l)〕=a3(k-2,l-2)-Sum g3(k-4,l)-Sum g3(k,l)
a′4(k-2,l-2)=a4(k-2,l-2)-〔g4(k-4,l)+g4(k-1,l-3)〕=a4(k-2,l-2)-Sum g4(k-4,l)-Sum g4(k-1,l-3)以上a′i(k-2,l-2)即為H1中的ai(k-2,l-2)。
現(xiàn)分述利用框圖實現(xiàn)H2、H1的ai(k,l)的過程。
首先,從F(k,l)中每拍取兩個數(shù),每隔四拍在Xia1,Eta1,Xia2,Eta2,Xia3,Eta3,Xi4,Et4中存放值f(k-1,l-13),f(k-1,l-12),f(k-1,l-5),f(k-1,l-4),f(k-1,l-4),f(k-1,l-3),f(k-1,l-1),f(k-1,l),在Xi1,Et1,Xi2,Et2,Xi3,Et3,Xib4,Etb4中存放值f(k,l-13),f(k,l-12),f(k,l-5),f(k,l-4),f(k,l-4),f(k,l-3),f(k,l-1),f(k,l)。下一個四拍順次在G1i中得g1(k,l-13),g3(k,l-12),g2(k,l-12),g4(k-1,l-12),在G2i中得g1(k,l-5),g3(k,l-4),g2(k,l-4),g4(k-1,l-4),在G3i中得g1(k,l-4)g3(k,l-3),g2(k,l-3),g4(k-1,l-3),在G4i中得g1(k,l),g3(k,l),g2(k,l),g4(k-1,l)。再下個四拍可以在Sg106-101中得△g1(k,l-6),△g3(k,l-6),△g2(k,l-6),△g4(k-1,l-6)。Sg206-201中得△g1(k,l-2),△g3(k,l-2),△g2(k,l-2),△g4(k-1,l-2)。在Sg306-301中得Sumg1(k,l),Sum g3(k,l),Sum g2(k,l-3),Sum g4(k-1,l-3),在Sg406-401中得O,O,Sumg2(k,l),Sum g4(k-1,l)。
圖9-HAI是為計算H1和H2的ai(k,l)提供的。當(dāng)作為計算H2的ai(k,l)時,Sg25-21,Sg35-31,Sg45-41,F(xiàn)YW115-111有關(guān)控制門均關(guān)閉使之不起作用,但FYW115-111因系通過反相器輸出,故送全“1”至Addpai2。YW135-131每隔四拍相繼輸出△g1(k-12,l-6),△g3(k-13,l-6),△g2(k-12,l-6)和△g4(k-13,l-6)。由Sg15-11把△g1(k,l-6),△g3(k,l-6),△g2(k,l-6),△g4(k-1,l-6)分別送入移位寄存器YW13-11,YW33-31,YW23-21,YW43-41經(jīng)移位后再順次由YW135-131輸出,因為除YW33-31為13次移位外,其余為12位的移位后的輸出,所以YW135-131的輸出正好為△g3,4(k-13,l-6)或△g1,2(k-12,l-6)。
緩沖存貯器每次都把ai(k,l-1)取出,經(jīng)計算后再存入新值ai(k,l)。FM1是在計算第一行時,即(k,l)點時封M1中的內(nèi)容,保證在Addai1加法器中收到的所有ai(k,0)均為零值。
在△ai(l-1)中通常存△ai(k-7,l-6),僅當(dāng)△ai(-6,l-6)時由F△ai使之輸出該值為零?!鱝iH為△ai(l-1)的緩沖寄存器,作暫存用。經(jīng)加法器Addai3,Addai2在△ai中存的是△ai(k-6,l-6),最后得結(jié)果ai(k,l)于Ai中,圖右邊pai以下部份在計算H2圖時做ai(k,l)+O+O(用全“1”碼加1完成加零操作),所以在pai內(nèi)容不變。
圖9-HAI在作H1圖的a1i(k,l)運算時,對Ai計算僅需把YW13-11,YW33-31,YW23-21,YW43-41改為YW13,YW33,YW23YW43,統(tǒng)一由YW135-131輸入到加法器Addai3,另外,加法器Addai2的一個輸入端由Sg15-11改為Sg25-21,其余前所述。
圖右的Pai計算是專供H1用的。首先Sumg34中每四拍的一、二、四拍由Sg44-41送入Sum g1(k,l),Sum g3(k,l),Sum g4(k.l),第三拍由Sg35-31送入Sum g2(k,l)。其次,F(xiàn)YW115-111是由YW115-111求反得來的,而YW115-111則是由移位寄存器YW11,YW31,YW21,YW41輸出。分別由Sg35-31和Sg45-41送入。通過Sg35-31送入YW11的是Sum g1(k,l),送入YW31的是Sum g3(k,l),送入YW21的是Sum g2(k,l-3),通過Sg45-41送YW41的是Sum g4(k-1,l)。所以,YW115-111的輸出,依次為Sum g1(k-3,l),Sum g3(k-4,l),Sum g2(k-3,l-3),Sum g4(k-4,l)。除YW31移位寄存器長度為4,其余為3。通過兩層加法器Addpai1,Addpai2,經(jīng)過兩次相減在PAi中得H1的ai(k,l)。
最后,當(dāng)所有a1i(k,l)<256時令Lpai=1,否則為零。當(dāng)有一個a1i(k,l)≥1024時,所有a1i(k,l)右移一位,通過Pai11-1輸出。
五、方向圖D(k,l)的計算(DKL)由HAI每四拍流出的H2圖的ai(k,l),通過出口Lpai和Pai10-1得到,當(dāng)ai中有一個大于或等于1024時,Pai10-1實際上輸出的已是ai右移一位后的結(jié)果。但若所有的ai(k,l)<256,則LPai為1,Pai10-1輸出仍是ai(k,l),四拍中按a1,a3,a2,a4順序流出,然后進入DKL入口處。凡是LPai=1,所有ai均左移過一位。Da12接收a1(k,l)或a2(k,l)值,Da34接收a3,a4。Db5通過運算器Addd2算出b1-b3和b2-b4,經(jīng)半固定存儲器查表得T6(b1-b3)和T6(b2-b4),并將其依次存入寄存器DT6中。在Db3和Db34中,通過Db34和運算器Addd1先得b3=min(a1,a3),再得到b4=min(a2,a4);類似地在Db1和Db12中先得到b1=max(a1,a3),后得b2=max(a2,a4)。Db3b4通過Addd3得到 1/2 1/2 (b3+b4),并通過它得到|b3-b4|,在T6(X)查表得T6(|b3-b4|),置于DT6中,于是在DXY中可求出X和Y值(X=2T6(|b3-b4|),Y=T6(b1-b3)+T6(b2-b4))。DZ2中可以求出T7(X)(當(dāng)X<4096時)和2.T7(X)(x≥4096)或2.T7(Y)(當(dāng)Y<4096)和4.T7(y)(當(dāng)y≥4096時),在DZ1中將α·T7(X)和β·T7(y)相加。在De1中得值|b3-b4|/2(當(dāng)a1=a3∨a2=a4),T3(Z)(Z<16384,a1=a3,a2=a4)或4·T3(Z/16)-2(反之)。然后De1再分別與De2,De3相加,由于De2是由Db1和Db3b4中的內(nèi)容相減得到,即為b1- ((b3+ b4))/2 或b3- ((b3+ b4))/2 。所以,相加后和為b1-e或b3-e,經(jīng)T4(b1-e)和T4(b3-e)與D6,在D0中得T4(b1-e)-T4(b3-e),合并u,v查表得T5{u,v,T4(b1-e)-T4(b3-e)}(其中u=Sgn(a1-a3),v=Sgn(a4-a2))最后根據(jù)選擇門選取該值或0,63,189,126值,作為DKL值存于MD存貯器中。DKL按四拍出一組ai(k,l)安排,每四拍出一個D(k,l),存于MD中。由于ai(k,l)是每拍都來,因此DKL工作是一拍流水線結(jié)構(gòu)。
六、不可定向性圖的計算(HKL)無論是算不可定向性圖H1或是H2,均用圖11-HKL的流程計算。首先,接收HAI送來的ai(k,l),當(dāng)有一個ai(k,l)≥1024時,Pai10-1實際上輸出的已是ai右移一位后的結(jié)果,否則Pai10-1的輸出是ai、Pai10-1按a1,a3,a2,a4順序,相應(yīng)地存入寄存器a12,a34中,a12中存a1或a2,a34中存a3或a4。在a13,24中存和a1+a3或和a2+a4,在b12中存其最大值,即b1=max(a1,a3)或b2=max(a2,a4),將以上四值,分別去半固定存貯器T1(X)中查表,依次將T1(a1+a3),T1(b1),T1(a2+a4)和T1(b2)置于T中,經(jīng)AddT累加于寄存器R中,內(nèi)容為T1(a1+a3)-T1(b1)+T1(a2+a4)-T1(b2),經(jīng)T2(X)作用得函數(shù)值T2〔T1(a1+a3)……-T1(b2)〕,如果b1,b2都小于q1或q2,則hi(k,l)取0值,反之,若b2=0,取255值,都不滿足取T2〔T1(a1+a3)-T1(b1)+T1(a2+a4)-T1(b2)〕,本流程按HAI每四拍流出一組ai(k,l)安排,因此,每四拍得一個h(k,l)值,存于MH中。
七、局部極大點的計算(MAX)Pn(kn,ln)是在Hj(j=1,2)圖上區(qū)域S3(S3是以Pn為中心點的3×3方陣,方陣中9個點從左至右,從上至下分別記為P1P2……P9)的局部極大點,當(dāng)且僅當(dāng)hj(Pn)≥hj(x)∧hj(Pn)>Pj,x∈S3,Pj為常數(shù)。
圖13-MAX的實現(xiàn)方法如下設(shè)緩存M中存有已知結(jié)果M〔k,1〕,M〔k,2〕,M〔k,1〕=max〔hj(P1),hj(P2),hj(P3)〕,即方陣第一行最大值。M〔k,2〕=max〔hj(P4),hj(P5),hj(P6)〕,即方陣第二行最大值。
在C1,C2中存hj(P7),hj(P8),計算Pn時,先求出max(hj(P7),hj(P8)),即在運算器MAX(a,b)中求出C1,C2的最大值,并且置于Cmax中。然后將P9的hj(P9)從MH中讀出,存于C3中,再與Cmax一起求max,再存于Cmax中,因此Cmax中存的是max(hj(P7),hj(P8),hj(P9)),即M〔k,3〕,然后將M〔k,3〕與緩存中的M〔k,1〕,M〔k,2〕求max(通過Cmax和C3實現(xiàn))。這時Cmax中存的是S3中的最大值,但Pn不一定是S3中的極大點。為此,在運算器a-b中先做Cmax與hj(Pn)比較,若相等置“1”Cfd,再在a-b運算器中作hj(Pn)>Pj的比較。若兩次比較成立置“1”Cfs,否則置“0”Cfs,如此,將Pn(即kn,ln)及hj(Pn)存入存貯器中。以上采用遞推公式流水線完成,因此算法簡單,實現(xiàn)方便,緩存可借用M〔h(k,l)〕的第一、二、三行(前256×3個單元)存放M〔k,l〕,M〔k,2〕,MM〔k,3〕,不必增添存貯器。
八、用專用大規(guī)模集成電路ASIC實現(xiàn)的指紋特征提取電路(實施例)1.指紋特征提取電路使用的三種自行設(shè)計的ASIC電路(1)SH電路(見圖14,15)CMOS門陣列電路,門數(shù)類別8000門/片,實用門數(shù)5720門/片,輸入輸出端數(shù)68,塑料封裝(PLCC)。
(2)ACC電路(見圖16,17)CMOS門陣列電路,門數(shù)類別2000門/片,實用門數(shù)1700門/片,輸入輸出端數(shù)48,塑料封裝(PLCC)。
(3)FPC電路(見圖18,圖19)CMOS門陣列電路,門數(shù)類別2000門/片,實用門數(shù)1600門/片,輸入輸出端數(shù)78,塑料封裝(PLCC)。
2.SH與其它電路連接SH與其它電路連接見圖20,其操作如上所述。
3.ACC電路與其它電路連接見圖21,圖22,其操作參見HKL,DKL,MAX有關(guān)說明。圖中ACC-x表示采用ACC電路,x為ACC中功能號,可以由輸入端SN5-1定義,Ti(X)為可擦可編程序只讀存貯器,由軟件人員確定,MH,MD等為RAM存貯器。圖21,圖22中的小方框DKL、HKL、q1、q2為寄存器,另外還有少量標(biāo)準(zhǔn)74/54系列IC電路。由上可知,本方案中大部份均由上面三種ASIC電路來實現(xiàn)。
4.FPC執(zhí)行過程(參見圖23,24,F(xiàn)PC電路時序圖)4.I 啟動ZOFP 清除FPC并復(fù)位DRON 上升邊啟動FPC工作(Z“I”work)
表一SH輸入/輸針信息1
SH輸入/輸出針信息2(續(xù))
表二 SH輸入/輸出信號來由及去處
表三ACC輸入輸出針信息
表四ACC各種操作簡介
表五
4·2 清除Sigma狀態(tài)(MO CL-M3 CL)4·3 求σi(MO SG-M3 SG)4·4 求q1,q2(M1 QI1-M3 QI2)4·5 求ai(k,l)(H1,H2圖)(MO H1-M3 H4)(流水線,一拍重迭,見前述)4·6 求DKL(H2圖)(MO H3-M1 H7)(流水線,一拍重迭,見圖26、27,DKL時序圖)4·7 求HKL(H2,H1圖)(MO H3-M3 H4)(流水線,一拍重迭,見圖25,HKL時序圖)4·8 求MAX(H2,H1圖)(MO X1-M3 X2)(流水線,一拍重迭,見圖28,MAX時序圖)FPC通常在MODE2方式下工作,運行過程σi→ai(k,l)(H2)→HKL(H2)→MAX(H2)ai(k,l)(H1)→HKL(H1)→MAX(H1)要是在MODE1方式下工作ai,HKL,MAX在H1H2圖下可重迭進行計算,有關(guān)設(shè)備相應(yīng)增加。
圖1 指紋鑒別特征提取電路總框圖F(k,l) 存放指紋圖F的隨機存儲器SIGMA 計算指紋圖F的梯度模及梯度模之和的邏輯電路HAI 計算指紋圖F在局部區(qū)域內(nèi)總變差的邏輯電路M 用于HAI存放中間結(jié)果的隨機存儲器HKL 計算指紋不可定向性方陣圖H2和園陣圖H1的邏輯電路
MH 存放指紋不可定向性方陣圖H2和園陣圖H1的隨機存儲器MAX 計算指紋不可定向性方陣圖H2的局部極大點和園陣圖H1的局部極大點的邏輯電路G1,2計算供不可定向性方陣圖H2所用參數(shù)q2和園陣圖H1所用參數(shù)q1的邏輯電路DKL 計算指紋方向圖D的邏輯電路MD 存放指紋方向圖D的隨機存儲器FPPC 控制電路T1(X)……T9(X)存放函數(shù)表的可擦可編程序只讀存儲器圖2 指紋鑒別特征提取電路雙數(shù)據(jù)流框3 指紋圖的梯度方向(a) 常用梯度方向(b) 本發(fā)明采用的梯度方向圖4 采用鑲邊方法計算ai(k,l)的示意5 本發(fā)明計算ai(k,l)的示意6 13×13方陣中g(shù)i(m,n)區(qū)域7 園陣與方陣的梯度關(guān)系8 計算指紋圖F的梯度和和梯度之總和的邏輯框圖SIGMA圖9 計算指紋圖F在局部區(qū)域內(nèi)的總變差的邏輯框圖HAI圖10 計算供HKL用的參數(shù)q1,q2的邏輯框圖G1,2圖11 計算不可定向性方陣圖H2和不可定向性園陣圖H1的邏輯框圖HKL圖12 計算指紋方向圖D的邏輯框圖DKL圖13 計算不可定向性方陣圖H2和不可定向性園陣圖H1的局部極大點的邏輯框圖MAX圖14 SH電路封裝15 SH電路框16 ACC電路封裝17 ACC電路框18 FPC電路封裝19 FPC電路框20 SH電路與其它電路之連接框21 用ACC電路與其它電路構(gòu)成指紋方向圖D的邏輯框22 用ACC電路與其它電路構(gòu)成HKL,MAX,G1,2的邏輯框23 FPC電路時序24 FPC電路時序圖(續(xù)圖23)圖25 邏輯圖HKL的時序26 邏輯圖DKL的時序27 邏輯圖DKL的時序圖(續(xù)圖26)圖28 邏輯圖MAX的時序圖
權(quán)利要求
1.一種由隨機存儲器、可擦可編程序只讀存儲器和邏輯電路組成的指紋鑒別特征提取電路,其特征在于它包括(1)一個用于存放指紋圖F的隨機存儲器F(K,L);(2)一個用于計算指紋圖F的梯度模及梯度模之和的邏輯電路SIGMA;(3)用于計算指紋圖F在局部區(qū)域內(nèi)總變差的邏輯電路HAI;(4)用于邏輯電路HAI存放中間結(jié)果的隨機存儲器M;(5)用于計算指紋不可定向性方陣圖H2和不可定向性園陣圖H1的邏輯電路HKL;(6)用于存放指紋不可定向性方陣圖H2和不可定向性園陣圖H1的隨機存儲器MH;(7)用于計算指紋不可定向性方陣圖H2的局部極大點和不可定向性園陣圖H1的局部極大點的邏輯電路MAX;(8)一個用于計算供不可定向性方陣圖H2所用參數(shù)q2和不可定向性園陣圖H1所用參數(shù)q1的邏輯電路G1,2;(9)一個用于計算指紋方向圖D的邏輯電路DKL;(10)一個用于存放指紋方向圖D的隨機存儲器MD;(11)用于存放函數(shù)表的可擦可編程序只讀存儲器T1(X)、T2(X)、T3(X)、T4(X)、T5(X)、T6(X)、T7(X)、T8(X)、T9(X)、T1(X)和T2(X)中的函數(shù)表供邏輯電路HKL所用,T8(X)和T9(X)中的函數(shù)表供邏輯電路G1,2所用,T3(X)、T4(X)、T5(X)、T6(X)和T7(X)中的函數(shù)表供邏輯電路DKL所用;(12)一個用于控制上述電路操作的指紋鑒別特征處理控制電路FPPC。
2.根據(jù)權(quán)利要求1所述的指紋鑒別特征提取電路,其特征在于邏輯電路SIGMA設(shè)有四條流水線并行操作,一拍流水。
3.根據(jù)權(quán)利要求1所述的指紋鑒別特征提取電路,其特征在于邏輯電路HAI采用流水線作業(yè),四個節(jié)拍為一組,每個節(jié)拍產(chǎn)生一個結(jié)果。
4.根據(jù)權(quán)利要求2所述的指紋鑒別特征提取電路,其特征在于邏輯電路HAI采用流水線作業(yè),四個節(jié)拍為一組,每個節(jié)拍產(chǎn)生一個結(jié)果。
5.根據(jù)權(quán)利要求1、2、3或4所述的指紋鑒別特征提取電路,其特征在于由一個用于計算指紋圖F在局部區(qū)域內(nèi)總變差的邏輯電路HAI,一個用于邏輯電路HAI存放中間結(jié)果的隨機存儲器M,一個用于計算指紋不可定向性方陣圖H2和不可定向性園陣圖H1的邏輯電路HKL,一個用于存放指紋不可定向性方陣圖H2和不可定向性園陣圖H1的隨機存儲器MH,一個用于計算指紋不可定向性方陣圖H2的局部極大點和不可定向性園陣圖H1的局部極大點的邏輯電路MAX,共同組成處理指紋不可定向性方陣圖H2及其局部極大點、不可定向性園陣圖H1及其局部極大點的單數(shù)據(jù)流,該數(shù)據(jù)流以分時的方式處理不可定向方陣圖H2和園陣圖H1。
6.根據(jù)權(quán)利要求1、2、3或4所述的指紋鑒別特征提取電路,其特征在于由二個用于計算指紋圖F在局部區(qū)域內(nèi)總變差的邏輯電路HAI1、HAI2,二個用于邏輯電路HAI1、HAI2存放中間結(jié)果的隨機存儲器M1、M2,二個用于計算指紋不可定向性方陣圖H2、不可定向性園陣圖H1的邏輯電路HKL1、HKL2,二個用于存放指紋不可定向性方陣圖H2、不可定向性園陣圖H2的隨機存儲器MH1、MH2,二個用于計算指紋不可定向性方陣圖H2的局部極大點、不可定向性園陣圖H1的局部極大點的邏輯電路MAX1、MAX2,用于HKL1、HKL2存放函數(shù)表的可擦可編程序只讀存儲器T21(X)、T22(X)、T11(X)、T12(X),分別組成雙數(shù)據(jù)流,該雙數(shù)據(jù)流以并行的方式分別處理不可定向性方陣圖H2及其局部極大點、不可定向性園陣圖H1及其局部極大點。
7.一種快速指紋鑒別特征提取方法,其特征在于(1)計算指紋圖F的梯度時采用從左至右、從上至下的掃描方式,每個點計算左方向的梯度g1、左上方向的梯度g2、上方向的梯度g3、右上方向的梯度g4;(2)計算行、列各為2n+1個點的方陣局部區(qū)域內(nèi)總變差時采用從左至右、從上至下的掃描方式,以第K列第1行為中心點的方陣在某一方向i的總變差ai(k,l)采用以下方法獲?、購木彌_移位寄存器中取出該擴展方陣左上角的梯度減左下角的梯度的差值△gi(Ⅰ),②計算該擴展方陣右上角梯度減右下角梯度的差值△gi(Ⅱ),并將此△gi(Ⅱ)存入移位寄存器,③從寄存器中取出以第k-1列第1行為中心點的方陣局部區(qū)域總變差ai(k-1,l)減以第k-1列第l-1行為中心點的方陣局部區(qū)域總變差ai(k-1,l-1)的差值△ai(k-1,l),④△ai(k-1,l)加上△gi(Ⅰ)之和再減去△gi(Ⅱ)之差即為△ai(k,l),△ai(k,l)為以第k列第l行為中心點的方陣局部區(qū)域總變差ai(k,l)減以第k列第l-1行為中心點的方陣局部區(qū)域總變差ai(k,l-1)的差值,將△ai(k,l)送入寄存器,⑤從緩沖存儲器中取出ai(k,l-1),并將它與△ai(k,l)相加,其和即為ai(k,l);(3)計算以第k列第1行的點為園心的園陣局部區(qū)域內(nèi)在某個方向i的總變差采用以下方法獲?、儆嬎阋缘趉列第l行為中心點以園陣直徑為邊長的方陣在i方向的總變差,②將上述方陣總變差減去其四個角上屬于該方陣但又不屬于該園陣的所有點在i方向的梯度值;(4)計算不可定向性圖上以第k列第l行為中心點的方陣局部極大點時采用從左至右、從上至下的掃描方式,其方法如下①求不可定向性圖上該方陣最后一行的極大值,并將此值存入緩沖存儲器,②從緩沖存儲器中逐個取出該方陣其他行的極大值與最后一行的極大值進行比較,以此求出方陣的極大值,③將該方陣的極大值與不可定向性圖上該中心點的值比較,如果相等并且大于某個常數(shù)則中心點為局部極大點。
全文摘要
指紋鑒別特征提取電路是根據(jù)指紋圖象數(shù)據(jù)庫系統(tǒng)要求,采用特殊的硬件算法,用ASIC電路固化,通過完整的系統(tǒng)結(jié)構(gòu)設(shè)計而成,該電路提取方法先進,處理速度成百倍提高,提取一個指紋特征的處理時間不足1秒,而且大規(guī)模集成,體積小,可靠性高,保密性強,便于和計算機配套,特別適合在微機上推廣使用。本電路在公安、金融、銀行、保險等行業(yè)有特別重要的意義,在國內(nèi)外有廣闊的市場。
文檔編號G06K9/60GK1051998SQ8910864
公開日1991年6月5日 申請日期1989年11月23日 優(yōu)先權(quán)日1989年11月23日
發(fā)明者徐浚 申請人:北京大學(xué)