本發(fā)明涉及生物識別技術,尤其涉及一種基于稀疏投影二值編碼的人臉識別方法及裝置。
背景技術:
從原始社會到現(xiàn)今的信息社會,從社會從公有到私有的過程中,對于個人隱私的保護需求與日俱增。越來越多的領域需要用到可靠的生物識別技術,而人臉作為一種特殊的生物特征,具有特征唯一、相對穩(wěn)定、獲取簡便且具備非接觸性等顯著優(yōu)點而受到廣泛關注。
現(xiàn)有技術中的人臉識別算法主要包括基于實數(shù)值表示人臉特征的人臉識別方法和基于稠密二值特征向量表示人臉特征的人臉識別方法。其中,基于實數(shù)值表示人臉特征的人臉識別方法是指利用預先設計的目標函數(shù)從輸入的人臉圖像中提取基于實數(shù)值表示的人臉特征,然后利用模式識別方法判斷輸入圖像屬于哪個人?;诔砻芏堤卣飨蛄勘硎救四樚卣鞯娜四樧R別方法是指將原始的基于實數(shù)值表示的人臉特征轉化為基于稠密二值特征向量表示的人臉特征,使用的投影矩陣是稠密投影矩陣(即矩陣中的絕大部分元素為非0元素),最后采用模式識別方法判斷輸入圖像屬于哪個人。
但是,對于基于實數(shù)值表示人臉特征的人臉識別方法,一方面需要大量的存儲單元、計算速度慢,一般的計算機或移動設備難以滿足其存儲和計算需求;另一方面,該方法對于人臉圖像中的局部變化敏感,當同一張人臉圖像發(fā)生變化變化的程度超過某一閾值時,分類器就會將兩個原本屬于同一個人的特征識別為不同人。在基于稠密二值特征向量表示人臉特征的人臉識別方法中,由于在二值量化過程中始終存在量化誤差的影響,當量化后的二值特征向量的維度小于原始特征向量的維度時,很可能導致大量判別信息的丟失,從而影響二值特征向量描述人臉圖像特征的能力;此外,基于稠密二值特征向量表示人臉特征的人臉識別方法還存在訓練樣本的過擬合問題,而過擬合會導致人臉識別方法在計算過程中對數(shù)據(jù)的適應性差,從而影響人臉識別方法的性能。
技術實現(xiàn)要素:
本發(fā)明提供一種基于稀疏投影二值編碼的人臉識別方法及裝置,以克服現(xiàn)有技術中的人臉識別方法識別速度慢、訓練樣本過度擬合及對數(shù)據(jù)的適應性差的技術問題。
本發(fā)明提供一種基于稀疏投影二值編碼的人臉識別方法,包括:
獲取訓練集中各訓練樣本的各像素點對應的第一像素差值向量;其中,所述訓練樣本為人臉圖像,所述訓練集中包括多幅不同的人臉圖像;
根據(jù)所述第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各所述像素點對應的第一二值特征向量;
對所有的所述第一二值特征向量進行聚類,得到多個聚類中心-單詞;
將各所述訓練樣本相對應的第一二值特征向量組成第一矩陣,采用所述單詞對所述第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)所述第一線性重建結果得到第一向量;其中,每個訓練樣本對應一個第一向量;
獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各所述第二二值特征向量組成第二矩陣,采用所述單詞對所述第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)所述第二線性重建結果得到第二向量;
根據(jù)所述第一向量和所述第二向量,得到人臉識別結果。
如上所述的方法,所述第一目標函數(shù)如公式一所示:
其中,R為稀疏投影矩陣,|R|0≤m表示稀疏投影矩陣R中非零元素的個數(shù)小于等于m個,B為第一二值特征向量,參數(shù)m與所述稀疏投影矩陣R的稀疏程度具有關聯(lián)關系,m為正整數(shù),X為所述第一像素差值向量。
如上所述的方法,所述將各所述訓練樣本相對應的第一二值特征向量組成第一矩陣,采用所述單詞對所述第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)所述第一線性重建結果得到第一向量;其中,每個訓練樣本對應一個第一向量,包括:
采用所述單詞對所述第一矩陣進行線性重建,得到第一線性重建結果,所述第一線性重建結果的表達式如公式二所示:
Bi=ai1S1+ai2S2+...+aikSk 公式二;
其中,Bi為第i個訓練樣本的各第一二值特征向量組成的第一矩陣,Sk為第k個單詞,aik為在第i個訓練樣本的對應的所述第一矩陣采用所述單詞進行線性重建時第k個單詞的權重;
將所述第一線性重建結果的表達式中的各所述單詞對應的權重組成第一向量(ai1,ai2,……,aik)。
如上所述的方法,所述獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各所述第二二值特征向量組成第二矩陣,采用所述單詞對所述第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)所述第二線性重建結果得到第二向量,包括:
獲取待檢測人臉的圖像的各像素點對應的第二像素差值向量,并根據(jù)所述第二像素差值向量獲取滿足所述第一目標函數(shù)的待檢測人臉的圖像的各像素點對應的所述第二二值特征向量;
將各所述第二二值特征向量組成所述第二矩陣,并將所述第二矩陣采用所述單詞進行線性重建,得到所述第二線性重建結構,所述第二線性重建結果的表達式如公式三所示:
B測試=b1S1+b2S2+...+bkSk 公式三;
其中,B測試為各所述第二二值特征向量組成的第二矩陣,Sk為第k個單詞,bk為所述第二矩陣采用所述單詞進行線性重建時第k個單詞的權重;
將所述第二線性重建結果的表達式中的各所述單詞對應的權重組成所述第二向量(b1,b2,……,bk)。
如上所述的方法,所述根據(jù)所述第一向量和所述第二向量,得到人臉識別結果,包括:
將所述第一向量和所述第二向量輸入分類器;
獲取所述分類器返回的第二向量與各所述第一向量的歐式距離;
將與第二向量的歐式距離最短的第一向量對應的訓練樣本所對應的人臉圖像識別為待檢測人臉的圖像。
如上所述的方法,獲取訓練集中各訓練樣本的各像素點對應的第一像素差值向量,包括:
將各訓練樣本劃分為多個塊;
以每個塊中的每個像素點為第一中心像素點,以r為半徑,得到所述第一中心像素點的第一鄰域像素點,并按照順時針方向,將所述第一鄰域像素點的像素值與所述第一中心像素點的像素值進行差值運算,得到長度為(2×r+1)×(2×r+1)-1維的第一像素差值向量;
獲取待檢測人臉的圖像的各像素點對應的第二像素差值向量,包括:
將所述待檢測人臉的圖像劃分為多個塊;
以每個塊中的每個像素點為第二中心像素點,以r為半徑,得到所述第二中心像素點的第二鄰域像素點,并按照順時針方向,將所述第二鄰域像素點的像素值與所述第二中心像素點的像素值進行差值運算,得到長度為(2×r+1)×(2×r+1)-1維的第二像素差值向量;
其中,r為正整數(shù)。
如上所述的方法,所述根據(jù)所述第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各所述像素點對應的第一二值特征向量,包括:
引入R的代理矩陣S,將所述第一目標函數(shù)變換為第二目標函數(shù),所述第二目標函數(shù)如公式四所示:
其中,變量α表示代理矩陣S的懲罰因子,用以平衡公式四中和這兩項的變量,|S|0表示代理矩陣S中非0元素的個數(shù),參數(shù)m與所述稀疏投影矩陣R的稀疏程度具有關聯(lián)關系;表示代理矩陣S與二值編碼B之間的量化誤差,表示代理矩陣S與R之間的誤差;
對所述第二目標函數(shù)進行求解,得到所述第一二值特征向量。
如上所述的方法,所述對所述第二目標函數(shù)進行求解,得到所述第一二值特征向量,包括:
將所述第二目標函數(shù)中的S和B隨機賦予初始值S0和B0,并固定所述第二目標函數(shù)中的S和B,更新所述第二目標函數(shù)中的R,得到R1,具體為:
將所述第二目標函數(shù)改成寫第一表達式,所述第一表達式如公式五所示:
其中,C1=SX,為固定值;
求解第一表達式,得到R1,具體為:
通過公式六或公式七得到R1:
其中,thrm表示將得到的矩陣中的最大的m個元素保留,其余的元素置0;Rt+1表示利用公式六第(t+1)次迭代得到的解,Rt表示利用公式六上一次(即第(t)次)迭代的解,當?shù)螖?shù)為N時,利用公式六得到的解收斂,停止迭代,此時得到的RN=R1,其中R1表示對所述第二目標函數(shù)求解時,第一次迭代得到的R;
R1=thrm(S) 公式七;
其中,R1表示對所述第二目標函數(shù)求解時,第一次迭代得到的R。
將所述第二目標函數(shù)中的B賦予初始值B0,將所述第二目標函數(shù)中的R賦為R1,并固定所述第二目標函數(shù)中的B和R,更新所述第二目標函數(shù)中的S,得到S1,具體為:
將所述第二目標函數(shù)改成寫第二表達式,所述第二表達式如公式八所示:
其中,C2=(B+αRX)/(1+α)為固定值;
求解第二表達式,得到S1,具體為:
通過公式九求解S1:
對進行奇異值分解得到U,V:S1=VUT......公式九;
其中,S1表示對第二目標函數(shù)求解時,第一次迭代得到的S;
將所述第二目標函數(shù)中的S賦為S1,將所述第二目標函數(shù)中的R賦為R1,并固定所述第二目標函數(shù)中的S和R,更新所述第二目標函數(shù)中的B,得到B1,具體為:
將所述第二目標函數(shù)改成寫第三表達式,所述第三表達式如公式十所示:
其中,C3=SX,為固定值;
求解第三表達式,得到B1,具體為:
通過公式十一得到B1:
B=sign(C3)=sign(SX) 公式十一;
其中,sign(*)為符號函數(shù),當自變量*大于0時,sign(*)函數(shù)輸出1,否則,sign(*)函數(shù)輸出0,B1表示對所述第二目標函數(shù)求解時,第一次迭代得到的B,自變量為矩陣C3中的元素;
將所述第二目標函數(shù)中的S賦為S1,將所述第二目標函數(shù)中的B賦為和B1,并固定所述第二目標函數(shù)中的S和B,更新所述第二目標函數(shù)中的R,得到R2;
將所述第二目標函數(shù)中的B賦為B1,將所述第二目標函數(shù)中的R賦為R2,并固定所述第二目標函數(shù)中的B和R,更新所述第二目標函數(shù)中的S,得到S2;
將所述第二目標函數(shù)中的S賦為S2,將所述第二目標函數(shù)中的R賦為R2,并固定所述第二目標函數(shù)中的S和R,更新所述第二目標函數(shù)中的B,得到B2;
重復執(zhí)行將所述第二目標函數(shù)中的S賦為Sm-1,將所述第二目標函數(shù)中的B賦為和Bm-1,并固定所述第二目標函數(shù)中的S和B,更新所述第二目標函數(shù)中的R,得到Rm;將所述第二目標函數(shù)中的B賦為Bm-1,將所述第二目標函數(shù)中的R賦為Rm,并固定所述第二目標函數(shù)中的B和R,更新所述第二目標函數(shù)中的S,得到Sm;將所述第二目標函數(shù)中的S賦為Sm,將所述第二目標函數(shù)中的R賦為Rm,并固定所述第二目標函數(shù)中的S和R,更新所述第二目標函數(shù)中的B,得到Bm的操作,直至完成M次迭代,第M次迭代得到的BM即為所述滿足第一目標函數(shù)的各所述像素點對應的第一二值特征向量;其中,m代表第m次迭代,所述m、M均為正整數(shù)。
本發(fā)明還提供一種基于稀疏投影二值編碼的人臉識別裝置,包括:
計算單元,所述計算單元用于獲取訓練集中各訓練樣本的各像素點對應的第一像素差值向量;其中,所述訓練樣本為人臉圖像,所述訓練集中包括多幅不同的人臉圖像;
所述計算單元還用于根據(jù)所述第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各所述像素點對應的第一二值特征向量;
聚類單元,所述聚類單元對所有的所述第一二值特征向量進行聚類,得到多個聚類中心-單詞;
第一向量獲取單元,所述第一向量獲取單元用于將各所述訓練樣本相對應的第一二值特征向量組成第一矩陣,采用所述單詞對所述第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)所述第一線性重建結果得到第一向量;其中,每個訓練樣本對應一個第一向量;
第二向量獲取單元,所述第二向量獲取單元用于獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各所述第二二值特征向量組成第二矩陣,采用所述單詞對所述第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)所述第二線性重建結果得到第二向量;
識別單元,所述識別單元用于根據(jù)所述第一向量和所述第二向量,得到人臉識別結果。
本發(fā)明提供一種基于稀疏投影二值編碼的人臉識別方法及裝置。本發(fā)明提供的基于稀疏投影二值編碼的人臉識別方法,包括獲取訓練集中各訓練樣本的各像素點對應的第一像素差值向量;其中,訓練樣本為人臉圖像,訓練集中包括多幅不同的人臉圖像;根據(jù)第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各像素點對應的第一二值特征向量;對所有的第一二值特征向量進行聚類,得到多個聚類中心-單詞;將各訓練樣本相對應的第一二值特征向量組成第一矩陣,采用單詞對第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)第一線性重建結果得到第一向量;其中,每個訓練樣本對應一個第一向量;獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各第二二值特征向量組成第二矩陣,采用單詞對第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)第二線性重建結果得到第二向量,根據(jù)第一向量和第二向量,得到人臉識別結果。本實施例的基于稀疏投影二值編碼的人臉識別方法采用采用稀疏投影矩陣對實值表示的像素差值向量進行編碼得到二值特征向量,并對二值特征向量進行聚類得到單詞,采用單詞線性重建每幅人臉圖像對應的二值特征向量組成的矩陣,識別速度快,解決了訓練樣本過度擬合的問題,且對數(shù)據(jù)的適應性好,提高了人臉識別方法的識別人臉的準確性和快速性。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明提供的基于稀疏投影二值編碼的人臉識別方法實施例一的流程圖;
圖2為本發(fā)明的第一像素差值向量獲取示意圖;
圖3為本發(fā)明提供的基于稀疏投影二值編碼的人臉識別方法實施例二的流程圖;
圖4為本發(fā)明提供的基于稀疏投影二值編碼的人臉識別裝置的結構示意圖。
具體實施方式
為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
圖1為本發(fā)明提供的基于稀疏投影二值編碼的人臉識別方法實施例一的流程圖,圖2為本發(fā)明的第一像素差值向量獲取示意圖。
如圖1~2所示,本實施例的方法可以包括:
S101、獲取訓練集中各訓練樣本的各像素點對應的第一像素差值向量;其中,訓練樣本為人臉圖像,訓練集中包括多幅不同的人臉圖像;
S102、根據(jù)第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各像素點對應的第一二值特征向量;
S103、對所有的第一二值特征向量進行聚類,得到多個聚類中心-單詞;
S104、將各訓練樣本相對應的第一二值特征向量組成第一矩陣,采用單詞對第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)第一線性重建結果得到第一向量;其中,每個訓練樣本對應一個第一向量;
S105、獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各第二二值特征向量組成第二矩陣,采用單詞對第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)第二線性重建結果得到第二向量;
S106、根據(jù)第一向量和第二向量,得到人臉識別結果。
對于步驟S101,事先獲取大量的不同人臉圖像組成訓練集,訓練集中每一張人臉圖像稱為訓練樣本。
訓練集建成后,獲取訓練集中各訓練樣本的各像素點對應的第一像素差值向量,具體為:將各訓練樣本劃分為多個塊;以每個塊中的每個像素點為第一中心像素點,以r為半徑,得到第一中心像素點的第一鄰域像素點,并按照順時針方向,將第一鄰域像素點的像素值與第一中心像素點的像素值進行差值運算,得到長度為(2×r+1)×(2×r+1)-1維的第一像素差值向量;優(yōu)選地,r取3。為了清楚的解釋順時針方向,本實施例中采用r=2說明順時針方向的含義,如圖2所示,圖2中帶箭頭虛線的路徑即為順時針方向,每個方塊代表一個像素點,A代表第一中心像素點,沿該箭頭虛線方向依次將第一鄰域像素點的像素值與第一中心像素點的像素值分別進行差值運算,組成24維的第一像素差值向量。其中,第一鄰域像素點的個數(shù)也是(2×r+1)×(2×r+1)-1個。
該步驟中,本領域技術人員可以理解的是,當r的值選定后,由于訓練樣本被分成的多個塊,每個塊中會有許多個邊緣像素點的第一鄰域像素點的個數(shù)不足(2×r+1)×(2×r+1)-1個,為了使得到的第一像素差值向量的維數(shù)相同,將每個塊中第一鄰域像素點的個數(shù)不足(2×r+1)×(2×r+1)-1個的邊緣像素點舍棄。
對于步驟S102,在得到第一像素差值向量后,根據(jù)第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各像素點對應的第一二值特征向量。在本實施例中,第一目標函數(shù)如公式一所示:
其中,R為稀疏投影矩陣,|R|0≤m表示稀疏投影矩陣R中非零元素的個數(shù)小于等于m個,B為第一二值特征向量,參數(shù)m與稀疏投影矩陣R的稀疏程度具有關聯(lián)關系,m為正整數(shù),X為第一像素差值向量。
其中,m的取值規(guī)則為,矩陣中所有元素的個數(shù)的4%~6%。
采用稀疏投影矩陣對第一像素差值向量進行編碼,得到的量化后的第一二值特征向量的維度遠高于第一像素差值向量的維度,因此,能夠最小化第一像素差值向量和第一二值特征向量之間的量化誤差,可以提升第一二值特征向量描述人臉圖像的能力。而且,采用稀疏投影矩陣對第一像素差值向量進行編碼,使得到的第一二值特征向量具有稀疏(即大部分元素均為0)的性質,可以通過調整投影矩陣的稀疏度,將人臉識別方法計算過程中需要調制參數(shù)的數(shù)量級調整為與訓練數(shù)據(jù)復雜度相當?shù)乃?,解決了訓練樣本中的數(shù)據(jù)過度擬合的問題。
對于步驟S103,在得到訓練集的各像素點對應的第一二值特征向量后,對訓練集的所有像素點對應的第一二值特征向量進行聚類,得到多個聚類中心-單詞;本實施例中可以采用K-Means聚類方法或者SGONG聚類方法對訓練集的所有像素點對應的第一二值特征向量進行學習,得到多個聚類中心-單詞,但并不限于上述兩種聚類方法。
對于步驟S104,在對訓練集的所有像素點對應的第一二值特征向量進行聚類,得到多個單詞后,接著獲取第一向量,具體為,每個訓練樣本具有多個像素點,每個像素點對應一個第一二值特征向量,將一個訓練樣本的各第一二值特征向量按照順序組成第一矩陣,接著,采用單詞對第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)第一線性重建結果得到第一向量;每一個訓練樣本對應一個第一向量。
將各訓練樣本相對應的第一二值特征向量組成第一矩陣,采用單詞對第一矩陣進行線性重建,比起直接采用原始的第一矩陣表示具有更好的數(shù)據(jù)適應性。
對于步驟S105,當?shù)玫接柧毤忻總€訓練樣本對應的第一向量后,訓練過程完成,開始人臉識別過程,采用上述獲取第一向量相同的方法獲取待檢測人臉的圖像對應的第二向量,具體為:獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各第二二值特征向量組成第二矩陣,采用單詞對第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)第二線性重建結果得到第二向量。
在該步驟中,獲取第二二值特征向量的方法與獲取第一二值特征向量的方法相同。
對于步驟S106,在得到第一向量和第二向量后,便可以根據(jù)第一向量和第二向量,得到人臉識別結果,比如可采用分類器的方法:將第一向量和第二向量輸入分類器,使得分類器計算各第一向量和第二向量之間的歐式距離,獲取分類器返回的第二向量與各第一向量的歐式距離,將與第二向量的歐式距離最短的第一向量對應的訓練樣本所對應的人臉圖像識別為待檢測人臉的圖像。
本實施例的基于稀疏投影二值編碼的人臉識別方法,包括獲取訓練集中各訓練樣本的各像素點對應的第一像素差值向量;其中,訓練樣本為人臉圖像,訓練集中包括多幅不同的人臉圖像;根據(jù)第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各像素點對應的第一二值特征向量;對所有的第一二值特征向量進行聚類,得到多個聚類中心-單詞;將各訓練樣本相對應的第一二值特征向量組成第一矩陣,采用單詞對第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)第一線性重建結果得到第一向量;其中,每個訓練樣本對應一個第一向量;獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各第二二值特征向量組成第二矩陣,采用單詞對第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)第二線性重建結果得到第二向量,根據(jù)第一向量和第二向量,得到人臉識別結果。本實施例的基于稀疏投影二值編碼的人臉識別方法采用采用稀疏投影矩陣對實值表示的像素差值向量進行編碼得到二值特征向量,并對二值特征向量進行聚類得到單詞,采用單詞線性重建每幅人臉圖像對應的二值特征向量組成的矩陣,識別速度快,解決了訓練樣本過度擬合的問題,且對數(shù)據(jù)的適應性好,提高了人臉識別方法的識別人臉的準確性和快速性。
下面對圖1所示方法實施例的技術方案進行詳細說明。
首先對根據(jù)第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各像素點對應的第一二值特征向量的方法進行說明。
圖3為本發(fā)明實施例提供的基于稀疏投影二值編碼的人臉識別方法實施例二的流程圖,如圖3所示,本實施例的方法包括:
S301,引入第一目標函數(shù)中的稀疏投影矩陣R的代理矩陣S,將第一目標函數(shù)變換為第二目標函數(shù);
S302,對第二目標函數(shù)進行求解,得到第一二值特征向量。
對于步驟S301,引入R的代理矩陣S,S矩陣的大小和矩陣R相同,將第一目標函數(shù)變換為第二目標函數(shù),第二目標函數(shù)如公式四所示:
其中,變量α表示代理矩陣S的懲罰因子,用以平衡公式四中和這兩項的變量,|S|0表示代理矩陣S中非0元素的個數(shù),表示代理矩陣S與二值編碼B之間的量化誤差,表示代理矩陣S與R之間的誤差;其中代理矩陣S也為稀疏投影矩陣。
對于步驟S302,對第二目標函數(shù)進行求解,得到第一二值特征向量的方法,具體為:
將第二目標函數(shù)中的S和B隨機賦予初始值S0和B0,并固定第二目標函數(shù)中的S和B,更新第二目標函數(shù)中的R,得到R1,具體為:
將第二目標函數(shù)改成寫第一表達式,第一表達式如公式五所示:
其中,C1=SX,為固定值;
求解第一表達式,得到R1,具體為:
通過公式六或公式七得到R1:
其中,thrm表示將得到的矩陣中的最大的m個元素保留,其余的元素置0;Rt+1表示利用公式六第(t+1)次迭代得到的解,Rt表示利用公式六上一次(即第(t)次)迭代的解,當?shù)螖?shù)為N時,利用公式六得到的解收斂,停止迭代,此時得到的RN=R1,其中R1表示對第二目標函數(shù)求解時,第一次迭代得到的R;
R1=thrm(S) 公式七;
其中,R1表示對第二目標函數(shù)求解時,第一次迭代得到的R。
將第二目標函數(shù)中的B賦予初始值B0,將第二目標函數(shù)中的R賦為R1,并固定第二目標函數(shù)中的B和R,更新第二目標函數(shù)中的S,得到S1,具體為:
將第二目標函數(shù)改成寫第二表達式,第二表達式如公式八所示:
其中,C2=(B+αRX)/(1+α)為固定值;
求解第二表達式,得到S1,具體為:
通過公式九求解S1:
對進行奇異值分解得到U,V:S1=VUT.......公式九;
其中,S1表示對第二目標函數(shù)求解時,第一次迭代得到的S;
將第二目標函數(shù)中的S賦為S1,將第二目標函數(shù)中的R賦為R1,并固定第二目標函數(shù)中的S和R,更新第二目標函數(shù)中的B,得到B1,具體為:
將第二目標函數(shù)改成寫第三表達式,第三表達式如公式十所示:
其中,C3=SX,為固定值;
求解第三表達式,得到B1,具體為:
通過公式十一得到B1:
B=sign(C3)=sign(SX) 公式十一;
其中,sign(*)為符號函數(shù),將自變量*大于0時,sign(*)函數(shù)輸出1,否則,sign(*)函數(shù)輸出0,B1表示對第二目標函數(shù)求解時,第一次迭代得到的B;自變量是指矩陣C3中的元素。
將第二目標函數(shù)中的S賦為S1,將第二目標函數(shù)中的B賦為和B1,并固定第二目標函數(shù)中的S和B,更新第二目標函數(shù)中的R,得到R2;
將第二目標函數(shù)中的B賦為B1,將第二目標函數(shù)中的R賦為R2,并固定第二目標函數(shù)中的B和R,更新第二目標函數(shù)中的S,得到S2;
將第二目標函數(shù)中的S賦為S2,將第二目標函數(shù)中的R賦為R2,并固定第二目標函數(shù)中的S和R,更新第二目標函數(shù)中的B,得到B2;
重復執(zhí)行將第二目標函數(shù)中的S賦為Sm-1,將第二目標函數(shù)中的B賦為和Bm-1,并固定第二目標函數(shù)中的S和B,更新第二目標函數(shù)中的R,得到Rm;將第二目標函數(shù)中的B賦為Bm-1,將第二目標函數(shù)中的R賦為Rm,并固定第二目標函數(shù)中的B和R,更新第二目標函數(shù)中的S,得到Sm;將第二目標函數(shù)中的S賦為Sm,將第二目標函數(shù)中的R賦為Rm,并固定第二目標函數(shù)中的S和R,更新第二目標函數(shù)中的B,得到Bm的操作,直至完成M次迭代,第M次迭代得到的BM即為滿足第一目標函數(shù)的各像素點對應的第一二值特征向量;其中,m代表第m次迭代,m、M均為正整數(shù)。
其中,M的取值可根據(jù)實際需要確定,本實施例中不作限定。
下面對上一實施例中的公式六、公式十一的推導過程進行介紹。
首先對公式六的推導過程進行說明;
對于表達式一的求解過程比較困難,引入第三目標函數(shù),第三目標函數(shù)如公式十二所示:
其中,
根據(jù)F-范數(shù)的性質,表達式是恒大于0的,因此,第三目標函數(shù)的數(shù)值不會小于表達式一的數(shù)值,因此公式十二的最優(yōu)解仍然滿足表達式一;
采用迭代的求解第三目標函數(shù),即固定S更新R,將第三目標函數(shù)變換為表達式四,表達四如公式十三所示:
其中,const表示不依賴R的常量;
表達式四的向量形式如下式所示:
其中,該式的解可以表示為其矩陣形式的解可以泛化為公式十四:
采用公式十四進行迭代求解R,迭代公式即為公式六。
其次,對公式十一的推導過程進行說明。
表達式二可展開為式一的形式:由于矩陣B是正交的,因此為一個常數(shù),因此,上式則進一步簡化為:
其中,n表示訓練樣本的個數(shù),c表示二值特征向量的維度,為了最大化上式,需要當(C3)ij大于等于0時,讓Bij=1,當(C3)ij小于0時,讓Bij=1,于是轉化成了對公式十一的求解。
其次,對上述實施例中的步驟“將各訓練樣本相對應的第一二值特征向量組成第一矩陣,采用單詞對第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)第一線性重建結果得到第一向量”進行說明。
將各訓練樣本相對應的第一二值特征向量組成第一矩陣,采用單詞對第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)第一線性重建結果得到第一向量,包括:
采用單詞對第一矩陣進行線性重建,得到第一線性重建結果,第一線性重建結果的表達式如公式二所示:
Bi=ai1S1+ai2S2+...+aikSk 公式二;
其中,Bi為第i個訓練樣本的各第一二值特征向量組成的第一矩陣,Sk為第k個單詞,aik為在第i個訓練樣本的對應的所述第一矩陣采用單詞進行線性重建時第k個單詞的權重;
將第一線性重建結果的表達式中的各單詞對應的權重組成第一向量(ai1,ai2,……,aik)。
接著,對上述實施例中的步驟“獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各第二二值特征向量組成第二矩陣,采用單詞對第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)第二線性重建結果得到第二向量”進行說明。
獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各第二二值特征向量組成第二矩陣,采用單詞對第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)第二線性重建結果得到第二向量,包括:
獲取待檢測人臉的圖像的各像素點對應的第二像素差值向量,并根據(jù)第二像素差值向量獲取滿足第一目標函數(shù)的待檢測人臉的圖像的各像素點對應的第二二值特征向量;
將各所述第二二值特征向量組成所述第二矩陣,并將所述第二矩陣采用所述單詞進行線性重建,得到所述第二線性重建結構,所述第二線性重建結果的表達式如公式三所示:
B測試=b1S1+b2S2+...+bkSk 公式三;
其中,B測試為各所述第二二值特征向量組成的第二矩陣,Sk為第k個單詞,bk為所述第二矩陣采用所述單詞進行線性重建時第k個單詞的權重;
將所述第二線性重建結果的表達式中的各所述單詞對應的權重組成所述第二向量(b1,b2,……,bk)。
其中,獲取第二像素差值向量的方法與獲取第一像素差值的方法相同,具體為:
將待檢測人臉的圖像劃分為多個塊;
以每個塊中的每個像素點為第二中心像素點,以r為半徑,得到第二中心像素點的第二鄰域像素點,并按照順時針方向,將第二鄰域像素點的像素值與第二中心像素點的像素值進行差值運算,得到長度為(2×r+1)×(2×r+1)-1維的第二像素差值向量;
獲取第二二值特征向量的方法與獲取第一二值特征向量的方法相同,此處不再贅述。
圖4為本發(fā)明提供的基于稀疏投影二值編碼的人臉識別裝置的結構示意圖,如圖4所示,本實施例的裝置可以包括:計算單元401,聚類單元402,第一向量獲取單元403,第二向量獲取單元404,識別單元405。
計算單元401,用于獲取訓練集中各訓練樣本的各像素點對應的第一像素差值向量;其中,訓練樣本為人臉圖像,訓練集中包括多幅不同的人臉圖像;
計算單元401還用于根據(jù)第一像素差值向量獲取滿足基于稀疏投影矩陣的第一目標函數(shù)的各像素點對應的第一二值特征向量;
聚類單元402,用于對所有的第一二值特征向量進行聚類,得到多個聚類中心-單詞;
第一向量獲取單元403,用于將各訓練樣本相對應的第一二值特征向量組成第一矩陣,采用單詞對第一矩陣進行線性重建,得到第一線性重建結果,根據(jù)第一線性重建結果得到第一向量;其中,每個訓練樣本對應一個第一向量;
第二向量獲取單元404,用于獲取待檢測人臉的圖像的各像素點對應的第二二值特征向量,并將各第二二值特征向量組成第二矩陣,采用單詞對第二矩陣進行線性重建,得到第二線性重建結果,根據(jù)第二線性重建結果得到第二向量;
識別單元405,用于根據(jù)第一向量和第二向量,得到人臉識別結果。
本實施例的裝置,可以用于執(zhí)行圖1所示方法實施例的技術方案,其實現(xiàn)原理和技術效果類似,此處不再贅述。
本領域普通技術人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質包括:ROM、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。
最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的范圍。