專利名稱:一種利用滑動采集獲取完整指紋的圖像拼接方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種圖像拼接方法,尤其涉及一種對滑動指紋采集操作時獲得的幀序列進行拼接以獲取完整指紋的方法。
背景技術(shù):
對于滑動指紋采集操作,通常采用滑動式傳感器采集多個時刻下的指紋圖像幀序列,然后采用圖像拼接的方法將這些幀序列圖像拼接在一起,重構(gòu)出完整且接近真實的指紋圖像。但是,在實際操作中通常不能避免在滑動過程中的轉(zhuǎn)動成分,無非轉(zhuǎn)動成分的強弱程度不同而已。特別是手持設(shè)備的單手操作,比如嵌入滑動指紋傳感器的指紋手機,其出現(xiàn)轉(zhuǎn)動成分的概率和程度都非常之大。
現(xiàn)有的指紋重構(gòu)技術(shù)出于圖像幾何變換的超級計算強度和滑動(平動*轉(zhuǎn)動)大搜索空間的考慮,使得圖像拼接不能在短時間內(nèi)給出結(jié)果、故均不能計入轉(zhuǎn)動成分、而僅僅是基于平動成分的拼接重構(gòu)。
對于指紋識別算法來說,通常能夠適應(yīng)輕度的指紋形變、但當指紋形變比較嚴重時則通常不能識別。因此,如果允許用戶滑動指紋采集操作中有轉(zhuǎn)動成分、或者滑動手指的取向在滑動過程中可以自然演變時,在現(xiàn)有的指紋拼接重構(gòu)技術(shù)下,算法識別率都不能做到比較高。
所以,現(xiàn)有的指紋拼接重構(gòu)技術(shù)均假定滑動指紋采集操作只有平動而轉(zhuǎn)動成分過小可以忽略(即,滑動手指的取向在滑動過程中應(yīng)基本保持不變),但實際情況是最終用戶在滑動采集指紋的操作過程中(特別是單手操作時)很難做到手指取向的不變、總會或多或少地出現(xiàn)在某個特定方向轉(zhuǎn)動的滑動現(xiàn)象,從而這個“手指取向基本保持不變”的限制必然使得最終用戶感覺不夠友好進而阻礙指紋技術(shù)的普及,這與Windows操作系統(tǒng)取代DOS操作系統(tǒng)從而普及PC和推進其產(chǎn)業(yè)發(fā)展的道理類似。
另外,鑒于傳感器的成本、傳感器的堅固性、以及傳感器的能耗與體積、還有涉及的指紋殘留消除等多方面的考量和指紋技術(shù)的突破,可以預(yù)見滑動式線型指紋傳感將成為今后指紋應(yīng)用的主流、而面型指紋傳感將退居到某些特殊應(yīng)用領(lǐng)域成為指紋市場的支流。
在圖像處理領(lǐng)域,圖像拼接是一個傳統(tǒng)的課題,涉及的技術(shù)手段主要是圖像相關(guān)技術(shù)和圖像變換技術(shù)、特別是當涉及到有轉(zhuǎn)動成分時的計算量會很大。如果將這些技術(shù)直接應(yīng)用于滑動采集時的指紋拼接,則必須降低計算量以適應(yīng)指紋成像對實時性的要求。現(xiàn)有技術(shù)對此指紋拼接舍棄了滑動中轉(zhuǎn)動成分的考量從而大大縮減了總體計算量、達到了滑動指紋采集的實時性要求,但是由于不能在轉(zhuǎn)動方面達到計算實時性,因此,鑒于滑動式線型指紋傳感模式有此缺陷,不能快速進入市場的主流地位。
發(fā)明內(nèi)容
本發(fā)明的目的在于解決上述問題,提供了一種圖像拼接方法,它完整地解決了滑動指紋采集時的指紋趨真重構(gòu),為識別率的提高掃清了障礙,實現(xiàn)了用戶操作真正的友好和便捷。
本發(fā)明的技術(shù)方案為一種利用滑動采集獲取完整指紋的圖像拼接方法,其中包括以下步驟(1)初始化,獲取指紋圖像的起始幀,計算該幀的幀取向角度,將該起始幀拼接在拼接圖上,然后將該幀設(shè)置為上一幀;(2)獲取一幀新的指紋圖像作為當前幀;(3)計算當前幀的幀取向角度;(4)計算當前幀的幀取向角度與上一幀的幀取向角度的差值,即為當前幀相對上一幀的轉(zhuǎn)動角度;(5)根據(jù)步驟(4)計算得到的轉(zhuǎn)動角度對當前幀作旋轉(zhuǎn)的幾何變換;(6)計算經(jīng)步驟(5)幾何變換的當前幀與上一幀之間的平動位移量,該平動位移量包括橫向位移量和縱向位移量;(7)獲得當前幀相對起始幀的轉(zhuǎn)動角度和平動位移量;(8)根據(jù)步驟(7)計算得到的當前幀相對起始幀的轉(zhuǎn)動角度和平動位移量,將當前幀拼接在拼接圖上;(9)判斷當前幀是否為結(jié)束幀,若是,則結(jié)束,否則將當前幀設(shè)為上一幀并轉(zhuǎn)至步驟(2)。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中所述步驟(1)和(2)中,每一次循環(huán)采用滑動傳感器獲取一幀新的指紋圖像幀。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中所述步驟(1)和(2)中,預(yù)先使用滑動傳感器存儲好所有的幀圖像序列,然后在每一次循環(huán)中從所述幀圖像序列獲取一幀新的指紋圖像。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中所述步驟(2)采用梯度法來計算當前幀的幀取向角度θ,計算公式為θ=arctan(∑(-2*sGrdI(i)*sGrdJ(i))/∑(sGrdI(i)*sGrdI(i)-sGrdJ(i)*sGrdJ(i))),其中參數(shù)i表示一幀指紋圖像中所有采集的像素點,參數(shù)sGrdI表示橫向的Sobel算子,參數(shù)sGrdJ表示縱向的Sobel算子。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中所述步驟(6)采用圖像灰度相關(guān)匹配算法,包括(6.1)預(yù)先假定當前幀相對上一幀的最大橫向位移量和最大縱向位移量,也即當前幀相對上一幀只能在該最大橫向位移量和最大縱向位移量所決定的范圍內(nèi)平動,所有可能的平動個數(shù)視該范圍內(nèi)像素點的取樣個數(shù)而定;(6.2)對于步驟(6.1)中每一個可能的平動,都會使當前幀和上一幀對應(yīng)存在一個重合區(qū)域,根據(jù)該重合區(qū)域中每一個所采集的像素點的灰度求出對應(yīng)的圖像灰度相關(guān)或相左函數(shù);(6.3)遍歷步驟(6.1)所決定的范圍內(nèi)所有可能的平動,從而得到多個圖像灰度相關(guān)或相左函數(shù)值,根據(jù)這些函數(shù)值尋優(yōu)得到實際的平動位移量。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中所述步驟(6.2)中,一個確定的平動位移(Δx,Δy)的圖像灰度相左函數(shù)是f(Δx,Δy)=∑((g1(x,y)-g2(x,y))2)/M或者f(Δx,Δy)=∑(|g1(x,y)-g2(x,y)|)/M,其中(Δx,Δy)∈步驟(6.1)所決定的平動范圍,點(x,y)∈該確定的平動下當前幀和上一幀重合范圍內(nèi)所有的像素采集點,g1(x,y)和g2(x,y)函數(shù)分別表示點(x,y)在當前幀和上一幀時的灰度值,M表示該確定的平動下當前幀和上一幀重合范圍內(nèi)所有的像素采集點的個數(shù);所述步驟(6.3)中的尋優(yōu)是取圖像灰度相左函數(shù)f(Δx,Δy)的最小值。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中所述步驟(6.2)中,一個確定的平動位移(Δx,Δy)的圖像灰度相關(guān)函數(shù)是f(Δx,Δy)=∑(g1(x,y)×g2(x,y))/M,其中(Δx,Δy)∈步驟(6.1)所決定的平動范圍,點(x,y)∈該確定的平動下當前幀和上一幀重合范圍內(nèi)所有的像素采集點,g1(x,y)和g2(x,y)函數(shù)分別表示點(x,y)在當前幀和上一幀時的灰度值,M表示該確定的平動下當前幀和上一幀重合范圍內(nèi)所有的像素采集點的個數(shù);所述步驟(6.3)中的尋優(yōu)是取圖像灰度相關(guān)函數(shù)f(Δx,Δy)的最大值。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中使用降分辨率的方法來采集像素點,即通過等間隔地采集像素點來減少采集個數(shù)。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中所述步驟(7)包括(7.1)通過下式計算當前幀相對起始幀的轉(zhuǎn)動角度β(i)β(i)=β(i-1)+α(i),其中i表示當前幀的索引值,在第二幀和結(jié)束幀對應(yīng)的序號之間取值,β(i-1)表示上一幀相對起始幀的轉(zhuǎn)動角度,α(i)表示當前幀相對上一幀的轉(zhuǎn)動角度;(7.2)通過下式計算當前幀相對起始幀的橫向位移量sCmln(i)和縱向位移量sCmlm(i)sCmln(i)=sCmln(i-1)-smF(i)×sinβ(i)+snF(i)×cosβ(i),sCmlm(i)=sCmlm(i-1)+smF(i)×cosβ(i)+snF(i)×sinβ(i),其中snF(i)表示當前幀相對上一幀的橫向位移量,smF(i)表示當前幀相對上一幀的縱向位移量,sCmln(i-1)和sCmlm(i-1)分別表示上一幀frame(i-1)相對起始幀frame(0)的橫向位移量和縱向位移量。
上述的利用滑動采集獲取完整指紋的圖像拼接方法,其中所述步驟(8)中,根據(jù)當前幀相對起始幀的平動位移量和轉(zhuǎn)動角度先對當前幀作幀旋轉(zhuǎn)的幾何變換,再進行逐點拼接。
本發(fā)明的圖像拼接方法相對現(xiàn)有技術(shù)有如下的有益效果本發(fā)明一方面把平動轉(zhuǎn)動搜索優(yōu)化的計算模型轉(zhuǎn)化為轉(zhuǎn)動強度可直接測度的梯度法降分辨率快速算法計算模型、把平動搜索設(shè)計為降分辨率的圖像灰度相左或相關(guān)快速運算,一方面利用獲得的平動和轉(zhuǎn)動參數(shù)進行累計量快速計算、再利用該平動和轉(zhuǎn)動的累計量進行圖像拼接的三角函數(shù)查表來對超出部分進行快速計算,從而為轉(zhuǎn)動拼接突破了兩大瓶頸。本發(fā)明重點解決了指紋滑動操作中的轉(zhuǎn)動問題,將幫助指紋滑動傳感快速成為指紋應(yīng)用的主流模式。
圖1是本發(fā)明圖像拼接方法一個實施例的流程圖。
圖2是圖1所示實施例中計算當前幀相對上一幀的轉(zhuǎn)動角度的示意圖。
圖3是圖1所示實施例中計算當前幀相對上一幀的平動位移量的示意圖。
圖4是圖1所示實施例中計算當前幀相對上一幀的平動位移量的流程圖。
具體實施例方式
下面結(jié)合附圖和實施例對本發(fā)明作進一步的描述。
圖1示出了本發(fā)明圖像拼接方法一個實施例的算法流程,下面參見圖1從整體上描述該圖像拼接方法的步驟。
步驟101初始化。主要獲取起始幀并計算起始幀的幀取向角度θ,然后將該起始幀拼接在拼接圖上,之后將其設(shè)置成上一幀。在這里引入方向場的概念,所謂方向場可理解為一幀圖像上所有像素點方向的數(shù)學期望。從視覺效果來看,方向場確定了該幀圖像的整體取向。
采用梯度法計算某一幀圖像的方向場Dir,Dir=∑(-2*sGrdI(j)*sGrdJ(j))/∑(sGrdI(j)*sGrdI(j)-sGrdJ(j)*sGrdJ(j)),其中參數(shù)j表示指紋圖像中所有采集的像素點,參數(shù)sGrdI表示橫向的Sobel算子,參數(shù)sGrdJ表示縱向的Sobel算子,符號∑表示對每一個j∈指紋圖像中所有采集的像素點,將相應(yīng)括號內(nèi)的算式進行求和運算。在這里,Sobel算子可以采用3×3的算子。
然后取方向場Dir的反正切函數(shù)值arctan Dir,即為該幀的幀取向角度θ。
步驟102獲取一幀新的指紋圖像作為當前幀frame(i)。在這里,變量i表示一個對所采集的幀序列的索引。如果我們定義起始幀為frame(0),結(jié)束幀為frame(n),那么變量i的取值范圍為1-n。當獲取下一個新的指紋圖像時,i就遞增1。值得注意的是,可以采用兩種方式來獲取一幀新的指紋圖像。第一種方式是每一次循環(huán)中從滑動式傳感器采集一幀新的圖像進行處理;第二種方式是預(yù)先利用滑動式傳感器采集所有的指紋圖像并把它們以幀序列的形式存儲起來,然后再從存儲的幀序列中提取一幀新的指紋圖像。而采用何種獲取方式當視獲取速度和拼接速度的快慢而定,如果獲取比拼接慢,可以采用第一種方式,因為該拼接方法是逐幀拼接的,拼接完成后的圖像幀會被丟棄,所以無需存儲所有的圖像幀,采取這樣的方式會節(jié)省系統(tǒng)的存儲空間。但是在獲取比拼接快的情況下,就必須采用第二種方式。
步驟103計算當前幀frame(i)中的幀取向角度θ(i)。這里角度的計算方法同步驟101,故不再重復描述。
步驟104請結(jié)合圖2所示,計算當前幀frame(i)202的幀取向角度θ(i)和上一幀frame(i-1)201的幀取向角度θ(i-1)的差值Δθ(i),該差值Δθ(i)即為當前幀frame(i)202相對上一幀frame(i-1)201的轉(zhuǎn)動角度α(i)。這里的角度均以逆時針為正方向,而且這一步的實現(xiàn)是基于這樣的事實相鄰兩幀圖像的幀取向是一致的。
上述步驟解決了轉(zhuǎn)動角度的計算問題,相對于現(xiàn)有技術(shù)對所有可能的轉(zhuǎn)動角度進行搜索尋優(yōu)這一高強度的計算方式而言,本發(fā)明梯度法的計算模型大大降低了運算強度,使得運算速度得到顯著提高。而且,在步驟102中計算幀取向角度方面,可以采用降分辨率的方法來采集取樣點。所謂降分辨率就是對像素點進行等間距的間隔取樣,這樣取樣的點數(shù)少了,也就加快了運算速度。當然間距大小的設(shè)定是受限制的,一般來說,最大不能超過每4個像素點采集一個取樣點。
步驟105根據(jù)步驟104計算得到的轉(zhuǎn)動角度α(i)對當前幀frame(i)作旋轉(zhuǎn)的幾何變換,從而消除當前幀frame(i)相對上一幀frame(i-1)的轉(zhuǎn)動影響。
步驟106計算經(jīng)步驟105幾何變換的當前幀frame(i)相對上一幀frame(i-1)的平動位移量。該平動位移量可分解成橫向位移量snF(i)和縱向位移量smF(i)??刹捎脠D像灰度相關(guān)或相左的匹配算法來完成,具體步驟請同時參見圖3和圖4步驟401首先假設(shè)當前幀frame(i)相對上一幀frame(i-1)的最大橫向位移量IMAX和最大縱向位移量JMAX。為了便于說明,我們在圖3上設(shè)定坐標系,以上一幀frame(i-1)301的左下頂點為原點。以圖像幀的左下頂點為參考點,實際的當前幀frame(i)的左下頂點只能在原點(0,0)和點(IMAX,JMAX)所決定的矩形范圍內(nèi)移動,圖像幀302表示當前幀在假定條件下相對上一幀能夠達到的最遠距離。
步驟402設(shè)置一個當前幀位置檢測點(Δx,Δy),該檢測點的范圍是原點(0,0)和點(IMAX,JMAX)所決定的矩形范圍內(nèi)的所有取樣點,檢測點的初始值設(shè)為原點。
步驟403判斷Δy是否大于JMAX,若是,則轉(zhuǎn)至步驟408。
步驟404判斷Δx是否大于IMAX,若是,則轉(zhuǎn)至步驟407。步驟403和404實際上是雙層循環(huán)的一個循環(huán)條件。
步驟405對于每一次循環(huán)中的當前幀位置檢測點(Δx,Δy)來說,都對應(yīng)存在一個當前檢測幀303。該當前檢測幀303與上一幀301之間必然對應(yīng)存在一個確定的重合區(qū)域304。采用降分辨率的方法對該重合區(qū)域304中的像素點進行取樣,根據(jù)上述每個取樣點在上一幀301和當前檢測幀303上的灰度求出并保存對應(yīng)的圖像灰度相左函數(shù)值。函數(shù)值的計算公式為f(Δx,Δy)=∑((g1(x,y)-g2(x,y))2)/M或者f(Δx,Δy)=∑(|g1(x,y)-g2(x,y)|)/M,其中點(x,y)∈檢測點為(Δx,Δy)時當前檢測幀303和上一幀301重合范圍304內(nèi)所有的取樣點,g1(x,y)和g2(x,y)函數(shù)分別表示上述取樣點(x,y)在當前檢測幀303和上一幀301時的灰度值,M表示當前檢測幀303和上一幀301重合范圍304內(nèi)所有的取樣點個數(shù)。
步驟406Δx遞增1并轉(zhuǎn)至步驟404。這里的遞增距離1只用于描述,Δx也可以遞增2或3等,遞增的距離參照步驟402中對原點(0,0)和點(IMAX,JMAX)所決定的矩形范圍內(nèi)像素點的取樣間距。
步驟407將Δx重新設(shè)置為0、Δy遞增1,并轉(zhuǎn)至步驟403。同步驟406的說明,這里的遞增距離1只用于描述,Δy也可以遞增2或3等,遞增的距離參照步驟402中對原點(0,0)和點(IMAX,JMAX)所決定的矩形范圍內(nèi)像素點的取樣間距。
步驟408根據(jù)步驟405中得到的灰度相左函數(shù)值進行尋優(yōu)得到實際的當前幀平動位移量。假定步驟402中當前幀位置檢測點(Δx,Δy)的取樣個數(shù)為N,則在步驟405中一共有N個灰度相左函數(shù)值。查詢這N個圖像灰度相左函數(shù)值并取出其中的最小值,其對應(yīng)的Δx和Δy就是實際的當前幀相對上一幀的橫向偏移量snF(i)和縱向偏移量smF(i)。
需要說明的是,步驟405中函數(shù)值的計算公式還可以采取其他的形式,比如采取圖像灰度相關(guān)函數(shù)f(Δx,Δy)=∑(g1(x,y)×g2(x,y))/M,這樣在步驟408的尋優(yōu)中就必須取出其中的最大值。應(yīng)理解,公式的改變并不影響本發(fā)明的保護范圍。
步驟107基于步驟106中當前幀frame(i)相對上一幀frame(i-1)的轉(zhuǎn)動角度α(i)、橫向位移量snF(i)和縱向位移量smF(i),獲得當前幀frame(i)相對起始幀frame(0)的轉(zhuǎn)動角度β(i)、橫向位移量sCmln(i)和縱向位移量sCmlm(i)。
首先,基于當前幀frame(i)相對上一幀frame(i-1)的轉(zhuǎn)動角度α(i)來更新當前幀frame(i)相對起始幀frame(0)的轉(zhuǎn)動角度β(i),計算公式為β(i)=β(i-1)+α(i),其中β(i-1)表示上一幀frame(i-1)相對起始幀frame(0)的轉(zhuǎn)動角度。這里的計算是基于一種遞推關(guān)系,實際上只要在每一次循環(huán)里將當前幀frame(i)相對上一幀frame(i-1)的轉(zhuǎn)動角度α(i)疊加在當前幀frame(i)相對起始幀frame(0)的轉(zhuǎn)動角度這一變量上。
然后,基于當前幀frame(i)相對上一幀frame(i-1)的橫向位移量snF(i)和縱向位移量smF(i)以及上一個步驟中計算得到的當前幀frame(i)相對起始幀frame(0)的轉(zhuǎn)動角度β(i),更新當前幀frame(i)相對起始幀frame(0)的橫向位移量sCmln(i)和縱向位移量sCmlm(i),計算公式為sCmln(i)=sCmln(i-1)-smF(i)×sinβ(i)+snF(i)×cosβ(i),sCmlm(i)=sCmlm(i-1)+smF(i)×cosβ(i)+snF(i)×sinβ(i),其中sCmln(i-1)和sCmlm(i-1)分別表示上一幀frame(i-1)相對起始幀frame(0)的橫向位移量和縱向位移量。類似地,這一步的計算也是基于一種遞推關(guān)系,實際上只要在每一次循環(huán)里將snF(i)×cosβ(i)-smF(i)×sinβ(i)疊加到當前幀frame(i)相對起始幀frame(0)的橫向位移變量上,將smF(i)×cosβ(i)+snF(i)×sinβ(i)疊加到當前幀frame(i)相對起始幀frame(0)的縱向位移變量上。
步驟108根據(jù)步驟107計算得到的當前幀frame(i)相對起始幀frame(0)的轉(zhuǎn)動角度β(i)、橫向位移量sCmln(i)和縱向位移量sCmlm(i),先將當前幀frame(i)作旋轉(zhuǎn)的幾何變換,然后再將其逐點拼接在拼接圖上。在實際拼接過程中,為減少計算量可以根據(jù)當前幀frame(i)相對起始幀frame(0)的縱向位移量sCmlm(i)僅對當前幀frame(i)相對起始幀frame(0)的超出部分進行計算,而計算過程中遇到的三角函數(shù)可定點化為查表加速。
步驟109判斷當前幀是否為結(jié)束幀,若是,則指紋圖的拼接重構(gòu)完成,若否,則先轉(zhuǎn)至步驟110,將當前幀設(shè)為上一幀,再轉(zhuǎn)至步驟102處理下一幀的指紋圖像。也應(yīng)理解,步驟109的循環(huán)判斷條件也可設(shè)置在循環(huán)的開始階段,步驟109的位置并不影響本發(fā)明的保護范圍。
應(yīng)理解,本發(fā)明的重點在于將轉(zhuǎn)動搜索優(yōu)化轉(zhuǎn)化成了通過梯度法計算幀取向角度來直接算出轉(zhuǎn)動角度,并根據(jù)對相鄰兩幀之間轉(zhuǎn)動角度和平動位移量的疊加計算出當前幀相對起始幀的轉(zhuǎn)動角度和平動位移量。這一改變大大提高了運算速度。與此同時,對平動采取圖像灰度相左或相關(guān)算法,采用降分辨率的方法對像素點進行取樣,這些變化也進一步提高了拼接速度。
上述實施例是提供給本領(lǐng)域普通技術(shù)人員來實現(xiàn)或使用本發(fā)明的,本領(lǐng)域普通技術(shù)人員可在不脫離本發(fā)明的發(fā)明思想的情況下,對上述實施例做出種種修改或變化,因而本發(fā)明的保護范圍并不被上述實施例所限,而應(yīng)該是符合權(quán)利要求書提到的創(chuàng)新性特征的最大范圍。
權(quán)利要求
1一種利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,包括以下步驟(1)初始化,獲取指紋圖像的起始幀,計算該幀的幀取向角度,將該起始幀拼接在拼接圖上,然后將該幀設(shè)置為上一幀;(2)獲取一幀新的指紋圖像作為當前幀;(3)計算當前幀的幀取向角度;(4)計算當前幀的幀取向角度與上一幀的幀取向角度的差值,即為當前幀相對上一幀的轉(zhuǎn)動角度;(5)根據(jù)步驟(4)計算得到的轉(zhuǎn)動角度對當前幀作旋轉(zhuǎn)的幾何變換;(6)計算經(jīng)步驟(5)幾何變換的當前幀與上一幀之間的平動位移量,該平動位移量包括橫向位移量和縱向位移量;(7)獲得當前幀相對起始幀的轉(zhuǎn)動角度和平動位移量;(8)根據(jù)步驟(7)計算得到的當前幀相對起始幀的轉(zhuǎn)動角度和平動位移量,將當前幀拼接在拼接圖上;(9)判斷當前幀是否為結(jié)束幀,若是,則結(jié)束,否則將當前幀設(shè)為上一幀并轉(zhuǎn)至步驟(2)。
2根據(jù)權(quán)利要求1所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,所述步驟(1)和(2)中,每一次循環(huán)采用滑動傳感器獲取一幀新的指紋圖像幀。
3根據(jù)權(quán)利要求1所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,所述步驟(1)和(2)中,預(yù)先使用滑動傳感器存儲好所有的幀圖像序列,然后在每一次循環(huán)中從所述幀圖像序列獲取一幀新的指紋圖像。
4根據(jù)權(quán)利要求1所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,所述步驟(2)采用梯度法來計算當前幀的幀取向角度θ,計算公式為θ=arctan(∑(-2*sGrdI(i)*sGrdJ(i))/∑(sGrdI(i)*sGrdI(i)-sGrdJ(i)*sGrdJ(i))),其中參數(shù)i表示一幀指紋圖像中所有采集的像素點,參數(shù)sGrdI表示橫向的Sobel算子,參數(shù)sGrdJ表示縱向的Sobel算子。
5根據(jù)權(quán)利要求1所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,所述步驟(6)采用圖像灰度相關(guān)匹配算法,包括(6.1)預(yù)先假定當前幀相對上一幀的最大橫向位移量和最大縱向位移量,也即當前幀相對上一幀只能在該最大橫向位移量和最大縱向位移量所決定的范圍內(nèi)平動,所有可能的平動個數(shù)視該范圍內(nèi)像素點的取樣個數(shù)而定;(6.2)對于步驟(6.1)中每一個可能的平動,都會使當前幀和上一幀對應(yīng)存在一個重合區(qū)域,根據(jù)該重合區(qū)域中每一個所采集的像素點的灰度求出對應(yīng)的圖像灰度相關(guān)或相左函數(shù);(6.3)遍歷步驟(6.1)所決定的范圍內(nèi)所有可能的平動,從而得到多個圖像灰度相關(guān)或相左函數(shù)值,根據(jù)這些函數(shù)值尋優(yōu)得到實際的平動位移量。
6根據(jù)權(quán)利要求5所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,所述步驟(6.2)中,一個確定的平動位移(Δx,Δy)的圖像灰度相左函數(shù)是f(Δx,Δy)=∑((g1(x,y)-g2(x,y))2)/M或者f(Δx,Δy)=∑(|g1(x,y)-g2(x,y)|)/M,其中(Δx,Δy)∈步驟(6.1)所決定的平動范圍,點(x,y)∈該確定的平動下當前幀和上一幀重合范圍內(nèi)所有的像素采集點,g1(x,y)和g2(x,y)函數(shù)分別表示點(x,y)在當前幀和上一幀時的灰度值,M表示該確定的平動下當前幀和上一幀重合范圍內(nèi)所有的像素采集點的個數(shù);所述步驟(6.3)中的尋優(yōu)是取圖像灰度相左函數(shù)f(Δx,Δy)的最小值。
7根據(jù)權(quán)利要求5所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,所述步驟(6.2)中,一個確定的平動位移(Δx,Δy)的圖像灰度相關(guān)函數(shù)是f(Δx,Δy)=∑(g1(x,y)×g2(x,y))/M,其中(Δx,Δy)∈步驟(6.1)所決定的平動范圍,點(x,y)∈該確定的平動下當前幀和上一幀重合范圍內(nèi)所有的像素采集點,g1(x,y)和g2(x,y)函數(shù)分別表示點(x,y)在當前幀和上一幀時的灰度值,M表示該確定的平動下當前幀和上一幀重合范圍內(nèi)所有的像素采集點的個數(shù);所述步驟(6.3)中的尋優(yōu)是取圖像灰度相關(guān)函數(shù)f(Δx,Δy)的最大值。
8根據(jù)權(quán)利要求4或5所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,使用降分辨率的方法來采集像素點,即通過等間隔地采集像素點來減少采集個數(shù)。
9根據(jù)權(quán)利要求1所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,所述步驟(7)包括(7.1)通過下式計算當前幀相對起始幀的轉(zhuǎn)動角度β(i)β(i)=β(i-1)+α(i),其中i表示當前幀的索引值,在第二幀和結(jié)束幀對應(yīng)的序號之間取值,β(i-1)表示上一幀相對起始幀的轉(zhuǎn)動角度,α(i)表示當前幀相對上一幀的轉(zhuǎn)動角度;(7.2)通過下式計算當前幀相對起始幀的橫向位移量sCmln(i)和縱向位移量sCmlm(i)sCmln(i)=sCmln(i-1)-smF(i)×sinβ(i)+snF(i)×cosβ(i),sCmlm(i)=sCmlm(i-1)+smF(i)×cosβ(i)+snF(i)×sinβ(i),其中snF(i)表示當前幀相對上一幀的橫向位移量,smF(i)表示當前幀相對上一幀的縱向位移量,sCmln(i-1)和sCmlm(i-1)分別表示上一幀frame(i-1)相對起始幀frame(0)的橫向位移量和縱向位移量。
10根據(jù)權(quán)利要求1所述的利用滑動采集獲取完整指紋的圖像拼接方法,其特征在于,所述步驟(8)中,根據(jù)當前幀相對起始幀的平動位移量和轉(zhuǎn)動角度先對當前幀作幀旋轉(zhuǎn)的幾何變換,再進行逐點拼接。
全文摘要
本發(fā)明公開了一種圖像拼接方法,它完整地解決了滑動指紋采集時的指紋趨真重構(gòu),為識別率的提高掃清了障礙,實現(xiàn)了用戶操作真正的友好和便捷。其技術(shù)方案主要是計算當前幀相對上一幀的幀取向角度之差作為轉(zhuǎn)動角度,接著對當前幀進行幾何變換再以此和上一幀進行平動位移計算,當前幀相對起始幀的更新是基于當前所有鄰幀之間的轉(zhuǎn)動角度和平動位移進行累計,而當前幀在拼接圖上的重構(gòu)拼接是基于上述累計得到的當前幀相對起始幀的轉(zhuǎn)動角度和平動位移。本發(fā)明可應(yīng)用于滑動指紋圖像的拼接等相關(guān)領(lǐng)域。
文檔編號G06K9/20GK101042733SQ20061002492
公開日2007年9月26日 申請日期2006年3月22日 優(yōu)先權(quán)日2006年3月22日
發(fā)明者楊前邦 申請人:上海品偉數(shù)碼科技有限公司