<nav id="w0g0m"><code id="w0g0m"></code></nav>
  • <xmp id="w0g0m">
    <xmp id="w0g0m"><nav id="w0g0m"></nav><menu id="w0g0m"><strong id="w0g0m"></strong></menu>
  • <xmp id="w0g0m">
  • <nav id="w0g0m"></nav>
    <menu id="w0g0m"><menu id="w0g0m"></menu></menu>
    1. 網站地圖
    2. 設為首頁
    3. 關于我們
    ?

    氣象信息管理系統中指紋活性檢測方法的研究

    發布時間:2023-07-17 14:59
    第一章 緒論
    1.1課題來源
    本課題來源于國家自然科學基金重點項目《云計算環境中數據安全的理論與關鍵技 術研究》(編號:61232016),國家自然科學基金-通用技術聯合基金重點項目《基于文 本大數據的無載體信息隱藏研究》(編號:U1536206),國家公益性行業(水利)科研專 項項目《土石壩安全多源檢測集約化與可視化系統研究》(編號:GYHY201301030), 江蘇省自然科學基金面上項目《基于深度學習的仿制指紋檢測方法研究》(編號: BK20181407),以及湖南省雷電災害監測預警服務能力建設項目《雷電災害防御專業氣 象服務系統》(編號:BSZXZC-2018-90)。
    1.2研究背景
    1.2.1 氣象信息化的發展
    信息技術(IT,Information Technology)是指使用計算機、微電子和通信技術來設 計、開發和安裝各種信息系統及應用軟件[1][2],它是開發、管理和利用信息資源進行有 關方法、手段與操作程序的總稱[3]。近幾年,以計算機和通信為核心的信息技術實現了 物理世界有史以來最全面的信息互聯和互通,云計算[4 ]改變了信息技術基礎資源的存儲 和管理模式,人工智能[5 ]則改變了信息技術的應用模式,進入機器代替人工作的新時代。 信息技術的發展極大地加快和驅動了諸多行業的發展,氣象行業就是其中最典型的代表 [6-9]。19世紀末,以無線電通信為主的信息技術大幅提升了氣象觀測數據[6]的收集效率, 并推動了高空氣象探測的發明和完善,使得科學家們對大氣運動現象的觀察范圍由點到 面、由局部到整體,進而得以運用物理學原理對大氣運動規律進行科學歸納凝練,氣象 學科的建立,推動了氣象業務的快速發展。這充分表明,成功的氣象信息化,一定是運 用了恰當的信息技術,促使氣象學科及業務自身發生深刻的積極變化,進而推動氣象事 業發展的結果[10-13]。
    目前,我國氣象信息管理系統建設已初具規模,信息化技術達到一定水準。以人工 智能、云計算、車載網、移動互聯網、大數據等新興技術為手段,進一步提升氣象數據 的開放共享程度和構建集約高效的氣象業務體系架構。另外,將“互聯網+”與氣象相
    結合,可形成真正的智慧氣象和數字氣象;將云計算技術運用到氣象中,能解決基礎設 施重復投資和維護困難的問題;而將大數據運用到氣象中,可提升數據處理和分析能力, 并充分挖掘氣象數據的潛在意義。
    1.2.2氣象信息系統中的指紋識別技術
    在享受信息化技術提供便捷的同時,因密碼口令被泄露、遺忘或破譯等引發的安全 問題[14]也悄然而至。同樣,以提高氣象數據共享應用為核心的氣象信息管理系統也正面 臨相似的問題[6]。因此,為了保證氣象信息管理系統中數據的完整和安全,在訪問氣象 信息系統中的數據前,對用戶身份的合法性進行驗證變得極其重要。指紋因具有唯一性、 穩定性的特點,且能解決密碼被泄露或遺忘的難題,已廣泛用于氣象信息管理系統中。
     
    圖1.1指紋識別系統在氣象信息管理系統中的應用,(a)江蘇省防雷中心使用的指紋考勤機、(b)湖南 雷電預警中心使用的帶有指紋識別的設備、(c)南京信息工程大學大型機房使用的指紋門禁系統。氣 象信息管理系統中的指紋識別系統易受偽造指紋的欺騙,指紋活性檢測技術能夠鑒別待測指紋的真 偽,將其應用到氣象信息管理系統的指紋識別系統中,可確保登錄氣象系統用戶身份的真實
    圖1.1為指紋識別系統在氣象信息管理系統中的常見應用,其中圖1.1(a )是我們在 江蘇省防雷中心走訪調研時,拍攝的指紋考勤系統。當考勤時,指紋掃描儀首先采集用 戶指紋并與指紋庫中的特征進行匹配,匹配成功方可登錄;圖1.1(b)表示湖南省雷電預 警中心許多設備都具有指紋識別的功能;圖1.1(c)是指紋識別系統在南京信息工程大學 處理氣象數據中的應用,只有經過授權的指紋用戶才能進入機房重地。雖然圖1.1(a)、 (b)和(c)中的指紋身份認證系統更加便捷和安全,且能解決密碼口令易被泄露、遺忘或破 譯的難題,但問題就是這些系統并未采取措施來檢測偽造指紋,也就是攻擊者可通過竊 取合法用戶的指紋來偽造一枚假指紋,使用該指紋便能入侵氣象信息系統。近期我們正
    與湖南省雷電災害預警中心開展項目合作,期間與中心負責人探討了指紋識別系統的便 利性和存在的安全缺陷,并展示了我們開發的偽造指紋檢測系統(見圖1.2(b)和(c)),現 已將其在湖南省雷電災害預警中心做示范應用。圖1.2(a)是我們與湖南省雷電預警中心 簽署的開發一款帶有指紋活性檢測登錄功能的中標文件,圖1.2(b)和2)是我們已開發的 一款支持指紋活性檢測的指紋識別系統。首先用指紋掃描儀采集用戶的指紋,如圖1.2(b) 所示,并將采集的指紋圖像實時顯示在登錄界面上,如圖1.2(c)所示。然后點擊“指紋 登錄”按鈕,系統將會自動提取指紋圖像的特征并鑒別待認證指紋的真偽。當指紋通過 驗證后,再與用戶指紋庫中的特征進行匹配,成功則順利進入系統,反之則登錄失敗。 最終,開發的系統可讓帶有指紋識別的氣象信息管理系統避免受到偽造指紋的欺騙攻擊, 進一步確保氣象信息管理系統中數據的安全和完整。
    湖南省氣象災書防御技術中心K湖南省防宙中心》擊哲災書
    防御專業氣彖服務系統政府采購項目
    催辦函
    南京佶息工程比學:
    報據你單位于2018年6月27日對湖南博思智詢項目管理有限公 旦依法組織的湖南皆氣家災窖盼御技術屮心£湖南曲防雷中心:> 雷電 災害晞御專卄弐滾甩撐系統政府采購項冃釆購文件的響應.經評審委 員舍評審,確定你單位為中標供應商.展交結果已于2018年06月 27日發岀.本項目合同應于2018年07月27日前與湖南省氣象災 喜防御拮未中心(湖南名•阱僧申心)娥訂政府采購合同.望速來領取 成交逋知桔辦理.如逾期,將承擔相應的法體責任"
    林此函晉
    采購人聯系 電話:XXX XXXX-XXXXXXXX
    湖南博思幫詢項目1?理有限公司
    2018年7月19日
    (a)
    圖 1.2 湖南省雷電預警中心的項目中標文件及為其開發的帶有指紋活性檢測的雷電災害防御專業氣
    象服務系統,(a)中標文件、(b)指紋錄入界面、(c)指紋實時顯示界面
    信息化是當今世界經濟社會發展的大趨勢,加快推進氣象信息化是落實國家信息化 發展戰略、順應現代氣象科技發展和信息技術變革新形勢的迫切需要,而如何抵御偽造 指紋的非法入侵和攻擊,建立一個安全可靠的氣象信息管理系統,是氣象信息化建設中 一項十分重要的任務[15] [16]。
    1.3 研究目的與意義
    數據或資料是氣象信息管理系統[17]開展天氣預警預報、氣候預測預估及各類氣象服 務、科學研究的基礎,但受信息系統自身的復雜性、網絡的可訪問性等因素的影響,信 息系統存在諸多的安全問題,如密碼口令泄露、遺忘、破譯、非法入侵和訪問等。作為 信息技術的“受益者”,氣象行業也不例外,氣象部門一直以來都是使用最先進的信息技
     
    術來不斷提升氣象服務的預測預報質量。因此,如何高效、安全的訪問氣象信息系統且 有效確保系統中的數據不被竊取和破壞具有十分重要的研究意義。在現有的各類氣象業 務系統中,用戶在其中扮演了關鍵的角色,只允許合法用戶訪問氣象信息系統中的數據 或資料,可避免攻擊者的非法侵入或合法用戶的不慎操作對關鍵氣象資料造成的破壞。 因此,用戶在訪問氣象信息管理系統中的數據前,對其身份進行驗證可對氣象信息系統 中數據的機密性和完整性提供有效的保護。
     
     
    圖 1.3 假指紋的制作過程。左圖為協作式的制作過程,真實用戶需配合偽造者來完成仿制指紋
    的制作;右圖為非協作式的仿制過程,無需用戶的配合,通過搜集真實用戶的指紋膜進行偽造
    密碼口令的身份認證方式是目前氣象信息管理系統普遍采用的身份認證法,即只有 授權用戶才有權限訪問系統中的氣象數據。為了防止密碼口令被泄露、遺忘、破譯和攻 擊,氣象預報員需要定期更換氣象信息管理系統的密碼,但有部分人嫌麻煩,抱有僥幸 心理不愿意這么做。所以,因各類密碼被盜用、泄露、破譯而造成氣象數據損失的事件
     
    有很多,基于密碼口令式的身份認證方式存在嚴重的安全隱患。與其相比,指紋因具有 唯一性、穩定性和易采集性的特點,可解決密碼易被盜用、泄露或破譯的難題。為了給 氣象從業人員提供一個安全、便捷和智能的工作環境,同時減輕他們的工作壓力,指紋 識別技術開始逐漸替換氣象信息管理系統中基于密碼口令的身份認證法。近些年,隨著 各種高分辨率仿真、3D打印等新興技術的出現,最新的研究表明,指紋識別法存在一 定的安全隱患[18,19]。非法用戶通過采集或竊取真實用戶的指紋印,然后使用一些特殊材 料(如硅膠、明膠、樹膠和橡皮泥等[19]),便能偽造一枚真實用戶的指紋膜,而該指紋 膜可假冒真實用戶進行各種非法認證。圖1.3為制作假指紋的示意圖,主要包括協作式 和非協作式兩種制作方法。以協作式方法為例,用戶首先將手指洗凈并擦拭干,然后利 用準備好的彩色橡皮泥采集用戶的指紋,接著將木膠倒入用彩色橡皮泥制作的指紋模具 上,并用玻璃板之類的東西將其推平,等膠水干掉后,輕輕將模具和木膠分離。最后, 便可用偽造的指紋進行各類身份認證操作。因此,在認證用戶身份前,鑒別待測指紋是 來自一個真實的用戶還是一枚偽造指紋,是保障氣象信息系統安全的關鍵,也是確保氣 象數據或資料安全和完整的關鍵。
     
    圖 1.4 基于指紋活性檢測的氣象信息管理系統實現流程圖
    本文將指紋活性檢測[20][21] (FLD, Fingerprint Liveness Detection)技術應用到氣象信 息管理系統中,該框架結構如圖1.4所示。紅色虛線為指紋活性檢測部分,是本文的核 心算法。藍色虛線部分為指紋識別部分,包括用戶注冊和身份認證,只有真指紋且與數 據庫中的指紋匹配成功,用戶才能進入氣象信息管理系統并訪問系統中的數據。指紋活 性檢測[20][21]為鑒別真假指紋圖像問題提供了一個切實可行的解決方案。指紋活性檢測的 關鍵在于如何提取和篩選出更具代表性的指紋圖像特征描述符,從而實現真假指紋圖像 的高性能檢測。綜上所述,如何設計一個鑒別真假指紋圖像的算法具有重要的實用價值, 同時也是本文研究的主要內容。
    1.4 本文主要工作
    本文以真假指紋圖像為研究對象,首先提出了一種基于空域紋理特征的指紋圖像檢 測算法以及兩種基于變換域系數特征提取的指紋活性檢測算法。另外,為了解決特征工 程中存在時間復雜度高、存儲開銷大、以及維度災難等問題,本文還提出了兩種基于卷 積神經網絡模型的指紋活性檢測算法,以進一步提高識別真假指紋圖像的性能。最后, 利用深度學習具有特征自學習的能力,本文又提出了一種基于深度多模態特征融合的指 紋活性檢測算法。關于本論文的主要研究內容可歸納如下:
    (1) 提出一種基于空域紋理特征提取的指紋活性檢測算法。真假指紋圖像的紋理 圖案具有相似性,手工仿制的指紋可重現真指紋圖像中粗粒度的紋理信息,所以氣象信 息管理系統中的指紋識別系統易遭受偽造指紋的攻擊。但假指紋很難復制那些肉眼觀測 不到的細微紋理,所以它可作為區分真假指紋的特征。為了提取真假指紋圖像中細微和 小尺度的紋理信息,本文提出一種基于多方向差分共生矩陣的指紋活性檢測算法。首先 計算水平和垂直兩個方向上的梯度值,得到兩個方向上的差分矩陣。受局部亮度變化和 噪聲的影響,差分矩陣中會存在大量異常梯度值的干擾,若是不進行處理,則會影響后 續特征的提取。為此,本文又提出了一種截斷操作法來控制異常值。然后,計算每個差 分矩陣的特征值,并將得到的特征值進行歸一化處理。最后,使用支持向量機在三個標 準指紋數據集上對訓練樣本進行訓練和使用測試樣本對訓練的模型進行驗證。實驗結果 表明,本文提出的算法具有較好鑒別真假指紋圖像的能力。
    (2) 提出一種基于變換域特征提取的指紋活性檢測算法。空域中不同的紋理分布 在變換域中展現為不同頻率的能量分布。變換域中的頻譜分布可以很好地展現不同紋理 的分布情況,有助于發現在空域中觀察不到的圖像紋理特性,而提取真假指紋間的顯著 性差異是提高氣象信息管理系統中指紋活性檢測性能的關鍵。為此,本文利用小波變換 將指紋圖像的紋理特征提取從空間域轉換到頻率域,通過對變換域中的系數進行研究和 分析,提出了兩種變換域特征提取算法:一種是基于局部二值模式的特征提取算法,通 過實驗可知,局部二值模式在變換域中依然適用,并且能夠實現檢測指紋活性的目的。 另外四個系數組合的特征向量,其識別真假指紋圖像的性能比其他系數組合要高。然后, 又對本文第三章的算法進行了改進,提出一種基于多階差分共生矩陣的特征提取算法, 并詳細討論了量化因子 Q 和截斷因子 T 對指紋活性檢測性能的影響。實驗表明,本文 提出的多階差分共生矩陣具有更好地檢測真假指紋圖像的能力。
    (3)提出一種基于卷積神經網絡模型的指紋活性檢測算法。氣象高性能計算可縮 短深度學習算法的運行時間,離線訓練指紋模型并將其移植到氣象信息管理系統指紋活 性檢測中,使用該模型能進一步提升氣象信息系統檢測真假指紋的準確性。目前大多數 CNN(Convolutional Neural Network)模型對輸入圖像的尺度都有嚴格的約束,而指紋 圖像的尺度又具有多樣性。為了將不同尺度的圖像轉化成相同尺度,對圖像進行裁剪或 縮放是兩種最常使用的方法。但裁剪操作會讓指紋圖像丟失一些關鍵信息,使原始圖像 不再完整;而縮放操作則會使原始圖像的分辨率下降,進而使圖像產生失真現象。不論 使用哪種操作,最終都會對指紋圖像的活性檢測產生影響。為此,本文提出一種基于尺 度均衡化卷積神經網絡模型的指紋活性檢測算法。此外,大多數 CNN 在反向傳播更新 或調整模型參數時,學習率采用的都是固定值法,其容易引起權值更新慢或陷入局部最 優的問題。因此,本文提出了一種基于學習率自適應調整的卷積神經網絡模型。指紋圖 像中大部分區域是空白區,接著本文提出了一種感興趣區域提取算法來剔除無效的區域。 為了確保學習的模型分類器具有更好的泛化性,即未參與訓練的假指紋同樣能用訓練模 型區分開,本文又提出了一種基于局部梯度模式的紋理增強算法,在LivDet 2011指紋 集上進行了驗證并取得不錯的效果。隨著CNN模型深度的增加,訓練參數會面臨梯度 膨脹或梯度消失的問題。另外,為了減少反向傳播過程中模型的訓練時間和避免參數陷 入局部最優,本節又提出了一種基于自適應學習的深度殘差網絡模型。
    (4)提出一種基于深度多模態特征融合的指紋活性檢測算法。學習真假指紋間的 顯著性差異是提高氣象信息管理系統中指紋活性檢測性能的關鍵,手動的設計一個好的 特征提取算法是實現高精度指紋活性檢測的關鍵。為了充分利用深度學習能夠自動的從 帶有標簽的數據中學習到描述原始圖像結構和紋理的特征,本文將CNN模型輸出層之 前的網絡視為一個特征提取器,提出了一種基于深度特征自學習的指紋活性檢測算法。 接著,本文又設計了一種基于多模態深度特征融合的指紋活性檢測算法來測試不同模態 下特征融合后的性能。為了解決指紋樣本集不足的問題,本文首先進行了參數遷移學習, 即用ImageNet數據集在三個搭建好的CNN模型進行預訓練,然后進行參數微調,即將 全連接層之前的參數鎖定,從指紋訓練集中隨機選擇部分指紋圖像,僅微調全連接層上 的參數,接下來將微調后的參數保存并作為特征提取器的初始化參數。最后,為了進一 步說明基于多模態特征融合算法同樣適用于其他分類器,本文還在兩個經典的分類器 ELM(Extreme Learning Machine)和softmax上進行了驗證。實驗結果表明,本文提出 的特征融合框架同樣適用于不同的分類器。
    本論文的整體研究內容如圖 1.5所示。
     
    圖1.5本文研究內容的結構圖
     
    1.5 論文結構
    本文各章節內容安排如下:
    第一章,緒論。本章主要介紹了本文的研究背景;詳細的介紹了本文的研究目的及 研究意義;最后給出了本論文的主要研究內容與各章節的安排。
    第二章,指紋活性檢測的概述。本章首先介紹了指紋識別技術的概述;然后介紹了 指紋活性檢測的研究現狀;接著對現有檢測方法進行了分類;此外,本文還對現有的檢 測方法進行了對比和分析;最后,對本章的研究內容進行小結。
    第三章,提出一種基于空域紋理特征提取的指紋活性檢測算法。為了確保氣象信息 管理系統中的數據不被非法盜用和泄露,在訪問氣象信息管理系統前需要驗證用戶的身 份,但氣象信息系統很難區分真實指紋和偽造指紋。為了得到真假指紋圖像中那些肉眼 觀察不到的細微紋理特征,讓氣象信息管理系統在身份認證前更好地鑒別真假指紋圖像, 本章提出了一種基于多方向差分共生矩陣的特征提取算法。接著,本章又提出了一種截 斷操作法來削弱差分矩陣中異常值的干擾。利用本章方法,開發了兩個支持指紋活性檢 測的指紋識別系統。
    第四章,提出兩種基于變換域特征提取的指紋活性檢測算法。為了挖掘真假指紋圖 像空域中觀察不到的紋理信息,提取兩者間的顯著性差異,進一步提高氣象信息管理系 統中指紋活性檢測的性能。本文利用一級小波變換將圖像的紋理特征提取從空域轉化到 頻域,并設計了兩種變換域系數特征提取算法。最后,將歸一化后的特征用SVM進行 訓練和測試。此外,本文還給出了矩陣階數與特征維度間的關系表達式。
    第五章,提出了兩種基于卷積神經網絡的指紋活性檢測算法。高性能計算可縮短深 度學習算法的運行時間,本文研究了一種端到端聯合協作優化的指紋活性檢測算法,能 夠進一步提高氣象信息管理系統識別真假指紋的能力。本章首先提出了一種基于尺度均 衡化的卷積神經網絡模型來解決 CNN 模型對輸入圖像尺度約束的問題。此外,本文提 出了一種學習率自適應調整的方法來解決CNN在更新模型參數時易產生權值更新慢或 陷入局部最優的問題。另外,為了消除指紋圖像中無效區的干擾,本文提出了一種感興 趣區域提取法。為了確保訓練的模型分類器具有更好的泛化性能,本文又提出了一種基 于局部梯度模式的紋理增強算法,并在LivDet 2011指紋數據集上進行了驗證。最后, 為了減少反向傳播過程中模型的訓練時間和避免參數陷入局部最優,本文又提出了一種 基于自適應學習的深度殘差網絡模型。
    第六章,提出一種多模態深度特征融合的指紋活性檢測算法。為了充分利用深度學 習對帶標簽的樣本具有特征自學習的特性,進一步提升氣象信息管理系統中指紋活性檢 測的性能,本章提出了一種基于深度多模態特征融合的指紋活性檢測算法。首先進行遷 移學習和模型微調兩個操作,并將微調后的模型參數作為特征提取器的初始值。接下來, 使用堆疊分類器來訓練和測試當不同模態特征融合時,其對應的活性檢測結果。最后, 為了驗證基于多模態特征融合的算法同樣適用于其他分類器,本章還在兩個經典的分類 器 ELM 和 softmax 上進行了驗證。
    第七章,指紋活性檢測的開發系統。利用本文第三章提出的算法,開發了兩個支持 指紋活性檢測的指紋識別系統:一個是指紋活性檢測系統;另一個是基于指紋識別的雷 電災害防御專業氣象服務登錄系統。
    第八章,結論與展望。總結了本文的主要研究內容,指出了本文的主要貢獻及創新 點,同時給出了本文接下來的研究內容。
    第二章 指紋活性檢測概述
    指紋識別系統被廣泛的應用在我們的日常生活中,如門禁、考勤、手機解鎖和快捷 支付等,但問題就是它們極易遭受偽造指紋的欺騙攻擊,偽造指紋能夠假冒真實用戶進 行各類非法身份認證。因此,本文主要研究如何區分活體指紋和仿制指紋,即如何提取 和篩選更具代表性的指紋圖像特征描述子,從而實現高精度的真假指紋鑒別。
    本章主要介紹指紋活性技術的基本理論以及指紋活性檢測的研究現狀和分類。本章 2.1節首先介紹了指紋識別技術的概述。2.2節詳細介紹了指紋活性檢測算法的研究現狀, 2.3節對現有的指紋活性檢測方法進行了對比和分析。最后, 2.4節對本章的研究內容進 行歸納總結。
    2.1 指紋識別概述
    指紋識別[18]是利用智能算法尋找指紋圖像上具有代表性的特征,并通過對比這些獨 一性的特征來判斷用戶的身份。指紋特征可分為兩類,即全局特征和局部特征。全局特 征是指那些用肉眼就能判別指紋的紋理信息,如指紋的基本紋路圖案、模式區、核心點、 三角點、紋線和式樣線等。局部特征是指指紋上紋線的分布,這些具有某種特定方向的 紋線分布被稱為特征。指紋的局部特征主要是指指紋紋線的終結點、分叉點和轉折點等。 指紋識別通常先對指紋的總體特征如三角點、紋形等進行分類,然后再使用局部特征, 如方向和位置等進行用戶身份的鑒別。因此,在指紋身份鑒別中,首先需要從采集的圖 像中提取特征點(minutiae),然后將提取的特征存儲到數據庫中,形成指紋特征數據庫。 最后,提取待測圖像的特征并與特征數據集進行匹配。指紋圖像具有唯一性,即使同一 人的十個指紋之間也有很明顯的差別。通過對指紋掃描儀采集到的指紋圖像進行特征提 取,并與存儲在數據庫中的指紋特征進行匹配,利用相似度算法(如余弦相似度、歐式 距離、明科夫斯基距離和 Jaccard 相似性等)計算出匹配結果,并將匹配結果反饋給信 息系統。
    隨著各類指紋認證產品的推廣和普及,指紋正面臨著各種各樣的威脅。從攻擊者角 度來講,由于指紋具有觸物留痕的特性,因而用戶指紋存在被泄露、竊取和盜用的風險, 而攻擊者正是利用這一缺陷,通過竊取真實用戶的指紋并仿制一枚與其相似的指紋膜, 進而假冒真實用戶進行各種非法操作(如智能手機快捷支付、智能鎖打開、指紋考勤等)。 
    隨著指紋識別技術在金融交易、國際邊境安全、解鎖智能手機等日常應用中的廣泛部署, 因表示攻擊(Presentation Attacks)產生的系統安全漏洞問題日益突出,從而引起了人們 的廣泛關注[20]。國際標準化組織 ISO (International Organization for Standardization)和 標準國際電工委員會IEC (International Electrical Commission)將表示攻擊定義為生物 特征數據采集子系統的表示,目的就是干擾生物識別系統的正常工作[22]。指紋欺騙攻擊 是一種最常見的表示攻擊形式,常用來制作假指紋的材料有明膠(Gelatin)、硅膠 (Silicone)>彩色橡皮泥(Paly-doh)等,而由這些材料制作的假指紋能夠順利地通過 各類指紋識別系統的認證。因此,各行業迫切需要提升指紋識別系統的安全性和增強用 戶的信心。在現有的各種解決方案中,指紋活性檢測是最流行的一種抵抗指紋欺騙攻擊 的方法。因此,研究指紋活性檢測來抵抗仿制指紋的攻擊,具有很強的實用價值。指紋 活性檢測研究屬于圖像紋理分類的范疇,本文的研究將為指紋活性檢測乃至圖像紋理分 類提供一定的新理論與新方法,為指紋認證系統提供新的安全技術支持。
    2.2指紋活性檢測研究現狀
    受外界因素的影響,人造指紋時經常會人為的引入一些噪聲,這就會使假指紋的表 面粗糙、圖像分辨率較低。另外,假指紋主要是由一些有機高分子材料制成的,長時間 處在外界易凝結成塊,會讓指紋膜表面產生裂縫或氣泡等[23],如圖2.1紅色標記框所示。 而上述這些缺陷和虛假細節可用來作為區分真假指紋的重要線索。指紋活性檢測(即真 假指紋圖像識別)就是給指紋識別系統提供一種鑒別待測指紋是來自一個活著的人還是 一枚人造指紋的能力。在學術上,區分真指紋或仿制指紋的研究被稱之為指紋活性檢測 (FLD, Fingerprint Liveness Detection) [24]或者指紋偽造檢測(SFD, Fingerprint Spoof Detection)o韓國仁荷大學生物工程研究中心的Kang等[24]首次提出指紋活性檢測的概念, 并對其進行了定義,即“The fingerprint liveness detection refers to the inspection of the biological information to determine whether the input finger is liven or artificial”。另外,2009 年首次舉辦的指紋活性檢測競賽,官方也對指紋活性檢測的概念和意義進行了總結(參 考官網:prag.diee.unica.it/LivDet09/)。鑒于指紋活性檢測的現實意義與理論價值,該領 域的研究引起國內外科研人員的廣泛關注[25]。
    關于指紋活性檢測技術的研究,國內現有的研究團隊有四川大學的趙啟軍、中科院 自動化所的臧亞麗、西安電子科技大學的田捷、成都電子科技大學的王峰、浙江師范大 學的朱信忠、浙江工業大學的盛衛國、華南理工大學的李巧巧和南京信息工程大學的夏
     
    志華等,他們都在指紋活性檢測研究領域開展了深入的研究,并提出許多高性能的指紋 活性檢測算法。國外學術和研究機構也對指紋活性檢測開展了大量的理論和算法研究。 D.Miao領導的博洛尼亞大學生物系統實驗室和Anil K. Jain領導的美國密歇根州立大學 模式識別和圖像處理實驗室[23 ]都對指紋識別技術進行了研究。這兩個實驗室聯合圣何塞 州立大學的生物測試中心共同舉辦了指紋驗證競賽(FVC, Fingerprint Verification Competition),它對近期的指紋活性檢測研究產生了深遠的影響。另外,國外還有很多 高校和研究機構都在進行著指紋活性檢測的相關研究,如加拿大多倫多大學的Komeili、 加拿大麥克馬斯特大學的Hatzinakos、韓國仁何大學的Park、韓國建國大學的Kim、美 國紐約大學的Rodrigo、美國克拉克森大學的Yambay、意大利都靈理工大學的Toosi、 意大利卡利亞里大學的Ghiani和西班牙馬德里自治大學的Galbally等。自2009年開始, 每隔兩年舉辦一次的國際指紋活性檢測競賽(International Fingerprint Liveness Detection Competitions)吸引了各國研究團隊或個人的關注[20-22]。
     
    圖 2.1 真假指紋對比圖(上層為真指紋,下層為假指紋)。假指紋的制作材料易凝固并產生氣泡,
    當用掃描儀采集這些指紋圖像時,圖像殘缺不完整且質量差(用紅實線將殘缺部分標注出來)
    現有的指紋活性檢測算法[26-31 ]主要分為兩類,一類是基于硬件式的算法,一類是基 于軟件式的算法。基于硬件的方法在鑒別真假指紋圖像前,需要在指紋識別系統中嵌入 一些專業儀器來測量人體的生理特性,如血液含氧量、皮膚形變、氣味、血脈跳動頻率 或活體指紋的導電性等[24, 27-28],并通過測量結果來判斷待測指紋的真假。另外,使用一 些特殊的指紋傳感器,如Lumidigm的多光譜掃描儀或Compact Imaging的多參考光學 相干斷層掃描儀,它們可直接觀測并得到手指皮下的脊形圖案。基于硬件的指紋活性檢 測方法能夠準確測量人體手指的生理特性,所以該類方法具有較高的檢測性能。但是, 它們必須得借助專業的傳感器才能夠完成真假指紋圖像的鑒別,因而使得基于硬件的檢 測方法攜帶不便且檢測成本普遍偏高。與之相對的是基于軟件的方法,該類方法無需嵌 入專業的硬件檢測裝置,通過分析兩枚指紋圖像(或幀序列)的紋理結構或圖像質量, 直接使用圖像處理技術即可鑒別待測指紋圖像的真假。因此,基于軟件的方法便捷且成 本較低,是目前主流的研究方法。在圖2.2中,基于軟件的檢測方法進一步又可分為三 類,即啟發式的、基于紋理特征的和基于深度學習的FLD檢測算法,關于指紋活性檢 測方法的具體分類如圖2.2所示。
    基于汗孔的檢測算法
    基于軟件
     
    I—? 的指紋活 性檢測算 -q 基于汗液的檢測算法
    ? 基于皮膚彈性的檢測算法
    基于硬件 的指紋活
    測 算 基于圖像質量的檢測算法
    性檢測算
    基于紋理特征的檢測算法
     
     
    基于深度學習的檢測算法
     
    圖 2.2 指紋活性檢測算法的分類
     
    2.2.1 啟發式的檢測方法
    研究表明,指紋脊線上均勻的排列著大量的汗孔,而人造指紋很難復制出這些細微 的特征,即汗孔。因此基于這一特點,研究人員提出了許多基于汗孔[32啲指紋活性檢測 算法。如Manivanan等[33]提出利用汗孔這一生理特性來進行真假指紋圖像的鑒別。在他 們的方法中,首先使用兩類不同的濾波器:高通濾波器用來提取有效的汗孔特征,相關 性濾波器用來定位汗孔的位置,然后用分類器對提取的特征進行分類。Marcialis等[34] 認為,人造指紋的脊線上汗孔出現的頻率比真指紋上出現的要少。因此,Marcialis等[34] 提出了一種基于汗孔的指紋活性檢測算法,并證明了用汗孔這一特征進行指紋活性檢測 是可行的。Kryszczuk等[35]進一步指出,細節點和汗孔所包含的特征信息之間本來就存 在著某些固有的聯系,汗孔的分布一般在脊線上,所以他們提出了一種基于幾何距離的 汗孔匹配算法。此外,一些研究者發現脊線上的汗孔在一段時間間隔內容易出汗,而在 人造的假指紋中并沒有此現象。因此,他們通過測量汗液的方法來鑒別指紋圖像的真假。 但實驗結果表明,這種方法易受環境、時間間隔和壓力等諸多因素的影響,因此它們并 不可靠。在2016 年, Yuan等旳提出了一個基于小波變換的指紋活性檢測方法。該方法 通過分析兩個不同時刻獲取的指紋圖像的汗液現象來驗證待測的指紋。為了提高前者算 法的精確度,Zhang等[27]通過增加數據集和減少捕獲圖像的時間間隔來檢測指紋圖像的 活性。在這之后,Jin等[36]提出了一種僅使用一張指紋圖像便能夠進行真假指紋圖像識 別的算法,通過結合汗腺和形態學兩個特征來觀察單個汗腺的汗孔和圖像的亮度兩個靜 態特征,進而鑒別指紋圖像的真假。與假指紋不同,當手指在傳感器上按壓和旋轉時, 真指紋能夠產生更好的變形,而仿制指紋并不具備這一特點。因此利用這種差異,指紋 皮膚彈性形變可用作識別真假指紋圖像的特征,進一步用來檢測待測指紋圖像的活性。 Antonelli等[28]首次提出利用指紋的皮膚彈性形變來驗證指紋的活性,在他們的方案中, 為了放大指紋皮膚形變,測試者需要在掃描儀上轉動他們的指紋,然后提取彈性形變特 征,最后使用SVM分類器來對指紋圖像進行性能評估。為了得到不同的指紋圖像,Zhang 等[27]做了一個實驗,在他們的實驗中,測試者需要在不同的方向上旋轉他們的手指。盡 管基于皮膚彈性形變的方法比較方便,但Schuckers等[37]指出了該種方法存在的不足。 通過對比分析兩枚不同的指紋圖像,一枚是真實的用戶,另一枚是通過協作式仿制的人 造指紋。僅用肉眼是很難觀察出這兩枚指紋圖像的細微差別,但借助高精度顯微鏡,將 兩張圖像放大若干倍之后,就能夠清晰的看到這兩枚指紋圖像上的一些細微特征。汗孔 均有一個普遍的特性:它們均勻的分布在脊線邊緣或者脊線上,當脊線的位置被標志出 來后,汗孔的位置也就固定了。但實際上,很難復制一枚和真指紋完全一樣的假指紋。 因為在人造假指紋中,許多細微的特征丟失了,并且仿制出來的假指紋表面比較的粗糙。 所以,研究者提出了基于圖像質量的指紋活性檢測的方法[38]。根據假指紋的圖像比真指 紋圖像粗糙這一特性,Maltoni等[29]提出利用圖像的分辨率來鑒別指紋圖像的真假。由 于假指紋的表面粗糙,其中含有大量噪聲,Moon等[39]利用小波分析的方法提取殘余的 噪聲,然后通過計算殘余噪聲的標準差作為區分真假指紋的特征。使用三個質量評估參 數作為提取的特征,即中間脊線、頻譜能量和中間谷線。Galbally等[30]提出運用脊線強 度、脊線清晰度、脊線連續性作為指紋圖像質量評價特征,將提取的特征用分類器進行 訓練和測試。Pereira等[31 ]利用高斯白噪聲來衡量指紋圖像質量,統計噪聲直方圖作為判 別真假指紋圖像的特征。
    2.2.2 基于紋理特征的檢測方法
    近些年,基于紋理特征的指紋活性檢測研究受到越來越多人的關注肌41]。研究人員 達成共識,普遍認為真假指紋圖像之間有不同的紋理分布[42],而這些細微的差異用肉眼 是很難覺察到的。紋理作為一種重要的視覺線索[43] [23] [44],可以作為區分真假指紋圖像 的特征描述子,基于紋理特征的檢測方法又可分為變換域和空域兩種。
    Moon等[39]認為假指紋的表面比真指紋的表面要粗糙,他們使用小波變換來分析指 尖表面的紋理特征,提出了一種基于小波變換的指紋活性檢測算法。實驗結果表明, Moon等[39]提出的方法能夠很好地區分一些由常見材料制成的假指紋。Abhyankar等[46] 提出一種基于相位、方向和多分辨率的指紋活性檢測方法,指紋圖像的交叉脊線頻率分 析也被作為鑒別真假指紋圖像的一種特征,且該方法是基于單張指紋圖像的指紋活性檢 測方法。Nikam等[47]提出一種LBP和小波變換相結合的指紋活性檢測方法。其中LBP 用來提取指紋圖像的紋理特征。為了進一步提升檢測性能,小波能量用來描述指紋圖像 脊線上的頻率和方向信息的特征。實驗結果表明,他們提出的方法能很好地檢測指紋的 活性,僅使用一張圖像且不需額外的硬件就能檢測指紋圖像的活性。后來,Nikam等[48] 又提出一種基于紋理特征提取的指紋活性檢測方法。Tan等[67]提出了一種基于小波變換 的脊線信號提取方法,該方法僅用一張圖像就能分析手指出汗的特性。從圖像多分辨率 尺度中提取出的統計特征用來區分真指紋和假指紋。實驗表明,他們所提出的活性檢測 方法完全是基于軟件的方法,并且該方法可以為指紋掃描儀提供反欺騙保護的功能。
    Gragnaniello等[22]提出了基于韋伯局部描述子(Webor Local Descriptor)的指紋活性 檢測算法,它是一個強大的和魯棒性的特征描述子。在他們的方法中包含兩個組件,一 個是差分激勵,一個是方向。接下來使用聯合直方圖作為區分真假指紋圖像的特征描述 子,并將提取的特征輸入到帶有線性核的支持向量機中進行訓練和測試,實驗結果表明 該方法能夠得到一個令人滿意的檢測性能。另外,若是將韋伯局部描述子和局部二值模 式相結合可進一步提高指紋活性檢測的性能。后來,Gragnaniello等[49]于2014年又提出 了一個基于局部對比相位信息描述子的指紋活性檢測算法,該方法同時從空域和頻域提 取特征,生成一個二維對比度直方圖作為區分真假指紋圖像的特征描述子,并用支持向 量機進行訓練和測試。實驗結果表明,他們的算法比當時最好的結果還要好。Jia等[50] 提出了兩種基于多尺度局部二值模式(Local Binary Descriptor, LBP)的指紋活性檢測 算法,并取得非常好的檢測精度。Dubey等Qi]從多個角度提取指紋圖像的紋理特征,包 括底層紋理特征(Low level Gradient Features)>方向梯度直方圖特征(Histogram of Oriented Gradient)和Gabor變換紋理特征。Kim等[43]指出,制造假指紋的材料質地并 不會特別均勻,提出基于局部連貫性描述子(Local Coherence Descriptor)的指紋活性檢 測算法。指紋圖像的分辨率具有多樣性,而局部相位量化對模糊效應不夠敏感,Ghiani 等[52]于2012年提出了一種基于局部相位量化的指紋活性檢測算法,并且在第二屆指紋 活性檢測競賽的四個數據集上進行了性能的驗證,實驗結果表明他們的算法要優于同一 年的新提出的其他方法。僅隔一年,Ghiani等[44]又提出了一個基于二值化統計圖像特征 的指紋活性檢測算法,該方法與局部二值模式和局部相位量化兩個特征提取算法相類似, 且在第二屆指紋活性檢測競賽數據集上取得了不錯的結果,結果提到,該方法值得我們 進行更深一步的研究。受梯度直方圖的啟發,Gottschlich等[53]提出了一個梯度不變直方 圖的指紋活性檢測算法,他們設計的方法旨在保持對梯度位置變化的魯棒性。實驗表明, 他們的算法在第三屆指紋活性檢測競賽的數據集上結果是最好的。Xia等[98]明確指出指 紋活性檢測研究是一個二分類的問題。在他們的方法中,為了提取指紋圖像的特征,他 們提出利用圖像的梯度法構造一個多階共生矩陣,并將矩陣中的元素視為指紋圖像的特 征。最后,將提取的特征輸入到支持向量機中進行訓練和測試。實驗結果表明,他們的 方法能夠取得當時最好的結果。
    2.2.3 基于深度學習的檢測方法
    在傳統的指紋活性檢測中,關鍵就是如何設計一個能夠描述復雜紋理的特征描述符, 使其能夠更好的區分出真假指紋圖像間的差異。關于提取的特征向量,若特征向量的維 度過大,訓練的模型分類器會過擬合;若特征向量的維度過小,訓練的模型分類并不完 整,導致欠擬合。除了存在上述一系列問題,分類器的選擇和參數的設置還需要很多機 器學習經驗和技巧。另外,將提取的特征和分類器相結合并實現最優的分類效果,是一 個非常難以完成的任務。深度學習能很好解決上述的問題,它無需手工的設計各種特征 提取算法,通過搭建多層網絡結構對圖像特征進行自學習,并利用前向和反向傳播來對 模型參數進行優化,最終實現圖像的分類。
    卷積神經網絡是一種常見的深度學習架構,它最早是從對生物視覺皮層的研究開始 的。上世紀50-60年代,加拿大和瑞典兩位偉大的神經生理學家和諾貝爾獎獲得者Hubel 和Wiesel在對貓和獼猴的視覺皮層進行研究時發現[88],它們的視覺皮層中含有對小感受 野區域單獨作出響應的神經元,并引入兩個基本的視覺神經元細胞,即簡單的神經元和 復雜的神經元。同時,它們搭建了一種將兩個神經元細胞級聯的神經網絡模型,并應用 到模式識別中。外界物體經過光的經過光感受器的轉換,可將光信號轉化成電信號。電 信號在傳輸到大腦過程中,會通過不同的神經元細胞,不同神經元細胞只對特定的電信
    號進行反饋,并自動的過濾掉其他的電信號。最終,每個特定的神經元只會對某種信號 作出響應。
    CNN-VGG CNN-Alexnet
     
    圖 2.3 基于卷積神經網絡模型的指紋活性檢測算法圖[54]
    鑒于卷積神經網絡(CNN, Convolutional Neural Network)具有端到端自動學習和分 類的特性,即將卷積神經網絡模型搭建好后,給模型傳遞一個樣本,模型通過訓練好的 參數進行測試后,便能輸出該樣本的測試或預測精度。因此,為了進一步提升真假指紋 圖像的鑒別能力,國內外許多學者和單位都開始將深度學習技術運用到指紋活性檢測中。 紐約大學Nogueira等[54]首次將卷積神經網絡技術應用到指紋活性檢測中,并得到當時 最佳的檢測性能。他們首先搭建了兩個基于卷積神經網絡模型的指紋活性檢測模型圖, 如圖2.3所示,分別將這兩個卷積神經網絡模型命名為CNN-VGG和CNN-Alexnet[54]。 在CNN-VGG網絡模型中,共由14層組成,其中包含1個輸入層、5個卷積層、5個池 化層和3個全連接層。在另一個網絡模型CNN-Alexnet中,它一共有12層組成,其包 括1個輸入層、3個卷積層、3個池化層、2個歸一化層和3個全連接層。接著,使用自 然圖像對這兩個卷積神經網絡模型進行預訓練,并從指紋圖像中選擇部分圖像進行參數 微調。最后,在三個標準指紋集LivDet 2009, LivDet 2011和LivDet 2013上進行了性能 測試。實驗結果表明,他們提出的方法與當時最好的指紋活性檢測算法進行比較,平均 分類錯誤率提升了近16%,且該算法贏得當年指紋活性檢測競賽的冠軍。Nogueira等[54] 在文中還指出,由于網絡模型過大,僅用真假指紋圖像對模型進行訓練,將會出現過擬 合現象。因此,對訓練樣本進行預訓練和微調兩種操作是很有必要的。此外,作者也提 到數據擴充策略在基于深度學習的指紋活性檢測中起到了關鍵性的作用,而進行數據集 擴充也非常容易實現。因此,若是不關注時間的長短,在訓練過程中應該執行更多的數 據集擴充操作oPark等[55]提出一個帶有革蘭氏模量卷積神經網絡模型的端到端的指紋活 性檢測算法,在他們提出的方法中,卷積神經網絡結構使用的是fire模塊,且將其作為 基模型。革蘭氏模量用來從卷積神經網絡模型中提取紋理信息。Park等[55]于2018年提 出一個基于端到端帶有gram模塊卷積神經網絡的指紋活性檢測算法,在他們的方法中, 作者認為區分真假指紋圖像的主要信息是在紋理上,因此設計了一個gram模塊來提取 圖像的紋理特征。在他們的算法中,參數的大小僅為1.2MB,可大大降低模型中參數的 數量。作者給出的結論就是,帶有少量參數的卷積神經網絡模型也能夠用來區分真假指 紋圖像,且能夠取得非常好的檢測效果。四川大學的wang等[56]提出了一個帶有投票策 略深度卷積神經網絡模型的指紋活性檢測算法。實驗結果表明,wang等[56]提出的算法 可以同時實現特征提取和分類器訓練兩個操作,且檢測結果是當時最好的。Park等[57] 于2016年又提出了一個基于卷積神經網絡模型的指紋活性檢測算法。不同于前一個算 法[55],在方法[57]中,Park首先進行了圖像分塊和數據擴充兩個操作,然后將投票策略 技術運用到所有塊中并用來區分真假指紋oJung等[93]提出一個改進的卷積神經網絡框架 來識別真假指紋圖像,即將均方回歸誤差作用于感受野并取代CNN的全連接層,他們 的方法在四個數據集中的三個中均取得最高的檢測精度。
    2.3現有方法的對比和分析
    啟發式的指紋活性檢測方法雖然原理清晰、設計有據,但必須得滿足一定的條件, 如指紋圖像必須是高分辨率的才能夠觀測到圖像脊線上的汗孔結構。為了觀察指紋皮膚 的彈性形變程度,測試者需要用力按壓手指讓其發生變形,并記錄不同時刻的形變差異。 另外,有些檢測方法[27][34][35]還需要收集多張指紋圖像并提取動態的特征才能夠觀察到 手指上細小的汗珠,從而會影響用戶的體驗。此外,啟發式方法的活性檢測準確率普遍 偏低,檢測精度還有待提升。
    為了提高指紋活性檢測精度,本文主要研究基于紋理特征和基于深度學習的活性檢 測方法[58-64]。指紋活性檢測技術最早起源于傳統的淺層的人工特征提取算法,而實現高 精度指紋活性檢測的關鍵是如何提取更具代表性的紋理特征。與啟發式的活性檢測算法 相比,基于紋理特征的指紋活性方法更加專業、科學和嚴謹,它能取得更高的檢測準確 率。關于圖像紋理特征分類方法的研究,學者們很少討論具體是哪些特征起到了分類作 用。現有的基于紋理的檢測算法很少根據指紋活性檢測的特點去設計紋理特征的提取方 法。因此,針對真假指紋圖像的細微特點,在吸取已有紋理特征經驗的基礎上,提取更 有代表性的紋理特性作為檢測指紋活性的特征描述子。此外,當前基于紋理特征提取的 指紋活性檢測算法都是在空間域進行研究的。事實上,真假指紋具有相似的輪廓,而區 分真假指紋圖像的關鍵特征主要分布在細微的紋理上。頻域可以給我們觀察真假指紋提 供不同的視角,有助于我們觀察到在空域中觀察不到的細微的紋理特性,如真指紋在脊 線上的紋理變化較快,在頻域上表示為高頻分量;假指紋灰度變化相對緩慢,在頻域上 表示為低頻分量。此外,空間域中的紋理特征提取算法是否同樣適用于變換域,具有十 分重要的研究意義。如何提升指紋活性的檢測性能是本文的研究重點之一。
    不同于基于紋理特征的檢測方法,深度學習技術能夠自動的從海量的數據集中學習 數據的特征,并且能夠實現自動的分類。只需搭建好一個神經網絡模型,并將每層參數 初始化一個隨機數,CNN便能在后續的前向和后向傳播過程中通過自我學習不斷的更新 和調整模型的參數,最終完成目標對象的分類或預測任務。但是采集的指紋圖像具有多 樣性,而現有的基于卷積神經網絡模型的指紋活性檢測算法對輸入圖像的尺度又有嚴格 的約束[54][57],因此,如何設計一個不受尺度約束的基于卷積神經網絡模型的指紋活性檢 測算法將很有研究意義。此外,當前基于深度學習的指紋活性檢測法都是基于端到端的 結構[54-57],即給定一個輸入樣本,便能得到樣本的預測精度。深度學習比傳統的手工特 征提取法的精度高很多,是因為深度學習能夠自動學習到更抽象、復雜的特征。因此, 將深度卷積層視為特征器,并結合分類器進行測試,能否得到比傳統手工方法更好的結 果,有待進一步的深入研究。
    2.4 本章小結
    指紋識別技術解決了密碼口令身份認證方法中易被泄露、遺忘、破譯和攻擊的難題。 隨著指紋識別技術的普及和廣泛使用,引起了越來越多攻擊者的注意,即攻擊者通過仿 制一枚真實用戶的高質量指紋,就能假冒真實用戶完成各類非法認證。因此,在使用指 紋識別技術驗證用戶身份前,判斷待測試圖像是一枚真實用戶的指紋還是一枚偽造指紋 具有十分重要的研究意義,指紋活性檢測技術就是為解決上述問題而提出的。本章首先 對指紋識別進行概述。然后,本章又對指紋活性檢測的研究現狀進行了詳細的介紹。同 時本節還對當前的指紋活性檢測方法進行了分類,且每類算法都對一些具體的例子進行 了介紹和分析。接著,對現有的指紋活性檢測算法進行了對比。最后,對本章的研究內 容進行了小結。
    第三章 基于空域紋理特征的指紋活性檢測算法
    氣象信息管理系統中氣象數據的安全和完整是提高氣候預測和天氣預報的關鍵。因 此,為確保氣象數據的安全和完整,在訪問氣象信息系統中的數據前,對用戶身份進行 認證變得極為重要。各類氣象信息管理系統因密碼口令的泄露、遺忘、破譯和攻擊而造 成氣象數據損失的安全問題有很多,指紋特征以其簡單、安全和快捷的特性得到了廣泛 使用,可替換傳統的密碼口令式的身份認證法。但指紋識別易遭受仿制指紋的欺騙攻擊。 因此,研究一種高效、安全、快捷且能抵御假指紋欺騙的身份認證法具有很強的實用價 值,也是確保氣象信息管理系統中數據安全的保障。真假指紋圖像的紋理圖案具有相似 性,手工仿制的指紋可重現真指紋圖像中粗粒度的紋理信息,所以氣象信息管理系統中 的指紋識別系統易遭受偽造指紋的攻擊。但假指紋很難復制那些肉眼觀測不到的細微紋 理,因此這些細微紋理可作為區分真假指紋的特征。為了提取真假指紋圖像中細微的小 尺度紋理信息,本文提出一種基于多方向差分共生矩陣的指紋活性檢測算法。另外,利 用本章方法,還開發了兩個支持指紋活性檢測的指紋識別系統。
    本章組織結構如下:3.1 節是引言;3.2節介紹基于多方向差分共生矩陣的特征提取; 3.3 節對三類支持向量機的推導過程進行了詳細介紹;3.4 節介紹了指紋數據集;3.5 節 是關于本章的實驗結果與分析;最后是對本章研究內容的總結。
    3.1引言
    灰度共生矩陣(GLCM, Gray Level Co-occurrence Matrix) [65, 68]是通過統計圖像中灰 度對的相關關系來表示圖像的紋理特征,在計算機視覺、模式識別等領域得到了廣泛的 應用。在 GLCM 中,圖像中鄰近或相近的灰度對重復出現的頻率較大,而相距較遠的 灰度對重復出現的頻率較小。因此構建的 GLCM 是一個稀疏的頻率矩陣[66]。另外,真 假指紋圖像具有相似的形狀,既包括一些脊谷線交替的粗粒度可視化紋理信息,也有一 些肉眼觀測不到的細微紋理。
    關于圖像紋理特征分類方法的研究,學者們較少討論具體是哪種特征起到了識別作 用,現有基于紋理的檢測算法也很少根據指紋活性檢測的特點去設計紋理特征的提取方 法。為了提取這些細節紋理信息和更好地識別真假指紋,本章提出了一種基于多方向差 分共生矩陣(MdDCoM, Multi-direction Difference Co-occurrence Matrix)的指紋活性檢 測算法,并提出一個截斷操作法來消除差分矩陣中異常值的影響。
    3.2基于多方向差分共生矩陣的特征提取方法
    指紋活性檢測是一個二分類的模式識別問題,即待檢測的指紋圖像非真即假,而實 現指紋活性檢測的關鍵就是如何提取一個表示真假指紋紋理細節信息的特征描述子。為 了解決概率灰度共生矩陣中元素稀疏性的問題,同時提取指紋圖像中那些肉眼觀測不到 的細微的紋理信息,受灰度級共生矩陣特征提取算法的啟發[67],本章提出了一種基于多 方向差分共生矩陣特征提取的指紋活性檢測算法。
    3.2.1 灰度共生矩陣
    灰度共生矩陣(GLCM, Gray-level Co-occurrence Matrix) [65, 68]是一種描述圖像中灰 度對在特定距離和方向的聯合概率分布圖,是分析圖像的局部模式和排列規則的基礎。 GLCM最直觀的描述就是從圖像/的坐標(衍仍)出發,該點的像素記為/(衍,為),除坐標 (x1,y1)外,另選坐標(x2,y2),該點的灰度值記為/(x2,y2)。若兩坐標間距離記為d,方 位角度為0,然后統計滿足上述規則下圖像中所有灰度對為(/(衍,力),/(牝』2))時出現的 概率。若灰度值對(心1,為),心2』2))出現的次數為Ng),圖像中符合灰度對關系準則 (即任意兩個不重合的像素點(衍,為)和(牝』2),兩者相隔距離為必方位角度為0),記 任意兩個灰度值出現的總次數記為N。灰度值對為(/(衍,為),/(牝』2))出現的概率々1,2), 其求解方法記為P(1,2)=N(i,2)/N。按照上述規則,計算得到圖像中所有灰度對的概率, 然后將它們組成一個矩陣。圖3.1為真假指紋圖像GLCM的示意圖。圖3.1(a)是假指紋 在二維空間中的可視化,圖3.1(c)是真指紋在二維空間中的可視化。圖3.1(a)和圖3.1(c) 中任意兩個像素點的灰度化示意圖都可以用圖 3.1(b) 來表示。對于紋理變化緩慢的圖像, GLCM 對角線上的概率值較大,而對角線兩側的值較小。反之,對于紋理變化較快的圖 像, GLCM 對角線上的概率值較小,而對角線兩側的值較大。假設圖像的最大灰度級為 厶,則/街,為)與心2,乃)的組合共有LXL種,灰度級厶越大,GLCM構成方陣的元素越 多。由于GLCM元素較多,無法直接將GLCM中的元素作為圖像的紋理特征,而是利 用GLCM計算一些特征量作為圖像的特征oHaralick提出使用14種統計量[26]作為GLCM 的特征,即:能量、熵、對比度、均勻性、相關性、方差、和平均、和方差、和熵、差
    方差、差平均、差熵、相關信息測度以及最大相關系數。
     
     
     
    圖3.1真假指紋圖像及灰度共生矩陣表示,(a)真指紋圖像、(b)灰度對關系圖、(c)假指紋圖像
    3.2.2 差分矩陣構建
    觀察圖3.2(a)發現,圖像中間部分的灰度值較小,外圍的灰度值較大,且相鄰灰度 值相同或相近。圖3.2(b)和3.2(c)分別為原始指紋圖像經過水平和垂直差分操作后的矩陣, 矩陣中灰度值的范圍被最大化壓縮。以圖3.2⑹中第一列的差值為例,首先定位到圖3.2 (a)中第一列和第二列的灰度值,如圖3.2 (a)中包含第一列和第二列左側的紅色橢圓,然 后用圖3.2 (a)中第二列的灰度減去第一列的灰度,并將上述的差值作為圖3.2 (b)矩陣中 第一列的差分值。同樣對于圖3.2 (c)矩陣中第一行的差分值,首先找到圖3.2 (a)中第一 行和第二行中的灰度值,然后用圖3.2 (a)中第二行的灰度值減去第一行的灰度值,并將 其賦給圖3.2 (c)中第一行。對于差分矩陣的最后一列,首先在圖3.2 (a)最后一列添加新 列,然后用添加新列矩陣的最后一列減去倒數第二列,并將差分結果作為圖3.2 (b)最后 一列的結果。而對于差分矩陣的最后一行的計算,首先在圖3.2 (a)最后一行添加一行新 行,然后用添加新行矩陣的最后一行減去倒數第二行,并將其差分結果作為圖3.2 (c)最 后一行的結果。
    255 253 255 25? A 1 1 2 2 0 0 0 - ■ ? 0 -0 0 0 0 0 0 0-
    254 255、 255 1 1 2 2 0 0 V 0 ? 2 0 2 1 2 0 0 2 2
    253 255 253 2 1 0 0 2 0 2 2
    255 255 4 5 4 255 255 0 0 1 1 1 0 0 0 0 0 0 0 0 0
    255 255 5 5 4 255 255 0 0 1 2 0 0 1 1 1
    0 1 0 1 0
    254 253 4 5 5 254 254 1 0 1 0 1 0 0 0 1 2 1 0 0 0
    ,254 254 254 254 0 2 0 0 1 1 0 0
    "25^ 一254 255 253 255 255- k 1 1 2 2 0 0 —0- 0 0 0 0 0 0 V
    £ 254 255 253 255 255 V 1 1 2 2 0 0 V 0 0 0 0 0 0 0 0 0 0
    (a) (b) (c)
     
    圖 3.2 差分矩陣計算示例, (a) 指紋灰度圖、 (b) 水平方向的差分矩陣、 (c) 垂直方向的差分矩陣
     
    鑒于圖像相鄰兩行或兩列像素的灰度值相同或相近,為保證差分操作后圖像的尺度 大小不變,在求差分矩陣前,首先對原圖像行列尾部執行添加行或列操作,且新添加行 或列的灰度值為原樣本的最后一行或列。假設圖像I的大小為(M, N),若執行添加行 操作,則指紋圖像的大小變為(M+1, N);若執行增列操作,則圖像的大小變為(M, N+1)o 通過添加新行或者新列操作確保經過差分操作后的圖像尺度保持不變。除了用示意圖描 述差分矩陣的計算過程,還通過差分矩陣可視化和灰度級直方圖的分布來介紹真假指紋 圖像的細微紋理區別。觀察圖 3.3 的 6 張直方圖可知,區分真假指紋圖像的細節信息主 要分布在中級灰度值部分。
     
    圖3.3指紋圖像的灰度分布圖,(a)假指紋、(b)假指紋水平方向梯度可視化、(c)假指紋垂直方向梯度 可視化、(d)假指紋灰度直方圖、(e)假指紋水平方向梯度直方圖、⑴假指紋垂直方向梯度直方圖、(g) 真指紋、(h)真指紋水平方向梯度可視化、(1)真指紋垂直方向梯度可視化、①真指紋灰度直方圖、
    (k)真指紋水平方向梯度直方圖、⑴真指紋垂直方向梯度直方圖
    在求圖像差分共生矩陣前,需要了解3個概念,即:差分共生矩陣(DCM, Difference
    Co-occurrence Matrix)灰度級方向&、DCM灰度級偏移d和DCM灰度級階數0。
    1) DCM灰度級方向弘 為便于計算,基于灰度共生矩陣通常只提取0°和90°兩個
    方向上的圖像紋理特征,而本文將統計0°、45°、90°和 135°四方向上的差分共生矩陣(0° 表示水平方向相鄰的兩個像素, 45°表示右斜上方方向相鄰的兩個像素, 90°表示上下方 向相鄰的兩個像素, 135°表示左斜上方方向相鄰的兩個像素),然后再計算差分共生矩 陣的特征量,最后將提取的特征拼接起來,作為指紋圖像的特征描述符;
    2) DCM灰度級偏移R:在構建好的差分矩陣中,DCM是統計像素灰度級m和n 在差分矩陣中重復出現的頻數,且m和n間的距離偏移是R。利用歐式距離公式可計算 任意兩個灰度級間的偏移d,且偏移d記為:d = J(Xm —為)2 —(^― %)2。在DCM 灰度級方向殆定的條件下,d取兩個相鄰最近的灰度值,如& = 0°時,則d=1;
    3)DCM灰度級階數。:差分共生矩陣的階數取決于樣本圖像的灰度級,即當差分
    灰度圖像的灰度值階數為N時,則構建的DCM是大小為N X N的方陣;
    3.2.3特征提取
    本章關于多方向差分共生矩陣特征提取的關鍵步驟如圖 3.4,共包括五個步驟,即 差分矩陣構建、量化與截斷、共生矩陣構建、矩陣特征量的計算和特征值拼接。本節將 對每個特征提取過程進行詳細的介紹。
     
    圖 3.4 多方向差分共生矩陣的特征提取過程
    1)差分共生矩陣構建
    首先對圖像進行預處理操作,即將多通道的指紋圖像轉換為灰度圖。接下來對處理 后的指紋圖像做水平和垂直兩個方向上的差分運算,即相鄰兩列或兩行像素的灰度值做 差分處理。
    2)量化與截斷
    一般來說,相鄰兩個像素的灰度值相同或相近,若不對指紋圖像進行處理,那么構 建的差分矩陣中將會生成大量的零元素。為了更好地識別真假指紋,減少矩陣中的非零 元素,對灰度進行量化操作是必須的。設指紋圖像G的大小為(m,n),在二維空間中, 坐標(ij)對應的灰度值為Gj。量化因子為Q時,圖像的量化操作公式如下,
    嘉?皿/Q] (3.1)
    量化因子Q是一個大于等于1的整數。量化操作會降低指紋圖像的質量或清晰度, 但對紋理特征的影響不大。指紋圖像經過量化操作后,然后執行差分處理。水平方向和 垂直方向的兩個差分矩陣的計算公式如下,
    DhQJ) = — Gj+i, foT i € (0, ...,m — ]), i G (0,九—2)
    D卩(i J) = j — Gj+i y, /"or i. G (0,…,m — 2), i. G (0,…,九一1)
    GLj為圖像中坐標為(ij)對應的灰度值。雖然指紋圖像經過量化和差分兩個操作, 但是該矩陣中還存在異常值的干擾。若異常值較小,對最終的特征量計算影響不大。反 之,特征量的計算則會受到影響。為了減少異常值,本章提出了一種截斷操作法。通過 截斷操作,可將差分矩陣中的元素映射到[-]之間。T是一個人為設定的閾值,經過 截斷操作之后的差分矩陣變為,
    DQJ)?TC(DQJ)) (3.3)
    在式(3.3)中,DQJ)表示坐標為(ij)水平或垂直差分矩陣的灰度值。TC(.)表示截斷 操作,且截斷操作的計算公式如下,
    (TC(DQJ)) = T, D(iJ) > T
    { TC(D(iJ)) = —T, D(iJ)<—T (3.4)
    (TC(DQJ)) = D(iJ), D(iJ)引—T,T]
    在公式(3.4)中,閾值T是一個大于等于1的常量。若差分矩陣中某元素大于T,則經 過截斷操作后值變為T,即TC(D(iJ)) = T;若差分矩陣中的值小于T,那么經過截斷操 作后變為-幾另外,若差分矩陣中的元素DQJ)值介于[-T,T]之間,經過截斷操作后將 保持不變,即TC(D(iJ)) = DQJ)。經過截斷操作后的矩陣就是我們最終構建的差分矩 陣(包含水平和垂直兩個方向的矩陣)。
    3)共生矩陣構建
    利用第2步構建的DCM計算指紋圖像特征量前,首先需要確定計算過程中的一些 參數(如滑動窗口 W;灰度級方向&;灰度級偏移d和灰度級階數O):
     
    滑動窗口 WxW的選擇:一般在大小為3x3, 5x5或7x7的滑動窗口中計算其差分共 生矩陣,一個窗口處理完成后,再以步長為(W4)滑動窗口,重復之前的操作,直至 滑動窗口從圖像的左上角滑動到右下角,則停止;
    灰度級偏移d:在滑動窗口 WxW中,通過比較兩個相鄰灰度值的大小,統計其灰度 對重復出現的頻數。偏移d的選擇不同,求到的差分共生矩陣形式不同,本文d=1;
     
    圖3.5水平方向差分共生矩陣的構建示意圖,(a)局部圖像的灰度圖、(b)添加列元素后的灰度圖、(c) 水平方向差分矩陣、(d) q = 0°水平差分共生矩陣示意圖,其中F1和F2為灰度級
    灰度級方向0選擇:本章在計算差分共生矩陣時,方向q分別為0°、45。、90°和135°, 在已知灰度對、灰度級偏移和灰度級方向的前提下,其相應的差分共生矩陣可記為D(x, y, d,q)。圖3.5是當q = 0°時,水平差分共生矩陣的計算示意圖。圖3.5(a)為指紋圖像的 一部分,為了確保差分矩陣的尺度不變,首先在圖3.5(a)中的最后一列添加新列,添加 后如圖3.5(b)所示。根據公式(3.2),可以計算出水平方向差分矩陣,如圖3.5(c)。為了統 計差分矩陣中像素灰度值重復出現的次數,需新建一個方陣,方陣的行和列表示像素的 灰度級。圖3.5(c)最大灰度級為5,因此新建方陣的級數有五階,方陣中的元素表示差 分矩陣中相鄰元素灰度值重復出現的次數。例如,在圖3.5(c)中,灰度級對(1,5)在灰 度值偏移d = 1時,灰度級方向是& = 0°時重復出現的次數為1,即D(1,5,1, 0°)=1。反映 在圖3.5(d)中則為(Fi,F2)= (5,1) = 1,其他三個方向求解差分共生矩陣與的求解& = 0° 的過程相同。根據定義可知,水平方向差分矩陣可以構建四個差分共生矩陣;同理,垂 直方向的差分矩陣同樣可以產生四個方向的差分共生矩陣;
    根據Nikim等[69]提出的計算共生矩陣法則,本節分別求0。、45。、90°和135。四個方 向的差分灰度共生矩陣。圖3.5(d)為當灰度級偏移d =1時,灰度級方向& = 0°時的水平
    差分共生矩陣,即當d=1時,用數學符號記為DH(d = 1, q=o°):
     
     
     
    其中Dh是水平方向上差分共生矩陣的標記。同理,參考灰度級偏移d =1時,灰度級方
    向是q = o°時的求解過程,可分別求出當灰度級偏移d=1時,灰度級方向為q=45°,q= 90°和&= 135°三個方向上的水平差分共生矩陣,用數學符號分別標記為DH(d = 1, q = 45° ),DH(d = 1, q =90°)和= 1, q= 135°),
    a.灰度級q = 45。方向時差分矩陣圖3.5(c)的差分共生矩陣
    00000
    20220
    20000
    01001
    00000
    1 1 0 0 0]
    b.灰度級q = 90°方向時差分矩陣圖3.5(c)的差分共生矩陣,
    4 0 0 0 0 0
    0 3 1 1 0 1
    DH(d = 1, q = 90° )= 0
    0 1
    2 0
    0 1
    0 0
    1 1
    0
    0 0 1 0 1 0
    [0 1 0 1 0 0]
     
    c.灰度級q = 135。方向時差分矩陣圖3.5(c)的差分共生矩陣,
    0 0 1 1 2 0
    0 2 1 1 0 0
    DH(d = 1, q = 135°)= 0
    0 2
    1 0
    0 0
    0 0
    0 1
    1
    0 1 0 1 0 0
    [0 1 0 0 0 0]
    為了減少差分共生矩陣中異常值的影響,對構建的差分共生矩陣進行歸一化處理, 即將差分矩陣中的每一元素除以矩陣中元素的總和。經過歸一化處理,差分共生矩陣中 的元素都被限制在[0,1]之間,從而降低了異常值對最終特征的干擾。若是將水平四個方 向差分共生矩陣歸一化操作后的數學符號分別記為:Norm_DH(d = 1, q=0°), Norm_DH(d = 1, q = 45° ),Norm_DH(d = 1, q = 90° )和Norm_DH(d = 1, q= 135° ), 則當灰度級偏移d=1時,上述矩陣歸一化后分別為:
     
    d.灰度級q = 0°方向時,圖3.5(d)差分共生矩陣歸一化后變為,
    Norm_DH(d = 1, q = 0° )=
     
    e.灰度級q = 45°方向時,圖3.5(d)差分共生矩陣歸一化后變為,
     
     
     
    f.灰度級& = 90°方向時,圖3.5(d)差分共生矩陣歸一化后變為,
     
    通過上述幾個步驟,便可得到8 個歸一化操作后的差分共生矩陣。由于指紋圖像具 有尺度大和多樣性的特點,直接將歸一化后的差分共生矩陣作為指紋圖像的特征,會導 致存儲開銷大且計算成本高。為此,對歸一化后的差分共生矩陣分別求矩陣特征量,即 能量、對比度、相關性和熵,拼接并作為圖像的特征向量。
    4)矩陣特征量的計算
    經過上述三個步驟后,可得8 個差分共生矩陣。然后對每個差分共生矩陣分別求出 四個特征量作為圖像的特征描述符[26],即熵(ENT, Entropy),能量(也被稱為角二階距, ASM, Angular Second Moment),相關性(亦稱為同質性,CORR, Correlation)和反差分 矩陣( IDM, Inverse Difference Moment)。
    能量(角二階距)是指計算歸一化差分灰度共生矩陣中各灰度值的平方和,它是圖
    像紋理灰度變化的度量,反映了圖像灰度分布均勻程度和紋理粗細程度,公式為,
    V V V V (Norm_D(i,j, d, &)) 厶i厶j厶d=1厶q 其中在公式(3.5)中,(i,j)e[0,L],且符號厶表示差分共生矩陣的最大灰度級,在上述關于 差分共生矩陣計算的例子中,其最大灰度級L = 5, Norm_D(i,j, d, 6)表示歸一化后的差 分共生矩陣,d表示圖像灰度級偏移,q表示像素方向。若能量值大,表明圖像灰度值是 一種變化均勻的紋理模式;反之,表明圖像像素變化劇烈,紋理圖案較復雜。
    反差分矩陣(角二階距)度量的是圖像紋理圖案的清晰和規則程度。若圖案紋理清 晰、規律性較強,則相應的圖案易于描述,同時 IDM 的值較大;若圖像紋理模糊、雜 亂,則其難以描述,且IDM的值較小。反差分矩陣的計算公式為,
    IDM = V V V V Norm_D(i,j, d, 0)/1 +(i - j)2 (3.6)
    相關性也被稱為同質性,用來測量矩陣中元素在行或列上的相似程度。相關性值越 大,則說明元素的相關性越大;反之,則說明元素的相關性較小。本節中。歸一化的差 分灰度共生矩陣Norm_D(i,j,d, q),用符號COOR表示相關性,計算公式如下,
    (3.7)
    在公式(3.7)中,“和b兩個數學符號為差分共生矩陣中元素的均值和方差,關于公 示(3.7)中的代,“y ,樂2和by2計算公式分別為,
    = liljld=iLq i* Norm_D(i,j,d, 0) , = ^i^j^d=iLq j * Norm_D(i,j, d, 0);
    br2 = E》j》d=i》q Norm_D{i,j, d, = Xi'Lj'Ld=iXq Norm_D{i,j, d, ff)(j -?2;
    熵度量的是圖像具有的信息量,可表述圖像紋理的復雜程度。熵值越大,說明圖像 的紋理結構越復雜;反之,若差分共生矩陣中灰度值分布不均勻,則其值會變得很小。 熵值越小,說明圖像的紋理結構較單一和簡單。關于熵的計算公式如式(3.8)所示,
    ENT =- MjLE Nor mDdjgiogCNormDajdq) (3.8)
    水平和垂直方向的差分矩陣各有四個方向的差分共生矩陣,即0°、45°、90°和135° 四個方向。因此,對于水平方向的四個差分共生矩陣,可以得到 16 個特征值,分別記 為ASM_H(d, 0),IDM_H(d, 0),CORR_H(d, q)和ENT_H(d, 0)。其中,符號‘_'中前半部 分描述的是每個特征值的名稱,符號‘_'后的H是水平方向的差分矩陣的首字母縮寫。每 個符號中的d均表示灰度級的偏移,且滿足d = 1。另外,方向q的取值有四個,即qe{0°, 45°,90°和135°}。同理,垂直差分矩陣下的特征值分別記為ASM_V(d, 3),IDM_V(d, 3), coRR_v(d,q)和ENT_y(d,q 符號‘_'后的u是垂直方向的差分矩陣的首字母縮寫。其余 參數含義和取值范圍與水平差分矩陣對應的參數相同,最終圖像的特征集Img.Feature 如式(3.9)所示,
    lmg_Feature = [ASM_H(d, 6), IDM_H(d, 6), CORR_H(d, q),ENT_H(d, 6),
    ASM_V(d, 9)tlDM:V(dt 9), CORRJ(d, 9), ENT 衛(d, 9)] (3.9)
    上述所有的特征值經過拼接后,便得到最終的特征向量,其維度為32。其中,灰度 級偏移d = 1,灰度級方向取值q^{0°,45°,90°,135°}.
    3.3 支持向量機
    支持向量機I77】 (SVM, Support Vector Machine)是一個有監督學習(SL, Supervised Learning)的二分類分類器,它的工作原理就是通過對有標簽的數據進行學習并尋找一 個最優決策超平面來分割給定的數據。圖 3.6 給出了三種類型的支持向量機,即線性可 分式的支持向量機、線性不可分式的支持向量機和非線性式的支持向量機。
    3.3.1線性可分式
    給定圖像集F,線性可分式的支持向量機是指通過尋找一個線性函數將圖像集F分 開。若存在這樣的線性函數,則說明給定的樣本集是線性可分的;反之則是線性不可分 的。對于線性不可分的數據集,可通過引入核函數的方法,將低維度的特征向量映射到 高維度的特征向量空間中,通過在高維空間中尋找一個超平面實現數據可分。上述的線 性函數,在二維空間中可用一條直線表示,在三維空間中則是一個平面,在一個更高維 的空間中則是一個超平面。如圖3.7(a)所示,直觀感覺就是圖3.7(a)中給定的兩類數據 集是線性可分的,而將兩類數據分開的直線有無數條,最優分割超平面就是能夠將兩類 數據正確分離并且使得兩類數據間的間隔最大。如圖3.7(b)和圖3.7(c)中的虛線所示,分
    類間隔就是指兩條虛線之間的垂直距離,而支持向量機就是為了去尋找“最大分類間隔
    的決策面。當取最優決策面時,其兩側虛線上所穿過的點被稱為“支持向量”。
     
     
     
    將圖3.7(b)和圖3.7(c)推廣到一般化的超平面,可得,
    mtx + b = 0 (3.10)
    在公式(3.10)中,有兩個參數需要求解,一個是決策面的法向量3,其決定了超平面 的方向;另一個是偏移量b,其決定了坐標原點到超平面之間的距離。分類間隔d=£ ||w|| 的具體推導過程如下,首先有,
    1 * (^tx+ + b) = 1, yn = +1
    1 * (^tx- + b) = -1, yn = -1
    在公式(3.11)中,x+中九表示對應數據集中的第九個樣本;“+”表示待測樣本為真;同 理, “-”表示給定的待測樣本為假。將公式(3.11)整理可得,
    ^Tx+ = 1-b, yn = +1
    mtx- = -1-b, yn = -1
     
    由于一般化的超平面線性分割函數為^Tx + b = 0,且根據兩條平行線之間的距離 公式可得,
    1_b_(_1_b) _ 1-b + 1+b _ 2
    ~- = ^^^ = ^
    求max (^)的目標函數可轉化成求最小化\\w\\的對偶問題,即等效于計算
    min^WwW2匕min\\w\\2。將目標函數和兩個約束條件整合可得,
     
    式(3.15)是要求解的帶不等式的凸優化問題,根據式(3.19),原問題可以轉化成一個求解 拉格朗日乘子a的問題,即:
    Max L(®,b,a) = max ln=iOn - ^L^il^iOn ai yn %昭竝 a a 2 (3.20)
    Subject to l7^=1 anyn = 0, an > 0, n = 1,2, ,^,m
    根據式(3.20),求出滿足max L(w, b, a)最大時的拉格朗日乘子a。計算完a后,將其返帶
    回公式(3.18 )中,便可得對偶問題。同時能計算出超平面(或決策面)的法向量3,而
    偏移量b是通過KKT條件[28]計算得到的。關于參數b的模型函數記為,
    f(x) = ^Txn + b= L^=i an ynxnTx + b (3.21)
    因為真指紋圖像的支持向量滿足yn(^Txn + b) = 1.已知方程中%, xn和三個參 數,可得方程中的b,
    b = lLn=1(yn - ^TXn) (3.22)
    3.3.2非線性式
    對于線性不可分的問題,如圖3.6(c),即兩類數據無法使用一個線性決策面進行劃 分,而需要借助一個橢圓曲線才行。解決非線性問題最好的方法就是通過非線性變換, 將非線性劃分問題轉變成線性劃分問題。非線性支持向量機就是將訓練或測試數據從原 始的低維空間通過變換映射到一個高維空間中,使得數據集在這個高維空間中是線性可 分的。映射變換記為0,特征向量經過映射函數后可轉化成(Kx),其維度為H。用數學符 號表示維度映射為RN ^H,其在高維空間中對應的決策面模型為,
    f(x) = mt0(x) + b (3.23)
    參考公式(3.14),可得高維空間下,線性決策面的最大分類間隔函數模型為,
    min|||ffl||2 q min|W『
    Subject to yn(^T0(x)n + b) > +1, if yn = +1,n = 1,2, , N (3.24) otherwise yn(MT0(x)n + b) < -1, if yn = -1, n = 1,2,…,N
    同理,高維空間下的對偶問題可改寫成,
    L(^,b,a) = L^=i an -lLn=iL1i=i an aiynyi0(xn)T0(Xi) 35)
    Subject to L^=ianyn = 0, an>0, n = 1,乙…,m
    公式(3.20)是由數據點積昭竝決定的,而在高維空間中,由于低維空間中的特征向 量被映射到了高維空間,即特征向量盤和竝兩點被分別映射成(Kxn)T和0(竝)。此時,在 高維空間中拉格朗日函數的值是由<^(xn)T^(xi)內積決定。公式(3.25)會涉及到計算 <^(xn)T^(xi)內積的問題。在高維空間中,數據的維度H要遠遠大于低維空間中數據的維 度RN ,甚至有可能是無窮維的。因此數據的處理、計算是非常復雜的,同時對內積 隊訶畑計算非常的困難。為了解決計算難點,非線性支撐向量機引入了核函數的概 念,即通過計算核函數的點積K(xn,xt)值代替高維特征©(xjT慎兀)的內積值,從而大大 簡化了非線性支持向量機的計算過程。關于核函數的替代過程,可用公式(3.26)表示,
    K(Xn,xQ =< <^(xn), <^(xi) >= <^(xn)T^(xi) (3.26)
    在公式(3.26)中,核函數用數學符號K表示,即在高維空間中兩個特征值的內積,等 同于通過使用核函數的計算結果, 將公式(3.26)帶入到公式(3.25)并替換掉內積 隊訶 畑 可得帶核函數的對偶問題函數,
    L(^,b,a) = lln=ian--lln=il1i=ianaiynyiK(xn,xi)
    Subject to Y^=-anyn = 0, On > 0, n = 12 .^,m
    借助公式(3.16), (3.17), (3.18)和(3.21)等,式(3.23)計算過程和結果如下,
    f(x) = ^T^(x) + b
    =ln=1 On yn^(Xn)T^(Xi) + b (3.28)
    =ln=ianynK(xn,xi) +b
    實際中,由于樣本數據集的不同,核函數的選擇也不同,表3.1 中列舉了在非線性 支持向量機中常用的核函數。
    表 3.1 非線性支持向量機中核函數的類型
    核函數的名稱 數學表達式 參數取值
    線性核函數(Linear kernel K(xn,xi)=x^xi
    function)
    多項式核函數(Polynomial K(xn,xi)=(x^xi)d d>1,為多項式的次數
    kernel)
    Sigmoid 核函數 K (xn, Xi)=tanh((fi%nxi + q tanh為曲線雙正切函數,0 >
    1,q<0
    高斯核函數(Radial basis
    function) K(Xn,Xi)=(\\Xn;;f) o>0,為高斯核的帶寬
    拉普拉斯核函數(Laplace
    kernel function) Kg,並)=(卑丁) a > 0
    3.3.3 線性不可分式
    實際問題中,給定的兩類數據往往并不是規則的、均勻的分布在決策面^Tx + b = 0 的兩側,如圖3.6(b)所示,即部分真指紋樣本(紅色五角星所示)被分到假指紋樣本中; 部分假指紋樣本(藍色實心圓所示)又被分到真指紋樣本中。在這種情況下,支持向量 機學習的分類器不能滿足間隔大于1或者小于1的條件。我們就需要考慮樣本被錯分的 可能性,并需要將錯分樣本考慮在目標函數中。在公式(3.14)的約束函數中引入一個松 弛因子0(滿足J >0,且九=1,2,….,N),使得分類間隔加上松弛因子的值大于等于1。 這樣,公式(3.14)引入松弛因子后的約束條件變為,
    yn(^Txn + b) > +1 - ^n, if yn =+1, n = 1,2,., N
    yn(MTxn + b) < -1 + g”, if yn = -1, n = 1,2,…,N .
    同時在最大分類間隔目標函數上添加一項錯分的懲罰因子項(Penalty Factor),添 加松弛因子后的約束條件就沒有原始條件那樣嚴格,且帶有懲罰因子的最大分類間隔目 標函數可轉成式(3.30)。其中 C 為懲罰參數,其決定了模型對離散點的容忍程度,需要 手動設定。若是對錯分類容忍程度較高或期望得到很高的結果,即將懲罰參數C調節的 大些,使得最大分類間隔減小;反之若是對錯分類容忍程度很低或者要模型有很好的泛 化性能,將懲罰參數C調節的盡可能小,使得最大分類間隔增大,
    min^llwll2 + C L^=i gn = min1o>Tw+L^=i J
    Subject to yn(o>rxn + b) > +1 — gn,
    if yn = +1, n = 1,2,…,N (3.30)
    otherwise yn(o>rxn + b) < -1 + gn,
    if yn = -1, n = 1,2,…,N
    此時,帶有懲罰因子項的優化問題轉化成了求凸函數最優解的問題,引入兩個拉格 朗日乘子系數“和a,且滿足^n>0,an>0,n = 1,2, ., i, ., N。我們可得,
    L(3,b,a,訥= \\\a\\ +0^^=1 gn - L^=1 an + y”(®% + b) - 1)-L^=1^ngn (3.31)
    參照式(3.17),拉格朗日函數L(^,b,a,訥分別對參數3,b和g求導并令導數為零, 便可求出3,b和g三個參數的值,其分別為,
     
    3 = ln=1anynXn
    1^-Onyn = 0
    C = an +
    最后,將式(3.32)返帶回將式(3.31),化簡并整理后可得,
    maxL@,b,a,^,^) = max 1^-On--Z^=iZi=ianai yn %昭竝
    a a 2
    Subject to Yi^=iOnyn = 0, an > 0, > 0,an > 0, (3.33)
    C = an + 嘰,n = 1,2, , m
    3.4 指紋數據集
    最近幾年的一些研究表明[28-33],指紋識別傳感器易受到人造假指紋的攻擊。為了解 決該問題,一種反欺騙檢測技術,指紋活性檢測被提了出來。關于指紋活性檢測的研究 最早可追溯到2003年,韓國仁荷大學生物工程研究中心的Kang等[24]發現:盡管指紋具 有獨一性和難以預測等優點,但是通過特殊材料制作的假指紋能夠躲避指紋識別的認證。
    自 2003 年后,涌現了許多關于指紋活性檢測的研究團隊,同時提出了許多的研究 成果。我們都知道,實現指紋活性檢測的關鍵就是采集大量的指紋圖像。即使相同的算 法,由于指紋圖像集的不同,也會得出不同的檢測結果。為了對比和驗證指紋活性檢測 算法的優劣,需要在相同的指紋數據集上進行性能評估和比較。2009 年之前,關于指紋 活性檢測的研究采用的都是各自的指紋數據集[62-64],但從 2009 年起,由意大利卡利亞 里大學電氣與電子工程系的 Marcalis 副教授[34]和美國克拉克森大學電氣與計算機工程 系的 Stephanie Schuckers 教授協力創辦的首屆指紋活性檢測競賽,受到來自全球各學術 和工業機構科研人員的關注。該競賽的目標旨在推出一個標準的測試協議和提供一個通 用的真假指紋數據集,來幫助參賽者們評比他們各自的算法。為了評估本章提出算法的 性能,本文在三個標準的指紋數據集上進行了驗證,數據集分別為LivDet 2009, LivDet 2011[70]和 LivDet 2013[59]。
    LivDet 2009 數據集里的指紋圖像是通過三個不同的光學指紋傳感器采集得到的, 即Biometrika, CrossMatch和Identix,且每個傳感器相應的訓練集和測試集樣本均是由 真假指紋圖像兩部分組成。在給定的數據集中,假指紋數據集采用協作式的制作方法, 其制作過程分為兩個步驟:(1)測試者首先在柔軟的材質(如橡皮泥、牙科印模材料或 石膏等)上按壓自己的手指,數秒后拿起手指,測試者的指紋印便固定在了材質表面; (2)往上述的指紋印上倒入硅膠液體或其它相似的材料(如蠟,明膠等),停留一會, 待其凝固變堅硬后,一個仿制的假指紋便制作完成。在LivDet 2019數據集中,三個光 學傳感器(Biometrika, CrossMatch 和 Identix)分別采集到 2000, 1500 和 2000 張真指 紋圖像及2000, 1500和2000張假指紋圖像。其對應的指紋圖像的大小分辨率是不同的, 分別為569(dpi), 500(dpi)和686(dpi),每張指紋圖像的大小分別為312x372, 480x680 和720x720。訓練集中的真指紋圖像和假指紋圖像被用來訓練一個模型分類器,測試集 的指紋集是用來驗證模型分類器的性能。
    表 3.2 LivDet 2009, LivDet 2011 和 LivDet 2013 指紋集中的圖像分布圖
    指紋掃描儀 分辨率(dpi) 圖像尺度 訓練集樣本數 測試集樣本數
    真指紋 假指紋 真指紋 假指紋
    Biometrika-09 569 312x372 1000 1000 1000 1000
    CrossMatch-09 500 480x680 1000 1000 500 500
    Identix-09 686 720x720 1000 1000 1000 1000
    Biometrika-11 500 315x372 1000 1000 1000 1000
    Digital-11 500 355x391 1004 1000 1000 1000
    Italdata-11 500 640x480 1000 1000 1000 1000
    Sagem-11 500 352x384 1008 1008 1000 1036
    Biometrika-13 569 352x384 1000 1000 1000 1000
    CrossMatch-13 500 800x750 1250 1000 1250 1000
    Italdata-13 500 480x640 1000 1000 1000 1000
    Swipe-13 96 1500x208 1221 979 1153 1000
     
    LivDet 2011 數據集來源于2011 年舉辦的第二屆指紋活性檢測競賽。不同于 LivDet 2009里的光學指紋掃描儀,LivDet 2011中使用了四個光學指紋采集儀。除了 LivDet 2009 年中的Biometrika光學儀被繼續使用外,LivDet 2011指紋數據集中又引入了三個新的 光學指紋掃描儀,分別為Digital Persona、Italdata和Sagem,且四個光學指紋采集儀的 圖像分辨率均為 500。在 2011 數據集中,用來制作假指紋的材料有 EcoFlex, Gelatin, Latex和Silcon等,且采集的指紋圖像的大小主要分布在300-400之間。如圖3.8所示, 我們從LivDet 2011指紋數據集中隨機挑選了四張真指紋圖像和四張假指紋圖,其真假 很難用肉眼區分,必須借助專業儀器才能判斷出真假指紋。在 LivDet 2011 數據集中, 四個光學傳感器(Biometrika,Digital Persona、Italdata 和 Sagem)分別采集到 2000,2004,
     
    2000和 2008 張真指紋圖像及2000, 2000, 2000和 2044張假指紋圖像。其對應每張指 紋圖像的大小分別為315x372, 355x391, 640x480和352x384。同LivDet 2009指紋數 據集,在 LivDet 2011 中,訓練集中的真指紋圖像和假指紋圖像也是被用來訓練一個模 型分類器,測試集的指紋樣本是用來驗證模型分類器的性能。
     
    圖3.9 LivDet 2013指紋集中的真假指紋圖像,(a)-(d)為真指紋圖像、(e)-(h)為假指紋圖像
    LivDet 2013 指紋數據集來源于 2013 年第三屆指紋活性檢測競賽。除了 LivDet 2009
     
    數據集中的 Biometrika, CrossMatch 和 LivDet 2011 中 Italdata 三個指紋掃描儀,在 LivDet 2013指紋數據集中又引入了一個新的指紋掃描儀Swipe。在LivDet 2013指紋數據集中, 四個指紋掃描儀采集到指紋圖像的分辨率分別為569(dpi), 500(dpi), 500(dpi)和 96(dpi)。 在LivDet 2013數據集中,用來制作假指紋的材料分別有EcoFlex, Gelatin, Latex和Modasi 等,且采集得到圖像的尺寸范圍跨度較大,分別為352x384, 800x750, 480x640和 1500x208。另外,四個光學傳感器分別采集到2000, 2004, 2000和2008張真指紋圖像 及2000, 2000, 2000和1979張假指紋圖像。在LivDet 2013中,真假指紋數據也被分 成沒有重疊的兩部分,一個是訓練集,一個是測試集。如圖 3.9 所示,從 LivDet 2013 指紋數據集中隨機挑選了四張真指紋圖像和四張假指紋圖。
     
    圖 3.10 基于紋理特征提取的指紋活性檢測流程圖
    3.5 實驗結果與分析
    本章的實驗是基于上述三個標準的指紋數據集,即 LivDet 2009, LivDet 2011 和 LivDet 2013,其工作流程圖如圖 3.10 所示。關于指紋活性檢測的研究主要包含兩個過 程,訓練過程和測試過程。訓練過程的主要目標就是使用支持向量機,對提取的訓練特 征集進行模型訓練。另外,為了測試模型分類器的性能,用測試集去驗證模型分類器的 性能。根據圖3.10可知,在兩個過程中,不論是訓練過程還是測試過程,特征提取都是 必不可少的,它也是實現高性能指紋活性檢測的關鍵。
     
    3.5.1 性能評價指標
    為了驗證特征提取算法的性能,需定義一個性能評價函數。本文使用平均分類錯誤 率ACE( Average Classification Error)[28][39][41 ]作為標準的性能評估指標,其計算公式為:
    ACE = (FAR + FRR)/2 (3.34)
    在公式3.34中,FAR (False Accept Rate)表示假指紋被誤分為真指紋的概率,FRR (False Reject Rate)表示真指紋被誤分為假指紋的概率。根據競賽規則[28][31],指紋活性 檢測的結果可能是0到100之間的任意值。假設閾值設為50, 測試指紋圖像的值大于 50,則被劃分成真指紋;反之,則被劃分成假指紋。
    3.5.2實驗配置
    如圖3. 10所示,指紋活性檢測的研究主要分為兩個過程:訓練過程和測試過程。
    訓練過程:由于部分光學指紋掃描儀采集的指紋圖像是彩色的,本文只關注真假指 紋的紋理信息,而顏色不是我們關注的重點。因此在指紋活性檢測前,需要將給定的指 紋圖像進行灰度化,即將三通道的指紋圖像轉化成灰度指紋圖。在求解灰度共生矩陣前, 為了節約存儲空間和加快特征提取的速度,需要對樣本圖像進行一個量化操作,本實驗 量化因子參數值Q設為1。首先使用公式3.1和3.2分別計算出訓練集中真假指紋圖像 的水平和垂直兩個方向的差分共生矩陣。實驗中,截斷操作閾值T被設為5。經過公式 3.1-3.4的處理,可以得到最終的差分矩陣。由于該差分矩陣中元素值已經很小,可考慮 從兩個角度來提取差分共生矩陣的特征:一是借鑒灰度共生矩陣特征求解方法,得到差 分共生矩陣的參數特征,另一個考慮計算多階差分共生矩陣,即給定方向&下,計算相 鄰兩個元素或多個元組出現的頻率,并將提取的差分共生矩陣作為最終的特征。前一個 方法是本節研究的重點,后一個方法本文將會在下一章中重點介紹。接下來,對于構建 好的差分共生矩陣,使用公式 3.5-3.8 計算出每個差分矩陣的四個參數特征(即熵、能 量、相關性和反差分矩陣),并將它們作為相應差分共生矩陣的特征值。由于每個矩陣 可以計算出 4 個參數值,共有四個特征。每個差分矩陣又可以構建出四個方向的矩陣, 因此每個差分矩陣可以計算出 16個特征。在構建差分矩陣時,可得到水平和垂直 2個 方向的差分矩陣。綜上,每張指紋圖像特征向量的維度是32。然后將上述所有特征作為 支持向量機的輸入,并通過參數尋優找到最好的參數對(C, 丫)。本章最優的參數對(C, y) (其中C表示懲罰因子系數,表示核函數的參數)是使用libsvm中自帶的參數尋優grid
    函數搜索得到的,如圖3.11所示,是對LivDet 2013指紋數據集中四個指紋傳感器進行
    參數尋優的最終結果圖。根據每張圖片的數據,我們可找到每個指紋傳感器對應的最優 的參數對(C, 丫),以Biometrika為例,當參數對(C, 丫)為(512, 8)時,將會學習到最好的模 型。最終,使用上述提取的特征和最優參數對(C, y),完成訓練過程。本章在對三個指紋 數據集中每個指紋掃描儀進行實驗時,需要設定支持向量機的參數對(C, y),具體參數如 表3.3所示,為本章進行實驗時設定的相應參數值。其中,表3.3中的“x”符號表示對應
    的指紋數據集中無該指紋掃描儀。
     
    測試過程:圖 3.10為指紋活性檢測的工作流程圖,不論是訓練過程還是測試過程, 特征提取階段都是關鍵。測試過程中,特征向量提取前的操作與訓練過程相同。首先將 指紋圖像進行灰度化處理。然后,分別計算灰度指紋圖像的水平方向和垂直方向的兩個 差分矩陣。為了防止異常值和噪聲的干擾,使用本章提取的截斷操作法將其剔除掉。經 過上述幾個步驟的處理后,便可得到我們需要的差分矩陣。接下來使用公式 3.5-3.8,計 算出水平和垂直兩個差分矩陣的特征值。參照訓練過程里的特征值計算過程,每個指紋 圖像的特征向量feature均由32個特征值構成。當特征值提取完成之后,將其輸入到分 類器進行訓練。本章實驗中,支持向量機的核函數選用的是徑向基核函數久Radial Basis Function),為了防止特征值在低維空間中存在線性不可分的問題,首先將提取的特征映 射到高維空間中(^(feature),將訓練過程中學習的模型參數作為分類器,然后判斷待測 試圖像的劃分類別。若劃分的結果^(feature) + b> 1則待測的指紋圖像為真指紋; 反之,若是計算結果^(feature) + b <-1,則待測的指紋圖像為假指紋。最終使用 公式 3.34,便可測試模型分類器的性能。
    表 3.3 不同指紋數據集中各指紋傳感器對應的參數尋優值 (C, y )
    掃描儀名稱 不同指紋數據集中掃描儀參數的設定
    LivDet 2009 LivDet 2011 LivDet 2013
    Biometrika (512, 0.5) (4096, 4) (512, 8)
    Crossmatch (2048, 0.5) x (2048, 0.5)
    Italdata x (512, 8) (8192,8)
    Swipe x x (512, 8)
    Sagem x (2048, 0.5) x
    Identix (4096, 8) x x
    Digital x (4096, 8) x
     
    3.5.3結果與分析
    經過上面各個操作后,便可分別得到本章算法在指紋集上的平均分類錯誤率,如表 3.4-3.6。為了便于觀察不同指紋活性檢測算法的分類性能,本章將表3.4-3.6中單個分類 器最好的分類錯誤率和平均分類錯誤率均用黑色加粗顯示。在表3.4中,與其他的算法 比較可知,使用 Biometrika 指紋掃描儀采集的指紋圖像, Dermalog 等[59]方法的分類錯 誤率比我們的算法低0.85%左右。而對于Swipe指紋掃描儀采集的指紋圖像,Dermalog 等[59]方法比我們的要低7.15%。對于Italdata指紋采集器采集的指紋圖像,分類錯誤率 最低的是Anonym2提出的方法,他們的方法比我們的檢測結果要低3%。如表3.4所示, 本章算法在CrossMatch上的檢測結果是最好的,其比第二名Anonym1算法的結果低5.03% 左右,同時比 Dermalog 和 Anonym2 的算法低 11.03%和 10.44%。最理想的結果就是, 提出的指紋活性檢測算法能夠檢測出來自任意指紋掃描儀的圖像。因此,評估一個指紋 活性檢測算法的好壞,不應該是由單一的指紋掃描儀決定的,而是取決于它們的平均分 類錯誤率。因此,在表3.4中最后一列,本文給出了每個算法在四個不同指紋掃描儀上 的平均值,從中可以清楚的看到,相較于其他的幾個算法,本章提出算法的平均分類錯
    誤率更低一些,比第二名的結果低 0.06%。
    表3.4指紋集LivDet 2013上不同算法對應的分類錯誤率和ACE值
    算法名稱 平均分類錯誤率ACE in (%)
    Biometrika Crossmatch Italdata Swipe Average
    Our method 2.55 44.44 3.6 10.68 15.32
    Dermalog [59] 1.7 55.47 0.8 3.53 15.38
    Anonym1 [59] 2.0 49.47 1.15 N.A N.A
    ATVS [59] 5.05 54.8 50 46.45 39.08
    Anonym2 [59] 1.8 54.8 0.6 5.81 15.75
    UniNap2 [59] 6.55 52.13 9.45 26.85 23.75
    Anonym3 [59] 5.7 53.11 2.8 5.25 16.72
    HZ-JLW [59] 32.95 55.56 13.15 15.19 29.21
     
    同樣在表 3.5 中,每個指紋傳感器對應的最好結果都用黑色粗體進行了標注。不同 于表3.4中只有一個掃描儀CrossMatch的分類精度比其他的算法好,在表3.5中,單個 指紋傳感器下最低的分類精度主要分布在兩個算法中,一個是本章提出的算法,一個是 Ojala 等[71]提出的算法。通過對比本章提出的算法和 Ojala 的算法可知,本章的算法在 Italdata 和 Sagem 兩個指紋傳感器上的結果是最優的,且分別比第二名 Ojala 的算法低 7.55%和2.78%。Ojala等[71 ]提出的算法在Biometrika和Digital兩個數據集上是最好的, 其結果分別為10.8%和 7.1%,且比本章提取出的算法分別低5.2%和 1.2%。通過對上述 的結果我們可以做出一個假設,若是指紋圖像來自Biometrika和Digital兩個指紋傳感器, 則可以采用 Ojala 的算法;若是指紋圖像來自 Italdata 和 Sagem 兩個指紋傳感器,則采 用本章的算法。如在表3.4中所示,為了進一步評估哪一個算法更優,需要綜合考慮所 有的指紋掃描儀的平均分類錯誤率。因此在表3.5 最后一列,給出了每個算法在所有指 紋掃描儀上的平均分類錯誤率,本章提出的算法的總體性能要優于其它算法的性能。如 表3.5 所示,本章提出算法的平均分類錯誤率第二名的結果低0.95%。
    通過觀察表3.6中三個指紋掃描儀,由最后一列上四個指紋傳感器的平均分類結果 可知,本章提出的算法的分類錯誤率依然是最低的,且比第二名Wang等I73]提出算法的 結果低 0.28%。通過比較單個指紋傳感器的分類錯誤率可知,單個最好的結果分布在三 個算法中,即指紋傳感器Crossmatch對應的最好結果是本章提取的算法,Marasco等[74] 提出的算法在Biometrika指紋傳感器的分類錯誤率是最低,Wang等⑺]提出的IQA算法 在 Identix 指紋傳感器上的分類錯誤率是最低的。且其他兩個最好的結果分別比本章提 出算法的結果低 2.85%和 2.1%。而我們可以看到,本章提出的算法在 CrossMatch 指紋 傳感器結果比Marasco和Wang兩人提出算法分別低了 5.7%和10.2%。
     
    表 3.5 指紋集 LivDet 2011 上不同算法對應的分類錯誤率和 ACE 值
    算法名稱 平均分類錯誤率ACE in (%)
    Biometrika Digital Italata Sagem Average
    Our method 16 8.3 9.05 3.78 9.28
    Ojala [71] 10.8 7.1 16.6 6.4 10.23
    Original LBP [60] 13 10.8 24.1 11.5 14.85
    Power Spectrum [72] 30.6 27.1 42.8 31.5 33
    Dermalog [70] 20 36.1 21.8 13.8 22.93
    Federico [70] 40 8.9 40 13.4 25.57
    Curvelet GLCM [48] 22.9 18.3 30.7 28 24.98
    Walvelet Energy [72] 50.2 14 46.8 22 33.25
    Tan's method [70] 43.8 18.2 29.6 24.7 29.08
    Curvelet energy [48] 45.2 21.9 47.9 28.5 35.88
    Best Result in [70] 20 36.1 21.8 13.8 22.93
     
    表 3.6 指紋集 LivDet 2009 上不同算法對應的分類錯誤率和 ACE 值
    算法名稱
     
    3.6 本章小結
    為了防止氣象信息管理系統中指紋識別系統被偽造指紋的欺騙,本文首次將指紋活 性檢測技術應用到氣象信息管理系統中。真假指紋圖像具有相似的輪廓,而它們之前的 差異主要分布在那些肉眼觀察不到的細粒度紋理模式中。人造指紋雖然能夠很好地再現 指紋中大尺度的紋理結構,但很難復制那些肉眼觀測不到的細微的紋理信息。因此,為 了降低灰度共生矩陣特征的存儲開銷和學習小尺度的紋理特征,本章提出一種基于多方 向差分共生矩陣的指紋活性檢測算法。為了保證指紋圖像的尺度不變,在計算差分矩陣 前要對指紋圖像進行添加行或列操作。另外,受光照強度和噪聲的影響,差分矩陣中的 異常值會影響特征向量的構造。為此,本章提出一個截斷操作法來消除異常值的干擾。 接著,對每個方向的差分共生矩陣求出四個矩陣參數作為描述指紋圖像的特征描述符, 且每張圖像特征向量的維度都是32。最終,將歸一化后的特征用SVM分類器進行訓練 和測試。利用本章的方法,還開發了兩個支持指紋活性檢測的指紋識別系統。
    特征提取和特征選擇的好壞直接影響模型分類器的性能。因此,提取和選擇一些更 能區分真假指紋圖像的特征描述子仍是本文接下來研究的核心問題。此外,本章指紋活 性檢測算法的訓練和測試都是在同一個指紋掃描儀下進行的,同一類指紋圖像在不同掃 描儀訓練的模型分類器下的分類性能是否有差異,有待進一步的研究。最后,制作假指 紋的材料多種多樣,在實際應用中,分類器事先無法判斷假指紋材料的種類,所以設計 一個能夠抵抗不同材料攻擊的指紋活性檢測算法具有十分重要的研究意義。
    第四章 基于變換域特征提取的指紋活性檢測算法
    攻擊者可竊取合法用戶的指紋制作一枚高質量的仿制指紋,并通過氣象信息管理系 統中指紋識別系統的身份認證。因此,氣象信息管理系統在識別用戶身份前,首先需要 判斷待測指紋是一枚真實的指紋還是一枚偽造的指紋。將指紋活性檢測技術應用到氣象 信息管理系統的指紋認證系統中,能夠確保訪問氣象信息管理系統用戶身份的真實性。 空域中不同的圖像紋理分布在變換域中展現為不同頻率的能量分布,變換域中的頻譜分 布可以更好地展現不同紋理的分布情況,有助于挖掘空域中觀察不到的圖像紋理特性。 真指紋在脊線上的紋理變化較快,在頻域上表示為高頻分量;假指紋灰度變化相對緩慢, 在頻域上表示為低頻分量,而提取真假指紋間的顯著性差異是提高氣象信息管理系統中 指紋活性檢測性能的關鍵。因此,為了獲得真假指紋中細微的紋理差異,本章研究了兩 種基于變換域特征提取的指紋活性檢測算法。
    本章組織結構如下:4.1節是引言;4.2節介紹小波變換算法;4.3節介紹本章使用的 兩種特征提取算法;4.4節介紹本章的實驗結果和分析;最后對研究內容進行小結。
    4.1引言
    指紋圖像具有局部方向性,使得灰度變化也具有局部的規律性。如圖4.1(a)和2)所 示,真指紋圖像的邊界信息比假指紋圖像的邊界信息要豐富,所以真指紋的灰度變化更 大。頻譜圖可以反映圖像梯度的分布情況,梯度大則頻率高。如圖4.1(b)和(d)所示,可 觀察到頻率圖上有明顯的白色輪廓圖。兩者相比,真指紋的頻譜范圍分布更廣。目前大 多數指紋活性檢測算法都是直接在空域中提取圖像的紋理特征,如 Nikam 等[47]提出一 種利用灰度級獨立性方法來檢測指紋圖像的活性;隨后,Nikam等[48]又提出一個基于紋 理特征提取的指紋活性檢測方法; Gragnaniello 等[22]提出一種基于韋伯局部描述子的指 紋活性檢測算法;Jia等[50]提出了兩種基于多尺度LBP的指紋活性檢測算法,并得到不 錯的檢測效果;Dubey等[51 ]從多個角度提取了指紋圖像的紋理特征,包括底層紋理特征、 方向梯度直方圖特征、Gabor變換紋理特征;Kim等[43]指出假指紋的材料質地并不會特 別均勻,提出了基于局部連貫性描述子的指紋活性檢測算法。與空域相比,在變換域中 處理某些問題會更方便,如圖像經過頻譜變換之后,能把圖像變換成只包含不同頻率信 息的頻率域,原圖像中灰度值發生突變的部位、圖像結構復雜的區域、圖像細節等信息
     
    主要集中在高頻區,而灰度變化平緩部分的信息集中在低頻區。通常除少部分系數不為 零外,大部分系數都為零或接近零,這就更能凸出真假指紋的細節信息。因此,本章主 要研究變換域系數下的特征提取算法。
     
    圖4.1指紋圖和其傅里葉變換下的頻域圖,(a)假指紋圖像、(b)假指紋的頻域圖、(c)真指紋圖像、(d)
    真指紋的頻域圖
    4.2 小波變換簡介
    小波變換[45]的基本原理就是利用小波的多分辨率特性,將空間域的圖像分解成具有 不同分辨率、頻率和方向特性的子帶系數。小波變換包含兩個操作,即小波正變換和小 波逆變換。由于本章需要將空間域中相同的頻率信息分解到同一個系數中,然后再對同 頻系數進行特征提取。因此,本章只考慮小波分解過程,不考慮圖像重構部分。
    二維小波變換是在一維小波變換的基礎上擴展得到的。在二維空間小波變換中, 1
    個二維尺度函數(p(x,y)和3個二維小波函數是必不可少的,即(x,y), (x,y)和
    lffi(x,y),該基函數可表示為兩個一維小波函數的乘積,用數學公式可表示為,
    v(^,y) = v(^)v(y') (4.1)
    其余三個方向上可分離的小波函數分別記為,
    lffl(x,y) = T(x)(p(y') (4.2)
    lfy(x,y) = g) l^.y) (4.3)
    X!f)(x,y) = T(x) T(y) (4.4)
     
     
    在公式(4.2), (4.3)和(4.4)中,甲h,甲v和”d分別度量的是圖像像素沿著列方向的 變化趨勢(水平邊緣),行方向的變化趨勢(垂直邊緣)和對角線方向的變化趨勢。與 一維離散小波變換相似,二維離散小波分解也包括濾波和降采樣兩個過程。在一維小波 變換中,縮放和平移函數的集合記為{V]ik(x)lj,kEZ},父尺度函數g )可表示為,
    甲j,k(x) = 2]'/2^(2]'x - k) (4.5)
    公式(4.5 )中位移K決定了父尺度函數沿著x軸方向的位置,參數丿決定了它的形狀。 因此,將二維父小波尺度函數{甲j,k,i(x,y)\j'k」e Z}記為,
    y) = 22^{2]'x - k, 2]'y - l) (4.6)
    同理在一維小波變換中,將母小波函數記為{屮j,k(x)\j,k eZ},可表示為,
    當,k(x) = 2〃2 昭X - k)
     
    根據公式(4.7)可得二維下的母小波函數,將母小波函數記為{TjM(x,y)\j,k,l e Z},
    三個方向的細節系數用數學公式分別記為,
    弧igy) = 2〃2 爐(24 - k, 2iy - I) (4.8)
    艱(x,y) = 2〃2 0(2% - k, 2iy - 1) (4.9)
    藍k,i(x,y) = 2〃2 護(2% - k, 2® — 1) (4.10)
     
     
    將公式(4.8)-(4.10)整合后為{^j,k,i(x,y)H,k,l EZ,i E {D,V,H}}.為了計算尺度為“•” 時的四個系數,需得到尺度為'丁+1”時的近似系數。假設尺度為'丁+1”的近似系數用符號 幾。+ 1,k,l)表示,則尺度為“•”時的近似系數用閘曲)表示,相應的三個細節信息分 別表示為T^(j,k, I), T^(j,k, 1), T^(j,k,l).圖4.2為經過一級小波變換后得到的四個系 數,其中“*”表示卷積操作,“2 1 ”表示進行2倍降采樣,計算公式分別記為,
    T^(j,k,l) =Ln^m(I(x)h^(-n))h^(-m) (4.11)
    T ^(j,k,l) = ^n^m(I(x)h <f(-n))h(p(-m) (4.12)
    T ^(j,k,l) = ^n^m(I(x)hv(-n))h ^(-m) (4.13~)
    T(p(j,k,l) = ^n^m(I(x)hv(-n))h(p(-m) (4.14)
    圖4.3(f)中的藍色正方形為一級小波變換后的近似系數,其將作為下一個二級小波 分解的輸入。經過與一級小波分解同樣的操作后,便得到二級小波變換系數,如圖4.3(e), 其中藍色框內為經過二級小波分解后的三個分解系數。接著,將二級小波分解后的近似
    系數LL2作為下一級小波變換的輸入,可得更高階的小波變換系數。
     
    圖4.3小波變換示例圖,(a)指紋圖、(b)二維矩陣圖、(c)一級行正變換、(d)二級小波變換圖、(e)二級
    行、列變換圖、⑴一級小波變換圖
    4.3 特征提取
    空域圖像中的每個像元都有一個特定的頻率和振幅,為了將不同頻率的信號進行聚
    類,并在不同頻率域中分析和提取圖像的紋理特征,本章將小波變換引入到指紋活性檢 測中。經過一級小波變換后,便可將圖像的紋理信息分解到四個不同方向的頻率系數上。 然后,對不同方向的頻域系數進行分析,并設計了兩種變換域系數下的特征提取算法, 即 WT-LBP(Wavelet Transform Local Binary Pattern), WT-MoDCM(Wavelet Transform Multi-order Difference Co-occurrence Matrix),接下來將詳細介紹這兩種特征提取過程。
    4.3.1 局部二值模式
    芬蘭奧盧大學的T. Ojala等[71]在1996年首次提出了局部二值模式(LBP, Local Binary Pattern)的方法,它是一種有效的用來描述圖像局部紋理信息的特征描述子,具有旋轉 和灰度不變性等特征。LBP原理就是先定義一個固定尺度的模板,然后讓其在圖像中有 序滑動。在滑動窗口中,將模板的中心值設為閾值,然后與鄰近的像素進行比較,可得 一系列二進制比特,接下來再對其編碼,便可得到一個新值,并將其賦值給窗口的中心 像素。圖4.4為一個3x3滑動窗口計算單個LBP值的示意圖。
     
    指紋圖像/記為/(x,y)。在計算LBP之前,首先選擇模板的尺度,本節滑動模板w的 大小為3x3。模板w在圖像/上滑動時,滑動區域的中心像素坐標記為(xc,yc).局部二值 變換前的像素為1(忑,%),經過變換后的像素變為LBP(xc,yc)o表達式為,
    LBP(xc,yc) = Yl7=o2is(wi,wc)
     
    其中,為窗口的中心像素值,叫是中心像素%周圍鄰近的像素值,sf^W.Wc)是符 號函數,其計算規則如式(4.16)所示,z為叱和Wc的灰度值。i為模板中心Wc周圍鄰近的 個數,因為模板的大小為3x3,所以i的值為8。
    s⑵=(0,
    以圖4.4為例,提取圖像LBP特征的詳細步驟如下:
     
    圖4.5原始指紋和局部二值模式圖,(a)-(b)假指紋圖、(c)-(d)真指紋圖、(e)-(f)假指紋(a)和(b)對應 的局部二值模式圖、(g)-(h)真指紋(c)-(d)對應的局部二值模式圖
    1)對圖像進行預處理操作;
    2)模板選擇和比較。選用一個大小為NxN (N為大于1的整數,以3x3大小的模板 為例)的模板。將圖像最左上角的像素位置作為模板滑動的起點,接下來,以當前模板 的中心像素為閾值,按照公式(4.15)和(4.16),與其鄰近8個像素逐一比較;
    3)編碼計算。經過比較,可產生8位由“0”和“1”組成的二進制序列,然后以模板左 上角位置為起點,對其進行編碼。圖4.4經過閾值和二值化處理后,可得8位二進制的序 列:0101 1100。接下來,利用公式(4.15)計算得LBP(A)=92;
    4)賦值。編碼完成后,便得到一個十進制的無符號數,并將其替換掉模板中心位 置的像素,即將100替換成92;
    5)判斷。在圖像上滑動模板(模板按照從左至右、從上至下、逐像素的規則進行 移動),然后重復步驟1, 2, 3和4,直至移動到最右下角的位置處,停止計算;
    6)分塊并計算直方圖。將經過LBP處理后的圖像進行分塊,然后計算每個圖像塊
    的直方圖,本章將處理后的圖像分成16x16=256塊;
    7)特征向量構建。經過上述的6個步驟操作后,將計算的直方圖進行拼接便可得 樣本的特征向量。另外,為了使每塊的特征值貢獻度相同,對特征值進行歸一化處理;
    為了觀察變化前后的圖像,分別對LBP變換前后的真假指紋圖像進行了可視化。如 圖4.5所示。圖4.5(a)和卩)均為假指紋,圖4.5(c)和(d)均為真指紋。從圖像質量角度講, 因為制作假指紋的材料是有機分子,在制作時易凝結成塊和產生氣泡,如圖4.5(a)和(b) 紅色正方形所示,所以假指紋圖像的質量比真指紋圖像的質量差。而真指紋中脊線紋路 清晰且不存在殘缺、氣泡等現象。圖4.5(e)和山)表示指紋經過局部二值模式后的可視化 圖,可以看出,假指紋的局部二值化圖依然有殘缺和不完整。
    4.3.2 多階差分共生矩陣
    經過小波變換之后的圖像,相同頻率和振幅的像素系數被分解到同一個系數矩陣中, 接下來,在變換域系數中進行特征提取。指紋圖像是由交替相間的脊線和谷線構成的, 如圖4.6(a)所示。在圖4.6(b)紅色框中,相鄰兩個紋理不同,所以對應的特征也不同。但 移動方框后,不同的紋理圖案可能會有相同的特征,如圖4.6(c)綠色框。為此,本節又 提出了一種基于多階差分共生矩陣的特征提取算法,即統計相鄰三個或四個元組作為該 局部區域的紋理特征。另外,不同于絕大多數的灰度共生矩陣方法,它們需要計算差分 矩陣的特征值量作為圖像的特征向量[65, 68]。本節直接將多階灰度矩陣的值作為特征。由 于本章多階差分共生矩陣的特征提取算法是通過對上一章算法的改進而實現的,因此前 兩個操作步驟與差分共生矩陣的特征提取過程相同,本節將重點研究多階差分共生矩陣
    的特征提取。關于特征提取的具體步驟如下,
     
    1)預處理
    首先將多通道的指紋圖像樣本轉化成單通道的灰度指紋圖像。
     
    2)量化和截斷
    用公式(3.1)對預處理后的圖像進行量化操作,量化因子記為Q。接著,計算圖像的 梯度。為了保證差分矩陣的大小和原始圖像的一樣,需執行添加行或列操作。最后,便 可得到水平和垂直兩個方向上的差分矩陣。
    為了防止矩陣中異常值干擾特征的計算,對生成的矩陣做截斷操作。截斷操作后, 就是最終的差分矩陣,接下來根據構建的差分矩陣計算指紋圖像的特征。
    3)提取多階差分共生矩陣的特征
    不同于共生矩陣的特征計算方法,本節統計水平和垂直差分矩陣中相鄰兩個、三個 和四個元組的差分共生矩陣的直方圖,并將歸一化后的直方圖拼接作為圖像的特征。設 指紋圖像I的大小為 MxN,二階差分矩陣記為SDCM( Second-Order Difference Co-occurrence Matrix),計算公式為,
    SDCMH(s,t) = l=1l^-3^(DH(i,j),s) x 0(DH(i,j),t)
    SDCMv(s,t) = l^=31^0(Dv(i,j),s) x 0(Dv(i,j),t)
    在公式(4.17)中,符號“〃”代表水平方向,符號“廠代表垂直方向。SDCMh記為水平 方向的二階差分共生矩陣,SDCMv為垂直方向的二階差分共生矩陣。因為計算的二階差 分共生矩陣是在截斷操作之后得到的,因而s和t的取值與截斷因子T相關,且s,tE (-T.T)。符號DH(i,j)表示坐標為Q,j)時,其對應的水平差分矩陣下的像素,符號Dv(i,j) 表示坐標為(ij)時,其對應的垂直差分矩陣下的像素。字母符號0()表示符號函數,用 數學表達式記為,
     
    三階差分共生矩陣是指共生矩陣中相鄰三個元組重復出現頻率,三階差分共生矩陣
    可記為 Third-Order Difference Co-occurrence Matrix ( TDCM),其計算公式為,
    rTDCMH(s,t,u) = l^-1lI;-40(DH(i,j),s) x 0(DH(i,j + 1),t)
    < x 0(DH(i,j + 2),u)
    TDCMv(s, t, u) = ^^=4 罵—0(Dv(i,j), s) x 0(Dv(i + 1,j), t) ( . )
    { x 0(Dv(i + 2,j),u)
    在公式(4.19)中,增添了一個參數“u”,TDCMh記為水平方向的三階差分共生矩陣,
    TDCMV記為垂直方向的三階差分共生矩陣。同樣,參數5, t和u的取值與截斷因子T相
    關,且它們的取值范圍為S,t,ue (-T,T).
    四階差分共生矩陣(FDCM, Fourth-Order Difference Co-occurrence Matrix)的公式為,
    <FDCMH(s,t,u,v) = Il=1Il^-50(DH(i,j),s) x 0(DH(i,j + 1),t)
    < x 0(DH(i,j + 2), u) x 0(DH(i,j + 3), v) 2Q.
    FDCMv(s, t, u, v) = ^l=-5 罵—0(Dv(i,j), s) x 0(Dy(i + 1,j), t)( ' )
    { x 0(Dv(i + 2,j), u) x 0(Dv(i + 3,j), v)
    在公式(4.20)中,FDCMh表示水平方向上的四階差分共生矩陣,FDCMV表示垂直方 向上的四階差分共生矩陣。且參數5, t, u和v的取值與截斷因子T相關,其取值范圍為 s, t, u, v E (—T,T)。
    因為在訓練過程中,核函數中會產生大量的內積運算,而不平衡的數據會增加計算 的復雜度,為防止矩陣中異常值的干擾,對不同階數矩陣中的元素進行歸一化處理。歸 一化操作可避免產生不平衡的數據,即數據集中某個元素過大或過小,使得訓練得到的 模型分類器的泛化性能較差。二階差分共生矩陣的歸一化計算公式如下,
    SDCMh(s, t)
    Y^=-T^^=-TSDCMH(s,t)
    SD CMv(s, t)
    l=_T》:=_TSDCMv(s,t)
    在公式(4.21)中,等號左邊的SDCMH(s,t)和SDCMy(s,t)分別為二階差分共生矩陣經 過歸一化處理后水平方向和垂直方向上的兩個差分共生矩陣,右邊兩個式子的分母表示 未經過歸一化操作前,水平和垂直方向上兩個差分共生矩陣中元素的和。
    同理,我們可以分別推導出在TDCM和FDCM下,它們歸一化操作的計算公式分 別如下,其中參數的含義與SDCM中的相類似,
     
     
     
     
    FDCM^(s,t,u,v~)
    ^=_T^=_tT^=_t^=_tFDCMh (s, t,u,v)
    FDCMy(s,t,u,v~)
    ^s=_T^t=_T^u=_T^v=_T^^^^V(s,^>u,v')
    上述三個公式,參數的取值范圍均為(-T, T)。通過分析可知SDCM元素的個數為:
    C (2T+1x C (2T+1= (2T + 1)2,可得水平和垂直兩個方向上SDCM中元素的總個數為:
    55
    2x(2T + 1)2。同理,可以推出TDCM中元素的總數記為:2 x C12T+1) x C12T+1) x C(2T+1) = 2x(2T + 1)3。FDCM 中元素的總數計算公式為:2 x C12T+1) x C12T+1) x C^T+1) x C^T+1) = 2x(2T + 1)4o特征向量的數量僅取決于截斷因子T,且隨T增加, 特征的數量也會不斷增加。
    為了觀察一級小波變換后低頻系數構建的差分矩陣中梯度的分布圖情況,本文給出 了不同量化因子Q在水平和垂直差分共生矩陣中對應梯度的分布圖,如圖(4.7)所示。可 以看出,大多數梯度的分布都是以0為對稱軸,均勻的分布在兩側。隨著量化因子Q的 增加,差分矩陣中梯度分布范圍變得越來越小,且矩陣中大多數元素都分布在截斷因子 較小的區域內。為了保留更多的有效信息,同時降低特征向量的維度,利用截斷操作對 梯度值進行截取操作。根據上述知道差分矩陣中元素的個數取決于截斷因子To因此, 可知2 x (2T + 1)2, 2x(2T + 1)3和2 x (2T + 1)4特征的數量隨截斷因子T而改變。
     
    (d) (e) (f)
    圖 4.7 差分共生矩陣中梯度的分布圖(紅色表示水平差分共生矩陣,藍色表示垂直差分共生矩陣,
    4, 特征值拼接 根據上述三個不同階差分共生矩陣的描述,利用公式(4.21), (4.22)和(4.23)分別計算 出SDCM、TDCM和FDCM。接下來直接將兩個方向上的元素作為指紋矩陣的特征, 將兩個矩陣中的元素分別轉化成列向量并拼接起來,作為最終的特征,最后,將其輸入 到分類器中進行訓練和測試。
    4.4 實驗結果與分析
    首先將指紋圖像由空域轉化到頻率域,經過頻域變換,便能將相同頻率的像素分解 到一起。接下來,為了驗證空域中的紋理特征提取算法同樣適用于變換域,又對變換域 系數進行了特征提取。本節采用了兩種紋理特征提取算法:一種是傳統的基于局部二值 模式的特征提取算法;另一種是新提出基于多階差分共生矩陣的紋理特征提取算法。在 局部二值模式紋理特征提取中,分析了不同變換系數組合下對指紋活性檢測算法性能的 影響。在提出的基于多階差分共生矩陣的紋理特征提取算法中,除了對第三章中量化因 子Q和截斷因子T兩個參數進行了多組對比實驗,分析了不同Q和T對最終檢測性能 的影響,還對傳統的灰度共生矩陣的特征提取算法進行了改進,提出了多階差分共生矩 陣的紋理特征提取算法。最后,將上述兩個算法提取的特征分別輸入到SVM進行訓練 和測試。多組對比實驗結果顯示,空間域中的紋理特征提取算法,同樣的適用于變換域 中。同時,新提出的特征提取算法能夠取得比其他算法較高的檢測性能。
    表 4.1 LivDet 2011 和 LivDet 2013 指紋集中的圖像分布圖
    指紋掃描儀 訓練集樣本數 測試集樣本數 制作假指紋的材料
    真指紋 假指紋 真指紋 假指紋
    Biometrika-11 1000 1000 1000 1000 EcoFlex, Gelatin, Latex, Silgum, WoodGlue
    Digital-11 1004 1000 1000 1000 Gelatin, Latex, Playdoh, Silicone, WoodGlue
    Italdata-11 1000 1000 1000 1000 EcoFlex, Gelatin, Latex, Silgum, WoodGlue
    Sagem-11 1008 1008 1000 1036 Gelatin, Latex, Playdoh, Silicone, WoodGlue
    Biometrika-13 1000 1000 1000 1000 EcoFlex, Gelatin, Latex, Modasil, WoodGlue
    CrossMatch-13 1250 1000 1250 1000 BodyDouble, Latex, Playdoh, WoodGlue
    Italdata-13 1000 1000 1000 1000 EcoFlex, Gelatin, Latex, Modasil, WoodGlue
    Swipe-13 1221 979 1153 1000 BodyDouble, Latex, Playdoh, WoodGlue
     
    4.4.1 指紋數據集
    本章提出的算法分別在 LivDet 2011 和 LivDet 2013 指紋集上進行了驗證,并進行多 組對比實驗,關于這兩個指紋集的詳細信息見表 4.1。這兩個指紋集均使用四個不同的 掃描儀來采集指紋圖像,其中真指紋圖像來自多個不同真實用戶的手指。在這兩個指紋 
    集中,為了制作一些質量較高的假指紋,大部分的假指紋圖像都是使用一些常見的材料 (如 EcoFlex, Gelatin, Latex, BodyDouble, Silgum 和 WoodGlue 等)來制作的。這兩 個指紋集被分成訓練集和測試集兩個部分,其中訓練集用于訓練一個模型分類器,測試 集用來驗證訓練分類器的性能,且它們都被分成兩個互不相交部分。
    4.4.2LIBSVM
    對構建好的特征,本文采用支持向量機[86]對特征進行模型訓練。LIBSVM是基于支 持向量機實現的一個開源庫,它是由國立臺灣大學林智仁(Chih-Jen Lin )教授在2001 開發的一套用于目標分類、回歸和分布估計的集成軟件包,LIBSVM庫可以從 https://www.csie.ntu.edu.tw/~cjlin/網站上免費下載。該工具箱不但提供了編譯好且可在 Windows系統直接運行的可執行文件(根據要求,將待處理的數據格式轉化成LIBSVM 所需的數據格式,并使用軟件包中編譯好的可執行文件svmtrain.exe對訓練樣本進行訓練; 使用軟件包中自帶的可執行文件svmpredict.exe和測試集樣本,可對已訓練好的模型分類 器進行預測;若是需要對訓練集或測試集的數據進行縮放操作,則直接使用軟件包中的 可執行文件svmscale.exe)o關于核函數,本文選用RBF (Radial Basis Function) o 一方面, RBF能夠將低維樣本映射到高維空間中[76, 77],使得在低維空間中線性不可分的樣本,通 過映射到高維空間,并在高維空間中尋找一個超平面,從而實現線性可分。另一方面, RBF有很少的數值困難。綜上所述,RBF是個不錯的選擇,LIBSVM中RBF的計算公式 為:K(x,y) = exp~r^x~y^2,其中x,y表示樣本或者向量,y表示超參數,是RBF中唯一 需要定義的超參數,||x-y||表示向量的模。
    4.4.3 評估準則與參數
    關于指紋活性檢測算法性能的評估,本章采用Yambay等[70]和Ghiani等[59啲方法,且 評估準則的計算取決于以下兩個參量:
    一FerrLive: FerrLive為真指紋圖像被誤判為假指紋圖像的概率;
    一FerrFake: FerrFake表示為假指紋圖像被誤判為真指紋圖像的概率;
    一Average Classification Error (ACE):指紋活性檢測系統的總體性能指標是基于判斷平 均分類錯誤率,其計算公式如下所示,
    FerrLive+FerrFake
    Ack =
    當特征提取完后,用參數尋優法搜尋最好的(C, 丫)。圖4.8列出指紋集LivDet 2013 使用LIBSVM軟件包中grid函數尋找的最優參數。在圖4.8(a)(b)(c)和(d)中,圖例上均標注 了精度最高時對應的參數(C, 丫)。在訓練樣本時,只需將相應的參數(C, 丫)設置為相 應的參數值即可。如圖4.8(a))所示,當參數(C, 丫)為(8182, 0.5)時,其對應的訓練模 型的泛化性能最好。模型分類器的訓練是在Windows操作系統中,使用DOS命令執行完 成的。另外,對于訓練好的模型分類器,若以后還使用,則可使用training_model_classifier 將其保存下來。當模型分類器訓練完成之后,則需使用測試集對訓練好的模型分類器進 行測試和預測。若需將測試的結果保存下在,則使用LIBSVM中的指令o utput_file即可。
    Biometrtka77_2Ol3.tram
    CrossMat ch77_2O13 tram
    0
    0
    5
    15
    Best lo^(C) = 13 lo^(gamma)= -1 accuracy = 99 8% Cs8192 gamma = 0.5
    99 5
    99
    88 5
    98
    97 5
    97
    -14
    -10
    Iog2( gamma)
    lo^( gamma)
    2
    10
    15
    lojR(C)
    (b)
    Best lo^(C)s 15 Iog2(gamma)31 accuracy = 999556%
    C s 32768 gamma = 2
    99 5
    99
    98 5
    98
    97 5
    97
    W(c)
    (a)
    naldala77j2013.train
    ^lpe77 _2O13 tran
    -14
    0
    10
    15
    lojR(C)
    (C)
    Best log2(C) = 13 ioggamma) = -1 accuracy = 99 95%
    C = 8192 gamma = 0.5
    98
    975
    97
    -14
    •e
    lo^( gamma)
    lo^(gamma)
    0
    5
    15
    1002(C)
    (d)
    99 5 Best log2(C) = 15 Iog2(garrma)= -1 accuracy = 98 5909%
    C = 32768 gamma = 0 5 98 5
    965
    98
    975
    97
    96 5
    96
    圖4.8 LivDet 2013數據集中不同指紋傳感器的參數尋優圖,(a)Biometrika傳感器、⑹CrossMatch 傳感器、(c)Italdata傳感器、(d)Swipe傳感器
    4.4.4 結果與分析
    A.局部二值模式的實驗結果和分析
    首先將指紋圖像進行灰度化處理,并將其縮放到大小為256x256的圖像。指紋圖像
    經過一級小波分解后,便可得到四個不同細節系數,即近似系數、水平方向的細節系數、
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    垂直方向上的細節系數和對角線方向的細節系數。分解后的四個細節系數的大小為原始 指紋圖像的一半,均為128x128。接下來,為了驗證空域紋理特征提取算法同樣的適用 于變換域中,對小波分解后的系數分別進行特征提取。為了驗證四個系數厶厶,HL, LH 和HH哪一個系數紋理特征的組合更能表示原始的指紋圖像,本文進行了四組系數對比 實驗,分別為厶厶 + HL + LH, LL + HL + HH, LL + LH + HH和H + HL + LH + HH。然 后使用公式(4.15)(4.16)分別提取出每個系數的紋理特征。因為每個經過局部二值模式操 作后的像素會是(20,28)中的其中任何一個值,將每塊構造成一個詞袋包,統計落到每 個包中的概率,便可得一個256維的向量,將所有塊的特征向量串聯到一起,作為最終 的特征。最后,使用LIBSVM軟件包對訓練集樣本進行訓練,關于兩個指紋數據集LivDet 2011和LivDet 2013,訓練模型參數(C, 丫)的設置可參見表4.2。
    表4.2不同指紋數據集中各指紋傳感器對應的參數尋優值(C, 丫)
    傳感器名稱 最優參數(C, 丫)的選擇
    LivDet 2011 LivDet 2013
    Biometrika (4096, 0.5) (8192, 0.5)
    Crossmatch X (32768, 2)
    Italdata (512, 8) (8192,0.5)
    Swipe X (32768, 0.5)
    Sagem (32768, 0.5) X
    Digital (2048, 8) X
     
     
     
    圖 4.9 變換域下不同系數組合的分類錯誤率, (a)LivDet 2011 指紋集、 (b)LivDet 2013 指紋集
     
    圖4.9分別顯示在LivDet 2011和LivDet 2013兩個指紋數據集下,四組不同系數組合 的指紋活性檢測的分類錯誤率。在圖4.9(a)中,系數組合為LL + HL+LH的錯誤率比較 低,其錯誤率為7.85%。因此,在實際使用中,若是知道指紋掃描儀的類型為Biometrika, 可考慮采用系數組合為LL + HL + L H的算法。另外,當指紋掃描儀為Sagem時,系數組
    合為LL + HL + HH的錯誤率異常的大。因此,若是知道掃描儀為Sagem時,還是用系數 為LL + HL + HH的組合,則攻擊者將會以很高的概率逃避指紋掃描儀的檢測。如圖
    4.9(a)(b)所示,整體上來說,選用四個系數特征組合的指紋活性檢測的性能明顯優于其 他的幾個組合。對于圖4.9(b)中CrossMatch指紋掃描儀,錯誤率異常的高。分析原因可能 是由指紋圖像自身原因引起的,通過與現有的對比,發現其他算法[59,70]中也存在相類似 的問題,即測試CrossMatch掃描儀的圖像時,錯誤率會非常的高。
    表4.3 LivDet 2011指紋集中不同算法對應的分類錯誤率和ACE值
    算法名稱 平均分類錯誤率ACE in (%)
    Biometrika Digital Italdata Sagem Average
    Our method 8.2 7.2 11.85 7.86 8.78
    Original LBP [46] 13 10.8 24.1 11.5 14.85
    Power Spectrum [72] 30.6 27.1 42.8 31.5 33
    Dermalog [70] 20 36.1 21.8 13.8 22.93
    Federico [70] 40 8.9 40 13.4 25.57
    LPB PCA SVM [78] 8.2 3.85 23.68 5.56 10.32
    Jia's method [80] 10 7.1 16.3 6.1 9.95
    OCSNE [79] 3.2 33.6 15.2 16.1 17.025
    Curvelet energy [70] 45.2 21.9 47.9 28.5 35.88
    Best Result in [70] 20 36.1 21.8 13.8 22.93
     
    表4.3為本節提出的算法在指紋集LivDet 2011上的測試結果,盡管在單個指紋掃描
    儀(如Biometrika、Digita 1和Sagem)不是最優的,但本節提算法的平均分類錯誤率是最 低的,且比第二名的測試結果高1.17%。通過與第二名Jia[80]的算法相比,在Digita 1指紋 掃描儀上的檢測錯誤率相接近。在實際中,因為某些不可抗拒因素,如自身手指干燥、 潮濕、掃描儀存在靈敏性誤差等因素, 0.1%的錯誤率誤差是可容忍的。同時,本節提出
    的算法在Biometrika指紋掃描錯誤率比Jia的要低1.8%。
    表4.4 LivDet 2013指紋集中不同算法對應的分類錯誤率和ACE值
    平均分類錯誤率 ACE in (%)
    算法名稱 Biometrika Crossmatch Italdata Swipe Average
    Our method 1.8 48 1.8 8 14.9
    Frassetto1[83] 4.55 5.2 47.65 5.97 15.84
    Frassetto2 [83] 25.65 49.87 55.45 4.02 33.75
    ATVS[41] 5.05 54.8 50 46.45 39.08
    UniNap2[41] 6.55 52.13 9.45 26.85 23.75
    Anonym3[41] 5.7 53.11 2.8 5.25 16.72
    HZ-JLW[41] 32.95 55.56 13.15 15.19 29.21
    同樣在表4.4中,關于本節提出的算法在指紋數據集LivDet 2013上的實驗結果。觀 察可得,除了平均分類錯誤率優于其他算法,本節提出的算法能同時在Biometrika和 Italdata兩個指紋掃描儀上取得最優的結果。其中關于Italdata指紋掃描儀的結果,使用本 節提出的算法能夠將錯誤率降到2%一下,而其他最好的算法都無法達到。本節提出的 算法比第二名Frassetto1[83]的測試結果高出0.94%。通過對比,本文提出的算法在 CrossMatch和Swipe兩個單獨掃描儀上的性能要弱一些,如何進一步降低算法的分類錯 誤率,是本節接下來研究的一個重點。
    B.多階差分共生矩陣的實驗結果和分析
    關于多階差分共生矩陣的特征提取過程具體如下:首先將指紋樣本圖像進行灰度化 處理,將多通道的指紋圖像轉化成單通道的指紋圖像。然后對其執行一級小波變換,將 指紋圖像從空間域轉換到頻率域,同時得到尺度相同的四個系數矩陣,即低頻的近似系 數和三個垂直、水平和對角方向的高頻系數。然后分別對四個系數矩陣執行差分和截斷 操作,便得到最終的差分共生矩陣。接下來分別提取SDCM、TDCM和FDCM的特征, 由于提取的特征向量的維度僅與截斷因子T相關,因此本節直接將其作為指紋樣本的特 征,將四個不同系數矩陣下的特征值拼接到一起,作為樣本最終的特征向量。最后,將 特征向量輸入到支持向量機中進行訓練和測試。
    表4.5 LivDet 2013指紋集中二階差分共生矩陣(C, 丫)對應的最優參數
    (T, Q)參數對 SVM中最優的參數對(C, y)
    Bimometrika CrossMatch Italata Swipe
    (5,1) (512,8) (2048,2) (1024,0.5) (16384,2)
    (5,2) (8192,2) (512,8) (2048,0.5) (8192,2)
    (5,4) (512,0.5) (512,8) (4096,0.5) (8192,0.5)
    (10,8) (512,0.5) (4096,8) (4096,0.5) (8192,2)
    (10,16) (4096,0.5) (512,0.5) (8192,0.5) (4096,2)
    (4,32) (512,0.5) (2048,0.5) (4096,2) (2048,2)
     
    本節將以指紋集LivDet 2013為例,進行多組(T, Q)參數不同下的對比實驗。表4.5 給出了本節在計算二階差分共生矩陣實驗時,對于不同的量化因子Q和截斷因子T時寸,指 紋掃描儀分別對應的最優參數對(C, y)。關于參數T的選擇,可參考圖4.7。圖4.7表示量 化因子和截斷因子的關系圖。從中可以看到,閾值主要集中在以零為中心的很小的范圍 內。因此,本節隨機選擇幾個較小的T作為分割閾值。本節中,量化因子Q的選擇滿足 Q = 2l,i E {0,1,2,3,4,5}o
    在表4.6和4.7中,分別給出了本節在計算三階差分共生矩陣和四階差分共生矩陣時,
    對于不同的量化因子0和截斷因子T,四個指紋掃描儀分別對應的最優參數對(C, Y)。為 了分析量化因子0對最終指紋活性檢測性能的影響,將截斷因子T進行固定,分別驗證當 0取不同值時的變化情況。
    表4.6 LivDet 2013指紋集中三階差分共生矩陣(C, 丫)對應的最優參數
    (T,Q )參數對 SVM中最優的參數對(C, Y)
    Bimometrika CrossMatch Italata Swipe
    (3,1) (16384,0.5) (8192,8) (4096,0.5) (32768,0.5)
    (3,2) (512,0.5) (2048,2) (2048,0.5) (32768,2)
    (3,4) (512,0.5) (1024,8) (512,0.5) (65536,2)
    (3,8) (4096,8) (512,0.5) (512,0.5) (512,8)
    (3,16) (512,0.5) (512,0.5) (1024,0.5) (4096,0.5)
    (3,32) (2048,0.5) (1024,0.5) (32768,0.5) (32768,0.5)
     
    表4.7 LivDet 2013指紋集中四階差分共生矩陣(C, 丫)對應的最優參數
    (T,Q )參數對 SVM中最優的參數對(C, Y)
    Bimometrika CrossMatch Italata Swipe
     
    (2,1) (16384,2) (8192,2) (512,0.5) (8192,2)
    (2,2) (4096,0.5) (1024,2) (1024,0.5) (4096,2)
    (2,4) (4096,0.5) (2048,2) (1024,0.5) (8192,2)
    (2,8) (8192,2) (1024,8) (4096,0.5) (32768,0.5)
    (2,16) (512,0.5) (512,0.5) (1024,0.5) (262144,0.5)
    (2,32) (16384,0.5) (1024,0.5) (10324,0.5) (65536,0.5)
     
    表4.8 LivDet 2013指紋集中二階差分共生矩陣不同參數(T, Q)對應的精度
    不同掃描儀下的分類正確率和平均分類錯誤率
    (I ,V)^^A^ Bimometrika CrossMatch Italata Swipe Average
    (5,1) 91.85 44.4 94.65 91.08 19.5
    (5,2) 92.3 44.4 95.25 90.06 19.49
    (5,4) 93.3 44.98 95.6 90.57 18.88
    (10,8) 96.65 47.11 97.25 90.66 17.08
    (10,16) 95.35 52.18 95.8 90.62 16.51
    (4,32) 95.2 75.02 97.35 93.17 9.81
     
    表4.8, 4.9和4.10分別是表4.5, 4.6和4.7對應的最優參數對(C, 丫)下的測試結果。為了 方便讀者閱讀,本文將單個掃描儀分類精度最高的用黑色粗體進行標記,同時,四個指 紋掃描儀的平均錯分率也標注出來。通過觀察可知,階數越大的差分共生矩陣,其對應 的平均錯分率越低。如表4.8所示,四個指紋掃描儀在量化因子和截斷因子(T, 0)為(4, 32)時,其對應的分類錯誤率為9.81%。在表4.9里,最低分類錯誤率為8.63%,此時對 應的量化因子和截斷因子(T, 0)的參數為(3, 32)。而在表4.10中,當量化因子和截斷
    因子(T, Q)為(2, 8)時,其對應的平均分類錯誤率最低,為7.59%o此外,平均分類 錯誤率越低的參數(T, Q),其單個指紋掃描儀對應的分類正確率相對較高。相對來說, 當截斷因子T取相同值時,單個指紋掃描儀的分類精度會隨著量化因子Q的增加而變大。
    表4.9 LivDet 2013指紋集中三階差分共生矩陣不同參數(T, Q)對應的精度
    (T, Q)參數對 不同掃描儀下的分類正確率和平均分類錯誤率
    Bimometrika CrossMatch Italata Swipe Average
    (3,1) 93.25 44.35 96.75 91.68 18.23
    (3,2) 94.15 44.53 97.15 97.15 18.29
    (3,4) 94.7 44.58 97.2 91.6 17.98
    (3,8) 96.05 45.86 96.8 95.7 16.73
    (3,16) 96.6 56.18 96.3 91.27 14.91
    (3,32) 97.65 76.13 9&2 93.5 8.63
     
    表4.10 LivDet 2013指紋集中四階差分共生矩陣不同參數(T, Q)對應的精度
    不同掃描儀下的分類正確率和平均分類錯誤率
    (i,《丿參數對 Bimometrika CrossMatch Italata Swipe Average
    (2,1) 95.75 44.22 97.55 91.5 17.76
    (2,2) 96.75 44.4 97.9 91.72 17.3
    (2,4) 94.65 44.71 97.55 91.72 17.85
    (2,8) 96.45 79.16 97.65 94.75 7.59
    (2,16) 95.4 58.4 96.25 91.88 14.52
    (2,32) 97.05 79.16 97.8 92.01 8.09
     
    表4.11 LivDet 2013指紋集中不同算法對應的分類錯誤率和ACE值
    算法名稱 平均分類錯誤率迥俎(%)
    Bimometrika CrossMatch Italata Swipe Average
    Our best method 3.55 20.84 2.35 5.25 7.59
    LPB PCA SVM [78] 25.65 49.87 55.45 4.02 33.75
    Best in [59] 4.7 31.2 3.5 14.07 13.53
    HIG [53] 3.9 28.76 1.7 14.4 12.19
    HIG DBPac [53] 3.9 28.76 8.3 14.4 13.84
    Anonym3 [59] 5.7 53.11 2.8 5.25 16.72
    UniNap2 [59] 6.55 52.13 9.45 26.85 23.75
    HZ-JLW [59] 32.95 55.56 13.15 15.19 29.21
     
    表4.11為本節提出的算法在指紋集LivDet 2013上的測試結果,且最優結果均用黑色 粗體進行標注。從中可得,不同于本章提出的基于LBP的特征提取算法,其在指紋掃描 儀CrossMatch (表4.4)上不是最優的,而本節提出的算法在CrossMatch指紋掃描儀的檢 測性能明顯更好,且高出27.16%o因此若已知指紋掃描儀為CrossMatch時,使用本節方 法能進一步提升鑒別真假指紋的性能。本節提出算法的性能是最好的,且比排名第二的 HIG[53]算法低4.6%。同樣,與第二名的結果對比可知,本節提出的算法除了在Italdata指 紋掃描以上表現較弱外,其余檢測性能均高于Gottschlich[53 ]提出的算法。
    除了在指紋集LivDet 2013上驗證了本節提出的算法,本文還在指紋集LivDet 2011 上進行了驗證,結果如表4.12。在表4.12中,最好的檢測結果同樣用黑色實體進行標注。 觀察可得,除了在平均分類錯誤率上整體優于其他人的算法,在單個指紋掃描儀(如 Biometrika和Italdata)同樣取得最好的性能,分別比第二名[78]低6.95%和2.89%,且本文 提出算法首次將Italdata指紋掃描儀的分類精度降到3%以下。
    表4.12在指紋集LivDet 2011上,不同算法對應的分類錯誤率和ACE值
    算法名稱 平均分類錯誤率ACE in (%)
    Bimometrika Digital Italata Sagem Average
    Our best method 2.95 11.6 2.2 7.99 6.185
    MLBP [50] 7.3 2.5 14.8 5.3 7.5
    BSIF [44] 6.8 3.5 13.6 4.9 7.2
    LPQ [49] 12.8 9.7 15.6 6.3 11.1
    Persp. / morpho [74] 40 8.9 40 13.4 25.6
    Curvelet GLCM [81] 22.9 18.3 30.7 28 25
    Aug CN PCA SVM [78] 8.25 3.65 9.27 4.46 6.408
    CN PCA SVM [78] 9.9 1.9 5.09 7.86 6.188
    LPB PCA SVM [78] 8.2 3.85 23.68 5.56 10.32
    WLD [82] 13.3 13.8 27.7 6.7 15.4
    WLD+LPQ [82] 7.3 8.1 12.7 3.7 7.9
    Winnner 2011 [70] 20 36.1 21.8 13.8 22.9
     
    4.5 本章小結
    圖像頻率可表示灰度值變化的劇烈程度,可從另外視角展示空域里觀察不到的紋理 特征,能夠提升氣象信息管理系統中指紋活性檢測的性能。利用小波變換將圖像從空域 轉化到頻域,可將相同頻率的信號聚類到一起,還能觀察到一些在空域中觀測不到的紋 理信息。本章首先將指紋圖像的紋理特征提取從空間域轉化到頻率域,為了證明空域中 的紋理特征提取算法同樣適用于變換域,對變換域中的系數進行了研究,并設計了兩種 變換域系數特征提取算法。一種是基于局部二值模式的特征提取算法;另一種是多階差 分共生矩陣的特征提取法,即統計相鄰兩個、三個或四個梯度的分布關系,并將其作為 特征向量。最后將歸一化后的特征用 SVM 進行訓練和測試。此外,本文還給出矩陣階 數與特征維度間的關系表達式。實驗表明,本章提出的多階差分共生矩陣法能夠很好地 鑒別真假指紋圖像。另外,使用本章 4.3.2 節提出的算法,可將 4.3.1 節中 CrossMatch 分類錯誤率由48%降到20.84%,可大大提升CrossMatch指紋掃描儀的檢測性能。
    現有的指紋活性檢測方法通常依賴于已知類型的材料,但在現實生活中,制作假指 紋的材料種類多種多樣,很難在驗證前獲悉新材料的類別,它是阻礙指紋活性檢測性能 提升的一個研究難點。因此,如何檢測新材料仿制的假指紋具有十分重要的研究價值。
    第五章 基于卷積神經網絡的指紋活性檢測算法
    傳統的指紋特征提取是基于手工設計的,需要借助大量專業的指紋識別知識和經驗, 同時還需調試大量參數,并且很難同時讓特征提取和分類器的性能滿足最優。深度學習 可以很好解決上述的問題,它能自動的從數據中學習到描述原始圖像結構和紋理的特征 并根據特征進行自動分類。氣象高性能計算機可縮短深度學習算法的運行時間,離線訓 練真假指紋訓練模型并將其移植到氣象信息管理系統中,使用該訓練好的模型能進一步 提升氣象信息管理系統檢測真假指紋的準確性。因此,為了研究氣象信息管理系統中端 到端聯合協作優化的指紋活性檢測算法,進一步提高氣象信息系統中識別真假指紋的性 能,本章將重點研究氣象信息管理系統中基于深度學習的指紋活性檢測算法。
    本章組織結構如下:5.1節是引言;5.2節介紹卷積神經網絡技術;5.3節介紹尺度均 衡化的指紋活性檢測算法;5.4節介紹了自適應學習的深度殘差神經網絡;最后對本章研 究內容進行總結。
    5.1引言
    傳統的機器學習在執行圖像分類任務時,除了需要對數據進行預處理操作外,關鍵 就是如何手工設計特征提取算法。若特征向量的維度過大,訓練的模型分類器會過擬合 [83];若特征向量的維度過小,訓練的模型分類并不完整,從而導致欠擬合[84]。另外,將 提取的特征和分類器相結合并實現最優的分類效果,這是一個研究的難點。深度學習技 術能夠很好地解決上述問題,它能夠通過一種非線性網絡結構,自動的從海量的數據中 學習數據的特征,并能夠實現自動的分類。作為深度學習中的一種最流行的架構卷積神 經網絡(CNN, Convolutional Neural Network) [54] [55] [85],只需搭建好一個神經網絡模型, 并將每層參數初始化一個隨機值,CNN便能在后續的前向傳播和后向反饋過程中通過自 我學習不斷的更新和調整模型的參數,最終完成分類或預測任務。
    Nogueira等[54 ]首先將V GG和AlexNet兩個卷積神經網絡模型應用到指紋活性檢測中, 并與現有的淺特征提取方法進行比較,取得了當時最好的檢測結果。Wang等[56]提出了 一個帶有投票策略深度卷積神經網絡模型的指紋活性檢測算法。Park等[57]又提出了一個 基于卷積神經網絡模型的指紋活性檢測算法。在Park方法[57]中,首先進行了圖像分塊和 數據擴充兩個操作,然后將投票策略運用到所有塊中并用來區分真假指紋圖像oNogueira 等[54]也指出,由于模型結構層數大,訓練指紋集較小,將會出現過擬合現象[54]。
    在這些算法中,受各種指紋采集設備或人為因素的影響,采集指紋圖像的尺度具有 多樣性,當前CNN模型對輸入圖像的尺寸又有嚴格的約束。裁剪和縮放是兩種最常見的 用于解決圖像尺寸的方法。但它們存在的問題就是:裁剪操作除了將部分內容截取外, 其余大部分紋理信息都被拋棄,而縮放操作則會降低圖像的分辨率。為此,本節首先提 出一種基于尺度均衡化卷積神經網絡( ISE-CNN, Image Scale Equalization Convolutional Neural Network)的指紋活性檢測算法,用于確保圖像紋理信息完整和保持圖像分辨率 不變。另外,大多數CNN模型的學習率都是一個固定值。存在的問題就是,深層CNN 模型在反向傳播對權值進行更新時,極易陷入局部最優。何凱明等[86]通過研究表明,當 CNN模型層數到達某一層時,訓練的參數將會達到一個飽和階段,再繼續增加深度,訓 練和驗證精度都將會降低。為了解決精度降低的問題,本節將深度殘差網絡模型[[86]應 用到指紋活性檢測中。另外在反向傳播更新模型參數時,若設置不合適的學習率,權值 將難以逼近全局最優解。換言之,學習率設置太大,誤差函數將很難得到最小值,即模 型參數很難收斂到全局最優。反之,分類器的訓練過程將會需要更多的時間,即經過漫 長的迭代才能逼近全局最優解。為了讓學習的參數盡快逼近全局最優,本節提出了一種 基于自適應學習的深度殘差網絡模型(LAAResNet, Learning rate Adaptive Adjustment Residual Neural Network)o此外,本章還提出一個感興趣區域塊提取方法,以消除無效 區域的影響。因為假指紋是由不同材料制成的,所以訓練的模型在不同材料的指紋集上 具有良好的泛化性能是很重要的。為此,本節又提出了一個基于局部梯度模式紋理增強 方法來提高模型分類器的泛化性能。
    5.2 卷積神經網絡
    卷積神經網絡是一種常見的深度學習架構,本節接下來將會對卷積神經網絡的發展 和基本組成進行詳細的介紹。
    5.2.1 卷積神經網絡簡述
    卷積神經網絡的研究最早始于上世紀八十年代,受生物自然視覺認知機制的啟發[87], 為了設計一個像人腦那樣可以進行模式識別的網絡,日本科學家福島邦彥[94][95]提出了一 種叫Neocognitron的深度結構的神經網絡。由于該模型中無反向傳播學習過程,因而欠 缺實用性。為了使實際輸出值和真實值之間的誤差最小,深度學習三巨頭之一的Hinton 等[89, 90]提出了一種新的基于反向傳播的表示學習策略。LeCun等[91 ]設計的網絡在計算特 征圖時[94-95],所有的感受野只與單個神經元相連。通過引入權值共享操作,一方面降低 了模型過擬合的風險和提升了模型的泛化性能,另一方面,相鄰兩層參數的減少,可進 一步縮短模型的訓練時間。為了加速模型的訓練,LeCun等[91]首次將隨機梯度下降(SGD, Stochastic Gradient Descent)應用在CNN中,從而加速模型的收斂和避免內存產生不足。 1998年,LeCun設計出LeNet-5-CNN,并將其應用到美國銀行支票上的手寫數字識別中。
    受計算機性能和數據量的制約,卷積神經網絡并未受到重視。直到2006年,研究人 員發現將GPU應用到CNN中可大大縮短模型的訓練和測試時間,且效率是單獨使用CPU 計算性能的4倍。標志卷積神經網絡模型復蘇和崛起的經典事件是多倫多大學Alex等[109] 提出的AlexNet-CNN模型,該模型奪得2012年ILSVRC比賽的冠軍。為了研究卷積神經 網絡的深度對大尺度圖像分類和定位性能的影響,英國牛津大學的Karen等[92]提出了一 個叫VGG(Oxford Visual Geometry Group的)的深度卷積神經網絡模型。在實驗中,Karen 將模型深度由淺至深,分別設置六組不同深度的卷積神經網絡模型,并進行了對比,每 個模型詳細參數見文獻[92]。通過觀察六個網絡,其基本組成都包含1個輸入層、5個池化 層、5個卷積層、3個全連接層和1個分類層。對于其中的卷積層,又由多個卷積操作通 過堆疊的方式組成。網絡層A是一個比較淺的網絡,共有11層。為提高訓練模型的準確 度,作者將AlexNet模型中提出的LRN思想借鑒到B網絡中。但結果表明,其效果并不理 想。當然,VGG中最值得我們學習的兩個思想就是:使用小的卷積核和局部層進行初始 化,這兩個操作能夠明顯的加快模型的收斂。
    卷積神經網絡主要包含三個部分,即輸入層、隱藏層和輸出層。其中隱藏層又由若 干個卷積層、激活函數、池化層和全連接層等構成的,關于每層的具體介紹如下,
    5.2.2 卷積層
    卷積過程就是使用一些小矩陣(即卷積核或濾波器),按固定步長,從圖像的左上 角逐步滑動到圖像的右下角。每滑動一次,卷積核便與覆蓋區域對應的像素做乘積并求 和操作,得到一個新值,該值將會作為生成特征圖中的一個元素。卷積核尺度一般選擇 3x3、5x5、7x7、11x11等其中的一個。在卷積操作開始前,由于輸入圖像的尺寸較大和 圖像上的紋理信息變化快,為了盡早捕捉到這些紋理細節特征,選擇尺度較大的濾波器。 隨著模型層數的增加,為了防止局部區域內的細節特征在更深的卷積層上丟失,這時再
     
    選用尺度較小的卷積核去捕捉更多的細節變化。關于圖像特征圖的計算規則如下:若原 始圖像大小記為nxn,卷積核大小為ff, stride記為s,經過一次卷積操作之后,圖像特 征圖的大小變為mxm,且mxm=(nf+l)x(nf+l)。卷積核在圖像上按照一定的規則(按照 從左至右和從上至下的順序依次掃描)進行滑動,并逐一掃描圖像中的所有像素。輸入 值和權值相乘求和之后,再將其作為激活函數(類似于函數f(x) =y)的輸入,如圖5.1 所示。
     
     
     
    5.2.3激活函數
    激活操作的目的就是對輸出做一次非線性映射(激活函數的目的是為了增強模型的 非線性表達能力,能讓訓練的模型逼近任何非線性函數。若無激活操作,那么模型只是 輸入值的線性組合)。在卷積神經網絡中,常用的激活函數有:
    • sigmoid激活函數:sigmoid激活函數是一個非線性函數,計算公式為,
    5.1)
    如圖5.2(a)所示,為sigmod激活函數的輸出結果。它的輸入為整個實數域,輸出為(0, 1)。若輸入值較小,激活函數的斜率較大,是神經元的敏感區;若輸入值較大,激活函 數的斜率較平緩,無限趨向于零,是神經元的抑制區。反向傳播更新模型的參數是通過 導數的鏈式法則得到的,當反向傳播經過sigmod激活函數時,此時微分已經很小,再經 過若干個sigmod函數,最后,產生梯度飽和現象,即權重對損失函數幾乎沒影響,可忽 略。由于公式(5.1)中含有指數e-R運算,在神經網絡的前向傳播和反向傳播過程中需要 花費大量的計算時間,因而效率較低。同時,由于sigmod激活函數的輸出不是以0為中
    心,它會降低反向傳播中權值更新的效率。
    • tanh: tanh激活函數也被稱為雙曲正切激活函數(Hyperbolic tangent activation function), 其數學表達式為,
     
    sigmoid激活函數的輸出值是以0.5為中心,將其壓縮至0到1區間,而tanh激活函數 的輸出值是以零為中心,將輸出值壓縮至-1 到 1 區間。負數輸入被當作負值,零輸入值 的映射接近零,正數輸入被當作正值。但tanh函數也會有梯度消失的問題,因此在飽和 時也會“殺死”梯度。
    ?ReLU: ReLU激活函數又被稱為修正線性單元(Rectified Linear Unit),是一種分段函數, 其函數解析式為,
     
    如公式(5.3)所示,當輸入值大于0時,其輸出為x;當輸入值小于0時,其輸出為0。 因而,該激活函數收斂速度更快,不會飽和,并且能夠解決sigmoid和tanh激活函數中梯 度消失的問題。根據圖5.2(c)可得,神經元至少在非負區間內才不會把所有零進行反向 傳播,因此ReLU計算效率較高。但問題就是,當輸入值小于0時,在前向傳播中,神經 元處于抑制狀態,不參與權值運算;而在反向傳播過程中,使得權值無法更新,因而無 法學習到有效的參數。
    ?PReLU: PReLU激活函數是對ReLU激活函數的改進,即為了解決ReLU激活函數中的 Dead ReLU Problem,其計算表達式為,
    /、 ( x, if % > 0
    f(x) ={
    lax, if % < 0
    通過對比圖5.2(c )和(d),當輸入值在非負區間時,兩個激活函數的輸出值和斜率相 等;當輸入值在負數區間時,ReLU激活函數的效率趨向于零,而改進后的PReLU激活 函數會有一個很小的斜率,這就可避免ReLU中被“殺死"的問題。公式(5.4)中的參數 a是在反向傳播過程中學習得到的,一般取0?1之間的數。當a = 0.01時,PReLU又被稱 為 Leaky ReLU。
    大部分實際問題在激活函數(圖5.1)的選擇中,優先選擇速度快的ReLU作為激活
     
    函數,若ReLU效果不佳,則可使用Leaky ReLU。而對于文本和音頻問題,選用tanh激 活函數就可以取得不錯的效果。正是因為使用非線性函數作為激活函數,使得深層神經 網絡模型的表達能力更加強大。
     
    5.2.4 池化層
    經過卷積操作后,便能得到不同濾波器下對應的特征。由于局部區域具有相似的屬 性,若是將卷積操作后的所有特征都保存下來,必會產生信息冗余,同時增加網絡計算 的復雜度。為此,在卷積操作后又引入了池化操作(也被稱為欠采樣或下采樣,多用于 特征降維,壓縮數據和參數的數量)。池化的基本概念就是計算一個滑動窗口區域中的 最大值或平均值,重新生成一個比該區域小的新區域,從而實現特征降維和提取關鍵特 征的目的。圖5.3表示平均池化和最大值池化的實現流程圖,圖5.3(a)為卷積神經網絡中 某一卷積層抽取得的特征圖。首先,選擇大小為2x2的滑動窗口,然后在特征圖上按照 從左至右,從上到下,且步長為2的順序移動窗口,直到掃描完特征圖中的所有元素。
    最大池化操作就是求窗口滑動區域下的最大值,并將其作為當前窗口的新值。圖5.3 (a) 特征圖被均勻分割成4塊,且每塊子特征圖的大小均為2x2。以其中的粉色區域為例,該 窗口的四個元素分別為4, 3, 2和3,最大值池化就是取這四個元素的最大值,并將該值 賦給圖5.3(b)的粉色部分。同理,可得剩余的最大值。不同于最大池化操作,平均池化 操作是計算給定區域中元素的平均值。在計算之前,首先需要定義窗口的大小和給定窗
    口的滑動步長。還是以圖5.3(a)中的粉色區域為例,該窗口的四個元素分別為4, 3, 2和 3,其平均值為3,接下來將該值賦給圖5.3(c)的粉色部分,其余三個元素計算方式相類 似,最終求得平均池化后的特征圖。
     
    圖5.3最大值池化和平均池化計算示例圖,(a)經過卷積操作后的特征圖、(b)經過最大值池化后的特
    征圖、(c)經過平均值池化后的特征圖
     
     
     
    5.2.5 全連接層
    在卷積神經網絡中,卷積層提取的是圖像的局部特征,而全連接層是將之前每層提 取的局部特征,重新通過權值和偏移組成一幅完整的圖,即全連接層上的每一個神經元 都與上一層所有神經元相連,再對其進行分類。若全連接層神經元的節點數為加,與其 相連的上一層神經元的節點數為n,則相鄰兩層之間參數個數為mxno不同于局部連接的 卷積層和池化層,全連接層中的參數是最多的,約占整個神經網絡參數的80%左右。如 圖5.4所示,為指紋圖像經過卷積神經網絡操作處理后特征細節圖,即圖5.4右側五張圖 像為真指紋圖像的五個特征細節,這些細節特征可能紋線的起點、終點、結合點和分叉 點等。將這五個特征組合到一起,在有監督的學習下,分類器將會把它判別為真指紋, 如圖5.5(a)所示。對于最后一個全連接層和輸出層,神經元的個數分別為9和2。經過若 干個卷積、池化和全連接操作后,指紋圖像的特征從剛開始的拐點、邊緣、圓圈等淺層 特征,通過逐層的特征組合,最終可得指紋圖像的高層細節特征。當特征向量傳遞到最 后一個全連接層時,若前一層學習的特征剛好是圖5.4右側的五個真指紋特征,則最后一 個全連接層上的第1, 3, 4, 6和8這五個神經元被激活,而這五個細節特征又是通過上 一層卷積操作提取出來的。同樣,若學習的特征為指紋的汗孔,相應的神經元將被激活, 如圖5.5(b )所示。通過倒數第二個全連接上特征的組合,便可學習到圖5.4右側第五個特 征;反之,若全連接層組合的特征與圖5.4右側的五個特征均不相同,則全連接層上的神 經元被抑制,待測試的指紋圖像將被判定為假指紋。
     
     
     
     
    卷積層 全連接層 全連接層 輸出層
    (b)
    圖 5.5 卷積神經網絡中全連接層的結構圖
    5.3基于尺度均衡化卷積神經網絡的指紋活性檢測算法
    與手工特征法相比,卷積神經網絡技術無需大量的指紋識別知識和經驗,且無需調 整大量的參數,機器能自動的學習到數據中本質特征和實現目標對象的自動分類。但是, 當前CNN模型對輸入圖像的尺寸有嚴格的約束。雖然裁剪或縮放操作能解決尺寸約束問 題,但極易讓圖像丟失一些關鍵紋理信息或使圖像的分辨率降低,且都將會削弱模型分 類器的泛化性能。本節首先提出了一種圖像尺度均衡化的方法用來確保圖像紋理信息完 整和維持圖像分辨率不變。另外,為解決CNN反向傳播過程中權值易陷入局部最優和梯 度下降較慢的問題,本節還提出一種自適應學習率的CNN。接著,在指紋活性檢測性能 評估中,除了使用平均分類精度作為性能評價指標,本節還將混淆矩陣作為性能評估指 標應用到指紋活性檢測中。在LivDet 2011和LivDet 2013兩個指紋集上進行了驗證,實驗 結果也顯示了本節提出算法的可行性。
    5.3.1尺度均衡化和學習率自適應調整
    卷積神經網絡是深度學習架構中一種受關注度最高和使用最廣的人工神經網絡。雖 然CNN方法能夠自動學習數據集中學習更有用的特征并提升分類或預測性能[23, 93],但它 們對輸入圖像的尺寸有嚴格的限制。卷積和池化兩個操作對輸入圖像的大小沒有限制, 而全連接層對它前一層輸入的尺寸有嚴格的限制。全連接層的計算規則相當于對輸入到 全連接層的特征圖數據矩陣和全連接層權值矩陣進行內積,當CNN模型的參數設定后, 全連接層神經元數(或參數維度)即為固定的,所以兩個矩陣要能夠進行內積,則輸入 的特征圖的數據矩陣維數也需要固定。為了解決CNN中尺度不統一的問題,對輸入圖像 進行裁剪和縮放是兩種最常見的方法。
    裁剪易使原圖像丟失大量紋理信息。圖5.6(a)是一張待處理的指紋圖像(大小為 312x372),經過裁剪后,圖5.6(a)紅色邊框內的區域被保存下來,如圖5.6(d)。通過比對 圖5.6(a)和5.6(d),發現紅色邊框四周的紋理信息均被丟棄。除了裁剪,圖像縮放操作也 能解決圖像尺度的問題。但縮放后,圖像的空間結構極易出現變形和分辨率下降的問題, 如圖5.6(b)(其大小為156x186)。若將圖像再進行一次縮放操作,圖像分辨率下降的將 更明顯。如圖5.6(c)(其大小為78x93)用肉眼已經很難區分指紋圖像中的脊線和谷線。 由于丟失有效的判別信息,降低了指紋活性檢測的性能。如前所述,全連接層對輸入圖 像的尺度有嚴格的要求。為了解決該問題,是否可以設計一種新的網絡層,在進入第一
    個全連接層時,可將任意尺度的圖像都轉換為固定長度的特征圖?因此,本節提出一種
    基于圖像尺度均衡化的指紋活性檢測方法。本文算法無需任何裁剪或縮放操作,任意尺
    度的圖像都能用一個固定長度的特征向量表示。
     
    (a) (b) (c) (d)
     
    圖5.6裁剪和縮放指紋圖,(a)原始指紋圖、(b)縮放指紋圖、(c)縮放指紋圖、(d)裁剪指紋圖
    卷積神經網絡除了存在圖像尺度約束問題,另一個問題就是在反向傳播更新模型各 層參數時,如何設置或選擇恰當的學習率a。
    wt+1 = wt — a * ^J(w) (5.5)
    當前大多數卷積神經網絡在更新模型參數時,學習速率a都是一個固定值,權值更 新公式如式5.5所示。其中丿是關于權值w的誤差函數,在反向傳播更新權值時,學習率a 不應設置過大或過小。若a設置太小,則需要迭代更多的步數,從而延遲達到全局最優 點(如圖5.7 (a));若a設置太大,在反向傳播更新權值的過程中,極易跳過全局最小值, 使得訓練的參數不是全局最優而是局部最優的(如圖5.7 (b))。
     
    圖 5.7 反向傳播求解最優權值時,不同學習率下收斂到最優值的狀態圖
     
    與大多數基于固定學習率來更新模型的權值不同,本章提出了一種學習率自適應調
    整的算法。使用公式(5.6)自動的調整反向傳播的學習率,其中a表示學習率,/是學習率 下降因子。在本方法中,首先設置一個指標(驗證集精度)作為監控對象,若算法發現 評估指標5次不再提升,則權重和學習率將用公式(5.5)和(5.6)進行更新。然后用更新后 的a繼續訓練模型的權值和偏移等參數,直到自適應調整學習率小于給定閾值幾此時, 停止訓練。最后,當評估指標在訓練期間保持不變時,記錄下相應的模型參數。
    (1- f) * a, f G [0.2,1], a€[min/r, 1] a={
    a, a G [0, min lr]
    為了解決上述問題,本節搭建了一個不受圖像尺度約束的卷積神經網絡模型,即以 一個五層的卷積神經網絡為基礎,在最后一個卷積層和全連接層之間添加了一個新層, 并將其命名為尺度均衡化層,模型結構如圖5.8,其由九個基本單元層構成,即一個輸入 層,五個卷積層,一個尺度均衡化層,一個全連接層和一個輸出層。除尺度均衡化層外, 其余各層的作用和操作已在5.2節中詳細介紹。
     
    如圖5.8所示,經過前六層的卷積和池化操作后,每層均能提取不同的特征,輸出被 稱為特征圖。接著,將最后一個卷積層的輸出全部作為尺度均衡化層的輸入。在本節搭 建的模型中,最后一個卷積層的特征圖的數量為64。為了說明本節的算法能將任意尺度 的圖像經過尺度均衡化層后都可以轉化成固定長度的特征向量,首先假設最后一個卷積 層輸出特征圖的大小為axa,若將特征圖分割成n2, n為偶數,可表示為n = 2i-1, iG [1, +^),而分割后的特征圖尺度為sub_fea_Map = \a/n\ (因無法確保每一個a/n的值都 是整數,需要執行一次向上取整\?\操作)。本節子特征圖的大小九分別被設為1, 2, 4, 8, 16,…,2",其相應子塊的數目分別為 1, 5, 21, 85, 341,…,(4m+-1-1)/3= (4'1)/3。 其中mEN或者i€N+。然后,當其傳遞到尺度均衡化層時,每個特征圖都被分割成不 同大小的子塊,分別取每個子塊中的最大值為當前子塊的特征值。也就是說,特征圖被 分成多少個子塊,每個特征圖就有多少個特征。接著,將所有的特征值拼接到一起并作 為該特征圖的特征向量。在本節實驗中,"分別設為1, 2, 4, 8和16,其相應的n的特征 數分別為1, 5, 21, 85和341。經過上述操作后,從而將任意尺度的圖像(或特征圖) 轉變為固定長度的向量。最后,將其輸入到全連接層。
    5.3.2圖像數據集
    為了驗證本章算法的性能,分別在兩個標準指紋數據集LivDet 2011和LivDet 2013上進行了驗證。關于這兩個指紋數據集的詳細介紹,本文已在3.4節進行了詳細 的說明。對于指紋活性檢測的評估性能,本節選用的是平均分類錯誤率,該方法的 詳細定義和介紹可參考3.5節。
    5.3.3環境配置
    在本節中,平均分類錯誤(ACE, Average Classification Error)繼續被用于評 估指紋活性檢測的性能,關于ACE的描述和定義在本文第三和第四章中均已詳細的 介紹。另外,僅使用ACE來檢測指紋圖像的活性還是不足的。
    表 5.1 混淆矩陣表
    混淆矩陣 預測值
    0 1 總數
    實際值 0 A B E=A+B
    1 C D F=C+D
    總數 G=A+C H=B+D
     
    本章除了使用平均分類錯誤來評估指紋的活性外,還首次將混淆矩陣作為評估 真假指紋的性能指標。本節使用微調后的模型分類器,分別對四個性能指標參數進 行了驗證,它們分別為:FRR (False Reject Rate,誤識率,表示真樣本被錯誤的標 記為假樣本的百分比),FPR (False Positive Rate,誤報率,表示假樣本被錯誤的標 記為真樣本的百分比),Recall (召回率,即真樣本被預測正確的概率)和F1-Score (表示在二元分類中,精確度和召回率的加權平均值)。混淆矩陣也稱為誤差矩陣, 是精度評估的標準格式。本節所使用的兩分類圖像的混淆矩陣如表5.1所示。在表5.1 中,0表示真指紋的數量,1表示假指紋的數量,A表示TP (真陽性,即真樣本被正 確分為真樣本,B表示FN(假陰性,即真樣本被誤識為假樣本),C表示FP(假陽性, 即假指紋樣本被錯誤地標記為真指紋樣本),D表示TN (真負,假樣本被正確分類 為假指紋樣本),E表示實際為真指紋的樣本數,F表示實際為假指紋的樣本總數, G表示預測為真樣本的數量,H表示預測為假指紋樣本的數量。關于四個指標參數 FRR, FPR, Recal 1 和F1-Score,它們的計算公式分別為:FRR = B/(A+B), FPR = C/(C+D), Reacll = A/(A+B)和F1 -Score = 2A/(2A+B+C)。
    表 5.2 本文計算機硬件和軟件的配置參數
    硬件條件 軟件條件
    CPU: Intel @Core i7-6700
    內存: 64GB
    GPU: NVIDIA @GeForce-GTX 1080 8GB 操作系統:Ubuntu Linux (版本:16.04)
    運行環境: Python 3.5.2+Cuda 8.0
     
    本節所有的實驗均是在Ubuntu Linux操作系統下使用Sublime集成開發環境下 完成的。本節執行了三組不同尺度(224x224,112x112,64x64)指紋圖像活性檢測的 對比實驗,每次輸送到輸入層的指紋圖像的數量較多,若計算機內存較小,則易出 現內存溢出的問題。而解決該問題的兩個常見的辦法就是降低每批訓練樣本的數量 和提高計算機的內存。本文使用的計算機GPU的配置為GeForce GTX 1080 (64G內 存),可滿足所有實驗的需求,關于其它軟件和硬件的配置信息見表5.2。
    5.3.4 實驗結果與分析
    為了驗證本節提出算法在防御假指紋欺騙中的性能,進行了多組對比實驗。首 先對指紋圖像進行預處理操作,即通過提取指紋中的感興趣區域來消除空白區域的 干擾。然后,為了解決實驗中指紋樣本數量不足的問題,本節使用四種不同的圖像 處理技術來擴展指紋集,包括圖像旋轉、縮放、翻轉和亮度增強。在所有圖像預處 理操作和數據擴充[94]完成之后,指紋樣本將被輸入到本文搭建的模型中。由于指紋 圖像集有限,在實驗中,模型迭代的次數被設為100,批量大小設置為32,批次數 為313,每個時期的迭代次數設置為313。在模型中,第一個和第二個卷積層中卷積 核的數量均為32,第三個到第五個卷積層卷積核的數量均為64,且五個層上卷積核 的大小均為3 X 3。另外,為了提高模型的泛化性能,每批訓練集在進入輸入層之前, 對指紋數據集均需執行隨機置亂操作。
    本節設計三組不同的對比實驗來分別驗證算法的性能。首先,將預處理的訓練
    集和測試集輸入到搭建的模型中,第一個實驗無任何模型參數初始化操作。由于本
    文的算法是有監督的學習過程,因此每個樣本及其相應的標簽都是必要的。標簽的
    標記是根據每個指紋樣本的活性,在圖像預處理階段完成的,本文將活體指紋標記
     
    為1,而將假指紋記為-1。最后一個卷積層的輸出將作為尺度均衡化層的輸入。接 下來,經過尺度均衡化的操作之后,其輸出將作為下一層全連接層的輸入。經過 softmax層作用后,將最終輸出(稱為預測值)與圖像的標簽進行比較,稱為實際值。
    如果它們之間的差值小于閾值,則學習的參數就是此樣本學習到的參數,然后執行 下一個操作。如果預測值和實際值之間的差值大于給定閾值,則進行反向傳播,通 過對誤差函數進行梯度求導,不斷的更新每層的權值,并再次計算預測值和實際值 之間的誤差。此時,如果最小誤差小于給定閾值,則終止訓練過程,否則重復上一 個過程。為避免更新的權值陷入局部最優或收斂速度慢,本節又提出一種基于學習 率自適應調整的卷積神經網絡模型。在該實驗中,可訓練參數的總數為102564。其 中,第一個卷積層的參數總數是320,第二個卷積層的參數總數是9248,第三個卷 積層的參數數量是18496,第四個卷積層的參數總數為36928,第五個卷積層的參數 個數為36928。由于尺度均衡化層不參與卷積運算,該層的參數為零,最后一個全 連接的層的參數數量是642。此外,輸出層的種類是2。
     
    圖5.10 LivDet 2013訓練損失率和測試損失率的變化趨勢圖,其中(a)-(d)圖像尺度為64x64、(e)-(h)
    圖像尺度為112x112、(i)-(l)圖像尺度為224x224
     
    圖5.11 LivDet 2011訓練精度和測試精度的變化趨勢圖,其中(a)-(d)圖像尺度為64x64、(e)-(h)圖像尺
    度為112x112、⑴-⑴圖像尺度為224x224
    圖5.9和圖5.11分別表示在兩個指紋數據集LivDet 2013和LivDet 2011中,訓練集 和驗證集的分類準確性隨迭代次數增加的變化趨勢。在圖5.9和圖5.11中,第一行中 的圖像表示不同指紋掃描儀(Biometrika, CrossMatch, Italdata和Swipe)在圖像尺 度相同的情況下隨著迭代次數的增加,其分類準確率的變化趨勢。第一列中的圖像 表示的是不同尺寸的指紋圖像在指紋掃描儀相同的條件下,隨迭代次數的增加其分
    類準確率的變化趨勢。通過觀察可知,訓練精度和驗證精度都隨著迭代次數的增加
    而增加,當迭代次數到達某一個數值時,精度將趨于平緩。與之相對應的是圖5.10 和圖5.12,它們表示在兩個不同指紋數據集下,訓練集和驗證集的損失變化趨勢與 迭代次數的關系圖。觀察兩張圖可知,整體損失都將減少,直至趨向水平,這也符 合模型訓練的實際情況。
     
    第二個實驗是選擇最好的訓練模型,并將其作為模型分類器,用于后續的驗證 和測試。訓練過程與第一個實驗完全相同。不同之處,在程序執行過程中設置一個 閾值。若是訓練模型的訓練精度連續5次不再增加,則模型就終止訓練,并將最優 驗證精度下對應的模型參數保存下來。然后,使用最優的分類器進行驗證和測試。 第三個實驗是模型參數的微調,開始時使用第一個實驗中訓練得到的模型參數作為 首次模型參數的初始化值,并從LivDet 2011和LivDet 2013指紋的訓練集中隨機挑選 一部分圖像作為預訓練樣本,然后微調模型的參數,并將微調后的訓練模型作為最 終的分類器,用于后續的測試。為了驗證本節算法的性能,實驗結果分別與當前幾 個算法[59] [53] [95] [96] [97]進行了對比。表5.3和5.4分別列出了不同算法在兩個標準指紋 數據集LivDet 2011和LivDet 2013上的實驗結果。為了清楚的顯示在單個指紋掃描儀 和平均分類精度上的最好結果,兩張表中的最優結果都用粗體進行標記。通過對比 可知,本節提出的算法在兩個指紋集上的平均分類精度比排名第二的LLF [83]和
     
    HOG[108 ]兩個算法分別低了 0.45%和1.57%。
    表 5.3 LivDet 2011 指紋集中不同算法對應的分類錯誤率和 ACE 值
    算法名稱 平均分類錯誤率ACE in (%)
    Biometrika Digital Italdata Sagem Average
    Our method 9.2 1.35 12.35 2.9 6.45
    LLF [78] 7.89 6.25 8.1 5.36 6.9
    MSLBP1 [50] 7.3 2.5 14.8 5.3 7.745
    MSLBP2 [50] 10.6 6.7 12.6 5.6 8.875
    GBTF [98] 6.7 4.75 11.75 3.34 6.635
    LBP PCA [78] 8.85 4.15 12.34 7.54 8.22
    SURFPHO [51] 8.76 6.9 7.4 6.23 7.32
    Original LBP [74] 13 10.8 24.1 11.5 14.85
    LPB PCA SVM [78] 8.2 3.85 23.68 5.56 10.32
    Jia's method [80] 10 7.1 16.3 6.1 9.95
    Best Result in [70] 20 36.1 21.8 13.8 22.93
     
    表 5.4 LivDet 2013 指紋集中不同算法對應的分類錯誤率和 ACE 值
    算法名稱平均分類錯誤率迥迅(%)
    Biometrika Crossmatch Italdata Swipe Average
    Our method 4.35 7 1.4 2.05 3.7
    HOG [96] 2.75 7 7.05 4.27 5.27
    ULBP [95] 10.68 46.09 13.7 14.35 21.205
    Anonym3 [59] 5.7 53.11 2.8 5.25 16.72
    LBP PCA [78] 1.7 49.45 2.3 3.34 14.2
    MSDCM [97] 3.55 20.84 2.35 5.25 7.59
    LLF[53] 3.9 28.8 1.7 14.4 12.2
    HIGMC [53] 4.3 39.96 10.6 32.41 21.82
    HIDBP [53] 3.9 34.13 8.3 14.44 15.19
    Winner [59] 4.7 31.2 3.5 14.07 13.37
     
    表5.3為本節提出的算法在LivDet 2011指紋集上的測試結果。根據5.3.3節的評 估準則和結合表5.3對比可知,本節提出算法的檢測性能更好,其平均分類錯誤率為 6.45%,而第二名的錯誤率為6.9%。此外,在單個指紋掃描儀上的表現,本節提出 的算法更適合于Digital和Sagem,而在指紋掃描儀Biometrika和Italdata的表現較弱。 可能原因一是由于各個指紋掃描儀采集指紋圖像的原理不同,使得采集的真假指紋 圖像間的區分度不夠明顯;另一個可能原因是指紋圖像集的數據量不足,使得分類 器缺乏泛化性和魯棒性。
    相似的分析,表5.4為本節提出的算法在LivDet 2013指紋集上的分類結果。觀 察可知,除了在平均分類錯誤率上明顯的優于其他算法,本節提出的算法能夠同時
    在CrossMatch, Italdata和Swipe三個指紋掃描儀上取得最低的分類錯誤率。其中關
    表5.5 LivDet 2013指紋集中不操作下的平均分類正確率(其中64表示圖像大小為64x64, 112表示
    圖像大小為112x112, 224表示圖像大小為224x224)
    掃描儀 分塊數 無任何操作 權值初始化操作 參數微調
    64 112 224 64 112 224 64 112 224
    Biometrika 1,2,4 93.9 93.9 95.45 94.4 94.25 93.8 90.6 90 95.15
    12,4,8 86.45 95.65 92.9 90.4 95.45 94.3 89.5 94.4 94.3
    1,2,4,8,16 89.45 92.1 94.7 90.15 92.5 94.85 88.4 93.3 94.6
    CrossMatch 1,2,4 88.98 91.07 90.71 90.13 90.58 90.62 88.93 90.98 90.93
    12,4,8 89.47 89.73 90.8 89.3 93 90.62 89.47 89.73 90.8
    1,2,4,8,16 89.11 90.49 90.53 89.02 90.62 92.31 89.42 89.78 90.44
    Italdata 1,2,4 96.05 98.15 98 94.3 97 98.6 95.75 96.85 97.6
    1,2,4,8 94.55 96 97.05 95.6 98 97.15 89.2 97.35 90.89
    1,2,4,8,16 92.9 97.3 96.95 93.65 95.05 98.1 92.64 95.9 91.28
    Swipe 1,2,4 96.47 97.07 96.66 96.56 96.57 97.1 94.7 95.82 96.93
    1,2,4,8 96.05 96.75 96.52 96.84 97.68 96.84 95.91 97.95 96.6
    1,2,4,8,16 96.7 97.03 97.82 96.19 97.9 97.86 95.4 97.03 97.53
     
    表5.6 LivDet 2011指紋集中不操作下的平均分類正確率(其中64表示圖像尺度為64x64, 112表示
    圖像尺度為112x112, 224表示圖像尺度為224x224)
    掃描儀 分塊數 無任何操作 權值初始化操作 參數微調
    64 112 224 64 112 224 64 112 224
    Biometrika 1,2,4 86.15 88.65 89.35 85.7 90.1 90.05 88.09 90.49 90.8
    1,2,4,8 86.2 89.7 86.9 86.85 88.75 88.9 90.6 90.27 89.42
    1,2,4,8,16 84.65 85.55 87.4 85.55 86.9 88.54 89.51 89.69 90.22
    Digital 1,2,4 94.8 98.45 96.3 96.89 98.45 97.05 96.15 98 96.35
    1,2,4,8 95.95 94.85 96.2 95.35 96 96.6 95.1 95.6 96.75
    1,2,4,8,16 94 95.7 95.5 95.05 97.5 96.1 94.05 95.55 94.85
    Italdata 1,2,4 79.75 78.1 78.25 82.05 83.4 87.1 80.14 83.15 86.95
    1,2,4,8 79.35 85.5 81.8 80.4 87.65 83.2 78.4 86.75 84
    1,2,4,8,16 79.15 82.7 86.79 78.8 84.1 86.9 79.85 84.25 86
    Sagem 1,2,4 95.38 96.17 96.22 95.33 96.76 97.1 92.98 95.92 95.78
    1,2,4,8 93.76 94.79 93.76 94.4 96.12 95.97 92.78 94.79 94.45
    1,2,4,8,16 90.52 94.94 95.53 94.45 94.84 95.28 94.3 93.47 95.43
     
    于Italdata指紋掃描儀的結果,使用本節提出的算法能夠將錯誤率降到2%以下,而 其他最好的算法都無法達到。本節提出的算法在指紋掃描儀Biometrika上表現的不 理想,分析原因同上。本節設計的三組實驗(分別為無任何操作、參數初始化和模 型預訓練)的詳細結果分別見表5.5和表5.6。在兩張表中,分別記錄了當圖像尺度 不同時,不同子特征塊組合下真假指紋活性檢測的平均分類精度。觀察可知,指紋 圖像的尺度越大,即圖像分辨率越高,其相應的分類性能越高。這也從另外一點說
     
    明了在傳統的卷積神經網絡中,為了解決圖像尺度的問題,縮放操作是其中一種處
    理方法,但若是將大尺度的圖像壓縮到小尺度的圖像,則必然會影響真假指紋圖像 的檢測性能,再次證明了本節提出方案的必要性。
    表5.7在指紋集LivDet 2013中,當均衡化塊的數量分別為1,4,16時,模型微調后的結果
    傳感器 尺度 FRR FPR F1-Score Recall
    Biometrika 64x64 7.3 7.4 93 93
    112x112 6.4 5.2 94 94
    224x224 7.4 5 94 94
    CrossMatch 64x64 1.9 17.5 87 87
    112x112 6.6 16.5 90 90
    224x224 3.3 4.7 96 96
    Italdata 64x64 2 4.2 97 97
    112x112 1.2 3.4 98 98
    224x224 1 4.8 97 97
    Swipe 64x64 7.1 6.1 94 94
    112x112 2.9 4.3 97 97
    224x224 3.5 3.2 97 97
     
    表5.8在指紋集LivDet 2011中,當均衡化塊的數量分別為1,4,16時,模型微調后的結果
    傳感器 尺度 FRR FPR F1-Score Recall
    Biometrika 64x64 12.9 14.5 86 86
    112x112 10.4 13 88 88
    224x224 8.3 13.5 89 89
    Digital 64x64 7.2 1.9 95 95
    112x112 1.1 2.5 98 98
    224x224 3.3 4.7 96 96
    Italdata 64x64 13 31.2 78 78
    112x112 11.4 21.1 84 84
    224x224 13.1 28.3 79 79
    Sagem 64x64 4.7 6.1 95 95
    112x112 2.8 5.1 96 96
    224x224 5 4.6 95 95
     
    三組不同實驗,在不同的指紋掃描儀下均有可能取得最好的檢測性能,如表5.6, Biometrika指紋掃描儀在模型微調實驗中能夠取得最高的檢測性能,其結果為 90.49% ;而Digita l指紋掃描儀在無操作實驗組和權值初始化實驗組均能取得最佳的 檢測性能,其結果均為98.45%; Italdata和Sagem指紋掃描儀在權值初始化組均能夠 取得最佳的指紋檢測性能,其結果分別為87.65%和96.76%。此外,除了使用平均分 類錯誤率來驗證指紋活性檢測的性能,本節還將混淆矩陣運用到指紋活性檢測中, 通過混淆矩陣計算出四個基本參數(FRR, FRP, F1-Score和Recall)作為評估真假 指紋性能的指標。兩個指紋數據集中對應的FRR, FRP, F1-Score和Recall的結果如 表5.7和5.8所示。關于FRR和FRP兩個指標,其值越小,表明算法的性能越好,而 F1-Score和Recall兩個指標參數剛好相反,其值越大,則說明相應的算法性能越好。 該四個值變化趨勢基本上與平均分類錯誤率的趨勢相同,即在平均分類錯誤率中, 若是其錯誤率越低,則相應的FRR和FRP越低,同時F1-Score和Recall兩個值越高。 將這幾個指標結合起來使用,從而可避免由人為因素導致的錯誤。最后,為了驗證 本節提出算法的效率,本文也將模型的訓練和測試時間進行了紀錄,如表5. 9所示。 通過觀察可以清晰的看到訓練階段占據了實驗的大部分時間。而在兩個指紋數據集 上的平均測試時間基本上都為2.25ms左右,將其應用于實際中也比較合理,也再次 驗證本文算法的可行性。
    表5.9 三個不同尺度下指紋圖像總的訓練和平均測試時間
    指紋數據集 訓練所有指紋圖像 的時間(h) 測試單張指紋圖像 的時間(ms)
    LivDet 2011 4.78-5.78 2.22
    LivDet 2013 4.93-5.53 2.33
     
    5.4基于自適應學習深度殘差網絡的指紋活性檢測算法
    與大多數基于手工工程的淺層特征方法不同,基于卷積神經網絡的技術,因其具有
    操作簡單、參數少和端到端的特征自學習的特性,被廣泛的應用在圖像分類和目標檢測
     
     
    中。但深度卷積神經網絡面臨一個矛盾的問題,一方面,隨著神經網絡模型層數的增加, 訓練精度和測試精度都先會持續上升,最終趨于穩定。若此時繼續增加模型的層數,訓 練精度和測試精度都將開始下滑,如圖 5.13 所示,研究表明,這一現象并不是由過擬合 引起的。另一方面,大量研究表明,模型的深度是實現高精準圖像分類的關鍵。因此, 為了解決這一問題,本節將深度殘差網絡[86]運用到指紋活性檢測中,此外,本節還設計 了一個叫自適應學習的深度殘差神經網絡模型,以避免訓練的分類器陷入到局部最優。 為了消除指紋圖像中無效信息的干擾,本節設計了一個感興趣區域提取算法。最后,為 了提高模型分類器的泛化性能,本節還提出了一種基于局部梯度模式的指紋圖像紋理增 強方法。
     
     
    卷積神經網絡要想學習更復雜的特征,增加模型的層數是首選。但隨著模型層數的 增加,一方面模型的訓練越來越困難、訓練集的準確率也開始下降,另一方面,還會產 生梯度爆炸、消失或彌散等問題。為了解決網絡深度變深后,分類性能退化的問題,微 軟亞洲研究院研究員何凱明[86]通過在網絡中引入了兩種映射關系:等價映射和殘差映射, 設計一個深度殘差網絡模型(ResNet, Deep Residual Network),如圖5.14所示。在圖 5.14中,ResNet圖中包含兩個卷積層,一個激活層和一條直接將輸入短接到激活層的曲 線。若是最終的輸出用符號y表示,則y = F(X) + X.其中,曲線表示的就是等價映射X, 曲線外的其余部分為殘差映射F(X), 即 F(X) =y-Xo ResNet允許不斷增加模型的深度, 且準確率不下降的原理就是:當網絡模型目前已訓練到達最優狀態時,再繼續增加層數, 殘差映射將被push為0,只剩下等價映射部分,本質就是在訓練過程之中跳過一層或多 層卷積層,形成一個殘差塊。理論上,隨著模型層數的加深,模型將會一直處于最優狀 態,因而網絡的性能不會下降。
    5.4.1 局部梯度模式
    由于真指紋比假指紋有更好的彈性形變,因而相比較,真指紋圖像中相鄰脊線和谷 線的水平梯度和垂直梯度比假指紋的變化更劇烈。另外,受光照強度和噪聲的影響,假 指紋圖像在兩個方向上的梯度值變化相對平滑。為了凸顯真假指紋圖像間的紋理差異和 提高模型分類器的泛化性能,本節提出了一種基于局部梯度模式(LGP, local gradient pattern)的紋理增強算法,并將處理后的圖像作為卷積神經模型的輸入。
    指紋圖像I,其大小為pxq。首先,計算指紋圖像中每個像素的梯度值并用公式(5.7) 構建指紋圖像的梯度分布G,其計算公式如下所示,
    G = [Qi, 92, -•,9w]T ( 5.7)
    gM = [lx(M), Iy(M), I(M)],M E [1, w] and w = p x q (5.8)
    在公式(5.7)中,g,g2,…,gw表示的是指紋圖像中相應像素的梯度值,w表示指紋圖 像中的某一個像素。集合G是由所有像素的梯度向量構成的,而向量又是由該像素 的水平梯度(記為IX(M)).垂直梯度(記為Iy(M))和像素自身/(M)三個元素組成。最 終集合G的維度是一個大小為wx3的矩陣。在公式(5.8)中,M的取值范圍為[1, w],且 w = pxq。如開頭所述,集合G在區分真假指紋圖像方面扮演了關鍵作用,而這些差異 可通過計算矩陣中的特征值來反映。為了選出梯度分布矩陣中最重要的特征,本節擬采 用奇異值分解[99]的方法。該方法可以將一個比較復雜的矩陣,通過幾個簡單的子矩陣相 乘來獲得,并且這些小矩陣描述的都是原始復雜矩陣中的重要特征。比如描述一輛卡車, 通過描述該車的顏色、型號和尺寸等幾個特征,在我們的腦海中便能形成一個較為清晰 的車模。實際上,卡車的特征有很多種,之所以用幾個簡單的特征就描繪一個物體,究 其原因是因為人腦具有抽取目標重要特征的能力。為了讓機器學會學習物體的關鍵特征, 奇異值分解就是最常使用的方法。奇異值分解和特征分解一樣,都是對矩陣進行分解, 兩者最大的區別就是,奇異值分解中的矩陣并不要求是方陣。根據上面所示,我們需要 求解的是梯度分布G中的最重要的特征,該特征的大小為wx3。
    關于本節提出的梯度分布G奇異值分解,我們只取前三個奇異值,其數學表達式如 下所示,
     
     
    WX3
    在公式(5.9)中,矩陣U的大小為wxw, <7是一個大小為wx3的矩陣,通過公式(5.9) 可知,矩陣刃余了對角線上的元素不為零外,其余元素全為零,且將矩陣刃寸角線上的元 素被稱為奇異值,即5,血和巾。V是一個大小為3x3的轉置矩陣。在公式(5.9)中,矩 陣U和V又被稱為酉矩陣,特點就是其轉置和自身相乘的結果為一個單位矩陣,即UTU = I, VTV = Io當執行完奇異值分解后,矩陣"對角線上的值即為奇異值,且按升序進行 排序。為了表示真假指紋間的細微差異,主方向梯度的計算公式如下,
    g = - (a2 + a3), 且5 >a2>a3 (5.10)
    本節提出一種基于局部梯度模式的紋理增強算法,以加強真指紋和假指紋在水平和 垂直兩個方向的能量分布差異。如圖 5.15 所示,為本節提出的局部梯度模式實現的流程 圖。首先,分別對真指紋和假指紋進行感興趣區域的提取操作,得到圖5.15(a)o接下來
     
    圖5.15局部梯度模式的實現過程圖,(a)ROI操作后的指紋圖像、(b)濾波操作后的指紋圖、(c)二元
    編碼圖、(d)局部梯度模式圖
    再對ROI指紋圖像進行水平和垂直兩個方向上的濾波操作,得到圖5.15(b)o然后對梯 度周圍的像素進行編碼操作,如圖5.15(c)所示,任取圖像中某一個像素點和其周圍最鄰 近的8個像素點,構成一個區域A (例如,A=3x3窗口區域)。中心像素和其鄰近的8 個像素之間的大小關系可用公式5.11 和 5. 12計算得到。該計算過程與局部二值模式的 計算過程相同[95]。
     
     
    在公式5.12中,=A(x,y) - A(Xi,yt),且A(Xi,yi)表示窗口4的中心像素值,A(x,y) 表示與中心像素相鄰的像素。當z>0時,即鄰近像素比中心像素大時,則將1作為結 果,重新賦值給當前的鄰近像素;反之,若是z<0,則^(z)結果為0。即將0重新賦值 給當前鄰近像素。最終,可以得到一個新的窗口,如圖5.15(c)所示。接下來。以新窗口 中鄰近像素的某一位置作為起點(起點任意選擇,一旦固定,計算其他窗口時,采用相 同的起點作為初始點),利用公式5.11 計算該8個位置的數值和,并將其作為最終的結 果賦值給當前窗口的中心像素點。接下來,根據公式5.11和5.12,依次計算其余像素點 的灰度值。最終,便可求出局部梯度模式圖,如圖5.15(d)所示。
    5.4.2 感興趣區域提取
    真假指紋的紋理細節信息主要與交替出現的脊線和谷線相關,我們只關注這些有效 區域,而其他內容則是無效或干擾信息。通過觀察圖5.16(a)可知,指紋掃描儀采集到的 指紋圖像的尺寸較大,而交替出現的脊谷線只占了很小部分,若是對其不加任何處理, 直接將其作為輸入數據,勢必會降低訓練模型分類器的性能。因此,為了提高模型的檢 測性能,本節提出了一種感興趣區域(ROI, Region of Interest)提取算法,即將指紋圖 像中的無效區域進行剔除同時只保留交替出現的脊谷線區域。如圖5.16(b),有效區域用 綠色實線進行標準,綠色實線內的部分就是我們待提取的感興趣區域,而其余部分則是 無效區域,需要將其剔除。關于感興趣提取算法,具體實現步驟如下所示,
    1)加載指紋圖像,并將圖像進行灰度化處理;
    2)計算圖像水平和垂直方向上的梯度,為了加強水平方向上的梯度和削弱垂直方 向的梯度,對水平和垂直兩個方向的梯度做差值運算;
    3)去噪。受高頻信號干擾,第2步處理后的圖像某些像素點變化率較大,為了降低 異常值的影響,使用低通濾波器消除圖像中的高頻噪聲,即用固定模板上的平均值替代 當前像素值,從而達到平滑圖像的目的;
    4)圖像二值化。對上一步處理后的指紋圖像進行二值化處理,設定一個閾值T,當 梯度圖像的像素大于該閾值T時,將該像素設置為255;否則,將像素設置為0;
     
    5) 區域填充。為了更好區分指紋中的脊線和谷線,用白色填充指紋上的黑色空間;
    6) 找到指紋圖像中的最大輪廓,然后確定最大輪廓的最小邊界,顯示檢測到的區 域;
    7) 裁剪。繪制第六步感興趣區域的邊界框;
    經過感興趣區域提取算法處理后,便得到了最終的指紋圖像,如圖5.16(c)所示。
     
    (a) (b) (c)
    圖5.16指紋圖像中的感興趣區域,(a)原始指紋圖、(b)有效信息區域(綠色標記)、(c)感興趣區域的 指紋圖
     
    5.4.3自適應學習
    如圖5.17所示,為本節提出的模型殘差網絡模型工作流程圖,其主要包含兩個階段, 一個是預處理階段,一個是訓練和測試階段。在本節實驗中,神經網絡的輸入數據主要 包括兩部分,一個是經過感興趣提取操作后的指紋圖像;另一個是經過局部梯度模式處 理的指紋圖像。預處理階段的操作已在5.4.1和5.4.2兩節中詳細介紹。網絡層越多,不同 層的特征表示越抽象。當CNN模型的層數達到某一極限時,其訓練精度將會趨于穩定,
     
    若繼續增加模型的深度,模型的性能將會下降。而研究表明,該結果并不是由過擬合引 起的。此外,模型的層數是獲得更高檢測性能的關鍵。因而為了進一步提高指紋活性檢 測的性能,本節將深度殘差網絡運用到指紋活性檢測中來,從而解決了卷積神經網絡模 型的層數增加到某一層時,其檢測性能開始下降的問題。余了運用深度殘差網絡模型, 又提出了一個基于自適應學習的深度殘差網絡模型。
     
     
     
     
    J 訓練和測
    試階段
    假真
    圖 5.17 自適應深度殘差網絡的結構圖
    表5.10 LivDet 2015指紋集中圖像的分布表
    指紋掃描儀 分辨率.(dpi) 圖像尺度 訓練集樣本數 測試集樣本數
    真指紋 假指紋 真指紋 假指紋
    Biometrika 1000 1000x1000 1000 1000 1000 1500
    CrossMatch 500 800x750 1510 1473 1500 1448
    GreenBit 500 500x500 1000 1000 1000 1500
    Digital-Person 500 252x324 1000 1000 1000 1500
    5.4.4 圖像增強
     
    為了驗證本節提出模型的性能,除了在兩個標準指紋數據集LivDet 2011和LivDet
    2013上進行了驗證,本文還在LivDet 2015[100]指紋數據集上進行了驗證。關于LivDet 2011 和LivDet 2013指紋集中指紋圖像的詳細信息可參考表3.2,關于LivDet 2015指紋數據集 的詳細信息可參照表5.10。 LivDet 2015數據庫,源自2015年指紋活性檢測競賽,該數據 集共包括19431個真假指紋圖像,通過四種不同的光學掃描儀捕獲。從表5.10中,我們可 清楚地看到LivDet 2015指紋集的分布,指紋集包含兩部分,即訓練集和測試集。其中訓 練集是由4510張真指紋圖像和4473張假指紋構成,且它們之間沒有重疊;測試集由4500 張真指紋和5948張假指紋組成,且它們都是通過四種光學指紋掃描儀采集得到的,如 Biometrika, CrossMatch, GreenBit和Digital-Person。在LivDet 2015指紋數據集中,假指 紋制作只包括兩種方法,一種是在有人協助的情況下制作的,一種是無人協助的情形下 制作的,且制作假指紋的材料主要包括BodyDouble, Ecoflex, Gelatin, OOMOO, Playdoh, Latex, RTV和WoodGlue等。
     
    (a) (b) (c) (d) (e)
    圖5.18指紋圖像及其擴充后的指紋圖,(a)原始指紋、(b)增加亮度的指紋圖(每個像素增加10個像素)、
    (c)壓縮0.9倍后的指紋圖、(d)左右翻轉的指紋圖、(e)逆時針旋轉10度后的指紋圖
     
    接下來,如表3.2和5.10,在三個指紋數據集中,由于每個指紋掃描儀的訓練集的指 紋圖像數量大約都在2000左右,遠不能滿足深度學習對大數據的要求。為此,本節對所 有的訓練集進行了指紋樣本擴充操作。如圖5.18所示,經過四種圖像處理技術操作后, 即亮度增加、左右翻轉、圖像壓縮和旋轉四個操作,每張指紋圖像均能重新生成四張新 的指紋圖像,加上其自身,可將每張指紋圖像擴充成原來的5倍,從而可滿足深度學習
    需要大數據訓練集的要求,如圖5.18所示。
    5.4.5 實驗參數
    本節提出的深度殘差網絡模型共計94層,每層的具體參數見附錄A。附錄A詳細地 給出每個卷積層、池化層、塊正則化層和填充層的名稱。以第三層為例,該層為卷積層, 名稱為conv2d_1,第二層的輸入經過第三層處理之后,其輸出的特征圖的尺度由230x230 變為112x112,且卷積核濾波器的個數為64。該層可訓練的參數共有3200個。在本實驗 中,參數的總個數共有22681218個,其中可訓練的參數有22664194個。除參數個數,在 模型訓練過程中其余的參數分別如下,迭代的次數為70,塊的大小為128。為了提高模 型的泛化性,每輸入一批訓練集樣本進行訓練時,都要將其隨機打亂,并將其20%用來 作為驗證集,其余80%作為訓練集。為了實現自適應參數的調整,程序將會根據驗證集 的閾值進行判斷,若連續5次不再增加,則終止模型的訓練。反之,繼續訓練模型,直 到符合終止條件。訓練完成之后,將精度最高的模型作為最終的模型分類器,并用測試 集來驗證模型分類器的性能。
     
    圖 5.19 LivDet 2013指紋集中指紋掃描儀訓練集和測試集分類精度隨迭代次數增加的分布圖, (a)
    Biometrika 傳感器、 (b) CrossMatch 傳感器、 (c) Italdata 傳感器、 (d) Swipe 傳感器
    5.4.6 實驗結果與分析
    為了測試本節提出的自適應學習深度殘差網絡模型在指紋活性檢測中的性能,本節 分別在三個標準指紋數據集LivDet 2011, LivDet 2013和LivDet 2015上進行了驗證。首先, 進行預處理操作并使用本節提出的感興趣區域算法將指紋圖像中的有效區域提取出來。 圖5.16(a)為原始含有干擾信息的指紋圖像,經過操作后的指紋圖像如圖5.16(c)所示。接 下來,使用本章5.4.4節提出的四個圖像增強算法來擴充指紋圖像的數據集,并將擴充后 的圖像作為模型的輸入。
     
    圖5.20 LivDet 2013指紋集中指紋掃描儀訓練集和測試集誤差損失隨迭代次數增加的分布圖,
    (a)Biometrika 傳感器、 (b)CrossMatch 傳感器、 (c)Italdata 傳感器、 (d)Swipe 傳感器
     
    為了觀測訓練集和測試集的分類精度隨著迭代次數增加的變化趨勢及訓練集和測 試集的誤差損失隨著迭代次數增加的變化趨勢,本文在LivDet 2013指紋數據集上進行了 驗證。如圖5.19(a)(b)(c)(d)所示,分別表示四個指紋掃描儀的訓練精度和驗證精度隨迭 代次數的增加的變化趨勢。除了CrossMatch指紋掃描儀外,其余三個指紋掃描儀當迭代 次數增加到30時,它們的訓練集和測試集的精度基本上都能到達穩定狀態。而在訓練過 程中,四個指紋掃描儀的誤差損失也是逐步降低的,如圖5.20(a)(b)(c)(d)所示,且四個 指紋掃描儀的損失達到平穩狀態時的條件與其相應的精度達到平穩狀態基本上一致。例 如在圖5.20(a)(c)(d)中,基本上當迭代次數增加到30時,其結果均能夠達到穩定狀態。
    此外,為了突出真假指紋圖像的差異和可視化局部梯度模式后的指紋,本文分別從 三個指紋數據集LivDet 2011, LivDet 2013和LivDet 2015中隨機挑出兩張圖像:一張是真 的,一張是假的。使用公式5.7-5.12,可求出相應的局部梯度模式,如圖5.21所示。第一 行為經過感興趣提取操作后的指紋圖像,第二行為其相應的局部梯度模式指紋圖。通過 觀察圖5.21(g)-(l)可知,假指紋圖像對應的局部梯度模式圖像中的脊谷線基本上融合到一 起,圖像質量較差,而真指紋圖像變換后的脊谷線還是較為明顯,圖像質量相對較好。 接下來,將預處理完的指紋圖作為模型的輸入,然后進行訓練。圖5.22表示在指紋集 LivDet 2013上,本文算法的平均分類精度隨迭代次數的變化情況。觀察圖5.22可知,對 于不同的指紋掃描儀,最高的檢測結果可接近100%,而結果比較弱的也在90%附近。總 的來說可以滿足當前的要求。除了可視化精度的分布,本文還使用平均分類性能評估準 則,量化了其結果。在表5.12中,本節的算法分別與其他現有的算法進行了對比。為了 便于觀察,最好結果均用黑色粗體進行標記。通過對比可知,本節提出的兩個算法性能 是最好的。在表5.12中,算法ROI+LGP的平均分類錯誤率是最低的,其為2.96%。本節 提出的ROI算法的結果排名第二,其為2.99%,比ROI+LGP算法的結果高0.03%。本節兩 個算法均比第三名Gabor算法的結果要高,因而在實際應用中,本節提出的兩個算法的 性能會更好。另外,在單個指紋掃描以上,除了CrossMatch的結果比Gabor要弱一點, 其余三個指紋掃描儀上的結果都是最好的。值得注意的是,本節的算法在Swipe的錯誤 率為0.74%,遠超其他算法的性能。
     
    (b) (c) (d) (e) (f)
     
     
     
    除了在LivDet 2013上取得最好的結果,如表5.12所示。本節算法在數據集LivDet 2011和LivDet 2015上均取得最佳的性能。在表5.11中,本節提出的兩個算法的平均分類 錯誤率分別為5.65%和6.68%,比第三名LLF[51 ]的檢測結果都高。觀察表5.11可得,在單 個指紋掃描儀下,本節提出的算法在Italdata的檢測性能較弱,比第一名FUSION的算法 要弱些,但整體性能明顯的要強于FUSION算法。此外本節提出的算法在其余三個指紋
     
    掃描儀上均取得了最佳的結果,并且優勢非常的明顯。在表5.13中,本節提出的方法不 論是在平均分類精度方法,還是在單個指紋掃描儀上的檢測性能,均取得了最佳的結果。 且本節算法的最好結果比現有的J inglian的方法的檢測正確率高1.92%,而在檢測精度如 此高的情況下,還能高出1%以上。
     
    圖 5.23 雷達圖:不同指紋掃描儀的平均分類精度圖, (a)LivDet 2013 的結果、 (b)LivDet 2011 的結果
    本節提出的算法中學習率是自適應調整的,通過使用本節提出的算法,本文在三個 指紋圖像集LivDet 2011, LivDet 2013和LivDet 2015上均取得了最好的結果。此外,本 節還給出了當學習率固定時,其在三個指紋圖像集上的平均分類結果,如表5.14, 5.15 和5.16所示。觀察表中的結果,并且與表5.11, 5.12和5.13比較可知,固定學習率時結果 明顯較弱,這也進一步說明本節提出自適應算法的必要性。此外,為了更直觀的觀測出 檢測的結果,本節還對兩個指紋數據集LivDet 2011和LivDet 2013下的結果用雷達圖進行
    了顯示,如圖5.23所示,藍色對應的是ROI算法,綠色對應的是ROI+LGP算法。當已知 指紋掃描儀為Sagem時,使用ROI+LGP算法能使得檢測精度更好。同理,若已知指紋掃 描儀為CrossMatch,則選用ROI算法,能夠使得檢測結果最好。
    表 5.11 LivDet 2011 指紋集中不同算法對應的分類錯誤率和 ACE 值
    算法名稱 平均分類錯誤率ACE in (%)
    Biometrika Digital Italdata Sagem Average
    ROI 7.6 2.1 11 2.5 5.65
    ROI+LGP 9.6 1.9 13.5 1.72 6.68
    MBLTP [80] 9.7 7 16 5.8 7.745
    FUSION [101] 18.4 15.2 7.8 6.7 12
    LASP [102] 22.6 27.1 17.6 17.58 21.22
    SURF [51] 9.12 7.95 8.35 6.77 8.04
    LLF [51] 7.89 6.25 8.1 5.36 6.9
    BASELINE [101] 20.6 14.0 8.4 8.4 12.9
    WLD [103] 13.3 13.8 27.7 6.7 15.4
    Jia's method [80] 10 7.1 16.3 6.1 9.95
    Best Result in [70] 20 36.1 21.8 13.8 22.93
     
    表 5.12 LivDet 2013 指紋集中不同算法對應的分類錯誤率和 ACE 值
    平均分類錯誤率 ACE in (%)
    算法名稱 Biometrika Crossmatch Italdata Swipe Average
    ROI 2 7.42 1.8 0.74 2.99
    ROI+LGP 1.45 7.91 1.35 1.11 2.96
    Gabor [51] 2.7 4.67 4.02 3.5 3.77
    CN [78] 4.55 5.2 47.65 5.97 15.84
    ULBP [95] 10.68 46.09 13.7 14.35 21.21
    SURF [51] 5.75 6.08 4.6 4.6 5.26
    PHOG [51] 3.87 9.32 6.7 9.05 7.24
    MSDCM [53] 3.55 20.84 2.35 5.25 7.59
    HIGDBP [97] 3.9 28.76 1.7 14.4 12.19
    Winner [59] 4.7 31.2 3.5 14.07 13.37
    表 5.13 LivDet 2015 指紋集中不同算法對應的分類錯誤率和 ACE 值
    算法名稱 平均分類錯誤率 ACE in (%)
    Biometrika Crossmatch Digital-Person GreB Average
    ROI 6.24 3.46 6.8 4.77 5.32
    ROI+LGP 5.56 5.16 8.8 4.93 5.86
    Jinglian [100] 5.92 5.64 11.84 5.56 7.24
    titanz [100] 7.64 8.38 10.96 8.24 8.81
    hbirkholz [100] 6.6 10.07 12 8.64 9.33
    UFRR 2 [100] 28.76 38.84 24.56 12.32 26.37
    UFPE 1 [100] 35.68 40.03 21.64 17.44 28.7
     
     
    表 5.14 LivDet 2015 指紋集中不同學習率對應的分類正確率
    掃描儀 固定的學習率值 平均值
    0.1 0.01 0.001 0.0001
    Biometrika 93.04 92.28 91.24 92.48 92.26
    CrossMatch 94.17 96.47 96.37 94.30 95.33
    Digital-Persona 91.76 91.6 91.96 91.32 91.65
    GreenBit 87.98 89.98 85.77 91.1 88.71
    Average 91.74 92.58 91.34 92.3
     
    表 5.15 LivDet 2013 指紋集中不同學習率對應的分類正確率
    固定的學習率值
    掃描儀 0.1 0.01 0.001 0.0001 平均值
    Biometrika 50 63.45 61.10 92.6 66.79
    CrossMatch 44.44 68.89 88.58 90.84 73.19
    Italdata 50.05 94 50 97.35 72.85
    Swipe 53.55 94.57 93.59 83.09 81.2
    Average 49.51 80.23 73.32 91.1
     
    表5.17為本節算法在三個指紋數據集的平均分類正確率,觀察表可知,ROI算法在
    兩個指紋集LivDet 2011和LivDet 2015上的平均分類精度是最高的,而ROI+LGP算法在
    LivDet 2013指紋數據集上的平均分類正確率最高。因而當了解到指紋來源時,可根據表
    表 5.16 LivDet 2011 指紋集中不同學習率對應的分類正確率
    固定的學習率值
    掃描儀 0.1 0.01 0.001 0.0001 平均值
    Biometrika 89.1 90.1 90.3 57.65 81.79
    Digital-Persona 50 97.80 95.15 96.75 84.93
    Italdata 49.85 83.45 85.05 84.25 75.75
    Sagem 51.23 92.29 56.43 95.33 73.83
    Average 60.05 90.91 81.73 83.5
     
    表 5.17 不同指紋數據集下所有掃描儀的平均分類正確率
    方法 LBP LPQ LTP LCP SDK ROI ROI+LGP
    LivDet 2011 68.19 71.26 67.59 66.79 88.9 94.35 93.32
    LivDet 2013 67.47 66.12 71.32 72.05 97 97.01 97.04
    LivDet 2015 84.84 65.83 76.72 86.39 NA 94.68 94.14
    Average 73.5 67.74 71.88 75.08 NA 95.35 94.83
     
    5.17靈活的選擇檢測算法。不論是ROI算法還是ROI+LGP算法,當與其他幾個算法進行 比較時,本節提出的兩個算法的性能都是最佳的。當然,目前所有測試和實驗都是在材 料和訓練模型均已知的情況下進行的[104],即訓練好的模型中包含所有的假指紋的材料。 現實中會存在這樣一種情況,指紋樣本的訓練集不完整,即某類待測試的假指紋圖像不 包含在訓練集中。為了測試這種情況,本節又在LivDet 2011指紋集上進行了盲材料訓練 和測試的實驗。如表5.18所示,制作假指紋的材料有EcoFlex, Gelatine, Latex, Playdoh, Silgum, Silicone等。進行如下實驗,訓練集不包含該材料制作的假指紋,而測試集僅由 該材料制作的假指紋構成。首先使用上述的訓練樣本集進行模型的訓練,然后再用測試 集進行模型分類器的驗證。四個指紋掃描儀執行盲材料指紋檢測分類錯誤率如表5.18所 示,通過與非盲材料的結果進行對比可知,盲材料的分類錯誤率明顯的偏高。當然,本 文算法在盲材料上的檢測結果比單純的靠猜測要合理和科學。因而在指紋材料未知時, 本文方法也能很好的進行盲材料檢測。
    表 5.18 LivDet 2011 指紋集中進行盲材料指紋檢測的平均分類錯誤率
    假指紋材料 分類錯誤率
    Biometrika Digital Italdata Swipe
    EcoFlex 9.7 —— 19.7 ——
    Gelatine 9.7 7.8 14.15 4.47
    Latex 12.95 3.05 15.4 3.68
    Playdoh —— 11.5 —— 5.26
    Silgum 13.5 —— 15.5 ——
    Silicone —— 2.35 18.95 9.73
    WoodGlue 17.25 10.3 18.95 4.86
     
    5.5 本章小結
    氣象高性能計算機可縮短深度學習算法的訓練時間,并且能進一步提升氣象信息管 理系統檢測真假指紋的準確性。針對當前卷積神經網絡模型在指紋活性檢測中存在圖像 尺度限制、訓練樣本少、參數學習慢且易陷入局部最優、梯度消失等問題,首先總結和 分析了現有的基于卷積神經網絡模型的算法,然后提出了兩種改進的卷積神經網絡模型 的指紋活性檢測算法。
    第一種為基于尺度均衡化神經網絡模型的算法。圖像的尺寸具有多樣性,而大多數 DCNN模型對輸入圖像的尺寸又有嚴格的限制。為了約束指紋圖像的尺寸,裁剪和縮放 是兩種最常使用的方法。但裁剪操作會使圖像丟失一部分關鍵信息,縮放操作易使圖像 的分辨率降低。為了解決該問題,本章提出了一種基于尺度均衡化的指紋活性檢測方法。 另外,大多數 DCNN 模型在更新模型參數時,使用的學習率都是一個固定的值,因而 權值收斂速度慢且易陷入局部最優。為此,本節提出了一種基于學習率自適應調整的方 法。為了驗證FLD算法的性能,本文首次將混淆矩陣應用到FLD。在深度學習中,為 了得到一個更好的模型分類器,訓練集應盡可能的大。如何不使用圖像處理技術就能實 現指紋樣本集的擴充是一個值得研究的方向。生成式對抗網絡[117] (GAN, Generative Adversarial Networks)就是通過生成器和判別器之間互相博弈來生成與輸入指紋相似的 圖像。指紋圖像分辨率的高低決定了指紋活性檢測的性能,而如何使用GAN來擴充指 紋圖像集并得到高分辨率的指紋圖像是下階段研究的重點。
    第二種為基于自適應學習深度殘差網絡模型的算法。首先,本章提出了一個感興趣 區域提取算法以削弱圖像中無效區域的干擾。但隨著卷積神經網絡模型深度的增加,模 型參數會面臨梯度飽和和擴散的問題。為了解決該問題,本節提出將深度殘差網絡運用 到指紋活性檢測中。其次,為了減少反向傳播過程中模型的訓練時間和避免參數陷入到 局部最優,本章設計了一種基于自適應學習的深度殘差網絡模型。此外,本章又提出了 一種基于局部梯度模型的紋理增強算法來突出真假指紋的紋理特性和提高模型的泛化 性。
    第六章 基于多模態深度特征融合的指紋活性檢測算法
    將指紋活性檢測應用到氣象信息管理系統的指紋識別系統中,一方面能解決基于密 碼口令的身份認證方式易被攻擊、泄露或遺忘的難題,另一方面還能降低因攻擊者使用 假指紋非法入侵氣象信息系統帶來的風險。學習真假指紋間的顯著性差異是提高氣象信 息管理系統中指紋活性檢測性能的關鍵,手動的設計一個好的特征提取算法是實現高精 度指紋活性檢測的關鍵。為充分利用深度學習能夠自動地從帶有標簽的數據中學習到描 述原始圖像結構和紋理的特征,本章擬將卷積神經網絡輸出層之前的結構當作一個高級 的特征提取器,用其來自動地提取真假指紋圖像的特征。然后,利用分類器對這些特征 進行訓練和分類。因此,本章將重點研究基于多個卷積神經網絡模型的特征提取過程。 此外,還將研究不同模態特征融合時,相對應的真假指紋圖像的識別性能。
    本章組織結構如下:6.1節是引言;6.2節介紹相關技術;6.3節給出了本文的模型框 架;6.4節介紹了特征提取過程;6.5節介紹了數據集和評估準則;6.6節介紹了本文的實 驗過程和結果;最后對本章研究內容進行小結。
    6.1 引言
    一個好的指紋識別系統,除了能識別用戶身份,還應具有鑒別真假指紋圖像的功能。 特征工程是當前指紋活性檢測研究的重要內容[20][105],特征表示的好壞直接影響模型的 性能。因此,只有掌握專業的指紋處理技術和經驗,才能提出一個科學的、合理的區分 真假指紋的特征描述子。除了需要手動設計特征方法外,還需對提取的特征選擇一個合 適的分類器,而讓手工提取的特征和選擇的分類器的性能同時實現最優化,這是一個非 常有困難和挑戰的工作。
    隨著深度學習技術的出現,上述問題得到了解決。深度學習無需手動的設計特征提 取算法,通過搭建一個帶有隱層結構的卷積神經網絡模型框架,便能自動的從數據中學 習特征表示,從而避免了復雜的手工特征提取過程。深度學習已被應用到指紋活性檢測 中,如 Nogueira 等[54]首次將卷積神經網絡技術應用到指紋活性檢測中去,并得到非常 好的檢測精度;Park等[55]提出一個帶有革蘭氏模量卷積神經網絡模型的端到端的指紋活 性檢測算法,該方法降低了模型的參數;Wang等[56]和韓國朝鮮大學Jung等[93]也用深度 學習技術搭建了一個指紋活性檢測模型。但是,上述這些方法都是端到端的模型結構, 即輸入一張圖像,便輸出相應的分類或預測結果。由于深度學習能夠自動的學習更加高 層的語義特征,所以基于深度學習檢測算法的識別準確率高于傳統的手工特征工程的方 法,本文將卷積神經網絡模型輸出層之前的結構視為一個特征提取器,提出一種基于多 模態深度特征融合(MDF-Fusion, Multi-modality Deep Feature Fusion)的指紋活性檢測 算法,從而解決了傳統特征工程中的常見難題,如特征提取和選擇過程復雜、過度依賴 指紋處理專業知識、需要調試大量的參數等。
    6.2 相關技術
    6.2.1遷移學習
    隨著深度神經網絡模型層數的增加,經過交替的前向傳播預測和反向傳播參數更新 后,便能從大量的帶有標簽的數據中準確的學習一個有關數據從輸入到輸出映射關系的 網絡模型。雖然深度學習在圖像分類任務中已取得了較好的結果,但訓練好的模型缺乏 遷移到新環境的能力,即只有當訓練集和測試集來自同一個特征空間或滿足同一數據分 布時,使用預訓練模型進行測試或預測的效果才會較好。反之,若測試集中的數據來自 其他的特征空間,那么測試或預測的效果會非常的不理想。主要原因在于,預訓練的模 型參數是針對特定的數據集,而現實世界中的場景具有復雜和多樣性,其中有很多全新 的內容在原始訓練集中都未曾出現過,因此當用訓練好的模型去預測那些新環境或未知 的內容時,將無法得到一個較好的分類或預測結果。另外,傳統機器學習通常有兩個基 本假設,即訓練集與測試集的數據滿足獨立同分布和必須有足夠多的訓練樣本。但現實 生活中,這兩個基本假設有時很難滿足,而近年來在機器學習領域受到廣泛關注的遷移 學習恰恰解決了這個問題。前百度首席科學家、斯坦福大學教授吳恩達認為遷移學習[106] 將是繼監督學習[107]方法后,推動機器學習在商業中廣泛應用的助推器。
    遷移學習[106]是一種將現有的知識遷移到新任務中,來解決目標域中訓練數據不足 或僅有少量有標簽數據甚至沒有帶標簽數據的學習問題,即把在源域中解決原始任務時 獲得的模型參數保存下來,并將其應用到我們新目標域中的任務中。對計算機而言,遷 移學習就是通過對現有的模型算法稍加調整,則可應用到一個全新的領域。由于被賦予 了人類特有的舉一反三的智慧,遷移學習能夠將適用于大數據的模型遷移到小數據上, 發現問題的共性,從而將通用的模型遷移到個性化的數據上,實現參數的個性化遷移。 訓練集中的指紋圖像是有限的,將源域中預訓練的參數傳遞給圖 6.1 的目標域,可以解
     
    決訓練集不足的問題,同時還可以得到一個適應于指紋活性檢測的模型參數。
    Fc(N+1)-Fc(N+2)
    VGG 16、 Inception V3 和 AlexNet
    保存微調后模型的參數,并將
    其用來提取指紋圖像的特征
    圖 6.1 卷積神經網絡模型的參數預訓練和微調結構圖
    6.2.2 圖像集增強和參數微調
    深度學習只有在訓練樣本集足夠大時,才能將模型分類器的性能發揮到最佳。否則, 基于深度學習和機器學習的兩種算法的識別性能相接近。為了驗證本章提出的指紋活性 檢測算法的性能,本文在LivDet 2011和LivDet 2013兩個指紋數據集上進行了測試。如 表3.2所示,在 LivDet 2011 和 LivDet 2013 兩個指紋數據集中,每個指紋掃描儀對應的 訓練樣本集的大小基本上為 2000,其中真指紋和假指紋大約各占一半。其指紋圖像的數 量遠不能滿足深度學習的大數據要求,為此,本章使用四種圖像處理技術,即增加亮度、 左右翻轉、壓縮和旋轉,分別對每張圖像進行了擴充運算。經過擴充操作后,可將指紋 圖像的訓練集擴充到原來的 5 倍。如圖 6.1 所示,為本章設計的模型參數訓練方法示意 圖。同樣,為了進一步解決訓練集不足的問題,本章還對模型進行了預訓練操作,并將 訓練好的參數傳遞給目標域。即 ImageNet 數據集作為訓練集,分別在三個經典的卷積 神經網絡模型(AlexNet, Inception V3和VGG 16)上進行預訓練,訓練完成后便可得 到三個模型下的預訓練參數,并將其保存。由于這三個模型均是在 ImageNet 數據集下 通過預訓練得到的,而ImageNet中的圖像和LivDet指紋圖像具有差別,為了將模型參 數分別遷移到圖 6.3 中的三個卷積神經網絡上,并用來后續的指紋圖像特征提取,對源 域中預訓練的模型參數進行微調是很有必要的,如圖 6.1。微調操作[96]對應的是目標域, 目標域中的三個卷積神經網絡模型圖與源域的三個卷積神經網絡模型相同。在參數微調 時并不需要更新所有層上的參數,一是由于訓練時間長,二是在反向傳播更新模型參數 時易產生梯度消失的問題。因此,只更新部分層上的參數即可。本章從兩個指紋訓練集 LivDet 2011和LivDet 2013中隨機的挑選一部分指紋圖像,只微調三個模型上的全連接 層參數。首先將源域中預訓練的參數傳遞給目標域,然后將目標域上全連接層外的參數 鎖定,只微調全連接上的參數,便得到了最終的模型。最后,將三個微調后的參數分別 遷移到圖 6.3 中相應的 CNN 模型中,分別提取出訓練集和測試集樣本的指紋特征。
     
    分類器 預測值 最終結果
     
    圖 6.2 堆疊分類器的工作流程
    6.2.3堆疊分類器
    堆疊分類器[116]主要由兩個階段分類器構成,基分類器會把第一階段分類器的輸出值 重新組建成一個新的訓練樣本集,并將新的訓練樣本集作為第二階段元分類器的輸入, 經過元分類器的訓練之后,其輸出結果即為最終的預測結果。堆疊(有時稱為堆疊泛化) 意味著可以訓練一個結合其他弱模型的強分類器模型。如圖 6.2所示,首先將特征集使 用“(”>1)個分類器進行訓練并得到預測輸出值。接下來,將會給輸出的預測值賦予 一個權值w,然后把第一階段的所有預測值與權值相乘并求和,可重新生成一個新的數 據P,且P = Pi X Wi + P2 W2 + ^ + Pn Wna第一階段執行完成后,把新建的數據集P 輸入到元分類器中,并再次進行訓練。在第二階段訓練過程中,輸入值的權值會不斷的 被修正,直至滿足預測值與真實值相等或相近則停止訓練。例如,第一階段訓練過程中, 若某個分類器將一個樣本錯判,也就是原始圖像為真指紋,但預測出的結果為假指紋; 或者原始圖像為假指紋圖像,而預測的結果為真指紋。那么當經過第二階段的分類器時, 分類器將會判斷預測結果與真實的標簽是否一致,若發現兩者不等,則將相應樣本的權 值賦予一個較小的權重;同理,若是預測結果與給定的結果相一致,那么相應的分類器 的權值則賦予一個較大的值。也就是說,第二個階段的分類器能夠根據第一階段的其他 分類器學習到正確的分類。最后使用訓練得到的模型對測試集進行預測,從而可以驗證 模型的性能。在堆疊分類器中,本節使用兩種類型的分類器:一種是Logistic回歸(LR), 另一種是支持向量機(SVM)。
    關于堆疊分類器的算法詳細步驟如表 6.1 所示:
    表 6.1 堆疊分類器算法的執行過程
    輸入:訓練樣本特征集D = {xi,yi}=
    輸出:集成分類器 E 和分類器的測試結果 R 步驟1:訓練得到 T 個基分類器 for t = 1 to T do
    基于訓練集D學習t個基分類器S
    end for
    步驟2:根據基分類器輸出的預測值,重新構建一個新的數據集Db
    for i = 1 to m do
    Db = {x'i,yi},其中x'i = {bi(xi),b2(xi),^,bT(xi)}
    end for
    步驟 3:學習得到一個元分類器
    基于新建的訓練集Db學習得到最終的元分類器E
    步驟 4:模型分類器性能驗證
    用測試集來驗證訓練好的模型分類器E,其結果為R 返回R
    6.3多模態深度特征融合框架
    基于深度學習的方法能夠自動的從帶有標簽的數據集中擬合樣本集分布函數,現已 被廣泛地應用到我們的日常生活中。本章將卷積過程看成是一個特征提取器,并使用三 個經典卷積神經網絡模型(AlexNet[109], VGG 16 [110]和 Inception V3[111,112])來提取指紋 圖像的特征,如圖 6.3 為本章提出的多模態特征融合框架圖。在特征提取前,需要進行 遷移學習,并隨機的從指紋樣本集中抽取部分指紋圖像,用來微調神經網絡模型的參數, 并得到最終的模型分類器。然后,基于預訓練好的參數,使用三個經典的 CNN 特征提 取器學習最后一個全連接層的輸出,將其作為原始指紋圖像的特征向量。最后將特征融 合在一起并輸入到分類器中進行訓練和測試。
     
     
    圖 6.3 多模態深度特征融合框架圖
    6.4 特征提取
    卷積神經網絡模型的層數越深,學習抽象特征的表示能力越強。因此,本章將三個 經典卷積神經網絡模型(即VGG 16, AlexNet和Inception V3)作為特征提取器,并將 最后一個全連接層的輸出作為自動學習得到的特征向量。真指紋和假指紋的細微差別主 要反映在交替出現的脊線和谷線上,而其余的將被視為噪聲且會影響最終的特征提取, 同時會進一步影響最終的指紋活性檢測。首先使用本文提出的感興趣區域提取算法來消 除這些空白區域,并將處理后的圖像塊作為模型的輸入。如圖5.16所示,經過處理后, 可將指紋圖像的空白區域剔除掉,只保留有效的脊線和谷線部分。接下來,為了解決指 紋樣本集不足和提高模型分類器的泛化性能,本章使用四種圖像處理技術來擴充指紋的 訓練樣本集,即圖像旋轉、縮放、翻轉和亮度增強。然后將上述處理完的圖像分別使用 三個搭建好的卷積神經網絡模型框架進行特征自學習。在特征提取前,需要分別對三個 CNN模型進行遷移學習和模型微調兩個操作。關于遷移學習,首先用ImageNet作為訓 練集,分別訓練三個CNN模型(VGG 16, AlexNet和Inception V3)的參數,如圖6.1 所示。三個 CNN 模型的參數訓練完成后,將三個預訓練的參數遷移到目標域中,然后 從兩個指紋數據集LivDet 2011和LivDet 2013的訓練集中隨機挑選一分部圖像,用來后 續的參數微調。參數遷移到目標域后,三個 CNN 模型除了全連接參數外,其余層的參 數被鎖定,用指紋訓練集進行參數微調,也就是只更新全連接層上的參數。經過遷移學 習和模型微調之后,便得到了關于指紋樣本集的訓練參數,接下來將訓練好的模型參數 保存下來,并把它傳遞給圖 6.3 中的特征提取階段,作為模型參數的初始化值。然后, 經過三個卷積神經網絡模型特征提取器之后,便自動學習到每張圖像的特征向量,而將 三個模型最后一個全連接層的輸出作為指紋圖像的特征。經過 VGG 16, AlexNet 和 Inception V3 三個模型操作后,輸出的特征向量維度分別為 4096, 4096和 2048。為了削 弱異常值的影響,需將提取的特征向量分別進行歸一化處理。緊接著,將三個歸一化操 作的特征向量拼接到一起,并將其輸入到分類器中進行訓練和測試。堆疊分類器的訓練 包含兩個階段,在第一階段,首先將訓練集的提取特征輸入到邏輯回歸分類器,并得到 其屬于真指紋或者假指紋的預測概率。接下來,將第一階段的計算得到的結果視為一個 新的訓練集,并作為元分類器的輸入,用于獲得最終輸出。
    6.5圖像集與評估準則
    為了驗證本章提出算法的性能,本章分別在兩個指紋數據集LivDet 2011和LivDet 2013 上進行了驗證,并做了多組對比實驗。關于這兩個指紋數據集的描述,本文已經在 3.4節進行了詳細的介紹,關于數據集的詳細參數可參考3.4節的內容。對于指紋活性檢 測的評估性能,本章采用的是計算平均分類錯誤率的方法,該方法的詳細定義和介紹可 參考 3.5 節。
    6.6實驗結果與分析
    本章算法的檢測結果與其他算法的對比結果如表6.2和表6.3 所示。在表6.2和 6.3 中,為了清楚的觀察每個算法在單個指紋掃描儀下分類性能和平均分類性能,本章將表 6.2和表6.3 中最好的結果用黑色粗體進行了標記。因為單個指紋掃描儀檢測結果的好壞 無法反映算法的整體性能,所以本章在算法性能的評估中只關注平均分類錯誤率,即平 均分類錯誤率的值越小,該算法的性能就越好。當然,若單個指紋掃描儀的錯誤率和總 體平均分類錯誤率均最小,這是最理想的情況。而受到外界環境和人為因素的影響,很 難使兩者均最優。如表 6.2 和 6.3 可知,本章提出的算法在兩個指紋數據集上的平均分 類錯誤率都是最低的。在表 6.2 中,平均分類錯誤率為 5.05%,比第二名 Gragnaniello 等[49]的結果要低 1.14%,而其他算法的平均分類錯誤率均在 6%以上。除了在平均分類 錯誤率方面取得最好的結果,本章在單個指紋掃描儀 Biometrika 和 Italdata 也均取得最 好的結果,其錯誤率分別為 2.8%和 3.3%。同時,與其他幾個算法相比,本章提出算法 的優勢也非常的明顯,比排名第二的兩個指紋掃描儀分別低3.9%和1.79%。但是,本章 提出的算法在 Digital 和 Sagem 兩個指紋掃描儀上的結果并不是最佳的,分析其中的原 因是受到指紋掃描儀自身影響。換言之,在已知指紋掃描儀的前提下,可以根據表 6.2 的結果選擇方法。若指紋圖像來自于 Biometrika 指紋掃描儀,則采用本章提出的算法, 而若指紋圖像來自于Sagem指紋掃描儀,就采用xia等[98]提出的算法。實際應用中,很 難確定待測指紋圖像到底是來自哪一種指紋掃描儀,而為了將分類錯誤率盡可能最小化, 就會優先考慮本章提出的算法。在表6.3中進行相同的分析,本章提出算法的平均分類 錯誤率依舊是最低的,其結果為 4%,比排名第二的[51]要低 3.24%,所以本章提出的算 法優勢更加的明顯。在表6.2中只有兩個指紋掃描儀的分類錯誤率是最低的,而在表6.3 中,有三個指紋掃描儀比其他的算法要低,這三個指紋掃描儀分別為 Biometrika、 CrossMatch和Swipe,其相應的結果分別為3.2%, 5.6%和4.7%。而對于Italdata指紋掃 描儀,其分類錯誤率的優勢不夠明顯,比排名第二的[53]高 0.8%。但整體而言,本章提 取的算法在LivDet 2013上表現的結果是最佳的。另外,分析表6.2和表6.3可知,兩個 指紋數據集均使用了 Italdata指紋掃描儀,在LivDet 2011指紋數據集上的結果表現的比 較好,而在LivDet 2013上表現的不是很理想。盡管兩個指紋數據集均使用了 Italdata指 紋掃描儀,但采集到的指紋圖像的分辨率是不同的,如表3.2所示。在 LivDet 2011 指 紋數據集中,Italdata指紋掃描儀采集圖像的分辨率較高,而在LivDet 2013指紋數據集 中,圖像對應的分辨率較低。由于指紋圖像的分辨率越低,圖像中對應的細節信息越少。 反過來,這也會削弱算法判斷真假指紋圖像的性能。
    表 6.2 LivDet 2011 指紋集中不同算法對應的分類錯誤率和 ACE 值
    算法名稱 平均分類錯誤率ACE in (%)
    Biometrika Digital Italdata Sagem Average
    Our Method 2.8 8.9 3.3 4.9 5.05
    CN [78] 9.9 1.9 5.09 7.86 6.19
    AugCN [78] 8.25 3.65 9.27 4.64 6.45
    LPQ+PCA [80] 7.1 9.7 10.5 7.2 8.63
    GBT [98] 6.7 4.75 11.75 3.34 6.64
    Fusion [101] 18.4 15.2 7.8 6.7 12
    LASP [113] 22.6 27.1 17.6 17.58 21.22
    WLD [103] 13.3 13.8 27.7 6.7 15.4
    LLFSA [51] 7.89 6.25 8.1 5.36 6.9
    Best Result in [70] 20 36.1 21.8 13.8 22.93
     
    用深度學習技術來提取圖像的高層特征,解決了傳統特征工程中有關特征算法設 計和參數選擇復雜的問題。本章除了驗證單模態特征提取算法的檢測性能,還設計了一 種多模態特征融合的模型框架。特征組合方式不同,算法的檢測性能也不同,本章還分 析了不同模態特征組合下的分類性能。當指紋圖像的特征構建完成之后,再用分類器進 行訓練和測試。除了使用堆疊分類器來訓練模型,本章還使用了兩個經典的分類器:一 個是極限學習機(ELM[114] [115], Extreme Learning Machine)分類器,一個是常用 softmax 分類器。三個分類器在兩個指紋數據集上的實驗結果分別如圖6.4(a)和(b)所示。相比較 而言,當輸入到分類器的特征向量相同時,堆疊分類器的檢測性能(如圖 6.4 中的藍色 柱狀圖)明顯的要高于ELM和softmax兩個分類器。如圖6.4可知,本文提出的算法在 三個分類器上均取得較好的結果,說明本文提出的算法能更好地識別真假指紋圖像。
    表 6.3 LivDet 2013 指紋集中不同算法對應的分類錯誤率和 ACE 值
    算法名稱 平均分類錯誤率ACE in (%)
    Biometrika Crossmatch Italdata Swipe Average
    Our Method 3.2 5.6 2.5 4.7 4
    ULBP [95] 10.68 46.09 13.7 14.35 21.21
    HIG-MC [53] 4.3 39.96 10.6 32.41 21.92
    UniNap [59] 4.7 31.2 3.5 14.07 13.37
    HIG-BP [53] 3.9 34.13 8.3 14.44 15.19
    PHOG[51] 3.87 9.92 6.7 9.05 7.24
    MSDCM[53] 3.55 20.84 2.35 5.25 7.59
    BIIG [53] 3.9 28.76 1.7 14.4 12.19
    Winner[59] 4.7 31.2 3.5 14.07 13.37
     
     
     
    圖6.4在指紋數據集LivDet 2013和LivDet 2011中,不同分類器下對應的分類正確率
     
    在圖6.3中,首先使用三個經典的CNN模型獲得網絡最后一個全連接層上的輸出, 并將其作為樣本的特征。為了驗證歸一化是否影響最終的平均分類器錯誤率,本章以指 紋集 LivDet 2011 為例,將兩個模態下的特征進行隨機組合,即 AlexNet+InceptionV3, AlexNet+VGG16和VGG16+ AlexNet,然后對三種組合進行兩組實驗:一組是將融合的 特征經過歸一化處理;另一組實驗是未經過歸一化處理。表6.4分類列出了三種特征融 合數據在四個指紋儀下的平均分類錯誤率。通過觀察可知,對于同一個指紋掃描儀,不 同模態的特征融合其最終的分類錯誤率一般也不同。在不同組合條件下,每種模態組合 均能夠取得最佳結果。另外,通過對比歸一化的和未歸一化的分類錯誤率,兩者在相同 條件下的檢測結果相差不大,但是經過歸一化操作的檢測錯誤率會更低,這也說明了使 用卷積神經網絡模型作為特征提取器,其提取的特征更穩定。
    表 6.4 LivDet 2011 指紋集中任意兩組特征組合的分類錯誤率
    特征融合 執行歸一化 未執行歸一化
    Biometrika Crossmatch Italdata Swipe Biometrika Crossmatch Italdata Swipe
    AlexNet+VGG16 13 8.9 18.5 6.7 12.8 8.9 17.7 6.5
    AlexNet+InceptionV3 12 9.9 3.6 4.9 12.3 10.4 17.4 5.0
    VGG16+InceptionV3 3.8 11.8 5.0 7.0 4.6 11.7 8.2 7.5
     
    表 6.5 在指紋數據集 LivDet 2011 上,訓練集和測試集的特征提取所消耗的時間
    測試集特征提取的時間(S) 訓練集特征提取的時間(S)
    特征融合
    Biometrika Crossmatch Italdata Swipe Biometrika Crossmatch Italdata Swipe
    AlexNet 10.73 9.28 11.79 9.43 13.79 14.33 12.02 12.14
    VGG16 21.83 20.36 24.05 21.35 23.5 21.91 24.13 22.33
    InceptionV3 62.90 65.89 66.99 69.4 77.43 77.61 79.39 79.49
     
    此外,由圖 6.3 可得,使用三個卷積神經網絡模型作為特征提取器,特征提取過程 是并行執行的。為了完成該實驗,特征提取包括兩塊,一塊是提取訓練集的特征集,一 塊是提取測試集的特征。前者用于訓練一個模型分類器,后者用來驗證模型分類器的性 能。在特征提取過程中,本章也詳細的記錄了每個卷積神經網絡模型特征提取器提取每 個指紋掃描儀的訓練集和測試集的時間,如表6.5所示。模型層數越深,從輸入層到最 后一個全連接層所需的時間越多。如圖6.3所示,AlexNet模型一共有8層,包括5個 卷積層和3個全連接層,最后一層特征輸入的維度為4096。VGG 16模型一共有16層, 包括13個卷積層和3個全連接層(原始的VGG 16層最后一個全連接為標簽輸出層, ImageNet競賽圖像分類共計1000類,因此最后一個全連接層的輸出為1000,而在我們 提取特征時,把最后一層去掉,即VGG 16提取的特征維度為4096)。Inception V3 一共 有48層,包括47個卷積層和1個全連接層,最后一層特征輸入的維度為2048。關于每 個模型提取指紋圖像特征的時間如表6.5所示,由于AlexNet模型的層數最淺,所以每 個指紋掃描儀提取圖像的特征時間最少, Inception V3 模型的層數最深,同一種指紋掃
     
    描儀下所需的時間最多,而VGG 16的時間介于兩者之間。
    表 6.6 LivDet 2013 指紋集中不同特征組合的分類正確率和測試時間
    特征融合 分類正確率 測試時間(S)
    Biometrika Crossmatch Italdata Swipe Biometrika Crossmatch Italdata Swipe
    AlexNet 93.4 89.8 95.3 89.6 22 48 50 60
    VGG16 95.0 87.8 94.2 92.2 26 50 40 40
    InceptionV3 95.2 85.5 94.5 91.4 14 24 20 20
    AlexNet+VGG16 87 91.1 81.5 93.3 71 46 85 113
    AlexNet+InceptionV3 88 90.1 96.4 95.1 35 44 42 64
    VGG16+InceptionV3 97.2 88.2 95.0 93.0 433 34 29 94
    AlexNet
    +VGG16+InceptionV3 96.8 94.4 97.5 95.3 90 110 1780 100
     
    表 6.7 LivDet 2011 指紋集中不同特征組合的分類正確率和測試時間
    特征融合 分類正確率 測試時間(S)
    Biometrika Digital Italdata Sagem Biometrika Digital Italdata Sagem
    AlexNet 82.0 87.2 82.0 91.3 30 20 40 73
    VGG16 82.8 85.1 69.9 90.1 30 30 42 69
    InceptionV3 83.3 83.0 72.8 89.7 11 10 13 36
    AlexNet+VGG16 87 91.1 81.5 93.3 71 46 85 116
    AlexNet+InceptionV3 88 90.1 96.4 95.1 35 44 42 64
    VGG16+InceptionV3 97.2 88.2 95.0 93.0 433 34 29 94
    AlexNet
    +VGG16+InceptionV3 89.1 91.1 82.2 94.1 70 110 60 140
     
    本章除了測試融合特征后的檢測性能,還測試了單模態下的檢測精度及測試時間。 表 6.6 所示為 LivDet 2013 指紋數據集下對應的平均分類正確率和相應的測試時間,分 析可知,單模態的檢測性能要低于多模態的檢測性能,如CrossMatch、Italdata和Swipe 三個指紋掃描儀的檢測性能,基本上都滿足二模態的檢測性能要高于單模態的檢測性能, 三模態的檢測性能又高于二模態的檢測性能。當然也存在個例, Biometrika 指紋掃描對 應的二模態和單模態的檢測結果。關于測試時間,以表3. 2中的Biometrika指紋掃描儀 為例,測試樣本集為2000,三模態的測試時間為90s,也就是每張指紋圖像的測試時間 大約在 45ms 左右,在實際應用中,用戶基本上在覺察不到的情況下就完成了真假指紋 地驗證。表6.7的分析同表6.6,通過觀察表6.7可得,三模態的分類正確率不是最高的, 相反二模態的分類正確率是最好的,這也符合多模態的分類正確率高于單模態的正確率 這一理論。
    6.7 本章小結
    學習真假指紋間的顯著性差異是提高氣象信息管理系統中指紋活性檢測性能的關 鍵。指紋活性檢測性能的好壞,除了需要手工的設計特征算法及調試大量的參數外,還 需要有大量的指紋圖像處理知識和經驗。另外,特征提取完后,還需選擇一個合適的分 類器,而讓人工特征和分類器兩者性能同時達到最優是一個非常困難的工作。深度學習 技術無需手動的設計特征提取算法,能夠自動從帶有標簽的數據中學習到描述原始圖像 結構和紋理的特征。
    當前基于端到端深度學習的活性檢測方法[54-56]的效果明顯高于基于手動特征工程 的指紋活性檢測算法[39, 46-50]。但這些方法采用的都是端到端的檢測結構,即輸入一張圖 像,便能獲得該樣本的分類或預測結果。深度學習能夠自動學習到區分真假指紋圖像的 復雜特征,因此本文將 CNN 模型輸出層之前的網絡結構當作一個特征提取器,提出了 一種多模態特征融合的指紋活性檢測算法。首先使用感興趣區域提取算法消除指紋圖像 中無效區域的干擾。然后,將處理完的圖像直接輸入到搭建好的 CNN 模型中,并將模 型的輸出作為樣本的特征表示。另外,在特征提取前,需進行遷移學習和模型微調兩個 操作,將微調后的參數作為特征提取器的初始值。為了提高模型的泛化性能,還對指紋 訓練集進行了樣本擴充,并分析了三個模態特征融合后在分類器中的性能。最后,本文 還使用了兩個經典的分類器ELM和so仕max來測試本文算法的性能。
    本章僅用三個經典的 CNN 模型來提取指紋的特征,便得到了較好的檢測性能。若 是在特征提取時再添加多個CNN模型作為特征提取器,如ResNet, DesNet, MobileNet 或GoogLeNet 等,是否能進一步提高指紋活性檢測的性能?這是本文接下來將要開展的 工作。此外,本章直接將不同模態下的特征進行拼接,而特征融合方法還有很多,如特 征相加、相乘、取極值或平均等多種運算。因此接下來,本文將會對特征融合方法進行 研究,建立一個統一的多模態深度特征融合理論及體系結構。
     
    第七章 基于指紋識別的雷電災害防御專業氣象服務登錄系統
    利用第三章提出的特征算法,本文首先開發了一款支持指紋活性檢測的指紋識別系 統。另外,近期與湖南省氣象災害防御技術中心開展項目合作中,我們為其開發了一套 基于指紋識別的雷電災害防御專業氣象服務登錄系統。為解決指紋識別易被偽造指紋欺 騙的缺陷,我們還將已開發的指紋活性檢測模塊移植到雷電災害防御專業氣象服務登錄 系統中,如圖 7.1 紅色虛線框,從而確保登錄雷電災害防御專業氣象服務系統用戶身份 的真實和系統中雷災數據的安全和完整。
     
    圖7.1基于指紋識別的雷電災害防御專業氣象服務登錄系統的實現流程
    圖 7.1 是我們為湖南省氣象災害防御中心開發的一款基于指紋識別的雷電災害防御 專業氣象服務登錄系統的實現流程,其包括兩個關鍵部分,指紋活性檢測部分和指紋識 別部分。首先用指紋采集儀獲取用戶指紋(待測指紋可能為真,也可能是偽造的),然 后將采集的指紋圖像輸入到指紋活性檢測部分,使用本文第三章提出的算法來判斷待測 指紋的真偽。若判斷為假指紋,則未通過活性檢測,并給出“操作不規范,請使用真指 紋”的提示,重新采集指紋;若判斷為真指紋,則指紋活性檢測通過,并將其輸入到指 紋識別部分,進行指紋匹配操作。若匹配失敗,則給出“匹配失敗,請重新用指紋登錄” 的提示。若匹配成功,那么用戶便能夠成功登錄雷電災害防御專業氣象服務系統。該系 
    統的指紋活性檢測部分采用的是本文第三章提出的檢測算法,關于該算法具體實現流程 見本文3.2節;而該系統的指紋識別部分采用的是基于Harris指紋特征點的余弦相似度 匹配算法。
    本章組織結構如下: 7.1節介紹指紋識別的執行過程, 7.2節介紹了指紋活性檢測系 統的實現, 7.3節是為湖南省氣象災害防御技術中心開發的一款基于指紋識別的雷電災害 防御專業氣象服務登錄系統。
    7.1 指紋識別
    當前指紋識別技術已較為成熟,因此我們使用現有的算法來完成一個指紋識別系統。 首先使用Microsoft Visual Studio作為開發平臺,結合指紋掃描儀配有的SDK二次開發 包來獲取指紋圖像。然后用OpenCV包中自帶的Harris角點檢測函數提取出圖像的特征。 最后,通過計算特征向量間的夾角余弦來判斷兩張圖像間的關系。如圖7.1中的指紋識 別部分,其主要包含4個步驟,分別為圖像輸入、圖像預處理、特征提取和特征點匹配。 詳細實現過程如下:
     
    圖 7.2 指紋活性檢測系統初始化
     
    1)指紋采集
    首先,我們已經購買了一個傳感器型號為 U.are.U 4000B 的 digitalPerson 指紋采集 儀,同時它會配備一個 SDK 二次軟件開發包,通過使用開發包中的接口函數便能夠獲 取指紋圖像,其函數為 OnOnImageReceivedZkfpengx2(BOOL FAR* AlmageValid)。注意,
    指紋采集儀在連接至計算機前,需要先安裝掃描儀驅動,待驅動安裝完畢,再根據提示
    將指紋掃描儀插入計算機的USB 口,然后點擊“Connect Sensor”按鈕,系統將會彈出
    如圖7.2 “Initial Succeed”的提示對話框,此時表明指紋掃描儀和電腦連接成功,實現
    指紋采集儀和計算機該連接功能的核心代碼如下:
    void CDemoDlg:: OnBTNInit()
    { char buffer[10] = {0};
    if (zkfpEng. InitEngine() == 0)
    { EnableButton(true);
    zkfpEng .put_FPEngineVersion(" 10");
    fpcHandle = zkfpEng.CreateFPCacheDBEx();
    m_SN = zkfpEng.get_SensorSN();
    ltoa(zkfpEng.get_SensorIndex(), buffer, 10);
    m_Cur = buffer;
    SetDlgItemText(IDC_EDTCUR, m_Cur);
    SetDlgItemText(IDC_EDTCOUNT, m_Count);
    SetDlgItemText(IDC_EDTSN, m_SN);
    MessageBox("Initial Succeed");
    }
    else { zkfpEng.EndEngine();
    MessageBox("Initial Failed");
    }
    m_isReg = false;
    }
    若連接失敗,則彈出“Initial Failed”的提示對話框。此時若想斷開連接,直接選擇
    圖7.2中的"Disconnect Sensor"按鈕即可。我們把采集的指紋圖像保存到tmp_collect.bmp
    文件中,后續對指紋圖像的各種操作都是基于該采集的指紋圖像,掃描儀獲取指紋圖像
    的代碼為:
    void CDemoDlg:: collectfingerprint()
    { char buffer[64] = {0};
    zkfpEng.SaveBitmap("tmp_ collect.bmp");
    sprintf(buffer, "Fingerprint captured and saved in file \"tmp_ collect.bmp\"\n"); SetDlgItemText(IDC_EDTHINT, buffer);
    }
    若要讀取指紋掃描儀采集的指紋圖像,直接用OpenCV包里的cvLoadImage()函數 加載圖像即可,讀取圖片的程序代碼為:
    IplImage *img_Cvload = cvLoadImage(".\\tmp_ collect.bmp");
    Mat img=img_Cvload;
    2)預處理
    當采集指紋圖像時,因力度和其他因素的影響,使得采集的灰度圖有很大的差異。 因此,為了將灰度值調整到同一范圍內,需要對獲取的指紋圖像進行歸一化操作,在這 里我們直接調用OpenCV中自帶的cvCreateImage()函數,便能對圖像進行歸一化處理。 另外,由于指紋脊線具有一定的寬度,而我們進行指紋識別時,只要知道指紋脊線的走 向即可,而單像素寬度的脊線已經能夠很好的刻畫指紋脊線的走向。因此,直接調用 OpenCV包中自帶的thinImage()函數,便能夠對歸一化后的灰度圖執行細化操作。
    3)特征提取
    實現指紋識別的關鍵便是學習一個好的特征描述子,指紋圖像的脊線上存在大量斷 點,世上沒有兩枚相似的指紋,因此斷點相同的概率非常的小,在這里,我們直接用 Harris角點檢測法來提取指紋圖像中不同的特征點,并將其作為指紋圖像的特征。Harris 特征點的提取采用的是OpenCV包中自帶的Harris檢測函數cornerHarris(InputArray src, OutputArray dst, int blockSize, int ksize, intborderType=BORDER_DEFAULT),其中第一個 參數表示源圖像,第二個參數用來存儲提取的Harris檢測點,第三個參數表示領域塊的 大小,第四個參數為sobel算子的大小,最后一個參數表示像素的邊界模式。至此,指 紋圖像的特征提取就完成了。
    4)特征向量匹配
    按照上述三個步驟,完成所有用戶的指紋注冊過程,并將所有用戶的指紋特征存儲 到數據庫中,用于后續的指紋識別。因為指紋特征數據庫中已包含所有注冊用戶的指紋 特征,為了驗證待測試的指紋是否為注冊用戶,只需進行一對多的匹配操作。在這里, 我們利用余弦相似度法來計算待測試指紋與數據庫中指紋的關系。用feature1和featuren 分別表示待測試指紋的特征,數據庫中的任意一個指紋圖像特征,若兩者間的余弦夾角 為零,則表示匹配成功。反之,則繼續計算feature】與其特征向量余弦夾角的關系,直 到遍歷完數據庫中的所有指紋特征向量。其中計算夾角余弦的代碼如下:
    double cosine(const vector<double>& feature1, const vector<double>& featuren)
    { assert(feature 1.size() == featuren.size());
    return dotProduct(feature1, featuren) / (module(feature1) * module(featuren));
    }
    至此,指紋識別過程執行完畢。
    7.2 指紋活性檢測
    盡管指紋識別技術已非常成熟,但是目前大多數指紋識別系統并未采取相應的措施 來抵御偽造指紋的欺騙。因此,我們在現有的指紋識別框架上,又添加了一個檢測真假 指紋圖像的模塊,如圖7.1紅色虛線部分。也就是在執行指紋識別操作前,先判斷待測 試指紋圖像的真偽。
    % Demo I : 昱_I
     
     
    圖 7.3 指紋活性檢系統的測試界面
    為區分待測試指紋的真偽,防止指紋識別系統被偽造的假指紋欺騙,我們開發了一 套指紋活性檢測系統,圖7.3為指紋活性檢測的測試界面。指紋活性檢測部分的開發還 是使用SDK二次開發包,首先從開發包中提取實現指紋掃描儀連接與斷開及指紋圖像 顯示的代碼,并添加指紋圖像注冊和指紋認證兩個功能,如圖7.3所示。其中實現用戶 注冊“Register”按鈕的核心代碼如下:
    void put_ Register (long newValue)
    { static BYTE parms[] = VTS_I4 ;
    InvokeHelper(0x6, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, newValue);
    }
    點擊圖7.3中的“Register”按鈕,當測試者將手指按壓到指紋采集儀表面時,測試 界面會實時顯示采集的指紋圖像并將它進行存儲。然后調用OpenCV包中的圖像載入函 數cvLoadImage(),讀取指紋圖像。接著,采用本文第三章提出的算法提取指紋圖像的 特征,特征提取的代碼如下:
    Mat imgGray;
    cvtColor(img,imgGray,CV_RGB2GRAY);
    const int img_Rows=imgGray.rows;
    const int img_Cols=imgGray.cols;
    double * *grayM=ImgToMatrix(imgGray);
    NormalizationInFile(grayM,img_Rows,img_Cols,"feature.test");
    關于模型分類器的訓練和保存,我們是在Windows中的cmd窗口下執行命令行代 碼實現的。下載版本號為2.89的LibSVM軟件包,并將下載的文件進行解壓并放到 G:\yuan\introductionfujian\libsvm-2.89\目錄下。接下來,進行模型訓練,在命令行中使用 cd G:\yuan\introductionfujian\libsvm-2.89\windows 指令進入 svm-train.exe 文件,接著,進 行模型訓練和保存兩個操作,關于模型訓練和保存的實現命令代碼為:
    G: \yuan\introductionfujian\libsvm-2.89\windows> 〃首先進入 svm-train 可執行目錄
    G: \yuan\intro ductionfujian\libsvm-2.8 9\windows> svm-train.exe -c 500 -g 0.001
    G: \yuan\intro ductionfujian\libsvm-2.8 9\windows\Biometrika. Train 〃特征集進行訓練
    G: \yuan\intro ductionfujian\libsvm-2.8 9\windows\Biometrika. model 〃保存訓練模型
    模型訓練完后,接著調用LibSVM中的svm_predict()接口函數來預測待測指紋的真 假,并根據返回值對真假指紋圖像進行檢測。在預測前,需要將Libsvm包中的“svm.h” 和"svm.cpp”分別#include到我們的項目頭文件和源文件中。關于預測函數svm_predict() 的實現代碼為:
    void testData()
    { svm_model *model = svm_load_model("Biometrika.model");
    svm_node *x_space = new svm_node[NUM+1];
    double d; int i; int k =0;
    for (list<point>::iterator q = point_list.begin(); q != point_list.end(); q++)
    { for(i =0 ;i<NUM;i++)
    { x_space[i].index = i+1;
    x_space[i].value = q->feature[i];
    }
    x_space[NUM].index = -1;
    d = svm_predict(model, x_space);
    if (d == q->value)
    RESULT = true;
    else:RESULT = false;
     
     
    待檢測指紋圖像的真偽進行鑒別。若待測試的指紋是一枚來自真實用戶的指紋,如圖7.4 和7.5所示,系統將會對活體指紋進行判斷,驗證結果為“真指紋”,并在系統界面正下 方的方框中給出是“真指紋”的提示;反之,若待檢測的指紋是一枚偽造指紋,那么判 斷結果為假指紋,結果如圖7.6所示。
     
     
    圖 7.4 活體指紋驗證案例圖
     
     
    圖 7.5 活體指紋的測試結果圖
     
     
     
    圖7.6偽造指紋的測試結果圖
     
    7.3指紋識別登錄的雷電災害防御專業氣象服務系統
    氣象部門目前使用的氣象信息管理系統的登錄,大部分采用的都是基于密碼口令式 的身份認證方式,即用戶需要輸入賬號和密碼,且只有當它們與數據庫中的信息匹配成 功,用戶才能訪問信息系統,但其存在的問題就是密碼口令易被泄露、遺忘或破譯,因 而給氣象信息系統的安全訪問和氣象數據的安全和完整帶來安全隱患。近些年隨著生物 技術的快速發展,指紋作為一種新的身份認證方式被廣泛地應用在各類氣象業務系統中, 但這些指紋識別系統并未采取措施來檢測偽造指紋,所以易遭到偽造指紋的欺騙攻擊。 如何抵御偽造指紋的欺騙和攻擊,并確保真實用戶指紋的合法性,是當前指紋識別認證 系統應該關注的重點。
     
     
    圖 7.7 基于指紋識別的雷電災害防御專業氣象服務登錄系統
     
     
     
    圖7.8雷電災害防御專業氣象服務系統的登錄界面,(a)指紋錄入前的界面、(b)指紋實時顯示界面
     
    近期我們團隊與湖南省氣象災害防御技術中心開展項目合作,為其開發了一套帶有 指紋識別功能的雷電災害防御專業氣象服務系統。此外,結合我們已開發的指紋活性檢 測系統,還把指紋活性檢測模塊移植到湖南省雷電災害防御專業氣象服務系統中,如圖 7.7所示,從而進一步確保雷電災害防御系統的安全。
    首先,將傳感器型號為U.are.U 4000B的digitalPerson指紋采集儀連接到電腦上,當 手指未觸按在指紋掃描儀的表面時,系統的顯示界面如圖7.8(a);當用戶指紋按壓在雷 災防御系統的指紋掃描儀上時,采集的指紋圖像將被實時顯示在系統的登錄界面上,如 圖7.8(b)所示。接下來,單擊圖7.8(b)中的紅色登錄按鈕,系統將會對采集的指紋圖像 進行真假指紋檢測和指紋圖像識別兩個操作,即只有當待驗證的指紋圖像是真實的,才 會進行下面的指紋識別操作,僅當指紋識別也通過驗證后,雷電災害防御專業氣象服務
    系統才會登錄成功,進入如圖7.9所示的功能界面。對于指紋活性檢測和指紋識別兩個 操作,兩者一旦有一個驗證失敗,用戶都將無法登錄系統。
     
     
    圖 7.9 雷電災害防御專業氣象服務系統的功能界面
    第八章 結論與展望
    8.1 論文主要貢獻及創新
    氣象數據的安全和完整是提高氣候預測和天氣預報水平的關鍵。因此,為了保護氣 象信息管理系統中的數據和資料,用戶在訪問氣象信息系統中的數據前,對其身份的真 實性進行驗證顯得極為重要。傳統氣象信息管理系統的身份認證方式采用的是密碼口令 法,但它們極易被遺忘、泄露或破譯。指紋因具有唯一性、穩定性和長久不變性的特征, 可作為用戶的身份信息,并替換傳統的密碼口令式的身份認證法。但近期研究發現,使 用特殊材料偽造的假指紋可假冒真實用戶進行非法認證。
    指紋活性檢測技術能夠讓氣象信息管理系統中的指紋識別系統在驗證用戶身份前, 鑒別待測指紋的真偽。因此,本文利用模式識別和深度學習技術,提出了多種檢測指紋 活性的算法,且各算法的檢測性能呈遞增趨勢。除了應用到氣象信息管理系統中,本文 方法同樣適用于智能手機支付、指紋考勤、指紋門禁和智能門鎖等應用中。此外,利用 第三章方法,我們還開發了兩個支持指紋活性檢測的指紋識別系統。本文的主要貢獻和 創新之處如下:
    (1)提出了一種基于多方向差分共生矩陣的特征提取算法。氣象信息管理系統中 的指紋識別系統易遭受仿制指紋的攻擊,從而可假冒授權用戶非法訪問氣象信息系統中 的氣象數據或資料。為了提取真假指紋圖像中那些肉眼觀察不到的紋理信息,本文設計 了一種基于多方向差分共生矩陣的特征提取法。受局部亮度和噪聲的影響,差分矩陣中 會存在一些異常的梯度值,若不處理則會影響后續特征值的計算。為此,本文又設計一 種截斷操作法來削弱異常值的影響。最后,計算差分共生矩陣的特征值,并將歸一化后 的特征用SVM進行訓練和測試。
    (2)利用小波分析挖掘指紋頻譜圖下不同頻率的紋理分布。提取真假指紋圖像中 的顯著性差異,是提高氣象信息管理系統中指紋活性檢測精度的關鍵。為了挖掘指紋圖 像空域中觀察不到的紋理信息,本文首先利用一級小波變換將圖像的紋理特征提取從空 域轉化到頻域,對變換域中的系數進行分析和研究,設計了兩種變換域系數特征提取算 法。一種是變換域系數下局部二值模式的特征表示法,通過多組實驗對比和分析可知, 局部二值模式在變換域中依然適用,并且能夠很好地識別真假指紋圖像。此外,本文對 多方向差分共生矩陣的特征提取方法進行了改進,設計了一種基于多階差分共生矩陣的 指紋活性檢測算法。另外本文詳細分析了當量化因子Q和截斷因子T取不同值時,其 對應的活性檢測性能。實驗結果表明,紋理特征提取算法適用于變換域,且同樣能夠得 到較好的檢測結果。
    (3) 提出了兩種基于改進的卷積神經網絡模型的指紋活性檢測算法。為充分利用 高性能計算機計算速度快、效率高的優點,進一步提升氣象信息管理系統中指紋活性檢 測的精度,本文研究了一種端到端聯合協作優化的指紋活性檢測算法。首先提出一種基 于尺度均衡化的CNN模型來解決CNN對輸入圖像尺度約束的問題。然后,為了解決 CNN模型在反向傳播中參數更新慢或陷入局部最優的問題,本文提出了一種基于學習 率自適應調整的方法。緊接著,本文還提出了一種感興趣區域提取算法來削弱指紋圖像 中無效區域干擾。為了使訓練的模型分類器具有更好的泛化性能,即未參與訓練的假指 紋同樣能用模型分類器進行鑒別,本文又提出了一種基于局部梯度模式的紋理增強算法。 最后,通過提出一種基于自適應學習的深度殘差網絡模型,本文解決了模型參數面臨梯 度消失和陷入局部最優的問題。
    (4) 利用深度學習模型自動學習指紋圖像的高層特征表示。首先使用本文提出的 ROI算法消除指紋圖像中無效區域的干擾。為了充分利用深度學習對帶標簽的樣本具有 特征自學習的特性,進一步提升氣象信息管理系統中指紋活性檢測的性能,本章提出一 種基于深度特征自學習的指紋活性檢測算法。接著,為了驗證不同模態特征融合后指紋 活性檢測的性能,本文又提出了一種基于多模態深度特征融合的指紋活性檢測算法,即 將任意兩個或多個CNN模型學習的特征進行拼接,并將其輸入到分類器中進行訓練和 測試。在特征提取前,為解決訓練集不足的問題,分別執行遷移學習和模型微調兩種操 作,并將微調后的模型參數當成特征提取器的參數。最后,為了說明基于多模態特征融 合算法同樣適用于其他分類器,本文還在兩個經典的分類器ELM和softmax上進行了 驗證。實驗結果表明,本文提出的特征融合算法適用于不同的分類器。
    8.2 工作展望
    (1)收集更多的指紋圖像。本文的指紋圖像集較小。接下來本文需要在高校、公 司、政府機關甚至更大的范圍搜集更多的指紋圖像。另外,現有的指紋圖像擴充法利用 的都是圖像處理技術。如何像CNN特征自學習那樣,設計一個自學習的指紋圖像擴充 神經網絡模型是本文下一步的研究內容,而實現該研究的關鍵便是引入生成對抗網絡[I"】 (GAN, Generative Adversarial Networks)。
    (2) 建立一個統一的多模態特征融合理論及體系結構。關于多模態特征融合的研 究,除了使用本文的拼接操作外,還有許多特征融合方法,如特征向量相加、相乘、取 最大值和平均值等。接下來,本文將會建立一個統一的多模態深度特征融合理論及體系 結構。面對不同指紋掃描儀和不同材料的指紋集,哪一種特征融合方法能夠獲得一個最 佳的檢測性能,有待進一步研究。
    (3) 設計一種與密碼學或多種生物識別技術相結合的指紋身份認證系統。現有的 指紋識別系統都是直接將提取的特征保存到數據庫中,并未采取任何安全保護措施。因 此,將特征提取算法與現有的各種加密技術相結合,設計一套更加安全的指紋識別系統, 具有十分重要的意義。此外,指紋識別法存在一些弊端,如那些指紋紋路較淺、手指有 破損、干濕或沾有異物的用戶,會直接影響指紋認證的成功率。若指紋識別與其他生物 識別技術相結合,則可彌補單一指紋識別方式存在的缺陷,而如何關聯和結合,并提高 用戶體驗是未來可以開展的一個重要工作。
    (4) 跨材料庫的檢測。現有的指紋活性檢測法都是使用已知的假指紋材料,而制 作假指紋的材料種類有很多,檢測算法必須得面對新仿制材料。由于分類器事先無法判 斷假指紋的材料是來自哪一類,如何檢測新材料仿制的假指紋,一直都是指紋活性檢測 中的重要難題。因此,實現跨材料庫的指紋活性檢測成為迫切的需求。
    致 謝
    寒來暑往、光陰似箭,五年的碩博連讀生活即將接近尾聲。回首自己走過的歲月, 往事好似發生在昨日,依然歷歷在目。在博士論文完成之際,我由衷的向關心和幫助過 我的各位老師、領導、同學、朋友以及家人們致以最誠摯的感謝!
    首先,向我的博士生導師夏志華和孫星明兩位老師致以最誠摯的感謝!從本論文的 選題、論證、構思、撰寫,到最后的定稿,無不凝聚著他們的智慧與心血。在過去五年 的學習和生活中,兩位老師為我營造了一個良好的科研和學習環境,能夠讓我潛下心來, 一門心思的投入到自己的學習和科研中。每周例行的小組討論會,不僅拓寬了我的思維, 也開闊了我的視野,使我受益匪淺。而每次開會前,兩位老師都會主動找我溝通交流, 詢問工作進展,及時糾正我在研究過程中存在的錯誤并給出建設性的指導意見。他們堅 實厚重的學術基礎、敏銳的洞察力、嚴謹的治學態度和忘我的工作精神潛移默化地影響 著我,使我受益終身。
    其次,感謝南京信息工程大學計算機與軟件學院給我提供優越的實驗和學習環境。 感謝江蘇省網絡監控工程中心的沈劍教授、付章杰教授、王保衛教授、陳先意副教授、 周志立副教授等在工作和學習中給我提供的幫助與指導。
    感謝物聯網與云安全小組的張艷華、江樂旗、曹燚、吳宇雷等博士在學習過程中對 我的支持,沒有大家的幫助本論文將不會這么順利地完成。感謝崔琦、孟若涵、李傳龍、 支悅言等碩士研究生對我生活上的關心和幫助,能和大家一起度過我博士階段的生活是 充實而又美好的,是你們讓我感受到生活的溫馨和愉快,五年的點點滴滴值得我用一輩 子去回味。
    感謝國家留學基金、國家自然科學基金(61232016、U1536206)、江蘇省自然科學 基金(BK20181407)和江蘇省研究生培養創新工程項目(KYCX17_0899)的資助,為 本論文的順利完成提供了資金上的支持。
    衷心感謝我的父母和家人,正是有了你們的理解、支持、鼓勵,才能夠讓我摒棄雜 念、克服惰性、無畏艱辛、恣意拼搏。
    最后,由衷的感謝參與本論文評審、評議的各位專家,感謝您們提出的寶貴意見!
    參考文獻
    [1]韓紅強,王志鵬.信息技術服務分類與定義研究J].信息技術與標準化,2013, (4):28-31.
    [2]周榕貞,林榮惠,王祎婧.互聯網時代氣象科普的傳播[J].氣象研究與應用,2016, 37(4):117-119.
    [3]納麗佳,丁圣.信息技術在市縣級氣象業務中的應用[J].信息系統工程,2013, (11):97-98.
    [4]焦熱光,盧萍.云計算在氣象業務中的應用前瞻[C].中國氣象學會年會,2010:17-18
    [5]陳云峰.20世紀80年代人工智能在天氣預報中的應用J].氣象科技進展,2018, v.8(03):90-93.
    [6]李集明,熊安元.氣象科學數據共享系統研究綜述[J].應用氣象學報,2004, 15(b12):1-9.
    [7]儀清菊,高梅,接連淑,張文華.網絡與氣象信息共享研究[J].應用氣象學報,2001,
    12(1):127-128.
    [8]沈文海.對氣象信息化的理解和再認識[J].氣象科技進展,2013, (5):56-62.
    [9]王春虎.國家級氣象高速骨干網絡的系統設計J].應用氣象學報,2002, 13(5):637-640.
    [10]祝貴兵,高成龍,文武軍.信息技術的發展對航海氣象信息技術的影響J].中國水 運, 2009, 9(7):103-104.
    [11]王浚卿,高源.信息技術在氣象服務信息系統中的應用分析[J].科技經濟導刊, 2017(9):26.
    [12]李從英,王彪,金石聲,郭茜.氣象大數據平臺的數據采集與處理系統初探[J].成都 信息工程大學學報, 2018, 33(05):63-66.
    [13]謝靜.計算機軟件技術在氣象業務中的應用研究[J].河南科技,2013(9):7-7.
    [14]李鶴田,劉云,何德全.信息系統安全風險評估研究綜述[J].中國安全科學學報, 2006, 16(1):108-113.
    [15]馬炳厚,孫艷,石建,李路路.關于網絡信息資源安全問題的幾點思考[J].情報雜 志, 2003, 22(6):82-83.
    [16]侯英雨, 張蕾, 吳門新, 宋迎波, 郭安紅, 趙秀蘭. 國家級現代農業氣象業務技術進
    展J].應用氣象學報,2018, 29(06):3-18.
    [17]馬渝勇,向筱銘,王可耀.四川省氣象信息化歷程回顧及發展展望J].氣象科技進 展, 2018:283-286.
    [18]Marasco E, Ross A. A Survey on Antispoofing Schemes for Fingerprint Recognition Systems[J]. ACM Computing Surveys, 2014, 47(2):1-36.
    [19]Marcel S, Nixon M S, Li S Z. Handbook of Biometric Anti-Spoofing[J]. Advances in Computer Vision and Pattern Recognition, 2014:35-64.
    [20]Mura V, Orru G, Casula R, Sibiriu A, Loi G, Tuveri P, Ghiani L, Marcialis G L. LivDet 2017 Fingerprint Liveness Detection Competition 2017[C]. 2018 International Conference on Biometrics (ICB), 2018:297-302.
    [21]呂銳,夏志華,陳先意,孫星明.基于韋伯二值感知特征的指紋活性檢測J].應用 科學學報, 2016, 34(5):616-624.
    [22]Gragnaniello D, Poggi G, Sansone C, Verdoliva L. Fingerprint liveness detection based on Weber Local image Descriptor[C]. 2013 IEEE Workshop on Biometric Measurements and Systems for Security and Medical Applications, 2013:464-450.
    [23]Chugh T, Cao K, Jain A K. Fingerprint Spoof Buster: Use of Minutiae-centered Patches[J]. IEEE Transactions on Information Forensics and Security, 2018:2190-2202.
    [24]Kang H, Lee B, Kim H, Shin D, Kim J. A Study on Performance Evaluation of the Liveness Detection for Various Fingerprint Sensor Modules[C]. International Conference on Knowledge-Based and Intelligent Information and Engineering Systems, 2003: 1245-1253.
    [25]Ghiani L, Yambay D A, Mura V, Marcialis G L, Roli F, Schuckers S A. Review of the Fingerprint Liveness Detection (LivDet) Competition Series: 2009 to 2015[J]. Image and Vision Computing, 2016, 58:110-128.
    [26]Yuan C, Xia Z, Sun X, Sun D, Lv R. Fingerprint Liveness Detection Using Gray Level Co-Occurrence Matrix Based Texture FeatureJ]. International Journal of Grid and Distributed Computing, 2016, 9(10):65-78.
    [27]Zhang Y, Tian J, Chen X, Yang X, Shi P. Fake finger detection based on thin-plate spline distortion model thin-plate[C]. Springer Berlin Heidelberg, 2007:742-749.
    [28]Antonelli A, Cappelli R, Maio D, Maltoni D. A New Approach to Fake Finger Detection Based on Skin Distortion[C]. Advances in Biometrics, International Conference, ICB, 2006:221-228.
    [29]Maltoni D, Maio D, Jain A K, Prabhakar S. Handbook of fingerprint recognition[M]. Springer, 2009:57-95.
    [30]Galbally J, Alonso-Fernandez F, Fierrez J, Ortega-Garcia J. A high performance fingerprint liveness detection method based on quality related features[J]. Future Generation Computer Systems, 2012, 28(1):311-321.
    [31]Pereira L F A, Cavalcanti G D C, Ren T I. Spatial surface coarseness analysis: technique for fingerprint spoof detection[J]. Electronics Letters, 2013, 49(4):260-261.
    [32]Lu M, Chen Z, Sheng W. Fingerprint Liveness Detection Based on Pore Analysis[M]. Biometric Recognition. Springer International Publishing, 2015:233-240.
    [33]Manivanan N, Memon S, Balachandran W. Automatic detection of active sweat pores of fingerprint using highpass and correlation filtering[J]. Electronics Letters, 2010, 46(18):1268-1269.
    [34]Marcialis G L, Roli F, Tidu A. Analysis of Fingerprint Pores for Vitality Detection[C]. 20th International Conference on Pattern Recognition, ICPR, 2010:1289-1292.
    [35]Kryszczuk K M, Morier P, Drygajlo A. Study of the Distinctiveness of Level 2 and Level 3 Features in Fragmentary Fingerprint Comparison[C]. Biometric Authentication, Eccv International Workshop, 2004:124-133.
    [36]Jin C, Kim H, Elliott S. Liveness Detection of Fingerprint Based on Band-Selective Fourier Spectrum[J]. Lecture Notes in Computer Science, 2007:168-179.
    [37]Schuckers S, Abhyankar A. Detecting Liveness in Fingerprint Scanners Using Wavelets: Results of the Test Dataset[C]. Biometric Authentication, Eccv International Workshop, 2004:100-110.
    [38]Sharma R P, Dey S. Fingerprint liveness detection using local quality features[J]. The Visual Computer, 2018(3):1-18.
    [39]Moon Y S, Chen J S, Chan K C, So K, Woo K C. Wavelet based fingerprint liveness detection[J]. Electronics Letters, 2005, 41(20):1112.
    [40]Smita K, Sudeep D T, Arvind A. Fingerprint Liveness Detection Using Directional Ridge Frequency with Machine Learning Classifiers[C]. 2018 Fourth International Conference
    on Computing Communication Control and Automation (ICCUBEA), 2018:1-5.
    [41]Arunalatha G, Ezhilarasan M. Fingerprint Liveness detection using probabality density function[C]. 2016 International Conference on Communication and Signal Processing (ICCSP), 2016:0199-0204.
    [42]Komeili M, Armanfard N, Hatzinakos D. Liveness Detection and Automatic Template Updating using Fusion of ECG and Fingerprint[J]. IEEE Transactions on Information Forensics & Security, 2018, PP(99):1-1.
    [43]Kim W. Fingerprint Liveness Detection Using Local Coherence Patterns[J]. IEEE Signal Processing Letters, 2016, 24(1):51-55.
    [44]Ghiani L, Hadid A, Marcialis G L, Roli F. Fingerprint Liveness Detection using Binarized Statistical Image Features[C]. IEEE Sixth International Conference on Biometrics: Theory, 2013:1-6.
    [45]Mallat S. Zero-crossing of a wavelet transform[J]. IEEE Transactions on Information Theory, 1991, 37(4):1019-1033.
    [46]Abhyankar A, Schuckers S. Fingerprint Liveness Detection Using Local Ridge Frequencies and Multiresolution Texture Analysis Techniques[C]. 2006 IEEE International Conference on Image Processing, 2006:321-324.
    [47]Nikam S B, Agarwal S. Texture and Wavelet-Based Spoof Fingerprint Detection for Fingerprint Biometric Systems[C]. International Conference on Emerging Trends in Engineering & Technology, 2008:675-680.
    [48]Nikam S B, Agarwal S. Fingerprint Liveness Detection Using Curvelet Energy and Co-Occurrence Signatures[C]. International Conference on Computer Graphics, 2008:217-222.
    [49]Gragnaniello D, Poggi G, Sansone C, Verdoliva L. Local contrast phase descriptor for fingerprint liveness detection[J]. Pattern Recognition, 2015, 48(4):1050-1058.
    [50]Jia X, Yang X, Cao K, Zang Y, Zhang N, Dai R, Zhu X, Tian J. Multi-scale local binary pattern with filters for spoof fingerprint detection[J]. Information Sciences, 2014, 268(2014):91-102.
    [51]Dubey R K, Goh J, Thing V L L. Fingerprint Liveness Detection From Single Image Using Low-Level Features and Shape Analysis[J]. IEEE Transactions on Information
    Forensics & Security, 2016, 11(7):1-1.
    [52]Ghiani L, Marcialis G L, Roli F. Fingerprint liveness detection by local phase quantization[C]. 2012 International Conference on Pattern Recognition, 2012:537-540.
    [53]Gottschlich C, Marasco E, Yang A, Cukic B. Fingerprint liveness detection based on histograms of invariant gradients[C]. IEEE International Joint Conference on Biometrics, 2014:1-7.
    [54]Nogueira R F, Lotufo R D A, Machado R C. Fingerprint Liveness Detection Using Convolutional Neural Networks[J]. IEEE Transactions on Information Forensics and Security, 2017, 11(6):1206-1213.
    [55]Park E, Cui X, Kim W, Kim H. End-to-End Fingerprints Liveness Detection using Convolutional Networks with Gram module[J]. arXiv preprint arXiv:1803.07830, 2018:1-15.
    [56]Wang C, Ke L, Wu Z, Zhao Q. A DCNN Based Fingerprint Liveness Detection Algorithm with Voting Strategy[C]. Chinese Conference on Biometric Recognition, 2015:241-249.
    [57]Park E, Kim W, Li Q, Kim J. Fingerprint Liveness Detection Using CNN Features of Random Sample Patches[C]. Biometrics Special Interest Group, 2016:321-328.
    [58]Yuan C, Xia Z, Jiang L, Cao Y, Wu Q M J, Sun X. Fingerprint Liveness Detection Using an Improved CNN With Image Scale Equalization[J]. IEEE Access, 2019, 7(99):26953-26966.
    [59]Ghiani L, Yambay D, Mura V, Tocco S. LivDet 2013 Fingerprint Liveness Detection Competition 2013[C]. Iapr International Conference on Biometrics, 2013:1-6.
    [60]Drahansky M, Lodrova D. Liveness Detection for Biometric Systems Based on Papillary Lines[C]. International Conference on Information Security and Assurance, 2008:439-444.
    [61]Ogata K. A divide & conquer approach to liveness model checking under fairness & anti-fairness assumptions[J]. Frontiers of Computer Science, 2019, 13(1):1-22.
    [62]Tan B, Schuckers S. Liveness Detection for Fingerprint Scanners Based on the Statistics of Wavelet Signal Processing[C]. Conference on Computer Vision & Pattern Recognition Workshop, 2006:1-8.
    [63]Tan B, Schuckers S. Comparison of ridge- and intensity-based perspiration liveness detection methods in fingerprint scanners[J]. Proceedings of SPIE - The International Society for Optical Engineering, 2006, 23(12):62020A-62020A-10.
    [64]Agrawal R, Jalal A S, Arya K V. Fake fingerprint liveness detection based on micro and macro features[J]. International Journal of Biometrics, 2019, 11(2):177-206.
    [65]高程程,惠曉威.基于灰度共生矩陣的紋理特征提取J].計算機系統應用,2010, 19(6):195-198.
    [66]Xin H, Liu X, Zhang L. A Multichannel Gray Level Co-Occurrence Matrix for Multi/Hyperspectral Image Texture Representation[J]. Remote Sensing, 2014, 6(9):8424-8445.
    [67]Nikam S B, Agarwal S. Co-Occurrence Probabilities and Wavelet-Based Spoof Fingerprint Detection[J]. International Journal of Image and Graphics, 2009, 9(2):171-199.
    [68]吳哲, 劉孝星, 鄭力新, 周凱汀. 基于灰度共生矩陣特征圖像的織物疵點檢測方法 [J]. 微型機與應用, 2015(21):47-50.
    [69]Nikam S B, Agarwal S. Wavelet energy signature and GLCM features-based fingerprint anti-spoofing[C]. International Conference on Wavelet Analysis & Pattern Recognition, 2008:717-723.
    [70]Yambay D, Ghiani L, Denti P, Marcialis G L, Roli F, Schuckers S. LivDet 2011 — Fingerprint liveness detection competition 2011[C]. Iapr International Conference on Biometrics, 2012:208-215.
    [71]Ojala T, Pietikainen M, Maenpaa T. Multiresolution gray-scale and rotation invariant texture classification with local binary patterns[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2002, 24(7):971-987.
    [72]Coli P, Marcialis G L, Roli F. Power spectrum-based fingerprint vitality detection[C]. IEEE Workshop on Automatic Identification Advanced Technologies, 2007:169-173.
    [73]Wang Z, Bovik A C, Sheikh H R, Simoncelli E P. Image quality assessment: from error visibility to structural similarity[J]. IEEE Transactions on Image Processing, 2004, 13(4):600-612.
    [74]Marasco E, Sansone C. Combining perspiration- and morphology-based static features
    for fingerprint liveness detection[J]. Pattern Recognition Letters, 2012, 33(9):1148-1156.
    [75]Marcialis G L, Lewicke A, Tan B, Coli P, Grimberg D, Congiu A, Tidu A, Roli F, Schuckers S. First International Fingerprint Liveness Detection Competition—LivDet 2009[C]. International Conference on Image Analysis and Processing, 2009:12-23.
    [76]BeomKho J, Lee W, Choi H, Kim J. An incremental learning method for spoof fingerprint detection[J]. Expert Systems with Applications, 2019, 116:52-64.
    [77]Hsu C W, Chang C C, Lin C J. A practical guide to support vector machine[J]. Technical report, 2003, 77(C):58-65.
    [78]Nogueira R F, Lotufo R D A, Machado R C. Evaluating software-based fingerprint liveness detection using Convolutional Networks and Local Binary Patterns[C]. IEEE Workshop on Biometric Measurements & Systems for Security & Medical Applications, 2014:1-8.
    [79]Jia X, Zang Y, Zhang N, Yang X, Tian J. One-Class SVM with Negative Examples for Fingerprint Liveness Detection[J]. Chinese Conference on Biometric Recognition, 2014:216-224.
    [80]Jia X, Yang X, Zang Y, Zhang N, Dai R, Tian J, Zhao J. Multi-scale Block Local Ternary Patterns for Fingerprints Vitality Detection[C]. International Conference on Biometrics, 2013:1-6.
    [81]Drahansky. Experiments with Skin Resistance and Temperature for Liveness Detection[C]. Iihmsp 08 International Conference on Intelligent Information Hiding & Multimedia Signal Processing, 2008:1075-1079.
    [82]Jhat Z A, Mir A H, Rubab S. Personal Verification using Fingerprint Texture[C]. 2009 Third International Conference on Emerging Security Information, Systems and Technologies, 2009:230-236.
    [83]Liu R, Gillies D F. Overfitting in linear feature extraction for classification of high-dimensional image data[M]. Elsevier Science Inc, 2016:73-86.
    [84]Clewer A. Cambridge Dictionary of Statistics[J]. Journal of Applied Ecology, 2010, 36(5):842-842.
    [85]Dabouei A, Kazemi H, Iranmanesh S M, Dawson J, Nasrabadi N M. Fingerprint Distortion Rectification using Deep Convolutional Neural Networks[J]. arXiv preprint
    arXiv:1801.01198, 2018:1-8.
    [86]He K, Zhang X, Ren S, Sun J. Deep Residual Learning for Image Recognition[J]. In CVPR, 2016:770-778.
    [87]Hubel D H, Wiesel T N. Receptive fields and functional architecture of monkey striate cortex[J]. Journal of Physiology, 1968, 195(1):215-243.
    [88]Hubel D H. Single unit activity in striate cortex of unrestrained cats[J]. The Journal of Physiology, 1959, 147:226-238.
    [89]Ines G T, Kiyoshi K, Judith L J, Raul S R.Low-Cost and Efficient Hardware Solution for Presentation Attack Detection in Fingerprint Biometrics Using Special Lighting Microscopes[J]. IEEE Access, 2019, 7:7184-7193.
    [90]Hinton G E, Srivastava N, Krizhevsky A, Sutskever I, Salakhutdinov R R. Improving neural networks by preventing co-adaptation of feature detectors[J]. arXiv:1207.0580, 2012:1-18.
    [91]Lecun Y, Boser B, Denker J S, Henderson D. Backpropagation Applied to Handwritten Zip Code Recognition[J]. Neural Computation, 1989, 1(4):541-551.
    [92]Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition[C]. In ICLR, 2015:1-14.
    [93]Jung H Y, Heo Y S. Fingerprint liveness map construction using convolutional neural network[J]. Electronics Letters, 2018, 54(9):564-566.
    [94]Weng J, Ahuja N, Huang T S. Cresceptron: a self-organizing neural network which grows adaptively[C]. International Joint Conference on Neural Networks, 1992:576-581.
    [95]Jiang Y, Liu X. Uniform Local Binary Pattern for Fingerprint Liveness Detection[J]. Journal of Electrical and Computer Engineering, 2018, 77(C):58-65.
    [96]Yuan C, Sun X. Fingerprint Liveness Detection Using Histogram of Oriented Gradient Based Texture Feature[J]. Journal of Internet Technology, 2018, 19(5):1499-1507.
    [97]Yuan C, Xia Z, Sun X, Sun D, Lv R. Fingerprint liveness detection using multiscale
    difference co-occurrence matrix[J]. Optical Engineering, 2016, 55(6):
    063111-1-063111-10.
    [98]Xia Z, Lv R, Zhu Y, Ji P, Sun H, Shi Y Q. Fingerprint liveness detection using gradient-based texture features[J]. Signal Image and Video Processing, 2016, 11(2):1-8.
    [99]Golub G H, Reinsch C. Singular value decomposition and least squares solutions[J]. Numerische Mathematik, 1970, 14(5):403-420.
    [100]Mura V, Ghiani L, Marcialis G L, Roli F, Yambay D A, Schuckers S A. LivDet 2015 Fingerprint Liveness Detection Competition 2015[C]. 7th IEEE International Conference on Biometrics, 2015:1-6.
    [101]Johnson P, Schuckers S. Fingerprint pore characteristics for liveness detection[C]. Biometrics Special Interest Group, 2015:1-8.
    [102]Kim W, Jung C. Local accumulated smoothing patterns for fingerprint liveness detection[J]. Electronics Letters, 2016, 52(23):1912-1914.
    [103]Chen J, Shan S. WLD: A Robust Local Image Descriptor[J]. IEEE transactions on pattern analysis and machine intelligence, 2010, 32(9):1705-20.
    [104]Ana S, Jaime C. Fingerprint Liveness Detection in the Presence of Capable Intruders[J]. Sensors, 2015, 15(6):14615-14638.
    [105]Yuan C, Sun X, Wu Q M J. Difference co-occurrence matrix using BP neural network for fingerprint liveness detection[J]. Soft Computing, 2018(3):1-13.
    [106]Pan S J, Yang Q. A Survey on Transfer Learning[J]. IEEE Transactions on Knowledge & Data Engineering, 2010, 22(10):1345-1359.
    [107]Castelli M, Vanneschi L, Alvaro Rubio Largo. Supervised Learning: Classification[J]. Encyclopedia of Bioinformatics and Computational Biology, 2018:342-349.
    [108]Becherer N, Pecarina J, Nykl S, Hopkinson K. Improving optimization of convolutional neural networks through parameter fine-tuning[J]. Neural Computing & Applications, 2017(6):1-11.
    [109]Yuan Z W, Zhang J. Feature extraction and image retrieval based on AlexNet[C]. in Eighth International Conference on Digital Image Processing, 2016.
    [110]張建華,孔繁濤,吳建寨,翟治芬,韓書慶,曹姍姍.基于改進VGG卷積神經網絡 的棉花病害識別模型[J].中國農業大學學報,2018, 23(11):167-177.
    [111]林宇,陳曉勇.基于inception v3模型的道路交通標志識別研究[J].江西科學,2018, 36(05):147-150.
    [112]Xia X, Xu C, Nan B. Inception-v3 for flower classification[C]. 2017 2nd International Conference on Image, Vision and Computing, 2017:783-787.
    [113]Kim S, Park B, Song B S, Yang S. Deep belief network based statistical feature learning for fingerprint liveness detection[J]. Pattern Recognition Letters, 2016, 77(C):58-65.
    [114]Huang G B, Zhu Q Y, Siew C K. Extreme learning machine: Theory and applications[J]. Neurocomputing, 2006, 70(1-3):489-501.
    [115]Huang G B, Zhou H, Ding X, Zhang R. Extreme Learning Machine for Regression and Multiclass Classification[J]. IEEE Transactions on Systems, Man and Cybernetics, Part B (Cybernetics), 2012, 42(2):513-529.
    [116]Wolpert D H. Stacked generalization[J]. Neural Networks, 1992, 5(2):241-259.
    [117]Goodfellow I. NIPS 2016 tutorial: Generative adversarial networks[C]. Neural Information Processing Systems Conference, 2016:1-57.
    【本文地址:http://www.bzhlmm.com//guanlilei/gongshangguanli/xixinguanli/8884.html

    上一篇:基于安卓的軌梁廠設備信息管理系統 的設計與實現

    下一篇:沒有了

    相關標簽: