TWI700604B - 虹膜辨識方法與電腦程式產品 - Google Patents

虹膜辨識方法與電腦程式產品 Download PDF

Info

Publication number
TWI700604B
TWI700604B TW108136116A TW108136116A TWI700604B TW I700604 B TWI700604 B TW I700604B TW 108136116 A TW108136116 A TW 108136116A TW 108136116 A TW108136116 A TW 108136116A TW I700604 B TWI700604 B TW I700604B
Authority
TW
Taiwan
Prior art keywords
reliability
feature vector
codeword
correction
iris
Prior art date
Application number
TW108136116A
Other languages
English (en)
Other versions
TW202115596A (zh
Inventor
陳彥銘
林國鈞
Original Assignee
國立中山大學
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 國立中山大學 filed Critical 國立中山大學
Priority to TW108136116A priority Critical patent/TWI700604B/zh
Application granted granted Critical
Publication of TWI700604B publication Critical patent/TWI700604B/zh
Publication of TW202115596A publication Critical patent/TW202115596A/zh

Links

Images

Abstract

本發明提出一種虹膜辨識方法,包括:取得虹膜影像與其特徵向量;計算每個特徵值的可靠度;根據奇偶檢查矩陣計算每個變異節點的更正能力,其中奇偶檢查矩陣為不規則矩陣;根據可靠度與更正能力取得一映射關係,並根據映射關係將特徵向量轉換為一映射後特徵向量,其中較大的可靠度是映射至較低的更正能力;對一隨機字串執行一錯誤更正碼編碼程序以得到第一碼字,將第一碼字與映射後特徵向量相加以得到第二碼字;根據特徵向量執行雜湊函數以得到第一雜湊值;以及將映射關係、第一雜湊值與第二碼字儲存至資料庫中。

Description

虹膜辨識方法與電腦程式產品
本發明是有關於一種採用了錯誤更正碼的虹膜辨識方法。
隨著互聯網與物聯網的蓬勃發展,生物認證技術在身份認證領域越來越受到產業界的高度重視,業界普遍認為生物認證正逐漸取代傳統身份認證技術,虹膜辨識技術具有高精確性、高唯一性、高可靠性等特性,因此已經受到許多關注。在習知技術中,虹膜辨識技術會結合錯誤校正碼(error correction code,ECC),但如何設計ECC來適用於虹膜辨識還有許多地方可以改善。
本發明的實施例提出一種虹膜辨識方法,適用於電子裝置,此虹膜辨識方法包括註冊程序與認證程序。此註冊程序包括:取得對應於一識別碼的虹膜影像,並根據虹膜影像計算出特徵向量,其中特徵向量包括多個特徵值;計算每個特徵值的可靠度;根據奇偶檢查矩陣計算每個變異節 點的更正能力,其中奇偶檢查矩陣為不規則矩陣;根據可靠度與更正能力取得一映射關係,並根據映射關係將特徵向量轉換為一映射後特徵向量,其中第一可靠度大於第二可靠度,第一更正能力大於第二更正能力,第一可靠度是映射至第二更正能力,並且第二可靠度是映射至第一更正能力;對第一隨機字串執行一錯誤更正碼編碼程序以得到第一碼字,將第一碼字與映射後特徵向量相加以得到第二碼字;根據特徵向量執行雜湊函數以得到第一雜湊值;以及將識別碼、映射關係、第一雜湊值與第二碼字儲存至資料庫中。
在一些實施例中,上述虹膜影像的數目大於一,每個虹膜影像包括對應的特徵向量,每個虹膜影像對應至一遮罩。所述計算每個特徵值的可靠度的步驟包括:對於一像素位置,根據虹膜影像中位於像素位置的特徵值的大小來決定像素位置所對應的可靠度;若虹膜影像中位於像素位置的特徵值之間的差距在一預設範圍內,則增加像素位置所對應的可靠度;以及若像素位置在遮罩中被遮蔽,則降低像素位置所對應的可靠度。
在一些實施例中,奇偶檢查矩陣對應至一坦納圖(tanner graph),坦納圖包括多個校正節點與多個變數節點,每個變數節點對應至一個更正能力。所述根據奇偶檢查矩陣計算每個變數位元的更正能力的步驟包括;根據每個變數節點所連接的校正節點的個數來決定對應的更正能力。
在一些實施例中,上述根據特徵向量執行雜湊函數以得到第一雜湊值的步驟包括:將特徵向量與第二隨機 字串相加以得到第一字串;以及將第一字串輸入至雜湊函數以得到第一雜湊值。
在一些實施例中,認證程序包括:從資料庫中取得識別碼、映射關係、第一雜湊值與第二碼字;取得一待驗證虹膜影像,並取得待驗證虹膜影像的一待驗證特徵向量;依照映射關係將待驗證特徵向量轉換為一映射後待驗證特徵向量;將映射後待驗證特徵向量與第二碼字相加以得到第三碼字;對第三碼字執行一錯誤更正碼解碼程序以得到第四碼字;將第四碼字與第二碼字相加以得到第五碼字;根據映射關係從第五碼字中取得第一訊息字串;對第一訊息字串與第二隨機字串做互斥或運算以得到第二字串;將第二訊息字串輸入至雜湊函數以得到第二雜湊值;以及判斷第一雜湊值是否相同於第二雜湊值。
在一些實施例中,第一碼字包括多個奇偶檢查位元。虹膜辨識方法更包括:從特徵值中挑選可靠度較大的特徵值,並設定奇偶檢查位元的個數小於所挑選的特徵值的個數。
以另一個角度來說,本發明提出一種電腦程式產品,由一電子裝置載入並執行以實施多個步驟:取得對應於一識別碼的虹膜影像,並根據虹膜影像計算出特徵向量,其中特徵向量包括多個特徵值;計算每個特徵值的可靠度;根據奇偶檢查矩陣計算每個變異節點的更正能力,其中奇偶檢查矩陣為不規則矩陣;根據可靠度與更正能力取得一映射關係,並根據映射關係將特徵向量轉換為一映射後特徵向 量,其中第一可靠度大於第二可靠度,第一更正能力大於第二更正能力,第一可靠度是映射至第二更正能力,並且第二可靠度是映射至第一更正能力;對第一隨機字串執行一錯誤更正碼編碼程序以得到第一碼字,將第一碼字與映射後特徵向量相加以得到第二碼字;根據特徵向量執行雜湊函數以得到第一雜湊值;以及將識別碼、映射關係、第一雜湊值與第二碼字儲存至資料庫中。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
100:電子裝置
110:處理器
120:記憶體
210、311~313:眼睛影像
220:虹膜部分
221:遮罩
231、321~323:虹膜影像
232、331~333:遮罩
310、340、350、360:步驟
370:資料庫
401~403:特徵向量
410:可靠度向量
420:遮罩
510:特徵向量
520、521、522:變異節點
530:校正節點
601:眼睛影像
610、620、630、640、650:步驟
602:虹膜影像
[圖1]是根據一實施例繪示電子裝置的示意圖。
[圖2]是根據一實施例繪示取得虹膜影像的示意圖。
[圖3]是根據一實施例繪示註冊程序的流程示意圖。
[圖4]是根據一實施例繪示多個特徵向量與多個遮罩的示意圖。
[圖5]是根據一實施例繪示可靠度與更正能力之間的映射關係的示意圖。
[圖6]是根據一實施例說明驗證程序的流程示意圖。
關於本文中所使用之『第一』、『第二』、...等,並非特別指次序或順位的意思,其僅為了區別以相同技 術用語描述的元件或操作。
圖1是根據一實施例繪示電子裝置的示意圖。請參照圖1,電子裝置100可以是智慧型手機、平板電腦、個人電腦、筆記型電腦、伺服器、工業電腦或具有計算能力的各種電子裝置等,本發明並不在此限。電子裝置100包括了處理器110與記憶體120,其中處理器110可為中央處理器、微處理器、微控制器、數位信號處理器、影像處理晶片、特殊應用積體電路等,記憶體120可為揮發性記憶體或非揮發性記憶體。記憶體120中儲存有多個指令,處理器110會執行這些指令以完成一虹膜辨識方法,此虹膜辨識方法包括註冊程序與認證程序。
圖2是根據一實施例繪示取得虹膜影像的示意圖。請參照圖2,首先要取得眼睛影像210,此眼睛影像210例如為紅外線影像。接下來要定位出虹膜部分220與遮罩221,在此可以採用任意習知的演算法。虹膜部分220具有內邊界與外邊界,內邊界的內部是瞳孔,而遮罩221是用以遮蔽影響辨識的雜訊,例如包含睫毛的區域。虹膜部分220與遮罩221屬於笛卡爾座標(Cartesian coordinate),在此會將之轉換為極座標,因此圓圈狀的虹膜部分220會被轉換為虹膜影像231,而遮罩221會被轉換為遮罩232。在一些實施例中,上述取得虹膜影像231的程序也可以由其他裝置來執行,本發明並不限制虹膜影像231與遮罩232是如何取得。相關做法可參照以下三篇文獻:(1)Wildes,R.P.,Asmuth,J.C.,Green,G.L.:‘A machine-vision system for iris recognition’,Mach.Vis.Appl.,1996,9,(1),pp.1-8;(2)Ahmadi,N.,Akbarizadeh,G.:‘Iris recognition system based on canny and LoG edge detection methods’,J.Soft Comput.Decis.Support Syst.,2015,2,(4),pp.26-30;(3)Daugman,J.:‘High confidence recognition of persons by rapid video analysis of iris texture’.IET European Convention on Security and Detection,1995,pp.244-251。上述文獻僅是範例,本領域具有通常知識者當可參照其他文獻來取得虹膜影像231與遮罩232。
圖3是根據一實施例繪示註冊程序的流程示意圖。請參照圖3,在註冊程序中,使用者的眼睛會被掃描多次(在此以3次為例)以得到眼睛影像311~313,接下來經過步驟310的預處理以將這些眼睛影像311~313分別轉換為虹膜影像321~323與遮罩331~333,此步驟310已經描述如圖2,在此不再贅述。對於每一張虹膜影像321~323都可以計算出一個特徵向量,每個特徵向量都會包括多個特徵值,在此實施例中是採用一維的對數蓋伯濾波器(log Gabor filter),此濾波器會與虹膜影像進行卷積(convolution),而濾波器的輸出為複數,其中的實部與虛部便可以當作特徵值。然而,上述的對數蓋伯濾波器僅是一範例,在其他實施例中也可以採用任意的濾波器或特徵擷取演算法來取得特徵向量,本發明並不在此限。在此實施例中,上述的每個特徵值是經過量化成為“0”或是“1”,但在其他實施例中 每個特徵值也可以是沒有經過量化的實數。
接下來,在步驟340中,虹膜影像321~323所對應的特徵向量與遮罩331~333會被合併,並且對於每一個像素位置都可計算出一個可靠度。請參照圖3與圖4,圖4是根據一實施例繪示多個特徵向量與多個遮罩的示意圖。特徵向量401是根據虹膜影像321所計算出,至中包括了特徵值x11,x12,x 13,...x 1n 。n為正整數,代表特徵向量的長度。此外,遮罩331中的“1”表示對應的像素位置被遮蔽,“0”表示不被遮蔽,例如特徵值x12已被遮罩331所遮蔽,以此類推。類似地,特徵向量402是根據虹膜影像322所計算出,其中包括了特徵值x21,x22,x 23,...x 2n 。特徵向量403是根據虹膜影像323所計算出,其中包括了特徵值x31,x32,x 33,...x 3n 。可靠度向量410中包括了可靠度r1,r 2,r 3...r n ,這些可靠度所代表的是虹膜的紋理是否不容易受位移、光影、或雜訊等因素干擾。如上所述,在此實施例中每個特徵值是蓋伯濾波器的結果,因此每個特徵值表示此虹膜影像在對應的像素位置上是否具有特定的紋理,而特定的紋理比較不容易受雜訊干擾,又因為在產生特徵向量(量化之前)時,接近0的特徵值會很容易被少許的雜訊就導致量化出錯,舉一個例子來說:兩個像素的特徵值在經過蓋伯濾波器之後分別是3.12、0.32,而現在兩者若都遭遇-0.88的雜訊,可以發現後者被錯誤量化判斷為0,但是較大的前者由於其本身的優勢並不會被雜訊所影響,因此我們會以經過蓋伯濾波器之後的特徵值大小來參與決定可靠度值。在此實施例中,對於某一個像素位 置,可以根據此像素位置的特徵值的大小來決定所對應的該可靠度,舉例來說,可根據特徵值x11,x21,x 31的總和來決定可靠度r1,總和越大則可靠度r1越大。另一方面,由於特徵值x11,x21,x 31是在不同的時間所取得的,如果特徵值x11,x21,x 31之間的差距越小也表示此紋理不容易受干擾,因此當特徵值x11,x21,x 31之間的差距在一預設範圍內則可增加可靠度r1。在一些實施例中,特徵值x11,x21,x 31都已被量化為“0”或“1”,因此當特徵值x11,x21,x 31彼此都一樣時(同為“0”或是同為“1”)可增加可靠度r1。此外,若某個像素位置在遮罩中被遮蔽,則降低對應的可靠度。舉例來說,可靠度r1在遮罩331~333中並沒有被遮蔽,因此不會改變可靠度r1;但可靠度r2在遮罩331中被遮蔽(共被遮蔽一次),因此會些微地降低可靠度r2;而可靠度r3在遮罩331與遮罩332中被遮蔽(共被遮蔽兩次),因此可降低可靠度r3兩次。換言之,當一個像素位置被遮蔽的次數越多,對應的可靠度被降低的幅度就越大。
此外,特徵向量401~403可被合併,例如將相同像素位置的特徵值相加以得到合併後的特徵值。在其他實施例中,也可以對相同像素位置的多個特徵值取平均、中位數或其他統計值以作為合併後的特徵值。在一些實施例中,在合併之前也可以實施平移校位(iris orientation),但本發明並不限制是否要再實施其他程序。
再者,遮罩331~333也可被合併成為遮罩420,在此實施例中合併後的遮罩420中具有固定數目的 “1”,也就是說有固定數目的像素位置會被遮蔽。合併遮罩的程序包括兩個步驟,首先在步驟(a),如果在特徵向量401~403中相同像素位置上的特徵值彼此不相同或在預設範圍之外,則挑選此像素位置為“1”,這是因為這些像素位置上的特徵值在不同時間點會有不同的數值,這意味著變異比較大,必須被遮蔽。舉例來說,特徵值x11,x21,x 31彼此相同,因此遮罩420中對應的位元m1會被設定為“0”;x12,x22,x 32彼此不相同或在預設範圍之外,因此遮罩420中對應的位元m2會被設定為“1”。換言之,在步驟(a)中可靠度比較低的像素位置比較容易被遮蔽,在一些實施例中也可以直接根據上述計算出的可靠度來挑選被遮蔽的像素位置。接下來,在步驟(b),根據像素位置被遮蔽的次數來增加或減少步驟(a)所挑選的像素位置。具體來說,如果在步驟(a)中挑選的像素位置不夠多,則繼續挑選被遮蔽最多次且目前為“0”的像素位置,直到遮罩中有足夠數目的“1”;反之如果步驟(a)中挑選的像素位置太多,則把被遮蔽最少次且目前為“1”的像素位置修改為“0”,直到遮罩中有預設數目的“1”。
將合併後的遮罩420套用在合併後的特徵向量以後,便可以擷取出一個固定長度的特徵向量,在圖3中標記為b,在此實施例中特徵向量b為二進位。在習知技術中會對特徵向量b做錯誤更正碼的編碼程序,此錯誤更正碼例如為低密度奇偶檢查(low density parity check,LDPC)碼,習知的LDPC碼會採用規則矩陣(regular matrix),但 在本實施例中是採用不規則矩陣(irregular matrix),且特徵向量b的特徵值會移動至不同的位置。具體來說,請參照圖5,圖5是根據一實施例繪示可靠度與更正能力之間的映射關係的示意圖。LDPC碼會採用一個奇偶檢查矩陣,根據此奇偶檢查矩陣可以繪示出坦納圖(tanner graph),此坦納圖包括了多個校正節點530與多個變數節點520,然而本領域具有通常知識者當可理解坦納圖,在此並不再詳細贅述。每個變數節點520會連接至一或多個校正節點530,如果是採用規則矩陣則每個變數節點520會連接到相同數目的校正節點,但在此實施例中因為採用的是不規則矩陣,因此每個變數節點520連接到的校正節點530的數目可能不同。舉例來說,變數節點521會連接至2個校正節點,而變數節點522會連接至4個校正節點。當一個變數節點連接到比較多個校正節點時,表示此變數節點上的位元會被檢查比較多次,因此更正能力會比較好,也就是說根據變數節點所連接的校正節點的個數可決定對應的更正能力。
此外,特徵向量510即圖3中的特徵向量b,此特徵向量510中的每個特徵值具有對應的可靠度,並且每個特徵值會透過可靠度向量410映射至一個變數節點。特別的是,此映射關係是根據可靠度與變數節點的更正能力所決定。具體來說,圖5中的“HR”表示高可靠度,“MR”表示中度可靠度,“LR”表示低可靠度。在此實施例中,低可靠度會映射至更正能力較大的變數節點,而高可靠度會映射至更正能力較小的變數節點。也就是說,如果存在著第一 可靠度與第二可靠度,此第一可靠度大於第二可靠度,另外存在著第一更正能力與第二更正能力,且第一更正能力大於第二更正能力,則第一可靠度會映射至第二更正能力,第二可靠度會映射至第一更正能力。在一些實施例中,可以先將所有的可靠度排序,同時也對所有的更正能力排序,其中最低的可靠度會映射至最大的更正能力,依序處理完所有的可靠度。上述映射關係的設計是要保護可靠度較低的位元,由於可靠度較高的位元本身已經不容易受雜訊影響,因此如果把高可靠度映射至高更正能力則無法得到太多好處。值得注意的是,變數節點520的個數代表一個碼字(codeword)的長度,但特徵向量510的長度為訊息位元的個數,也就是說特徵向量510的長度會小於變數節點520的個數,因此並不是所有的變數節點520都有對應的特徵值,在一些實施例中可以設定具有最低可靠度的變數節點沒有對應的特徵值,但本發明並不在此限。
在將特徵向量510中所有的特徵值透過可靠度向量410映射至對應的變數節點520以後,把沒有被映射的變數節點填上“0”,如此一來便可以將特徵向量510轉換為一映射後特徵向量,以下標記為bm。請參照回圖3,在步驟350中對第一隨機字串(標記為i)執行錯誤更正碼編碼程序以得到第一碼字(標記為c)。接下來在步驟360中,將第一碼字c與映射後特徵向量bm相加以得到第二碼字(標記為cm),此步驟可以寫為以下方程式(1)。
cm=c ♁ bm…(1)
特別的是,這裡的相加(或相減)指的是二進位運算,因此不論是相加或相減都等同於互斥或(XOR)運算。以另一個角度來說,步驟360等同於是先把第一碼字c填入圖5中的變數節點520,然後將特徵向量b中的特徵值映射至對應的變數節點並做互斥化運算,最後得到第二碼字cm,此第二碼字cm會儲存至資料庫370當中。
另一方面,根據特徵向量b可以執行雜湊函數以得到第一雜湊值h。特別的是,在此實施例中是先將特徵向量b與第二隨機字串(標記為w)相加(即互斥或運算)以得到第一字串(以下標記為x),接著將第一字串x輸入至雜湊函數以得到第一雜湊值h,最後第一雜湊值h會儲存至資料庫370。此雜湊函數是為了避免直接儲存特徵向量b至資料庫370中,而加入第二隨機字串w的好處至少有兩個,第一是對於相同的使用者在不同的生物辨識系統中可藉由改變第二隨機字串w來產生不同的第一字串x;第二個好處是如果第一雜湊值h被竊取了,透過改變第二隨機字串w便可以改變第一雜湊值h,在習知技術中是直接對特徵向量b做雜湊,但這樣一來如果雜湊值h被竊取了便無法再設定新的雜湊值h(類似於變更密碼)。
此外,使用者在註冊時所使用的上述的映射關係(本發明並不限制用何種資料結構與資料型態來記錄此映射關係)、圖4中合併後的遮罩420、與可靠度向量410也會儲存至資料庫370當中。
在此說明驗證程序,圖6是根據一實施例說明驗 證程序的流程示意圖。請參照圖6,首先取得眼睛影像601,經過步驟610的預處裡以後眼睛影像601會轉換為待驗證虹膜影像602,此步驟610相同於圖3的步驟310,在此不再贅述。此外,驗證程序中系統會從資料庫370中取得一識別碼與此識別碼所對應的第一雜湊值h、第二隨機字串w、第二碼字cm、合併後的遮罩、可靠度向量410、特徵值與變異節點之間的映射關係,用以驗證目前的使用者是否符合此識別碼。具體來說,根據虹膜影像602可以計算出特徵向量,此特徵向量的計算方式如同上述註冊程序中所採用的計算方法,然後將從資料庫370取出的遮罩套用在此特徵向量中,經過遮罩後的特徵向量標記為t,在此稱為待驗證特徵向量,如此一來待驗證特徵向量t也會有固定的長度且已過濾掉睫毛等區域。在步驟620中,根據從資料庫370取出的映射關係將特徵向量t轉換為映射後待驗證特徵向量(以下標記為tm),此作法已經詳述於圖5,在此不再贅述。此外,映射後待驗證特徵向量tm會與從資料庫370取出的第二碼字cm相加以得到第三碼字c',如以下方程式(2)所示。
c'=tmc m …(2)
接下來,在步驟630中對第三碼字c'執行錯誤更正碼解碼程序以得到第四碼字c",在此步驟中會更正第三碼字c'中的若干位元。接著,將第四碼字c"與第二碼字cm相加以得到第五碼字
Figure 108136116-A0101-12-0013-1
,如以下方程式(3)所示。
Figure 108136116-A0101-12-0013-2
上述方程式(1)可以改寫為以下方程式(4),這 是因為在二進位運算中不論是加法或減法都是互斥或運算。
c=b m c m …(4)
若目前的使用者是合法的,則映射後待驗證特徵向量tm應會相似於特徵向量bm,僅有部分的位元不一樣。比較方程式(2)、(4),由於映射後待驗證特徵向量tm與特徵向量bm是同樣地加上第二碼字cm,因此第三碼字c'應會相似於第一碼字c,而錯誤更正碼可更正這些不一樣的位元,在經過錯誤更正碼解碼程序以後,第四碼字c"會等同於第一碼字c。在步驟630中,參照方程式(3)、(4),把第四碼字c"再次地加上第二碼字cm以後得到的第五碼字
Figure 108136116-A0305-02-0016-1
便會相同於特徵向量bm。換言之,即使是同一個使用者,他在註冊與驗證時所擷取的虹膜影像也不會完全相同,但透過錯誤更正碼可以修正這些不相同的位元。
由於在註冊階段時輸入至雜湊函數的是特徵向量b而不是映射後特徵向量bm,因此在步驟630中必須再次的根據映射關係從第五碼字
Figure 108136116-A0305-02-0016-2
取得第一訊息字串b',此步驟等同於在圖5中把變數節點520中的位元映射回特徵向量510。
接下來在步驟640中,對第一訊息字串b'與第二隨機字串w做互斥或運算以得到第二字串x',然後將第二訊息字串x'輸入至雜湊函數以得到第二雜湊值h'。最後在步驟650中判斷第二雜湊值h'是否相同於第一雜湊值h,則是表示通過驗證,反之不通過驗證。
[安全性分析]
一個碼字包括了訊息位元與奇偶檢查位元,在錯誤更正碼的安全性分析當中,如果奇偶檢查位元的個數(表示為p)大於訊息位元的個數(表示為m),則攻擊者便可以設定p個方程式來解m個未知數,也就是說可以還原出訊息位元,在虹膜辨識系統當中等同於解出虹膜影像的特徵向量b。由於同一個使用者所擷取的虹膜影像之間具有變異,因此一般需要設定很多的奇偶檢查位元來更正這些變異,但這也導致了p>m的現象。為了解決此問題,必須要縮小同一個使用者的虹膜影像之間的變異。請參照圖3與圖4,在一些實施例中會從特徵向量b中挑選可靠度較大的特徵值,如果一來可以去除容易變異的像素位置,同時可以減少訊息位元的個數m,由於挑選後的特徵值具有較高的可靠度,因此可以採用更少的奇偶檢查位元,使得p<m,也就是說奇偶檢查位元的個數會小於所挑選的特徵值的個數,如此一來攻擊者便無法還原出特徵向量b。舉例來說,在一些實施例中是從5476的特徵值中挑選出400個具有較高可靠度的特徵值。然而,在其他實施例中也可以對特徵向量b執行降低維度的演算法,例如主成分分析(principle component analysis,PCA),藉此降低訊息位元的個數m,由於主成分分析依然可以保有原訊號的特性且去除不重要的部分,因此可以採用更少的奇偶檢查位元,使得p<m。
以另外一個角度來說,本發明也提出了一電腦程式產品,此產品可由任意的程式語言及/或平台所撰寫,當此電腦程式產品被載入至上述的電子裝置100執行時,可 執行上述虹膜識別方法的註冊程序與驗證程序。
在上述的虹膜辨識方法中,由於使用了不規則矩陣,且低可靠度的特徵值是映射至高更正能力的變異節點,因此可以提升錯誤更正碼的更正能力。此外,由於設計奇偶檢查位元的個數會小於特徵值的個數,如此一來攻擊者便無法還原出虹膜影像的特徵向量。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
311~313‧‧‧眼睛影像
321~323‧‧‧虹膜影像
331~333‧‧‧遮罩
310、340、350、360‧‧‧步驟
370‧‧‧資料庫

Claims (10)

  1. 一種虹膜辨識方法,適用於一電子裝置,該虹膜辨識方法包括一註冊程序與一認證程序,該註冊程序包括:取得對應於一識別碼的至少一虹膜影像,並根據該至少一虹膜影像計算出一特徵向量,其中該特徵向量包括多個特徵值;計算每一該些特徵值的一可靠度;根據一奇偶檢查矩陣計算每一多個變異節點的更正能力,其中該奇偶檢查矩陣為不規則矩陣;根據該些可靠度與該些更正能力取得一映射關係,並根據該映射關係將該特徵向量轉換為一映射後特徵向量,其中該些可靠度包括一第一可靠度與一第二可靠度,該第一可靠度大於該第二可靠度,該些更正能力包括一第一更正能力與一第二更正能力,該第一更正能力大於該第二更正能力,該第一可靠度是映射至該第二更正能力,並且該第二可靠度是映射至該第一更正能力;對一第一隨機字串執行一錯誤更正碼編碼程序以得到第一碼字,將該第一碼字與該映射後特徵向量相加以得到第二碼字;根據該特徵向量執行一雜湊函數以得到一第一雜湊值;以及將該識別碼、該映射關係、該第一雜湊值與該第二碼 字儲存至一資料庫中。
  2. 如申請專利範圍第1項所述之虹膜辨識方法,其中該至少一虹膜影像的數目大於一,每一該些虹膜影像包括對應的該特徵向量,每一該些虹膜影像對應至一遮罩,所述計算每一該些特徵值的該可靠度的步驟包括:對於一像素位置,根據該些虹膜影像中位於該像素位置的該些特徵值的大小來決定該像素位置所對應的該可靠度;若該些虹膜影像中位於該像素位置的該些特徵值之間的差距在一預設範圍內,則增加該像素位置所對應的該可靠度;以及若該像素位置在該些遮罩中被遮蔽,則降低該像素位置所對應的該可靠度。
  3. 如申請專利範圍第1項所述之虹膜辨識方法,其中該奇偶檢查矩陣對應至一坦納圖(tanner graph),該坦納圖包括多個校正節點與多個變數節點,每一該些變數節點對應至該些更正能力的其中之一,所述根據該奇偶檢查矩陣計算每一該些變數位元的該更正能力的步驟包括;根據每一該些變數節點所連接的該些校正節點的個數來決定對應的該更正能力。
  4. 如申請專利範圍第1項所述之虹膜辨識方法,其中根據該特徵向量執行該雜湊函數以得到該第一雜湊值的步驟包括:將該特徵向量與一第二隨機字串相加以得到第一字串;以及將該第一字串輸入至該雜湊函數以得到該第一雜湊值。
  5. 如申請專利範圍第4項所述之虹膜辨識方法,其中該認證程序包括:從該資料庫中取得該識別碼、該映射關係、該第一雜湊值與該第二碼字;取得一待驗證虹膜影像,並取得該待驗證虹膜影像的一待驗證特徵向量;依照該映射關係將該待驗證特徵向量轉換為一映射後待驗證特徵向量;將該映射後待驗證特徵向量與該第二碼字相加以得到一第三碼字;對該第三碼字執行一錯誤更正碼解碼程序以得到一第四碼字;將該第四碼字與該第二碼字相加以得到一第五碼字;根據該映射關係從該第五碼字中取得一第一訊息字串; 對該第一訊息字串與該第二隨機字串做互斥或運算以得到一第二字串;將該第二訊息字串輸入至該雜湊函數以得到一第二雜湊值;以及判斷該第一雜湊值是否相同於該第二雜湊值。
  6. 如申請專利範圍第1項所述之虹膜辨識方法,其中該第一碼字包括多個奇偶檢查位元,該虹膜辨識方法更包括:從該些特徵值中挑選該可靠度較大的特徵值,並設定該些奇偶檢查位元的個數小於所挑選的該些特徵值的個數。
  7. 一種電腦程式產品,由一電子裝置載入並執行以實施多個步驟:取得對應於一識別碼的至少一虹膜影像,並根據該至少一虹膜影像計算出一特徵向量,其中該特徵向量包括多個特徵值;計算每一該些特徵值的一可靠度;根據一奇偶檢查矩陣計算每一多個變異節點的更正能力,其中該奇偶檢查矩陣為不規則矩陣;根據該些可靠度與該些更正能力取得一映射關係,並根據該映射關係將該特徵向量轉換為一映射後特徵向量,其中該些可靠度包括一第一可靠度與一第二可靠度,該第 一可靠度大於該第二可靠度,該些更正能力包括一第一更正能力與一第二更正能力,該第一更正能力大於該第二更正能力,該第一可靠度是映射至該第二更正能力,並且該第二可靠度是映射至該第一更正能力;對一第一隨機字串執行一錯誤更正碼編碼程序以得到第一碼字,將該第一碼字與該映射後特徵向量相加以得到第二碼字;根據該特徵向量執行一雜湊函數以得到一第一雜湊值;以及將該識別碼、該映射關係、該第一雜湊值與該第二碼字儲存至一資料庫中。
  8. 如申請專利範圍第7項所述之電腦程式產品,其中該至少一虹膜影像的數目大於一,每一該些虹膜影像包括對應的該特徵向量,每一該些虹膜影像對應至一遮罩,所述計算每一該些特徵值的該可靠度的步驟包括:對於一像素位置,根據該些虹膜影像中位於該像素位置的該些特徵值的大小來決定該像素位置所對應的該可靠度;若該些虹膜影像中位於該像素位置的該些特徵值之間的差距在一預設範圍內,則增加該像素位置所對應的該可靠度;以及若該像素位置在該些遮罩中被遮蔽,則降低該像素位置所對應的該可靠度。
  9. 如申請專利範圍第7項所述之電腦程式產品,其中該奇偶檢查矩陣對應至一坦納圖(tanner graph),該坦納圖包括多個校正節點與多個變數節點,每一該些變數節點對應至該些更正能力的其中之一,所述根據該奇偶檢查矩陣計算每一該些變數位元的該更正能力的步驟包括;根據每一該些變數節點所連接的該些校正節點的個數來決定對應的該更正能力。
  10. 如申請專利範圍第7項所述之電腦程式產品,其中根據該特徵向量執行該雜湊函數以得到該第一雜湊值的步驟包括:將該特徵向量與一第二隨機字串相加以得到第一字串;以及將該第一字串輸入至該雜湊函數以得到該第一雜湊值,其中該些步驟更包括:從該資料庫中取得該識別碼、該映射關係、該第一雜湊值與該第二碼字;取得一待驗證虹膜影像,並取得該待驗證虹膜影像的一待驗證特徵向量;依照該映射關係將該待驗證特徵向量轉換為一映射後待驗證特徵向量; 將該映射後待驗證特徵向量與該第二碼字相加以得到一第三碼字;對該第三碼字執行一錯誤更正碼解碼程序以得到一第四碼字;將該第四碼字與該第二碼字相加以得到一第五碼字;根據該映射關係從該第五碼字中取得一第一訊息字串;對該第一訊息字串與該第二隨機字串做互斥或運算以得到一第二字串;將該第二訊息字串輸入至該雜湊函數以得到一第二雜湊值;以及判斷該第一雜湊值是否相同於該第二雜湊值。
TW108136116A 2019-10-04 2019-10-04 虹膜辨識方法與電腦程式產品 TWI700604B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108136116A TWI700604B (zh) 2019-10-04 2019-10-04 虹膜辨識方法與電腦程式產品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108136116A TWI700604B (zh) 2019-10-04 2019-10-04 虹膜辨識方法與電腦程式產品

Publications (2)

Publication Number Publication Date
TWI700604B true TWI700604B (zh) 2020-08-01
TW202115596A TW202115596A (zh) 2021-04-16

Family

ID=73003402

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108136116A TWI700604B (zh) 2019-10-04 2019-10-04 虹膜辨識方法與電腦程式產品

Country Status (1)

Country Link
TW (1) TWI700604B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7620818B2 (en) * 2004-12-07 2009-11-17 Mitsubishi Electric Research Laboratories, Inc. Biometric based user authentication and data encryption
US8375218B2 (en) * 2004-12-07 2013-02-12 Mitsubishi Electric Research Laboratories, Inc. Pre-processing biometric parameters before encoding and decoding
TWI469059B (zh) * 2009-09-25 2015-01-11 Ibm 用於產生及使用短長度虹膜碼之系統及方法
TWI615012B (zh) * 2015-04-06 2018-02-11 高通公司 用於密碼學密鑰產生之方法、器件及伺服器與其非暫態電腦可讀儲存媒體

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7620818B2 (en) * 2004-12-07 2009-11-17 Mitsubishi Electric Research Laboratories, Inc. Biometric based user authentication and data encryption
US8375218B2 (en) * 2004-12-07 2013-02-12 Mitsubishi Electric Research Laboratories, Inc. Pre-processing biometric parameters before encoding and decoding
TWI469059B (zh) * 2009-09-25 2015-01-11 Ibm 用於產生及使用短長度虹膜碼之系統及方法
TWI615012B (zh) * 2015-04-06 2018-02-11 高通公司 用於密碼學密鑰產生之方法、器件及伺服器與其非暫態電腦可讀儲存媒體

Also Published As

Publication number Publication date
TW202115596A (zh) 2021-04-16

Similar Documents

Publication Publication Date Title
US20210081793A1 (en) Hardened deep neural networks through training from adversarial misclassified data
JP7297226B2 (ja) 個人情報を保護するために原本データをコンシーリング処理して生成された変造データを認識するために使われる使用者ラーニングネットワークを学習する方法及びテストする方法、そしてこれを利用した学習装置及びテスト装置
CN108846390B (zh) 用于生物认证的特征提取及匹配以及模板更新
EP3812988A1 (en) Method for training and testing adaption network corresponding to obfuscation network capable of processing data to be concealed for privacy, and training device and testing device using the same
KR101956071B1 (ko) 사용자 인증 방법 및 장치
US8699799B2 (en) Fingerprint verification method and apparatus with high security
KR101581112B1 (ko) 계층적 패턴 구조에 기반한 기술자 생성 방법 및 이를 이용한 객체 인식 방법과 장치
WO2021258699A1 (zh) 一种图像识别方法、装置、电子设备和计算机可读介质
CN115797670A (zh) 基于卷积神经网络的斗轮性能监测方法及其系统
KR102395452B1 (ko) 개인 정보 보호를 위하여 원본 데이터를 비식별 처리한 변조 데이터를 인식하기 위한 사용자 러닝 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치
CN108875549B (zh) 图像识别方法、装置、系统及计算机存储介质
CN113742723A (zh) 利用深度生成模型检测恶意软件
CN111353325A (zh) 关键点检测模型训练方法及装置
TWI700604B (zh) 虹膜辨識方法與電腦程式產品
Jeong et al. Efficient cancelable iris template generation for wearable sensors
CN111353514A (zh) 模型训练方法、图像识别方法、装置及终端设备
US8122260B2 (en) Shaping classification boundaries in template protection systems
JP6937782B2 (ja) 画像処理方法及びデバイス
KR102181340B1 (ko) 바이오매트릭스와 Fuzzy Vault를 이용하여 암호학적 키를 생성하는 방법 및 시스템
CN112818400B (zh) 一种基于隐私保护的生物识别方法、装置及设备
CN111640076B (zh) 一种图像补全方法、装置及电子设备
Wu et al. Occlusion pattern-based dictionary for robust face recognition
Djebli et al. Quantized random projections of SIFT features for cancelable fingerprints
TWI796063B (zh) 真人辨識方法及其系統
KR102178782B1 (ko) 부분 정렬과 룩업 테이블 맵핑을 이용한 취소 가능한 홍채 템플릿 생성 장치 및 방법