專利名稱:利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種圖像識(shí)別技術(shù)領(lǐng)域的方法,具體是一種結(jié)合了主成分分析(PCA)和受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò)的降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法。
背景技術(shù):
目前人臉識(shí)別的研究重點(diǎn)已經(jīng)從二維拓展到三維,而三維人臉識(shí)別中最為核心的技術(shù)就是如何根據(jù)二維人臉圖像估計(jì)該人臉的三維姿態(tài)。姿態(tài)估計(jì)本質(zhì)上是一個(gè)分類問題,即判斷一幅人臉圖像中的人臉屬于哪一個(gè)姿態(tài)。但是人臉圖像是典型的高維數(shù)據(jù),一般的分類方法根本不能夠被直接應(yīng)用于姿態(tài)估計(jì),因此首先必須對(duì)高維人臉數(shù)據(jù)進(jìn)行降維,然后再對(duì)降維后的數(shù)據(jù)進(jìn)行姿態(tài)估計(jì)。
經(jīng)對(duì)現(xiàn)有技術(shù)文獻(xiàn)的檢索發(fā)現(xiàn),G.G.Hilton等在《Science》(科學(xué)雜志,2006年第313卷第5786期第504頁(yè))發(fā)表的“Reducing the Dimensionality of Data withNeural Networks”(用神經(jīng)網(wǎng)絡(luò)降低數(shù)據(jù)維數(shù)),該文提出了一種基于受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò)的非線性降維方法,實(shí)驗(yàn)證明該方法可以被用于姿態(tài)估計(jì)。利用大量的不同姿態(tài)的人臉圖像數(shù)據(jù)對(duì)網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練得到初始權(quán)值,然后再用原始數(shù)據(jù)對(duì)整個(gè)網(wǎng)絡(luò)的權(quán)值進(jìn)行調(diào)整使網(wǎng)絡(luò)達(dá)到最佳狀態(tài)。但是該方法的訓(xùn)練時(shí)間隨著訓(xùn)練樣本的個(gè)數(shù)和維數(shù)的上升而急劇增加。但是在實(shí)際應(yīng)用上,人臉圖像在生成過程中受到外界的干擾而包含了很多冗余的信息和噪音,這些冗余的信息和噪音不但會(huì)增加計(jì)算時(shí)間,還會(huì)影響后期的識(shí)別精度,因此在真正對(duì)這些數(shù)據(jù)利用神經(jīng)網(wǎng)絡(luò)進(jìn)行降維處理之前有必要去除這些冗余的信息和噪音,另外受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò)降維方法同時(shí)還有速度慢、精度低等缺陷。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)中的不足,提供一種利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,即首先對(duì)原始數(shù)據(jù)進(jìn)行PCA處理從而去除冗余信息和噪音,然后再利用神經(jīng)網(wǎng)絡(luò)方法對(duì)PCA處理后的數(shù)據(jù)進(jìn)行降維處理操作。把這種新的降維方法應(yīng)用到人臉姿態(tài)識(shí)別,從而可以提供人臉姿態(tài)信息以能夠在多角度下進(jìn)行人臉識(shí)別。
本發(fā)明是通過以下技術(shù)方案實(shí)現(xiàn)的,本發(fā)明首先對(duì)訓(xùn)練樣本進(jìn)行PCA處理,去除原始數(shù)據(jù)中的冗余信息和噪音,并得到PCA處理后的數(shù)據(jù),然后使用該數(shù)據(jù)對(duì)受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練,得到預(yù)訓(xùn)練網(wǎng)絡(luò)參數(shù),并用梯度下降方法調(diào)整整個(gè)網(wǎng)絡(luò)參數(shù)。最后對(duì)于待進(jìn)行姿態(tài)估計(jì)的人臉圖像,對(duì)其進(jìn)行PCA處理,再把PCA處理后的數(shù)據(jù)送入該學(xué)習(xí)好的神經(jīng)網(wǎng)絡(luò)中進(jìn)行姿態(tài)識(shí)別分類。
本發(fā)明具體包括如下步驟(1)對(duì)不同姿態(tài)的人臉圖像訓(xùn)練樣本進(jìn)行預(yù)處理操作;(2)對(duì)預(yù)處理后的數(shù)據(jù)進(jìn)行PCA處理;(3)初始化受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò);(4)用PCA處理后的數(shù)據(jù)預(yù)訓(xùn)練受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò);(5)調(diào)整受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò)參數(shù);(6)對(duì)新的人臉圖像進(jìn)行姿態(tài)識(shí)別;所述的步驟(1),是指對(duì)于每個(gè)人臉圖像訓(xùn)練樣本,首先把其縮放為高為h個(gè)像素、寬為w個(gè)像素的圖像。然后把該縮放后的人臉圖像變換為灰度圖像,并把所有像素的灰度值歸一化到
,最后把它們拉成長(zhǎng)度為h×w的向量,即該向量的維數(shù)是h×w。
所述的步驟(2),是指對(duì)步驟(1)中的預(yù)處理后的數(shù)據(jù)進(jìn)行PCA操作,去除冗余信息和噪音,保持98%的信息,把所有數(shù)據(jù)都從h×w降到s維,同時(shí)得到平均向量 和特征向量P,如果把原始h×w維的向量數(shù)據(jù)表示為X,降維后的s維數(shù)據(jù)表示為b,那么X可以表示為X=x‾+Pb,]]>降維后的數(shù)據(jù)b可以表示為b=PT(X-x‾).]]>所述的步驟(3),是指設(shè)定該神經(jīng)網(wǎng)絡(luò)有L層。每一層的結(jié)點(diǎn)數(shù)分別為N1,N2,…,NL。類別個(gè)數(shù)為C,預(yù)訓(xùn)練和調(diào)整參數(shù)的次數(shù)分別為Pt和Pc。根據(jù)網(wǎng)絡(luò)層數(shù)和每層結(jié)點(diǎn)的個(gè)數(shù)確定網(wǎng)絡(luò)結(jié)構(gòu),同時(shí)產(chǎn)生
之間的隨機(jī)數(shù)作為網(wǎng)絡(luò)結(jié)點(diǎn)之間連接權(quán)值。
所述的步驟(4),是指設(shè)置網(wǎng)絡(luò)中第一層受限玻爾茲曼機(jī)的可視層的結(jié)點(diǎn)與步驟(2)中向量中的s個(gè)值一一對(duì)應(yīng),即第一層受限玻爾茲曼機(jī)的可視層的結(jié)點(diǎn)數(shù)為s,訓(xùn)練該受限玻爾茲曼機(jī)可視層結(jié)點(diǎn)與隱層結(jié)點(diǎn)之間的權(quán)值參數(shù),共訓(xùn)練Pt次。然后再以第一層受限玻爾茲曼機(jī)的隱層結(jié)點(diǎn)作為第二層受限玻爾茲曼機(jī)可視層結(jié)點(diǎn),同樣訓(xùn)練該受限玻爾茲曼機(jī)可視層結(jié)點(diǎn)與隱層結(jié)點(diǎn)之間的權(quán)值參數(shù),也訓(xùn)練Pt次。依此類推,即上一層受限玻爾茲曼機(jī)的隱層結(jié)點(diǎn)作為下一層受限玻爾茲曼機(jī)的可視層結(jié)點(diǎn)以訓(xùn)練下一層受限玻爾茲曼機(jī)。這樣就完成了整個(gè)網(wǎng)絡(luò)的預(yù)訓(xùn)練,同時(shí)也得到了預(yù)訓(xùn)練好的各層受限玻爾茲曼機(jī)的參數(shù)。
所述的步驟(5),是指利用梯度下降法以重建誤差最小為準(zhǔn)則反向傳播并調(diào)整所有受限玻爾茲曼機(jī)可視層結(jié)點(diǎn)與隱層結(jié)點(diǎn)之間的權(quán)值參數(shù),該步驟共執(zhí)行Pc次。
所述的步驟(6),是指對(duì)于一幅新的待進(jìn)行姿態(tài)識(shí)別的人臉圖像,先把其縮放到高為h,寬為w的圖像,并把該縮放的圖像變換為灰度圖像,然后把圖像灰度值歸一化到
,接著把歸一化后的圖像拉成一個(gè)長(zhǎng)度為h×w的向量X,并利用b=PT(X-x‾)]]>把該向量的維數(shù)降到s,最后把該s維的向量送入已經(jīng)訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行姿態(tài)識(shí)別。
本發(fā)明提出的人臉姿態(tài)估計(jì)方法具有相當(dāng)高的精度,用拍攝的人臉庫(kù)做測(cè)試,其識(shí)別錯(cuò)誤率為1.95%。與沒有經(jīng)過PCA處理而直接用受限玻爾茲曼機(jī)神經(jīng)網(wǎng)進(jìn)行降維的方法相比,該方法的錯(cuò)誤率進(jìn)一步降低。同時(shí)由于其數(shù)據(jù)的維數(shù)經(jīng)過PCA處理后大大降維,后續(xù)的網(wǎng)絡(luò)中每一層的節(jié)點(diǎn)數(shù)也隨之減少,這不僅減少了訓(xùn)練時(shí)間,同時(shí)測(cè)試速度也大為提高。
圖1為本實(shí)施例姿態(tài)示意圖其中1到9分別表示的人臉圖像的姿態(tài)角度為-90°、-60°、-45°、-30°、0°、30°、45°、60°、90°。
圖2為本實(shí)施例姿態(tài)識(shí)別的結(jié)果其中人臉圖像的姿態(tài)角度為60°。
具體實(shí)施例方式
下面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例作詳細(xì)說(shuō)明本實(shí)施例在以本發(fā)明技術(shù)方案為前提下進(jìn)行實(shí)施,給出了詳細(xì)的實(shí)施方式和具體過程,但本發(fā)明的保護(hù)范圍不限于下述的實(shí)施例。
實(shí)施例1.把人臉庫(kù)(該人臉庫(kù)包含有2270個(gè)人的9個(gè)不同姿態(tài)的人臉圖像。如圖1所示,圖a、b、c、d、e、f、g、h、i這9個(gè)人臉圖像的姿態(tài)分別為-90°、-60°、-45°、-30°、0°、30°、45°、60°、90°。把人臉庫(kù)中的圖像按照其不同的姿態(tài)分為9類,每一類有2270個(gè)。)中的所有圖像縮放為高為30個(gè)像素,寬為30個(gè)像素的圖像,然后把該縮放后的人臉圖像變換為灰度圖像,并把圖像的像素灰度值歸一化到
,最后把灰度圖像拉成長(zhǎng)度為900的向量。
2.對(duì)步驟(1)中的所有的向量數(shù)據(jù)進(jìn)行PCA處理,保持98%的信息,最終把向量的維數(shù)從900維降到342維,同時(shí)得到平均向量 和特征向量P,如果把原始900維的向量數(shù)據(jù)表示為X,降維后的342維數(shù)據(jù)表示為b,那么X可以表示為X=x‾+Pb,]]>降維后的數(shù)據(jù)b可以表示為b=PT(X-x‾).]]>3.設(shè)定該神經(jīng)網(wǎng)絡(luò)有3層。每一層的結(jié)點(diǎn)數(shù)分別為300,300,800。類別個(gè)數(shù)為9,預(yù)訓(xùn)練和調(diào)整參數(shù)的次數(shù)分別為50和100。根據(jù)網(wǎng)絡(luò)層數(shù)和每層結(jié)點(diǎn)的個(gè)數(shù)確定網(wǎng)絡(luò)結(jié)構(gòu),同時(shí)產(chǎn)生
之間的隨機(jī)數(shù)作為網(wǎng)絡(luò)結(jié)點(diǎn)之間連接權(quán)值。
4.設(shè)置網(wǎng)絡(luò)中第一層受限玻爾茲曼機(jī)的可視層的結(jié)點(diǎn)與步驟(2)中向量中的342個(gè)值一一對(duì)應(yīng),即第一層受限玻爾茲曼機(jī)的可視層的結(jié)點(diǎn)數(shù)為342,訓(xùn)練該受限玻爾茲曼機(jī)可視層的342個(gè)結(jié)點(diǎn)與隱層的300個(gè)結(jié)點(diǎn)之間的權(quán)值參數(shù),共訓(xùn)練50次。然后再以第一層受限玻爾茲曼機(jī)的隱層結(jié)點(diǎn)作為第二層受限玻爾茲曼機(jī)可視層結(jié)點(diǎn),同樣訓(xùn)練該受限玻爾茲曼機(jī)可視層的300個(gè)結(jié)點(diǎn)與隱層的300個(gè)結(jié)點(diǎn)之間的權(quán)值參數(shù),也訓(xùn)練50次。依此類推,即上一層受限玻爾茲曼機(jī)的隱層結(jié)點(diǎn)作為下一層受限玻爾茲曼機(jī)的可視層結(jié)點(diǎn)以訓(xùn)練下一層受限玻爾茲曼機(jī)。這樣就完成了整個(gè)網(wǎng)絡(luò)的預(yù)訓(xùn)練,同時(shí)也得到了預(yù)訓(xùn)練好的各層受限玻爾茲曼機(jī)的參數(shù)。
5.利用梯度下降法以重建誤差最小為準(zhǔn)則反向傳播并調(diào)整所有受限玻爾茲曼機(jī)可視層結(jié)點(diǎn)與隱層結(jié)點(diǎn)之間的權(quán)值參數(shù),該步驟共執(zhí)行100次。
6.對(duì)于一幅新的待進(jìn)行姿態(tài)識(shí)別的人臉圖像,先把其縮放到高為30,寬為30的圖像,并把該縮放的圖像變換為灰度圖像,然后把圖像灰度值歸一化到
,接著把歸一化后的圖像拉成一個(gè)長(zhǎng)度為900的向量,并利用b=PT(X-x‾)]]>把該向量的維數(shù)降到342,最后把該342維的向量送入已經(jīng)訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行姿態(tài)識(shí)別。如圖2所示,該待進(jìn)行姿態(tài)識(shí)別的圖像為一幅60°的人臉圖像,用本發(fā)明的方法可以正確地識(shí)別出該人臉圖像的姿態(tài)。
從以上可以看出,本實(shí)施例提出的人臉姿態(tài)識(shí)別方法可以進(jìn)一步應(yīng)用于三維人臉識(shí)別。
權(quán)利要求
1.一種利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,具體包括如下步驟(1)對(duì)不同姿態(tài)的人臉圖像訓(xùn)練樣本進(jìn)行預(yù)處理操作;(2)對(duì)預(yù)處理后的數(shù)據(jù)進(jìn)行PCA處理;(3)初始化受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò);(4)用PCA處理后的數(shù)據(jù)預(yù)訓(xùn)練受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò);(5)調(diào)整受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò)參數(shù);(6)對(duì)新的人臉圖像進(jìn)行姿態(tài)識(shí)別。
2.根據(jù)權(quán)利要求1所述的利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,其特征是,所述的步驟(1)具體包括1)對(duì)于每個(gè)人臉圖像訓(xùn)練樣本,首先把其縮放為高為h個(gè)像素、寬為w個(gè)像素的圖像;2)把該縮放后的人臉圖像變換為灰度圖像;3)把所有像素的灰度值歸一化到
;4)把它們拉成長(zhǎng)度為h×w的向量,即該向量的維數(shù)是h×w。
3.根據(jù)權(quán)利要求1所述的利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,其特征是,所述的步驟(2)具體包括1)對(duì)預(yù)處理后的數(shù)據(jù)進(jìn)行PCA操作,去除冗余信息和噪音,保持98%的信息信息量2)把所有數(shù)據(jù)都從h×w降到s維,同時(shí)得到平均向量 和特征向量P,具體關(guān)系如下X=x‾+Pb,]]>降維后的數(shù)據(jù)b表示為b=PT(X-x‾),]]>其中X為原始h×w維的向量數(shù)據(jù),b為降維后的s維數(shù)據(jù)。
4.根據(jù)權(quán)利要求1所述的利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,其特征是,所述的步驟(3)具體包括1)設(shè)定該神經(jīng)網(wǎng)絡(luò)有L層;每一層的結(jié)點(diǎn)數(shù)分別為N1,N2,…,NL;類別個(gè)數(shù)為C;預(yù)訓(xùn)練和調(diào)整參數(shù)的次數(shù)分別為Pt和Pc;2)根據(jù)網(wǎng)絡(luò)層數(shù)和每層結(jié)點(diǎn)的個(gè)數(shù)確定網(wǎng)絡(luò)結(jié)構(gòu),同時(shí)產(chǎn)生
之間的隨機(jī)數(shù)作為網(wǎng)絡(luò)結(jié)點(diǎn)之間連接權(quán)值。
5.根據(jù)權(quán)利要求1所述的利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,其特征是,所述的步驟(4)具體包括1)設(shè)置網(wǎng)絡(luò)中第一層受限玻爾茲曼機(jī)的可視層的結(jié)點(diǎn)與步驟(2)中向量中的s個(gè)值一一對(duì)應(yīng),即第一層受限玻爾茲曼機(jī)的可視層的結(jié)點(diǎn)數(shù)為s,訓(xùn)練該受限玻爾茲曼機(jī)可視層結(jié)點(diǎn)與隱層結(jié)點(diǎn)之間的權(quán)值參數(shù),共訓(xùn)練Pt次;2)再以第一層受限玻爾茲曼機(jī)的隱層結(jié)點(diǎn)作為第二層受限玻爾茲曼機(jī)可視層結(jié)點(diǎn),同樣訓(xùn)練該受限玻爾茲曼機(jī)可視層結(jié)點(diǎn)與隱層結(jié)點(diǎn)之間的權(quán)值參數(shù),也訓(xùn)練Pt次;3)依此類推,即上一層受限玻爾茲曼機(jī)的隱層結(jié)點(diǎn)作為下一層受限玻爾茲曼機(jī)的可視層結(jié)點(diǎn)以訓(xùn)練下一層受限玻爾茲曼機(jī),最終完成了整個(gè)網(wǎng)絡(luò)的預(yù)訓(xùn)練,同時(shí)也得到了預(yù)訓(xùn)練好的各層受限玻爾茲曼機(jī)的參數(shù)。
6.根據(jù)權(quán)利要求1所述的利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,其特征是,所述的步驟(5)是指利用梯度下降法以重建誤差最小為準(zhǔn)則反向傳播并調(diào)整所有受限玻爾茲曼機(jī)可視層結(jié)點(diǎn)與隱層結(jié)點(diǎn)之間的權(quán)值參數(shù),該步驟共執(zhí)行Pc次。
7.根據(jù)權(quán)利要求1所述的利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,其特征是,所述的步驟(6)是指對(duì)于一幅新的待進(jìn)行姿態(tài)識(shí)別的人臉圖像,先把其縮放到高為h,寬為w的圖像,并把該縮放的圖像變換為灰度圖像,然后把圖像灰度值歸一化到
,接著把歸一化后的圖像拉成一個(gè)長(zhǎng)度為h×w的向量X,并利用b=PT(X-x‾)]]>把該向量的維數(shù)降到s,最后把該s維的向量送入已經(jīng)訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行姿態(tài)識(shí)別。
全文摘要
本發(fā)明公開了一種圖像識(shí)別技術(shù)領(lǐng)域的利用降維方法進(jìn)行人臉姿態(tài)估計(jì)的方法,具體包括如下步驟(1)對(duì)不同姿態(tài)的人臉圖像訓(xùn)練樣本進(jìn)行預(yù)處理操作;(2)對(duì)預(yù)處理后的數(shù)據(jù)進(jìn)行PCA處理;(3)初始化受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò);(4)用PCA處理后的數(shù)據(jù)預(yù)訓(xùn)練受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò);(5)調(diào)整受限玻爾茲曼機(jī)神經(jīng)網(wǎng)絡(luò)參數(shù);(6)對(duì)新的人臉圖像進(jìn)行姿態(tài)識(shí)別;本發(fā)明于現(xiàn)有技術(shù)相比錯(cuò)誤率進(jìn)一步降低,同時(shí)由于其數(shù)據(jù)的維數(shù)經(jīng)過PCA處理后大大降維,后續(xù)的網(wǎng)絡(luò)中每一層的節(jié)點(diǎn)數(shù)也隨之減少,不僅減少了訓(xùn)練時(shí)間,同時(shí)測(cè)試速度也大為提高。
文檔編號(hào)G06K9/62GK101021900SQ20071003807
公開日2007年8月22日 申請(qǐng)日期2007年3月15日 優(yōu)先權(quán)日2007年3月15日
發(fā)明者楊杰, 杜春華, 張?zhí)镪? 署光, 楊曉超 申請(qǐng)人:上海交通大學(xué)