毛明揚(yáng)
(廣州華商學(xué)院數(shù)據(jù)科學(xué)學(xué)院 廣州 511300)
在日常生活中,所看到的圖像大多為高維圖像,如果直接對其進(jìn)行識別,過程繁雜,識別結(jié)果也存在不精準(zhǔn)的情況,為此常利用數(shù)據(jù)降維解決不精準(zhǔn)的問題。數(shù)據(jù)降維就是在特定的空間內(nèi),通過某種算法規(guī)則使高維數(shù)據(jù)轉(zhuǎn)換為低維流形結(jié)構(gòu)。通常使用的降維算法有監(jiān)督式降維的算法和非監(jiān)督式降維算法兩種。監(jiān)督式的算法通??梢詫?shù)據(jù)進(jìn)行最大化的聚類處理,而非監(jiān)督的算法則可以在數(shù)據(jù)降維時將損失值降到最小。但是,面對高維數(shù)據(jù)的高度非線性和高相關(guān)屬性,單訓(xùn)練樣本人臉識別在此情況下容易發(fā)生識別干擾因素過多的情況,為此相關(guān)研究受到了重視。
文獻(xiàn)[1]提出基于深度學(xué)習(xí)和約束稀疏表達(dá)的人臉識別算法,完成對人臉的識別過程;文獻(xiàn)[2]提出基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)與集成學(xué)習(xí)的人臉識別算法,確保算法整體具有較強(qiáng)的可移植性;然后,引入集成學(xué)習(xí)策略,對所有人臉圖像進(jìn)行個體學(xué)習(xí)器的學(xué)習(xí);文獻(xiàn)[3]提出一種結(jié)合內(nèi)變化基和乘性協(xié)同表示分類的人臉識別算法,利用基稀疏字典構(gòu)建減小訓(xùn)練樣本間的差異,實(shí)現(xiàn)人臉智能識別;文獻(xiàn)[4]提出基于結(jié)構(gòu)化局部約束低秩表示的人臉識別,通過線性分類器對測試樣本分類,采用結(jié)構(gòu)化局部約束低秩實(shí)現(xiàn)人臉識別。雖然上面的算法取得一定進(jìn)展,但是影響因素較多,容易出現(xiàn)過度擬合現(xiàn)象。
本文在上述研究的基礎(chǔ)上,考慮局部鄰域多流形度量的情況下,提出單訓(xùn)練樣本人臉識別算法。本文所研究的創(chuàng)新點(diǎn)是提出局部鄰域多流形度量。局部鄰域多流形度量在一定程度上可以很好地將高維特征轉(zhuǎn)換為便于識別的低維流形結(jié)構(gòu)。同時,對于護(hù)照、身份證等特殊場合下的查驗(yàn)方式單訓(xùn)練樣本,識別效果更佳;在局部權(quán)重矩陣的理論指導(dǎo)下,找出人臉圖像內(nèi)部的最佳投影區(qū)域,減小重構(gòu)數(shù)據(jù)點(diǎn)和原始數(shù)據(jù)點(diǎn)之間的誤差,實(shí)現(xiàn)單訓(xùn)練樣本人臉識別。
在獲取到的人臉圖像中,通常因?yàn)楣饩€問題、遮擋物原因或者圖像拍攝角度等因素的干擾,使得圖像中含有較多的噪聲和雜質(zhì)。若直接再提取特征,則可能存在誤差,導(dǎo)致提取結(jié)果不準(zhǔn)確影響最終人臉識別的結(jié)果。針對此問題,本文首先考慮局部鄰域多流形度量,局部鄰域多流形度量可以將高維特征轉(zhuǎn)換為便于識別的低維流形結(jié)構(gòu),并求得相應(yīng)的關(guān)系。選擇Contourlet變換算法對人臉圖像的進(jìn)行預(yù)處理,該算法具有較好的去噪效果,將該算法引入到原始圖像中,去除掉多余的噪聲和雜質(zhì),然后對其進(jìn)行圖像重構(gòu)。Contourlet 變換算法由拉普拉斯塔式分解結(jié)構(gòu)和方向?yàn)V波器結(jié)構(gòu)組成,具體內(nèi)容如圖1所示。
圖1 Contourlet變換算法原理
在Contourlet 變換算法原理的基礎(chǔ)上,經(jīng)過變換處理,得到的人臉圖像如圖2所示。
圖2 人臉圖像預(yù)處理效果
在圖2 中,圖(a)是未經(jīng)過處理的原始圖像,圖2(b)是經(jīng)過Contourlet 變換后的圖像。根據(jù)圖2 所示內(nèi)容,經(jīng)過處理后的圖像,預(yù)處理效果有了明顯的提升,具有較好的效果。
為了有效提取到圖像的特征,需要將其劃分為多個相等或不相等的子塊圖像,這主要取決于具體的人臉圖像。將人臉圖像的長和寬看作是定值,在互不重疊的原則上對其進(jìn)行劃分,得到人臉圖像分塊。
隨機(jī)選取一幅人臉圖像,在這幅圖像中提取代表的是流形內(nèi)部和外部近鄰,利用多流形判將對人臉圖像特征的提取轉(zhuǎn)換為最優(yōu)化問題。
對于多流形距離度量矩陣的構(gòu)建,通過仿射包來實(shí)現(xiàn)。如果非空子集內(nèi)包含了多條穿越該子集的線段,那么就可以認(rèn)為非空子集是一個仿射子集。非空子集維度與仿射空間內(nèi)的維度始終保持在一種平行的狀態(tài)下。將所得的仿射子集進(jìn)行匯總整合,即可得到仿射包。
通過預(yù)處理后,人臉原始圖像結(jié)構(gòu)轉(zhuǎn)換處理成為了一個非線性的低維流形結(jié)構(gòu),為了對每個流形結(jié)構(gòu)內(nèi)的特征實(shí)現(xiàn)準(zhǔn)確抓取,建立了多個局部模型,此模型并非單一的模型,其優(yōu)勢是在一定程度上提高識別率。目前所有的多模型算法都是將低維流形結(jié)構(gòu)劃分為若干個子集,其中每個子集代表了對應(yīng)的線性空間,由此可以在一定程度上增加平均識別率。由于線性空間內(nèi)部無法實(shí)現(xiàn)結(jié)構(gòu)的緊密聯(lián)系,因此,本文提出利用仿射包來表示流形結(jié)構(gòu)。假設(shè)當(dāng)前已知人臉數(shù)據(jù)集的類別標(biāo)簽,形成一個子集,那么即可得到個人臉數(shù)據(jù)子集。利用譜聚類算法,計算得到仿射包,以此類推,得到其他流形的仿射包。在仿射包的作用下,剔除掉了線性空間內(nèi)的冗余信息[6~7],可以使子集在緊密的狀態(tài)下存在。
構(gòu)建誤差度量矩陣,假設(shè)wij為將第j個數(shù)據(jù)點(diǎn)在重構(gòu)第i個數(shù)據(jù)點(diǎn)時所做的貢獻(xiàn)權(quán)值,為了得到wij的具體值,設(shè)定每個數(shù)據(jù)點(diǎn)在進(jìn)行重構(gòu)時,只允許通過它的近鄰點(diǎn)k來確定。
在權(quán)值矩陣L={l1,l2,…,lk} 中,處于同一行中的所有元素相加等于1,即:
重構(gòu)的數(shù)據(jù)集與原始數(shù)據(jù)集之間差異較小,流形結(jié)構(gòu)的內(nèi)部距離保持不變。那么重構(gòu)后的數(shù)據(jù)集[8]用式(2)表示為
式中,X表示重構(gòu)系數(shù)。
在人臉圖像數(shù)據(jù)集內(nèi),根據(jù)誤差度量矩陣來構(gòu)建零空間,然后再對沒有進(jìn)行預(yù)處理的圖像進(jìn)行特征人臉的選?。?],將所得特征臉結(jié)果代入到訓(xùn)練集匯總,即可針對單訓(xùn)練樣本問題得到解決。
計算求得人臉圖像的特征臉數(shù)據(jù)集,與之相對應(yīng)的時間序列目標(biāo)函數(shù)為[10~11]
式(3)中,Ei表示時間特征向量,將λ值的前d個 特 征 整 合 在 一 起,得 到 特 征 向 量[12~13]λ1>λ2>…>λd。E′=(E′1,E′2,…,E′d)表 示Ei的 投 影 矩陣。在低維流形空間內(nèi)進(jìn)行人臉圖像的映射[14~15],保障減少識別時間的基礎(chǔ)上,確保重要特征不會變形、消失。
實(shí)驗(yàn)中所使用到的人臉圖像數(shù)據(jù)均來自于FDDB(Face Detection Data Set and Benchmark)數(shù)據(jù)集 和MALF(Multi-Attribute Labelled Faces)數(shù) 據(jù)集。FDDB 數(shù)據(jù)集中的圖像來自38 個人,在64 種不同環(huán)境下所拍攝,分為5 個子集。MALF 數(shù)據(jù)集中的圖像來自65 個人,每個人在光線、遮擋完全不同的環(huán)境下均拍攝了21張圖像,共同組成了MALF數(shù)據(jù)集。在此次實(shí)驗(yàn)中,從FDDB 數(shù)據(jù)集中選取了具有代表性的23 張樣本圖像,具體如圖3 所示,其中測試集和訓(xùn)練集的數(shù)量分別為10和13,從MALF數(shù)據(jù)集中選取了12 張樣本圖像,具體如圖4 所示,訓(xùn)練集和測試集的數(shù)量分別為8和4。
圖3 FDDB數(shù)據(jù)集23張人臉圖像
圖4 MALF數(shù)據(jù)集12張人臉圖像
首先為了驗(yàn)證近鄰點(diǎn)k值的變化對人臉圖像識別結(jié)果是否產(chǎn)生影響,針對FDDB 和MALF 數(shù)據(jù)集,利用單一變量原則選取不同的k值,確定這兩個數(shù)據(jù)集在最優(yōu)識別率下k的具體值。結(jié)果如圖5所示。
圖5 兩個數(shù)據(jù)集隨k 值變化情況
通過觀察圖5(a)和圖5(b)可知,識別率取決于k值的變化。在FDDB 數(shù)據(jù)集中,當(dāng)k值為40時,識別率為最優(yōu),而在MALF 數(shù)據(jù)集中,當(dāng)k值為70時,識別率為最優(yōu)。
根據(jù)圖5 得到的結(jié)果,結(jié)合劃分的訓(xùn)練集和測試集,利用文獻(xiàn)[1]基于深度學(xué)習(xí)和約束稀疏表達(dá)的人臉識別算法和文獻(xiàn)[2]基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)與集成學(xué)習(xí)的人臉識別算法驗(yàn)證在不同數(shù)據(jù)集下識別結(jié)果,如表1所示。
表1 在不同數(shù)據(jù)集下不同算法人臉識別結(jié)果
通過觀察表1 可知,本文算法平均識別率高達(dá)97%,而深度學(xué)習(xí)網(wǎng)絡(luò)識別算法和改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)識別算法的平均識別率僅僅為85%和88%。其原因是由于本文算法在對人臉圖像識別前對數(shù)據(jù)進(jìn)行預(yù)處理,有效去除了冗余信息。
為了更加深入驗(yàn)證所設(shè)計算法的效果和有效性,對三種算法進(jìn)行人臉識別所需要的時間進(jìn)行仿真實(shí)驗(yàn),結(jié)果如圖6所示。
圖6 三種算法在不同數(shù)據(jù)集下人臉識別時間
由圖6 可知,通過三種算法在不同數(shù)據(jù)集下人臉識別時間差異較大,本文算法在數(shù)據(jù)集相同的前提下,人臉識別所用的時間最少,而其他兩種算法的時間較長。這是由于本文算法將原始人臉圖像從高維數(shù)據(jù)形式轉(zhuǎn)換為了低維流形數(shù)據(jù),再對其進(jìn)行預(yù)處理,一定程度上有利于提高處理效率。
針對單訓(xùn)練樣本中人臉圖像識別,在識別過程中存在著大量的干擾因素問題,提出了一種有效的人臉識別算法。預(yù)處理人臉圖像中的噪聲等影響因素,確保后續(xù)人臉識別效果更加精準(zhǔn)。實(shí)現(xiàn)線性空間內(nèi)結(jié)構(gòu)的緊密聯(lián)系,在此基礎(chǔ)上可取得理想的識別結(jié)果。實(shí)驗(yàn)得出如下結(jié)論:本算法具有較高的識別率,可以有效去除冗余信息,減少識別時間,增加識別效率。對于人臉識別仍在不斷發(fā)展中,未來可以針對多訓(xùn)練樣本進(jìn)行更加深入的研究。為人臉識別發(fā)展提供更多的參考。