指紋識別的原理和方法

. 概述   

指紋識別技術主要涉及四個功能:讀取指紋圖象、提取特徵、保存數據和比對。在一開始,通過指紋讀取設備讀取到人體指紋的圖象,取到指紋圖象之後,要對原始圖象進行初步的處理,使之更清晰。    

接下來,指紋辨識軟件建立指紋的數字表示——特徵數據,一種單方向的轉換,可以從指紋轉換成特徵數據但不能從特徵數據轉換成爲指紋,而兩枚不同的指紋不會產生相同的特徵數據。軟件從指紋上找到被稱爲“節點”(minutiae)的數據點,也就是那些指紋紋路的分叉、終止或打圈處的座標位置,這些點同時具有七種以上的唯一性特徵。因爲通常手指上平均具有70個節點,所以這種方法會產生大約490個數據。                

有的算法把節點和方向信息組合產生了更多的數據,這些方向信息表明了各個節點之間的關係,也有的算法還處理整幅指紋圖像。總之,這些數據,通常稱爲模板,保存爲1K大小的記錄。無論它們是怎樣組成的,至今仍然沒有一種模板的標準,也沒有一種公佈的抽象算法,而是各個廠商自行其是。  

最後,通過計算機模糊比較的方法,把兩個指紋的模板進行比較,計算出它們的相似程度,最終得到兩個指紋的匹配結果。    

. 取得指紋圖象   

1.取象設備原理    

取像設備分成兩類:光學、硅晶體傳感器和其他。光學取像設備有最悠久的歷史,可以追溯到20世紀70年代。依據的是光的全反射原理(FTIR)。光線照到壓有指紋的玻璃表面,反射光線由CCD去獲得,反射光的數量依賴於壓在玻璃表面指紋的脊和谷的深度和皮膚與玻璃間的油脂。光線經玻璃設到谷後反射到CCD,而設到脊後則不反射到CCD(確切的是脊上的液體反光的)。

由於最近光學設備的革新,極大地降低了設備的體積。最近90年代中期,傳感器可以裝在6x3x6英寸的盒子裏,在不久的將來更小的設備是3x1x1英寸。這些進展取決於多種光學技術的發展而不是FTIR的發展。例如:纖維光被用來捕捉指紋圖象。纖維光束垂直射到指紋的表面,他照亮指紋並探測反射光。另一個方案是把含有一微型三棱鏡矩陣的表面安裝在彈性的平面上,當手指壓在此表面上時,由於脊和谷的壓力不同而改變了微型三棱鏡的表面,這些變化通過三棱鏡光的反射而反映出來。    

應用晶體傳感器是最近在市場上纔出現的,儘管它在傳奇文學作品中已經出現近20年。這些含有微型晶體的平面通過多種技術來繪製指紋圖象。電容傳感器通過電子度量被設計來捕捉指紋。電容設備能結合大約100,000導體金屬陣列的傳感器,其外面是絕緣的表面,當用戶的手指放在上面時,皮膚組成了電容陣列的另一面。電容器的電容值由於金屬間的距離而變化,這裏指的是脊(近的)和谷(遠的)之間的距離。壓感式表面的頂層是具有彈性的壓感介質材料,他們依照指紋的外表地形(凹凸)轉化爲相應的電子信號。溫度感應傳感器被設計爲感應壓在設備上的脊和遠離設備的谷溫度的不同。    

超聲波掃描被認爲是指紋取像技術中非常好的一類。很象光學掃描的激光,超聲波掃描指紋的表面。緊接着,接收設備獲取了其反射信號,測量他的範圍,得到脊的深度。不象光學掃描,積累在皮膚上的髒物和油脂對超音速獲得的圖象影響不大,所以這樣的圖象是實際脊地形(凹凸)的真實反映。 

由於巨大的指紋辨別市場,如果想指紋識別在商業上的巨大成功,三個因素中的兩個因素是非常重要的,它們是低價格和緊湊的體積(另外一個是上面談到的識別率)。90年代初到後期,取像設備的價格已經劇烈的下降,製造商最近又承諾,在最近幾年後,又要進行大幅度降價。至於體積,上面已經提到光學傳感器的體積從6x3x3英寸降到3x1x1英寸。應用晶體的傳感器的體積差不多是這樣或者更小。在晶片上,集成電路的技術越來越高(如:數字化電路把指紋信號轉化爲數字信號強度),系統體積將越來越小,晶體傳感器的體積接近與手指大小所需要的體積,其長寬大約是1x1英寸高不到1英寸。   

在晶體傳感器之前,一些沒有用到的機能是局部調整、軟件控制、自動獲取控制(AGC)技術。對於大多數光學設備,只能通過人工調整來改變圖象的質量。然而,晶體傳感器提供自動調節象素,行以及局部範圍的敏感程度,從而提高圖象的質量。AGC在不同的環境下結合反饋的信息產生高質量的圖象。例如,一個不清晰(對比度差)的圖象,如干燥的指紋,能夠被感覺並增強靈敏度,在捕捉的瞬間產生清晰的圖象(對比度好);由於提供了局部調整的能力,圖象不清晰(對比度差)的區域也能夠被檢測到(如:手指壓得較輕的地方)並在捕捉的瞬間爲這些象素提高靈敏度。    

