文章一覽:指紋辨識原理 -- 有興趣的不防一看 (新回覆在最前面,最多列出 6 個) [列出所有回覆 ]
Joe
發表於: 2005/02/21 04:09pm
一. 指紋辨識概述 指紋識別技術主要涉及四個功能︰ 讀取指紋圖象、提取特徵、保存數據和比對。 在一開始,透過指紋讀取設備讀取到人體指紋的圖象,取到指紋圖象之后,要對原始圖象進行初步的處理,使之更清晰。 接下來,指紋辨識軟體建立指紋的數字表示--特徵數據,一種單方向的轉換,可以從指紋轉換成特徵數據但不能從特徵數據轉換成為指紋,而兩枚不同的指紋不會產生相同的特徵數據。軟體從指紋上找到被稱為節點minutiae 的數據點,也就是那些指紋紋路的分叉、終止或打圈處的坐標位置,這些點同時具有七種以上的唯一性特徵。因為通常手指上平均具有70個節點, 所以這種方法會產生大約490個數據。有的算法把節點和方向訊息組合產生了更多的數據,這些方向訊息表明了各個節點之間的關係,也有的算法還處理整幅指紋圖像。 總之,這些數據,通常稱為模板,保存為1 K 大小的記錄。無論它們是怎樣組成的,至今仍然沒有一種模板的標準,也沒有一種公佈的抽象算法,而是各個廠商自行其是。最後,透過計算機模糊比較的方法,把兩個指紋的模板進行比較,計算出它們的相似程度,最終得到兩個指紋的匹配結果。二. 取得指紋圖象 1.取象設備原理取像設備分成兩類︰ 光學、矽晶體傳感器和其他。 光學取像設備有最悠久的歷史,可以追溯到20世紀70年代。依據的是光的全反射原理(FTIR) 。光線照到壓有指紋的玻璃表面,反射光線由CCD 去獲得,反射光的數量倚賴于壓在玻璃表面指紋的脊和谷的深度和皮膚與玻璃間的油脂。光線經玻璃設到谷后反射到CCD, 而設到脊后則不反射到CCD ( 確切的是脊上的液體反光的)。 由於最近光學設備的革新,極大地降低了設備的體積。最近90年代中期,傳感器可以裝在6x 3x 6 英寸的盒子裡,在不久的將來更小的設備是3x 1x 1 英寸。這些進展取決于多種光學技術的發展而不是FTIR 的發展。 例如︰纖維光被用來捕捉指紋圖象。纖維光束垂直射到指紋的表面,他照亮指紋並探測反射光。 另一個方案是把含有一微型三棱鏡矩陣的表面安裝在彈性的平面上,當手指壓在此表面上時,由於脊和谷的壓力不同而改變了微型三棱鏡的表面,這些變化透過三棱鏡光的反射而反映出來。應用晶體傳感器是最近在市場上才出現的,儘管它在傳奇文學作品中已經出現近20年。這些含有微型晶體的平面透過多種技術來繪製指紋圖象。電容傳感器透過電子度量被設計來捕捉指紋。電容設備能結合大約100,000 導體金屬陣列的傳感器,其外面是絕緣的表面,當用戶的手指放在上面時,皮膚組成了電容陣列的另一面。 電容器的電容值由於金屬間的距離而變化,這裡指的是脊( 近的)和谷( 遠的)之間的距離。壓感式表面的頂層是具有彈性的壓感介質材料,他們依照指紋的外表地形( 凹凸)轉化為相應的電子信號。溫度感應傳感器被設計為感應壓在設備上的脊和遠離設備的谷溫度的不同。超音波掃描被認為是指紋取像技術中非常好的一類。很象光學掃描的鐳射,超音波掃描指紋的表面。緊接著,接收設備獲取了其反射信號,測量他的範圍,得到脊的深度。不象光學掃描,累積在皮膚上的臟物和油脂對跨音速獲得的圖象影響不大,所以這樣的圖象是實際脊地形( 凹凸)的真實反映。 由於巨大的指紋辨別市場,如果想指紋識別在商業上的巨大成功,三個原素中的兩個原素是非常重要的,它們是低價格和緊湊的體積( 另外一個是上面談到的識別率)。90年代初到后期,取像設備的價格已經劇烈的下降,製造商最近又承諾,在最近幾年后,又要進行大幅度降價。至於體積,上面已經提到光學傳感器的體積從6x 3x 3 英寸降到3x 1x 1 英寸。應用晶體的傳感器的體積差不多是這樣或者更小。在晶片上,積體電路的技術越來越高( 如︰數字化電路把指紋信號轉化為數字信號強度),系統體積將越來越小,晶體傳感器的體積接近與手指大小所需要的體積,其長寬大約是1x 1 英寸高不到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. 分類 節點有以下幾種類型,最典型的是終結點和分叉點 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”,那么系統就是不安全的。這個問題的解決是確保主機接收的識別結果是來自真正的合法用戶,如透過數字信號發送給主機。