利用中心點(diǎn)信息的活體指紋分類(lèi)算法 作者: 時(shí)間:2007-03-09 來(lái)源:網(wǎng)絡(luò ) 加入技術(shù)交流群 掃碼加入和技術(shù)大咖面對面交流海量資料庫查詢(xún) 收藏 摘要:一種針對活體指紋采集樣本的分類(lèi)算法。將指紋分為四類(lèi):弓形、左箕形、右箕形和箕形(Right loop)和斗形(Whorl)。根據公安部的統計,中國人指紋類(lèi)型的分布,弓形和帳弓形分別為1.1%、1.4%。對于實(shí)驗系統,把兩者分離的必要性不大。而且,弓形和帳弓形在結構上很相似,沒(méi)有明顯的特征可以把兩者很好地分開(kāi)。文獻的實(shí)驗表明:不把這兩類(lèi)分開(kāi),可以在不影響分類(lèi)器效率的情況下,提高正確率。本文采用指紋結構特片分析方法,基于實(shí)用性的考慮,把采集的指紋分為四類(lèi):弓形(Arch)、左箕形(Left Loop)、右箕形(Right loop)和斗形(Whorl)。如圖1所示。 關(guān)鍵詞:指紋分類(lèi) 奇異點(diǎn) 方向濾波 連續分類(lèi) 目前指紋分類(lèi)在的研究對象主要是油墨指令等滾動(dòng)按捺得到的指紋圖像,一般采用美國中央情報局的SINT4、NIST9、NIST14、NIST24等批文數據庫,這些據指紋圖像通常保留了三角點(diǎn)和中心點(diǎn)等特征點(diǎn)。但活體采集通常不能完整采集三角點(diǎn)?;铙w采集的樣本與傳統油墨按捺采集的樣本有很大不同。從目前所能查閱的國內外文獻來(lái)看,針對活體采集樣本的分類(lèi)算法研究并不多見(jiàn),而且效果并不是很理想。本文所研究的指紋庫是用主流芯片級指紋采集器——富士通公司的BMF200電容式的指紋傳感器采集得到的。這款采集器在自動(dòng)指紋識別系統中得到了廣泛應用。因此,針對這種樣本數據庫的分類(lèi)算法的研究具有現實(shí)意義和理論意義。傳統的分類(lèi)算法沿用指紋學(xué)上的分類(lèi)法,把指紋分為五類(lèi):弓形(Arch)、帳弓形(Tent Arch)、左箕形(Left loop)、右箕形(Right loop)和斗形(Whorl)。根據公安部的統計,中國人指紋類(lèi)型的分布,弓形和帳弓形分別為1.1%、1.4%。對于實(shí)際系統,把兩者分離的必要性不大。而且,弓形和帳弓形在結構上很相似,沒(méi)有明顯的特征可以把兩者很好地分開(kāi)。文獻的實(shí)驗證表明:不把這兩作業(yè)成績(jì)分開(kāi),可以在不影響分類(lèi)器效率的情況下,提高正確率。本文采用指紋的結構特征分析方法,基本實(shí)用性的考慮,把采集的指紋分為四類(lèi):弓形(Arch)、左箕形(Letf loop)、右箕形(Right loop)和斗形(Whorl)。如圖1所示。 1 指紋分類(lèi)算法 分類(lèi)算法的基本步驟是: (1)圖像預處理:為使指紋圖像有要同的均值和方差,對原始圖像進(jìn)行歸一化處理,然后根據圖像灰度信息對圖像分割,把背景區分割出來(lái); (2)計算方向圖:計算指紋圖像每一點(diǎn)的方法; (3)提取特征:根據方向圖,找出指紋的奇異點(diǎn); (4)分類(lèi):根據中心點(diǎn)數目和指紋特定區域的流向把指紋分為四類(lèi)。程序流程圖如圖2。 1.1 圖像預處理 預處理包括歸一化、背景分割。歸一化就是把原始圖像的灰度均值和方差變換為期望得到的均值和方差。 歸一化后,對圖像進(jìn)行分割,利用灰度信息把指紋區和背景區分開(kāi)。 圖3是一幅指紋圖像的分割結果。 1.2 方向圖的計算與平滑 輸入的指紋圖像大小為240%26;#215;264,分成8%26;#215;8的小塊。首先計算每一點(diǎn)的方向,把平面空間量化成8個(gè)方向碼,通過(guò)式(1)計算每一點(diǎn)的方向。 其中:D(i,j)表示點(diǎn)(i,j)的方向碼;N這里取值為8。G(i,j)表示點(diǎn)(i,j)的灰度值;w表示以點(diǎn)(i,j)中心,在方向為d的直線(xiàn)上,每一邊的點(diǎn)數。G(ik,jk)d表示d方向的直線(xiàn)上所取像素點(diǎn)的灰度值。點(diǎn)的方向碼的計算解釋如下:在某一個(gè)點(diǎn)較小的范圍內,紋線(xiàn)上的點(diǎn)的灰度值相關(guān)不大,而紋線(xiàn)上與非紋線(xiàn)的點(diǎn)的灰度值相差較大。因此沿著(zhù)紋線(xiàn)計算的差的絕對值之和較小,而沿著(zhù)其他方向計算出的差的絕對值之和則較大。 為了保證方向的抗干擾能力,可在塊劃分不變的情況下,適當擴展方向碼的統計區域。塊的劃分尺寸為8%26;#215;8,而統計該區域的方向碼時(shí),則按照12%26;#215;12的擴展區域。統計每一小塊對應區域中每一個(gè)方向碼的像素點(diǎn)數,像素點(diǎn)數最多的方向碼就是該小塊的主方向。 為了消除局部的方向圖計算誤差,對方向圖進(jìn)行平滑。平滑方式采用3%26;#215;3均值濾波器實(shí)現平滑濾波。圖4給出濾波前后的方向圖。1.3 奇異點(diǎn)尋找與修正 進(jìn)行指紋分類(lèi)前,先將指紋的特片點(diǎn)找出來(lái)。對指紋分類(lèi)有用的是指紋的奇異點(diǎn):中心點(diǎn)(core)和三角點(diǎn)(delta)。文獻中介紹了判定中心點(diǎn)和三角點(diǎn)的方法。在中心點(diǎn)沿著(zhù)逆時(shí)針?lè )较蛞恢艿慕嵌茸兓浚ú淮笥?0度)為180度,在三角點(diǎn)沿著(zhù)逆時(shí)序方向一周的角度變化量(不大于90度)為-180度。 在實(shí)際計算時(shí),由于方向圖的劃分、干擾的存在,根據上述判據找到的中心點(diǎn)和三角點(diǎn)有可能是偽奇異點(diǎn),需要根據實(shí)際情況作一些修正,刪除偽奇異點(diǎn)。修正奇異點(diǎn)的準則如下: (1)如果指紋紋線(xiàn)在局部變化較大,就有可能出現相鄰兩個(gè)小塊的方向互相垂直,這可能使中心點(diǎn)和三角點(diǎn)重合。這種情況都發(fā)生在中心區域而不是三角區域,所以需要刪除與中心點(diǎn)重合的三角點(diǎn)。(2)指紋圖像的邊緣區域噪聲較大,容易出現偽奇異點(diǎn),所以在計算出的奇異點(diǎn)的一個(gè)適當的領(lǐng)域內如果有背景區,則刪除該奇異點(diǎn)。 (3)由于噪聲的影響,或是手指上有較大的皺紋,會(huì )使計算出的奇異點(diǎn)中出現相鄰很近的中心點(diǎn)和三角點(diǎn),這些都是偽奇異點(diǎn)。所以,如果存在一個(gè)中心點(diǎn)和一個(gè)三角點(diǎn)距離小于設定的閾值,則刪除這兩個(gè)點(diǎn),并進(jìn)一步刪除與這兩個(gè)點(diǎn)距離小于閾值的其它奇異點(diǎn); (4)對于指紋紋線(xiàn)在特征區域變化較大的情況,有可能在一個(gè)特征區域找出多于一個(gè)的奇異點(diǎn)。所以,在經(jīng)過(guò)上述三步偽奇異點(diǎn)的刪除后,使用聚類(lèi)分析方法,把余下的中心點(diǎn)和三角點(diǎn)分成幾個(gè)聚類(lèi),每一個(gè)聚類(lèi)的中心就是最后得到的奇異點(diǎn)。 圖5給出了一幅質(zhì)量較差的指紋圖像奇異點(diǎn)修正前和修正后的情況。 本文根據中心點(diǎn)數目組織分類(lèi)判據將指紋分為三類(lèi):0個(gè)中心點(diǎn)為弓形,2個(gè)中心點(diǎn)為斗形,1個(gè)中心點(diǎn)為左箕形或右箕形。需要根據實(shí)際情況對此判據作進(jìn)一步修正和改進(jìn)。當中心點(diǎn)個(gè)數為1,存在三角點(diǎn)。如果三角點(diǎn)與中心點(diǎn)的距離小于一個(gè)閾值。則該指紋為弓形。 1.4 左箕、右箕的區分 對于中心點(diǎn)個(gè)數為1的指紋,可以根據中心點(diǎn)下方指紋紋線(xiàn)的流轉方向進(jìn)一步把指紋分成左箕形、右箕形。左箕形指紋紋線(xiàn)流向左方,右箕形流向右方。 對中心點(diǎn)下方一定角度的區域進(jìn)行90%26;#176;的方向濾波,可以通過(guò)方向碼之間的計算近似實(shí)現方向濾波: P是濾波值,N是該區域小塊的個(gè)數,pi是每一小塊的濾波值,Di是小塊的方向碼,D0是濾波方向,在這里D0=4(90%26;#176;)。不考慮到D0垂直的方向碼。 P為負是左箕形,否則為右箕形。 圖6給出了兩種類(lèi)型特征區域內指紋紋線(xiàn)的流向。 1.5 斗形的索引參數計算 斗形指紋在漢族人中所占比例很大,大約在一半左右。因此有必要對斗形指紋進(jìn)行細分。實(shí)際情況中,很難從結構特征把斗形分成幾個(gè)可以互相分得開(kāi)的子類(lèi)。本文以斗形的長(cháng)短軸之比Flatness作為斗形的數據庫索引參數,對斗形進(jìn)行連續分類(lèi)。分別以8個(gè)方向碼為坐標軸,將指紋方向圖在兩個(gè)垂直的方向投影,計算投影比。取最大的投影比為Flatness,作為索引參數。 對斗形指紋,利用期長(cháng)短軸之比,作為斗形指紋的索引,在數據庫中查找,是連續分類(lèi)思想在斗形指紋進(jìn)行一步分類(lèi)上的體現。文獻提出了不同于傳統的明確的排他性分類(lèi)(exclusive classification)的連續分類(lèi)(continuous classification)概念。通過(guò)一定的特片提取方法,得到一個(gè)特片向量,然后把這個(gè)特片向量當作索引(a assesskey)。對于一個(gè)給定的容差ρ,在特征空間里,以待查樣本為中心,以ρ為半徑的超球作為待查樣本的搜索域。實(shí)際上,存在大量無(wú)法歸入既定類(lèi)別的雜形指紋,和可以同時(shí)歸入一個(gè)以上類(lèi)型、連指紋專(zhuān)家都無(wú)法確定其類(lèi)別的模棱兩可的指紋,這都影響了傳統排他性分類(lèi)算法的正確率。而對于連續分類(lèi),則不存在這種干擾。不過(guò)文獻提出的分類(lèi)算法主要是針對油墨滾動(dòng)按捺的指紋圖像,而且有很大的算法復雜性,不適于實(shí)時(shí)系統。本文對斗形索引參數的計算,是連續分類(lèi)思想在研究實(shí)時(shí)系統算法上的一個(gè)嘗試。圖7是方向碼為0,3的兩個(gè)坐標的示意圖。 圖8是900個(gè)斗形指紋樣本的參數Flatness的分布圖。由圖8可以看出,應用斗形指紋的長(cháng)短軸之比Flatness,可以把斗形指紋很好地排列出來(lái)。 2 實(shí)驗結果 利用本算法對2150個(gè)指紋采集樣本進(jìn)行實(shí)驗,這些樣本來(lái)自215個(gè)手指,每個(gè)手指采集10次。分錯樣本63個(gè),分類(lèi)準確率達97.1%。具體結果見(jiàn)表1。 對910個(gè)斗形指紋計算長(cháng)短軸之比,結果在1.0和2.8之間,每個(gè)手指紋在10次采樣的長(cháng)短軸之比相差一般不超過(guò)0.5。說(shuō)明該參數可以用作斗形指紋的特征參數。由于采集器的面積小,手指也不是滾動(dòng)按捺,所以采集樣本與傳統的油墨按捺有很大不同,在算法、方向采集樣本與傳統的油墨按捺有很大不同,在算法、方向圖的計算、奇異點(diǎn)的修正和分類(lèi)方法上都做了很大的改進(jìn)。本文提出的算法計算量小,在CPU Pentium III550MHz,內存288MB,處理一幅指紋圖像平均為0.26s,其中0.2s花費在對指紋圖像每一點(diǎn)的方向的計算上。這也是指紋識別的必需步驟。所以該算法對于自動(dòng)指紋識別系統所引起的額外時(shí)間開(kāi)銷(xiāo)很小,滿(mǎn)足實(shí)用的實(shí)時(shí)系統的要求。 另外,由于指紋分類(lèi)所依據的指紋的宏觀(guān)特征,由于采集器面積小,這對分類(lèi)帶來(lái)一定的難度,更加有效的分類(lèi)算法有必要進(jìn)一步研究。表1 測試樣本的分類(lèi)結果 輸出結果待測樣本類(lèi)型弓形斗形右箕形左箕形弓形199044斗形188154右箕形865750左箕形2236432 linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論