一種基于非負矩陣分解的離線手寫簽名識別的制作方法
【專利摘要】本發(fā)明公開了一種基于非負矩陣分解的離線手寫體簽名識別方法,所需步驟包括:(一)采集簽名數據,并對所有簽名圖像進行預處理,獲得所有預處理后的訓練集簽名圖像的數據矩陣A以及需識別的測試集簽名圖像的數據矩陣B;(二)對訓練集簽名圖像特征的提?。簩進行非負矩陣分解(NMF),得到對應的基圖像矩陣W和每張簽名圖像對應的權重向量即特征向量構成的特征矩陣H;(三)對測試集簽名圖像特征的提取:將測試集簽名圖像的數據矩陣B在基圖像上做投影,得到投影系數矩陣H’;(四)采用支持向量機進行訓練并分類決策,判斷是真簽名還是假簽名。
【專利說明】—種基于非負矩陣分解的離線手寫簽名識別
【技術領域】
[0001]本發(fā)明涉及一種離線手寫簽名識別方法,具體來說涉及一種基于基于非負矩陣分解的離線手寫簽名識別。
【背景技術】
[0002]隨著社會經濟與信息技術的飛速發(fā)展,人類生產和生活方式發(fā)生了急劇變化,網絡時代的到來更是為人們的生活、工作,以及社會的發(fā)展注入了強大的動力,也成為人們生活不可或缺的一部分。然而,在它為我們帶來方便的同時,信息安全隱患也隨之愈加凸顯出來。在我們身邊,信用卡密碼被盜,各種證件被盜用等造成的個人、集體遭受重大損失的事件比比皆是。因此,如何正確判斷每個人的身份成為現代社會迫切需要解決的問題。這就需要一種準確、高效、實用的個人身份驗證技術。而簽名是一種具有法律效力,日常接觸多,并被大眾普遍接受的一種身份驗證方式,在社會生活中占有重要作用。
[0003]簽名,就是把自己的姓名通過書寫的方式反映在書寫的承受客體上。一般來講,簽名代表書寫者對某一行為或者對某一事件的認可或承諾,它既是社會信譽的擔保,又是對承擔相應法律義務的承諾。簽名作為一個生物特征,是現在身份驗證中被廣泛接受的一種屬性,與我們日常生活、工作密切相關。在日常所涉及到的簽署合同、公證、提款、訂立協議、處理單據等活動中,簽名是必不可少,并且具有相應的法律效力。因此我們會認為,簽名已成為社會生活中的身份標志。同時,由于簽名被作為同意或授權的標志,已長時間成為偽造的對象,特別是在信用卡和銀行支票的時代。所以,提高個人身份驗證的速度和準確性對社會發(fā)展和經濟進步有著重大的意義,它可以更有效地防止犯罪。
[0004]非負矩陣分解(NonnegativeMatrix Factorizat1n, NMF): 1999 年,D.D.Lee 和H.S.seung兩位科學家在著名的科學雜志(nature)上刊登了對數學中非負矩陣研究成果的一篇文章,該文提出了一種新的矩陣分解思想一非負矩陣分解(NMF)算法。在信號處理和數據分析領域,為了達到數據壓縮、消除噪聲和加速處理等目的,常常將信號分解為多信號的線性迭加,也就是從樣本中獲得兩部分信息:基和系數。這個問題可以用矩陣形式統一和簡單地表述為:
[0005]X = WH
[0006]式中X是一個mxn維的矩陣,W和H分別是mX r維和r X η維的矩陣。
[0007]NMF計算模型與PCA、ICA、SVD等計算模型類似,所不同的是要尋找元素均大于等于O的W、H,使目標函數最小。非負矩陣分解法通過將數據矩陣分解為基矩陣W和系數矩陣H來達到降維的目的,在矩陣分解過程中非負矩陣分解保持了基矩陣和系數矩陣的非負性。NMF方法的提出為通過矩陣形式來有效的處理大規(guī)模數據提供了新的途徑,并且相對于傳統算法而言,NMF分解算法具有實現上的簡便性、分解形式和分解結果上的可解釋性,以及占用存儲空間少等諸多優(yōu)點。
【發(fā)明內容】
[0008]本發(fā)明的目的在于提供一種基于非負矩陣分解的離線手寫體簽名識別方法。基于本發(fā)明,在對簽名圖像進行預處理的基礎上,通過對訓練矩陣進行非負矩陣分解得到基矩陣以及系數矩陣即為訓練圖像特征矩陣,再對測試矩陣在基矩陣上進行投影即可得到測試圖像特征矩陣,再運用支持向量機即可分類決策。
[0009]本發(fā)明的目的可通過以下的技術措施來實現:一種基于非負矩陣分解的離線手寫體簽名識別方法,關鍵在于按照如下步驟進行:
[0010](一 )采集簽名數據,并對所有簽名圖像進行預處理,獲得所有預處理后的訓練集簽名圖像的數據矩陣A以及需識別的測試集簽名圖像的數據矩陣B ;
[0011]對簽名圖像進行預處理的過程為:
[0012](al)對簽名圖像進行平滑去噪處理;
[0013](a2)簽名圖像進行平滑去噪處理后,將簽名圖像轉換成為二值圖,所述二值圖中的背景像素的值設為O ;前景像素的值設為I ;再對所述簽名圖像逐行掃描,遇到值為I的像素點則記錄下來該像素點的坐標(X,y),從上到下,從左到右依次尋找灰度圖像中非背景點的邊緣:xmin、xmax> ymin、ymax,依據坐標對簽名圖像進行切割,去除其空白區(qū)域。切割后,簽名圖像的高度為y.-y—,寬度為χ_-χ--η。
[0014](二)對訓練集簽名圖像特征的提取:將A進行非負矩陣分解(NMF),得到對應的基圖像矩陣W和每張簽名圖像對應的權重向量即特征向量構成的特征矩陣H ;
[0015]對訓練集簽名圖像的數據矩陣進行非負矩陣分解,獲得特征矩陣的過程為:對所述步驟(一)處理后的訓練集簽名圖像的矩陣A進行非負矩陣分解,所述非負矩陣分解公式為:A = WH ;其中W是nXm矩陣,W的維數是nXr, H的維數是rXm, r取值為(n+m)r< nm ;分解后的W的每一列則作為一個基圖像,H的每一列是V在基上對應的分解系數,即為特征矩陣。
[0016](三)對測試集簽名圖像特征的提取:將測試集簽名圖像的數據矩陣B在基圖像上做投影,得到投影系數矩陣H’ ;
[0017]獲得投影系數H'的過程為:將需識別的測試集簽名圖像的矩陣B對基圖像W構成的矩陣空間進行映射,得到投影系數H',具體采用公式H' = [H1,&..Hn]' =(W+B)',其中W+是W的偽逆;
[0018](四)采用支持向量機進行訓練并分類決策,判斷是真簽名還是假簽名。
[0019]采用支持向量機進行訓練的步驟為:
[0020](bl):輸入訓練樣本特征矩陣A,如簽名為真時,值為I ;簽名為假時,值為-1 ;
[0021](b2)確定相應的核函數類型,得到Lagrange乘子a的最優(yōu)解;
[0022](b3):用樣本庫中的任意支持向量X,得到偏差值b。
[0023]采用支持向量機進行測試的步驟為:
[0024](Cl):輸入待測試簽名矩陣B ;
[0025](c2)用訓練好的Lagrange乘子a、偏差值b和核函數,求解判別函數f (X),輸出類別值。當判別值為-1,則簽名屬于偽簽名;當為1,則屬于真簽名。
[0026]本發(fā)明的基于非負矩陣分解的離線手寫體簽名識別方法相比現有技術具有如下優(yōu)點:現有的離線手寫體簽名識別大部分是通過提取不同特征構造特征向量來實現的,這種方法需經過大量實驗判斷哪些特征對于實驗結果有益,實驗次數、運算次數和時間往往很多,這樣就大大降低了手寫體簽名識別的時效性。本發(fā)明利用非負矩陣分解,這是一種更聞效率的手與體簽名識別方法。
【專利附圖】
【附圖說明】
[0027]圖1是預處理后的簽名圖像
[0028]圖2是實驗流程圖
[0029]圖3是非負矩陣分解流程圖
【具體實施方式】
[0030]下面結合附圖和實例對本發(fā)明的實驗效果作進一步說明。
[0031]本發(fā)明提供一種基于非負矩陣分解的離線手寫體簽名識別方法,包括如下步驟:
[0032](一)采集簽名數據。
[0033]簽名圖像的采集是利用一些設備將簽名樣本轉化為數字信息輸入計算機。采集到的簽名樣本的質量的好壞直接影響到簽名系統的驗證性能。
[0034]本實驗,采集了 10個志愿者的中文簽名。這10個志愿者每人間隔一至兩天,使用黑色中性筆在A4打印紙上,每次書寫4個簽名,每個簽名者書寫自己的簽名40次,總共得到400個真實簽名。對于偽簽名,每類簽名找兩個自愿者各模仿10次,總共有400個偽簽名,總計有800個簽名樣本。因為偽簽名是模仿真實簽名得來的,因此通過這些簽名驗證本文研究的系統,更能體現出系統的驗證性能。
[0035]本實驗用canon MX328掃描儀,將簽名樣本存儲到計算機中。通常人們所用的掃描精
[0036]度有:100dpi,300dpi,600dpi,掃描精度越高,簽名圖像的清晰度越高,得到的信息量就會越大,相應的計算量就會越大,直接影響到計算機的鑒別速度。10dpi精度的簽名信息量太少,本文掃描了 300dpi和600dpi兩種,進行比較,300dpi的可以滿足要求,并且600dpi精度的鑒別率幾乎沒有提高,但是相對的處理速度會比較慢,因此綜合考慮,本實驗選擇300dpi掃描精度進行掃描。實驗流程如圖2所示。
[0037]( 二)對所有簽名圖像進行預處理,獲得所有預處理后的訓練集簽名圖像的數據矩陣A以及需識別的測試集簽名圖像的數據矩陣B ;
[0038](al)對簽名圖像進行平滑去噪處理;
[0039](a2)簽名圖像進行平滑去噪處理后,將簽名圖像轉換成為二值圖,所述二值圖中的背景像素的值設為O ;前景像素的值設為I ;再對所述簽名圖像逐行掃描,遇到值為I的像素點則記錄下來該像素點的坐標(X,y),從上到下,從左到右依次尋找灰度圖像中非背景點的邊緣:xmin、xmax、ymin、y_,依據坐標對簽名圖像進行切割,去除其空白區(qū)域。切割后,簽名圖像的高度為ymax_ymin,寬度為xmax_xmin。如圖1所示,即為一個簽名預處理后的簽名圖像。
[0040](a3)每幅簽名圖像均為灰度圖像,為了減小運算量,每人每幅簽名歸一化為40*17,這樣,每幅圖像對應一個40*17矩陣,然后把每個矩陣排成680*1的向量,這樣,訓練簽名圖像對應680*400矩陣A,測試簽名圖像對應680*400矩陣B。
[0041](三)對訓練集簽名圖像特征的提取:將A進行非負矩陣分解(NMF),得到對應的基圖像矩陣W和每張簽名圖像對應的權重向量即特征向量構成的特征矩陣H ;
[0042]處理后的訓練集簽名圖像的矩陣為A,對所述矩陣A進行非負矩陣分解,所述非負矩陣分解公式為:A = WH ;其中W是nXm矩陣,W的維數是nXr,H的維數是rXm,r取值為(n+m)r < nm ;分解后的W的每一列則作為一個基圖像,H的每一列是V在基上對應的分解系數,即為特征矩陣。如圖3所示,非負矩陣分解流程圖。
[0043](四)對測試集簽名圖像特征的提取:將測試集簽名圖像的數據矩陣B在基圖像上做投影,得到投影系數矩陣H’ ;
[0044]將需識別的測試集簽名圖像的矩陣B對基圖像W構成的矩陣空間進行映射,得到投影系數H',具體采用公式H' = [Hl,Hf Hn]' =(W+B)',其中W+是W的偽逆;
[0045](五)采用支持向量機進行訓練并分類決策,判斷是真簽名還是假簽名。
[0046]采用支持向量機進行訓練的步驟為:
[0047](bl):輸入訓練樣本特征矩陣A,如簽名為真時,值為I ;簽名為假時,值為-1 ;
[0048](b2)確定相應的核函數類型,得到Lagrange乘子a的最優(yōu)解;
[0049](b3):用樣本庫中的任意支持向量X,得到偏差值b。
[0050]采用支持向量機進行測試的步驟為:
[0051](Cl):輸入待測試簽名矩陣B ;
[0052](c2)用訓練好的Lagrange乘子a、偏差值b和核函數,求解判別函數f (X),輸出類別值。當判別值為-1,則簽名屬于偽簽名;當為1,則屬于真簽名。
[0053]實驗結果如下:
[0054]錯誤接受率FAR (False Acceptance Rate):6%
[0055]錯誤拒絕率FRR(False Reject1n Rate):4%
[0056]總正確率ORR(Overall Right Rate):95%
[0057]實驗結果表明,該方法對于離線手寫體的識別有較高的識別率,且方法簡單方便。
[0058]本發(fā)明的實施方式不限于此,在本發(fā)明上述基本技術思想前提下,按照本領域的普通技術知識和慣用手段對本
【發(fā)明內容】
所做出其它多種形式的修改、替換或變更,均落在本發(fā)明權利保護范圍之內。
【權利要求】
1.一種基于非負矩陣分解的離線手寫體簽名識別,其特征在于按如下步驟進行: (一)采集簽名數據,并對所有簽名圖像進行預處理,獲得所有預處理后的訓練集簽名圖像的數據矩陣A以及需識別的測試集簽名圖像的數據矩陣B ; (二)對訓練集簽名圖像特征的提取:將A進行非負矩陣分解(NMF),得到對應的基圖像矩陣V和每張簽名圖像對應的權重向量即特征向量構成的特征矩陣H ; (三)對測試集簽名圖像特征的提取:將測試集簽名圖像的數據矩陣B在基圖像上做投影,得到投影系數矩陣H’ ; (四)采用支持向量機進行訓練并分類決策,判斷是真簽名還是假簽名。
2.根據權利要求1所述基于非負矩陣分解的離線手寫體簽名識別方法,其特征在于:所述的步驟(一)中對簽名圖像進行預處理的過程為: (al)對簽名圖像進行平滑去噪處理; (a2)簽名圖像進行平滑去噪處理后,將簽名圖像轉換成為二值圖,所述二值圖中的背景像素的值設為O ;前景像素的值設為I ;再對所述簽名圖像逐行掃描,遇到值為I的像素點則記錄下來該像素點的坐標(x,y),從上到下,從左到右依次尋找灰度圖像中非背景點的邊緣:xmin、xmax, ymin、ymax,依據坐標對簽名圖像進行切割,去除其空白區(qū)域。切割后,簽名圖像的高度為,寬度為xmax_xmin。
3.根據權利要求1所述基于非負矩陣分解的離線手寫體簽名識別方法,其特征在于:所述步驟(二)中進行訓練集簽名圖像的數據矩陣進行非負矩陣分解,獲得特征矩陣的過程為:所述步驟(一)處理后的訓練集簽名圖像的矩陣為A,對所述矩陣A進行非負矩陣分解,所述非負矩陣分解公式為:A = WH;其中W是nXm矩陣,W的維數是nXr,H的維數是rXm,r取值為(n+m)r < nm ;分解后的W的每一列則作為一個基圖像,H的每一列是V在基上對應的分解系數,即為特征矩陣。
4.根據權利要求1所述基于非負矩陣分解的離線手寫體簽名識別方法,其特征在于:所述步驟(三)中獲得投影系數的過程為:將需識別的測試集簽名圖像的矩陣B對基圖像W構成的矩陣空間進行映射,得到投影系數H',具體采用公式H' = [Hl,HfHn]'=(W+B)',其中W+是W的偽逆。
5.根據權利要求1所述基于非負矩陣分解的離線手寫體簽名識別方法,其特征在于:所述步驟(四)中采用支持向量機進行訓練的步驟為: (bl):輸入訓練樣本特征矩陣A,如簽名為真時,值為I ;簽名為假時,值為-1 ; (b2)確定相應的核函數類型,得到Lagrange乘子a的最優(yōu)解; (b3):用樣本庫中的任意支持向量X,得到偏差值b。
6.根據權利要求1所述基于非負矩陣分解的離線手寫體簽名識別方法,其特征在于:所述步驟(4)中采用支持向量機進行測試的步驟為: (Cl):輸入待測試簽名矩陣B ; (c2)用訓練好的Lagrange乘子a、偏差值b和核函數,求解判別函數f (x),輸出類別值。當判別值為-1,則簽名屬于偽簽名;當為1,則屬于真簽名。
【文檔編號】G06K9/68GK104463084SQ201310442638
【公開日】2015年3月25日 申請日期:2013年9月24日 優(yōu)先權日:2013年9月24日
【發(fā)明者】桑慶兵, 馬小晴, 吳小俊, 李朝鋒, 羅曉清 申請人:江南大學