光學掃描也有自己的優勢。其中之一在較大的模型可以做較大指紋取像區域。而製造較大的應用晶體傳感器的指紋取像區域是非常昂貴的,所以應用晶體傳感器的指紋取像區域小於1平方英寸,而光學掃描的指紋取像區域等於或大於1平方英寸。然而這個對於較小的光學掃描設備並不是優勢。較小的光學掃描也是較小指紋取像區域,這是因爲較大的指紋取像區域需要較長的焦點長度,所以要有較大包裝,否則如果較大的取像區域使用較小的包裝,則光學掃描設備會受到圖象邊緣線形扭曲的影響。  

晶體傳感器技術最重要的弱點在於,它們容易受到靜電的影響,這使得晶體傳感器有時會取不到圖象,甚至會被損壞,另外,它們並不象玻璃一樣耐磨損,從而影響了使用壽命。    

總之,各種技術都具有它們各自的優勢,也有各自的缺點。

2. 圖象增強    

剛獲得的圖象有很多噪音。這主要由於平時的工作和環境引起的,比如,手指被弄髒,手指有刀傷、疤、痕、乾燥、溼潤或撕破等。圖象增強是減弱噪音,增強脊和谷的對比度。想得到比較乾淨清晰的圖象並不是容易的事情。爲這個目標而爲處理指紋圖象所涉及的操作是設計一個適合、匹配的濾鏡和恰當的閥值。    

指紋還有一些其他的有用的信息。比如:類似於脊的“多餘的部分”,即使一些特別的脊不連續,但仍可認爲是脊的一部分,從而決定他的走向。我們可以利用這些“多餘的信息”。   

有很多圖象增強的方法。大多數是通過過濾圖象與脊局部方向相匹配。圖象首先分成幾個小區域(窗口),並在每個區域上計算出脊的局部方向來決定方向圖。可以由空間域處理,或經過快速2維傅立葉變換後的頻域處理來得到每個小窗口上的局部方向。    

設計合適的,相匹配的濾鏡,使之實用於圖象上所有的象素(空間場是其中的一個)。依據每個象素處脊的局部走向,濾鏡應增強在同一方向脊的走向,並且在同一位置,減弱任何不同於脊的方向。後者含有橫跨脊的噪音,所以其垂直於脊的局部方向上的那些不正確的“橋”會被濾鏡過濾掉。所以,合適的、匹配的濾鏡可以恰到好處地確定脊局部走向的自身的方向,它應該增強或匹配脊而不是噪音。 

圖象增強,噪音減弱後,我們準備開始選取一些脊。雖然,在原始灰階圖象中,其強度是不同的而按一定的梯度分佈,但它們真實的信息被簡單化爲二元:脊及其相對的背景。二元操作使一個灰階圖象變成二元圖象,圖象在強度層次上從原始的256色(8-bits)降爲2(1-bits)。圖象二元化後,隨後的處理就會比較容易。    

二元化的困難在於,並不是所有的指紋圖象有相同的閥值,所以一般不採取從單純的強度入手,而且單一的圖象的對照物是變化的,比如,手在中心地帶按的比較緊。因此一個叫“局部自適應的閥值(locally adaptive thresholding)”的方法被用來決定局部圖象強度的閥值。     

在節點提取之前的最後一道工序是“細化(thinning)”。細化是將脊的寬度降爲單個象素的寬度。一個好的細化方法是保持原有脊的連續性,降低由於人爲因素所造成的影響。人爲因素主要是毛刺,帶有非常短的分支而被誤認爲是分叉。認識到合法的和不合法的節點後,在特徵提取階段排除這些節點。

. 指紋識別技術的基本原理    

指紋其實是比較複雜的。與人工處理不同,許多生物識別技術公司並不直接存儲指紋的圖象。多年來在各個公司及其研究機構產生了許多數字化的算法(美國有關法律認爲,指紋圖象屬於個人隱私,因此不能直接存儲指紋圖象)。但指紋識別算法最終都歸結爲在指紋圖象上找到並比對指紋的特徵。

指紋的特徵    

我們定義了指紋的兩類特徵來進行指紋的驗證:總體特徵和局部特徵。總體特徵是指那些用人眼直接就可以觀察到的特徵。

基本紋路圖案

環型(loop, 弓型(arch, 螺旋型(whorl)。其他的指紋圖案都基於這三種基本圖案。僅僅依靠圖案類型來分辨指紋是遠遠不夠的,這只是一個粗略的分類,但通過分類使得在大數據庫中搜尋指紋更爲方便。    

模式區(Pattern Area

模式區是指指紋上包括了總體特徵的區域,即從模式區就能夠分辨出指紋是屬於那一種類型的。有的指紋識別算法只使用模式區的數據。Aetex 的指紋識別算法使用了所取得的完整指紋而不僅僅是模式區進行分析和識別。    

核心點(Core Point

核心點位於指紋紋路的漸進中心,它用於讀取指紋和比對指紋時的參考點。    

三角點(Delta

三角點位於從核心點開始的第一個分叉點或者斷點、或者兩條紋路會聚處、孤立點、折轉處,或者指向這些奇異點。三角點提供了指紋紋路的計數和跟蹤的開始之處。    

式樣線( Type Lines

式樣線是在指包圍模式區的紋路線開始平行的地方所出現的交叉紋路,式樣線通常很短就中斷了,但它的外側線開始連續延伸。    

紋數( Ridge Count

指模式區內指紋紋路的數量。在計算指紋的紋數時,一般先在連接核心點和三角點,這條連線與指紋紋路相交的數量即可認爲是指紋的紋數。

局部特徵 局部特徵是指指紋上的節點。兩枚指紋經常會具有相同的總體特徵,但它們的局部特徵——節點,卻不可能完全相同。   

節點(Minutia Points

指紋紋路並不是連續的,平滑筆直的,而是經常出現中斷、分叉或打折。這些斷點、分叉點和轉折點就稱爲“節點”。就是這些節點提供了指紋唯一性的確認信息。    

指紋上的節點有四種不同特性:

1. 分類 ?C 節點有以下幾種類型,最典型的是終結點和分叉點    

A. 終結點(Ending -- 一條紋路在此終結。

B. 分叉點(Bifurcation -- 一條紋路在此分開成爲兩條或更多的紋路。

C. 分歧點(Ridge Divergence -- 兩條平行的紋路在此分開。

D. 孤立點(Dot or Island -- 一條特別短的紋路,以至於成爲一點

E. 環點(Enclosure -- 一條紋路分開成爲兩條之後,立即有合併成爲一條,這樣形成的一個小環稱爲環點

F. 短紋(Short Ridge -- 一端較短但不至於成爲一點的紋路,    

2. 方向(Orientation -- 節點可以朝着一定的方向。    

3. 曲率(Curvature -- 描述紋路方向改變的速度。    

4. 位置(Position --

節點的位置通過(x,y)座標來描述,可以是絕對的,也可以是相對於三角點或特徵點的。   

. 系統問題(system issues)    

有效的指紋辨識系統不僅僅依賴於辨識算法,還有其他的一些重要因素,這裏稱之爲“系統問題”。包括註冊和辨識過程,速度和工作學、用戶信息的反饋、排斥欺騙和安全考慮。

爲了得到較好的識別率,重要的是在註冊時儘量獲得最好的指紋圖象,這是因爲註冊一般只進行一次,而以後的辨識是經常的。一個較好的指紋識別系統應要求用戶的指紋在登記指紋時多次獲取指紋,然後,把最好的指紋或每次獲得的指紋的綜合的結果作爲註冊的指紋。    

又一個方法可以作爲指紋系統設計時的考慮,即我們可以多次取像直到得到一個確定的匹配,但這個過程在降低了拒判率的同時,提高了誤判率。辨識不僅僅只用一個手指的指紋,可以用兩個或更多的手指的指紋,這樣可以增強識別率,當然這樣一來會浪費用戶的許多時間。    

系統的工作學是很重要的。例如:在個人識別系統中,人們願意等待時間的極限,這個極限時間根據特定的應用而不同,依賴於在處理的過程中人們正在做什麼。例如:刷卡或輸入ID號的過程,從0.5-1.5秒被認爲是可接受的時間;另外,拒判而重複次數不應超過3次。    

驗證和辨識的過程、取像設備的設計拒判率和誤判率關係的設定,爲了儘可能的獲得高質量的指紋圖象而提示用戶手指該怎樣放置,正確的反饋信息是非常有用的。如“手指放得太高”,“手指按得不夠重”等。    

在指紋識別系統中,反欺騙的措施用來阻止人造指紋、死指紋和殘留指紋。殘留指紋是由於皮膚油或其他原因殘留在傳感器上。傳感器應建立反欺對策,使得有能力識別真實的皮膚溫度、阻力或電容。

既然指紋識別系統是爲安全而考慮的,例如,節點模板數據庫必須是安全的,以防止一個冒名頂替的人將自己的指紋存進數據庫而成爲合法的用戶。指紋匹配的結果是“YES”或“NO”,以此獲得訪問權。如果有人簡單地繞過指紋匹配而能去直接發送一個“YES”,那麼系統就是不安全的。這個問題的解決是確保主機接收的識別結果是來自真正的合法用戶,如通過數字信號發送給主機。    

總之,在一個完整的指紋識別應用系統中有許多問題值得考慮,解決好這些問題有助於成功地建立有效的系統,相反,則有可能會使得高明的技術被束之高閣,甚至導致應用系統最後的失敗。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章