周慧敏,劉奇,姜飛,楊明
(1.中北大學(xué) 理學(xué)院,山西 太原030051; 2.信息探測與處理山西省重點(diǎn)實(shí)驗(yàn)室,山西 太原 030051)
人臉識別是計算機(jī)視覺、模式識別等領(lǐng)域中最活躍的研究課題之一,在過去的二十年中得到了廣泛的應(yīng)用研究[1],但他在實(shí)際應(yīng)用中面臨許多挑戰(zhàn),如不受控制的環(huán)境、遮擋和姿態(tài)、光照、表情和時間的變化等.目前已有多種人臉特征提取和分類的方法被提出,常用的有Eigen faces[2]、Fisher faces[3]、基于Gabor特征的分類(GFC)方法[4]和LBP算法[5]等.LBP算法[5-7]的人臉特征提取對光照等有很好的魯棒性,但會忽略像素點(diǎn)本身攜帶的信息.基于Gabor濾波[8-9]的人臉識別方法在應(yīng)用時通常使用五個尺度和八個方向,計算成本高,所需存儲空間大.
單演信號是一維解析信號的二維推廣,突出特點(diǎn)是特征提取過程(幅值、方向和相位)是真正的旋轉(zhuǎn)不變[10].與基于Gabor濾波的方法相比,單演二值編碼(MBP)[10]算法具有更低的時間和空間復(fù)雜度,而且具有較好的識別效果,但忽略了單演相位信息,而單演相位能夠反映人臉圖像的結(jié)構(gòu)信息.融合單演二值編碼(MBC)[11]將幅值、方向和相位這三個特征進(jìn)行融合,有效地提高了人臉識別準(zhǔn)確率,并且對光照、姿態(tài)、表情和遮擋等引起的人臉圖像變化具有很強(qiáng)的魯棒性,但是其特征的提取依賴于人工選擇,結(jié)果有一定的不確定性.
近幾年,深度學(xué)習(xí)模型[12-14]被應(yīng)用于人臉識別,取得了不錯的效果.2006 年,Hinton 等[13]首次提出了深度信念網(wǎng)絡(luò)(Deep Belief Network,DBN),通過無監(jiān)督學(xué)習(xí)得到更抽象、有效的高層特征,但網(wǎng)絡(luò)缺乏對于圖像空間不變性的學(xué)習(xí),尤其是缺乏對于圖像旋轉(zhuǎn)不變性的學(xué)習(xí)[15].如果直接將人臉圖像的像素作為深度信念網(wǎng)絡(luò)的輸入,由于光照和姿態(tài)等的影響,網(wǎng)絡(luò)會學(xué)習(xí)到不利識別的特征,而且會忽略圖像的結(jié)構(gòu)特征.
MBC算法的特征提取過程是真正旋轉(zhuǎn)不變的,能有效提取到人臉圖像的局部結(jié)構(gòu)特征;DBN網(wǎng)絡(luò)通過無監(jiān)督學(xué)習(xí)提取到的人臉特征,不介入主觀因素.因此,本文將MBC算法和DBN相結(jié)合用于人臉識別,首先利用MBC算法單演信號旋轉(zhuǎn)不變的特性,正交分解得到圖像的單演幅值、方向和相位信息,提取圖像的MBCF特征;然后將其作為DBN的輸入,學(xué)習(xí)訓(xùn)練識別網(wǎng)絡(luò),減少網(wǎng)絡(luò)對干擾特征描述的學(xué)習(xí),提高人臉識別的性能.
Felsberg和Sommer在2001年引入了單演信號,單演信號通過Riesz變換構(gòu)建二維信號的單演表示.定義z=(x,y)為圖像坐標(biāo),圖像f(z)的單演信號表示定義為
(1)
其中,fx(z)、fy(z)分別是濾波后圖像在x軸和y軸上的Riesz變換;fln(z)=f(z)*F-1(G(ω)),F(xiàn)-1是傅里葉逆變換,G(ω)為log-Gabor濾波器,其表達(dá)式為:
G(ω)=exp{-[ln(ω/ω0)]2/(2[ln(σ/ω0)]2)}
(2)
其中,ω0=(λminμs-1)-1是中心頻率,σ=σratioω0是帶寬比例因子,λmin是最小波長,μ是波長的倍數(shù),s是比例指數(shù).因而二維信號的局部幅值A(chǔ)、局部方向O以及局部相位P可以由下式計算:
(3)
局部幅值A(chǔ)是局部能量信息的度量,局部方向O描述了幾何信息(即局部結(jié)構(gòu)的主方向),局部相位P表示的是主方向上的局部結(jié)構(gòu)信息.
單演信號的編碼過程共分為兩部分:單演信號局部變化(幅值、方向和相位)的二值編碼和單演局部強(qiáng)度(像素點(diǎn))的二值編碼.典型的局部變化編碼過程如圖1所示(設(shè)定N=8),局部強(qiáng)度編碼如圖2所示.
圖1 局部變化編碼流程圖 圖2 單演信號局部強(qiáng)度編碼Fig.1 Local variation coding flow chart Fig.2 Monogenic signal local intensity coding
根據(jù)圖像的局部幅值A(chǔ)、方向O和相位P的不同性質(zhì)采用不同的編碼規(guī)則,得到的八位二進(jìn)制序列作為MBC編碼的低八位.
(4)
(5)
(6)
式(5-6)中Q(x)是量化函數(shù), 表示如下:
(7)
因此,單演信號局部變化的二值編碼如下:
(8)
(9)
對于單演信號表示的每個幅值、相位和方向分量,分別用MBC_A、MBC_P和MBC_O表示其二值編碼,在每個位置MBC_A、MBC_P和MBC_O通過將局部圖像強(qiáng)度兩位編碼(式(10))和局部變化八位二值編碼(式(8))串聯(lián),表示如下:
(10)
MBC_A、MBC_P和MBC_O編碼特征可以單獨(dú)作為人臉識別的特征,也可以組合在一起作為人臉特征.本文采用加權(quán)的方式將三個分量組合得到MBCF編碼特征:
(11)
式中a1、a2和a3為權(quán)值系數(shù),a1+a2+a3=1.
深度信念網(wǎng)絡(luò)是一種無監(jiān)督學(xué)習(xí)網(wǎng)絡(luò)模型,它是由多個受限玻爾茲曼機(jī)(RBM)組成的概率模型(見圖3).RBM是一個由可見層v和隱藏層h組成的兩層無向概率圖模型.
DBN的訓(xùn)練過程共分為預(yù)訓(xùn)練(低層到高層的前向堆疊RBM學(xué)習(xí))和微調(diào)(由高層到低層的反向微調(diào)學(xué)習(xí))兩個部分[6].
預(yù)訓(xùn)練將DBN網(wǎng)絡(luò)劃分為若干個相鄰的RBM模型,逐層的訓(xùn)練每個RBM求得每層節(jié)點(diǎn)之間的權(quán)值矩陣w.假設(shè)所有的v和h對于任意的i和j,有vi∈{0,1},hj∈{0,1},其聯(lián)合分布為:
(12)
其中,Z是歸一化常量,b是可見層節(jié)點(diǎn)的偏置項(xiàng),c是隱藏層節(jié)點(diǎn)的偏置項(xiàng).
RBM模型是一個二分圖,所以可視層節(jié)點(diǎn)與隱藏層節(jié)點(diǎn)獨(dú)立,即式(13)和(14)成立.
(13)
(14)
訓(xùn)練RBM采用無監(jiān)督貪心逐層方法,先由可見層v,通過式(14)可求得隱藏層h;得到h之后再由式(13)反過來重構(gòu)可見層v1,通過調(diào)整參數(shù)使得重構(gòu)的可見層v1與v相同;最后,通過新的可見層再次重構(gòu)隱藏層,不斷重復(fù)這一個過程求得每一層之間的w.
微調(diào)采用有監(jiān)督的反向傳播算法(BP算法)微調(diào)整個DBN網(wǎng)絡(luò)的參數(shù).具體的過程為:用數(shù)據(jù)的標(biāo)簽值對模型進(jìn)行有監(jiān)督訓(xùn)練,微調(diào)各層間的連接權(quán)值w,減小模型的目標(biāo)預(yù)測標(biāo)簽值與實(shí)際標(biāo)簽值的誤差.
圖3 DBN網(wǎng)絡(luò)結(jié)構(gòu)圖 圖4 MBCF+DBN算法流程圖Fig.3 DBN structure Fig.4 MBCF+DBN algorithm flow chart
人臉圖像的結(jié)構(gòu)特征具有一定的穩(wěn)定性,在受到光照、姿態(tài)、表情和遮擋的影響時不會發(fā)生太大的變化.單演信號將圖像正交分解為幅值、相位和方向信息,而且其所需的時間和空間復(fù)雜度較小,因此,融合單演二值模式(MBC)能夠有效地提取圖像的結(jié)構(gòu)特征.深度學(xué)習(xí)可以直接將人臉圖像像素作為深度信念網(wǎng)絡(luò)的輸入數(shù)據(jù),但其輸入為向量形式,學(xué)習(xí)不到人臉的局部結(jié)構(gòu)特征.
本文將MBC算法和深度學(xué)習(xí)相結(jié)合進(jìn)行人臉識別.首先,用多尺度的單演濾波器對訓(xùn)練集與測試集圖像進(jìn)行濾波,得到幅值、方向和相位信息;其次,對三個分量進(jìn)行局部編碼,得到MBCF人臉特征編碼;然后,將訓(xùn)練集圖像的MBCF特征輸入DBN網(wǎng)絡(luò),逐層訓(xùn)練優(yōu)化網(wǎng)絡(luò);最后,用訓(xùn)練好的DBN網(wǎng)絡(luò)進(jìn)行人臉識別.算法具體步驟如下(參考圖4):
(1)將人臉圖像分為訓(xùn)練集和測試集,使用尺度為S=3的單演濾波器進(jìn)行濾波,得到多尺度的幅值A(chǔ)、方向O和相位P信息;對三個分量根據(jù)式(5-7)進(jìn)行二值編碼,得到編碼后的特征圖像;
(2)將編碼后訓(xùn)練集和測試集圖像進(jìn)行分塊(圖像劃分為Mb×Mb塊,每一小塊再次被分為Mr×Mr子塊)并提取每一子塊的直方圖特征,將每個子塊的特征連接起來得到數(shù)據(jù)集的特征HMBC_A、HMBC_O和HMBC_P,將直方圖特征用式(12)進(jìn)行融合,得到MBCF編碼特征表示人臉圖像特征;
(3)將訓(xùn)練集圖像MBCF編碼特征作為DBN的輸入數(shù)據(jù),根據(jù)DBN訓(xùn)練過程,逐層學(xué)習(xí)訓(xùn)練網(wǎng)絡(luò)參數(shù),構(gòu)建最優(yōu)DBN網(wǎng)絡(luò)模型;
(4)將測試集MBCF編碼特征輸入步驟(3)已訓(xùn)練好的DBN網(wǎng)絡(luò)中,從下到上的學(xué)習(xí)測試集的抽象特征,在網(wǎng)絡(luò)的最頂層根據(jù)圖像的抽象特征進(jìn)行分類,獲得測試集的類標(biāo)值,并計算識別準(zhǔn)確率.
為了驗(yàn)證算法的有效性,在ORL人臉數(shù)據(jù)上進(jìn)行測試實(shí)驗(yàn).ORL數(shù)據(jù)庫共有400張(40個人,每人10張)不同光照條件、姿態(tài)、表情和遮擋的人臉圖像.本文實(shí)驗(yàn)中,每人隨機(jī)選取7張共280張圖片作為訓(xùn)練集,剩余的120張圖片作為測試集,準(zhǔn)確率為測試20次平均值.對比實(shí)驗(yàn)均選最優(yōu)結(jié)果.
實(shí)驗(yàn)在Windows7,Matlab2014a平臺上進(jìn)行仿真,運(yùn)行環(huán)境是Intel雙核處理器,2GB內(nèi)存.最小波長λmin=4,波長的倍數(shù)μ=0.64,尺度個數(shù)S=3,比率因子σratio=1.7.DBN網(wǎng)絡(luò)共4層(1個可見層、2個隱藏層和1個輸出層),每一層的神經(jīng)元個數(shù)分別為m、100、100、n,其中n是目標(biāo)分類數(shù),m是輸入向量維數(shù).每層迭代次數(shù)為30,取學(xué)習(xí)率為0.001.
為了找到MBCF+DBN算法最佳的權(quán)重參數(shù),在ORL數(shù)據(jù)庫上分別用MBC_A、MBC_P和MBC_O三種編碼方法與DBN網(wǎng)絡(luò)相結(jié)合進(jìn)行試驗(yàn),得到表1結(jié)果.
表1 不同編碼方式的準(zhǔn)確率Table 1 Accuracy of different coding methods
從表1中可以看出MBC_A編碼方式的準(zhǔn)確率(測試集的人臉識別準(zhǔn)確率)明顯高于其他兩種編碼方式,說明人臉圖像單演濾波后得到的幅值分量包含人臉圖像的大部分信息.雖然MBC_P(相位)和MBC_O(方向)編碼方式的準(zhǔn)確率不高,但仍包含人臉圖像識別的有效信息,所以分析實(shí)驗(yàn)結(jié)果得到MBCF算法人臉圖像特征中權(quán)重系數(shù)的關(guān)系設(shè)置為a1>a2≥a3.不同權(quán)重系數(shù)的識別率不同,為進(jìn)一步確定a1,a2,a3的值,進(jìn)行多次實(shí)驗(yàn)得到表2結(jié)果.
表2 不同權(quán)重系數(shù)識別準(zhǔn)確率Table 2 Recognition accuracy of different weight coefficients
由表2可知,MBCF+DBN算法的準(zhǔn)確率隨著a1的增大而增大,當(dāng)a2=a3時,a1增大到0.6之后準(zhǔn)確率達(dá)到一個定值99.17%.當(dāng)a1不變且a2>a3時,準(zhǔn)確率比a2=a3時低,即權(quán)重系數(shù)關(guān)系為a1>a2=a3時準(zhǔn)確率高,因此權(quán)重系數(shù)設(shè)定為a1=0.6,a2=0.2,a3=0.2.
選取幾種現(xiàn)有取得不錯識別效果的人臉識別算法與MBCF+DBN算法進(jìn)行對比實(shí)驗(yàn),結(jié)果見表3.
表3 不同算法在ORL人臉數(shù)據(jù)庫上識別率Table 3 Recognition rate of different algorithms on ORL face database
從表3的實(shí)驗(yàn)結(jié)果可以看出,在ORL人臉數(shù)據(jù)庫上LBP、MBP、LBP+DBN算法都取得了較好的識別效果,但本文提出的MBCF+DBN在所有算法中識別準(zhǔn)確率最高;這是因?yàn)長BP只考慮了相鄰像素點(diǎn)之間的關(guān)系,圖像特征不夠全面;MBP算法較LBP算法增加了像素點(diǎn)本身的方向信息,特征提取較全面,所以識別效果較好;MBCF+DBN算法在MBP算法的基礎(chǔ)上又結(jié)合了圖像的相位信息,融合了幅值、方向和相位信息,能夠充分提取圖像特征,又因?yàn)樯疃刃拍罹W(wǎng)絡(luò)是每一層都進(jìn)行抽象學(xué)習(xí),將采用MBCF編碼得到的直方圖特征作為網(wǎng)絡(luò)的輸入時,更能有效地學(xué)習(xí)人臉特征,所以更有利于進(jìn)行人臉識別,識別效果最好.
在已有人臉圖像局部結(jié)構(gòu)特征提取和深度學(xué)習(xí)人臉識別的研究基礎(chǔ)上,提出了一種將融合單演二值編碼和深度信念網(wǎng)絡(luò)結(jié)合的人臉識別方法.在ORL數(shù)據(jù)庫上進(jìn)行試驗(yàn),探討了MBC特征(單演幅值、單演方向和單演相位)不同編碼方式、不同權(quán)重參數(shù)對實(shí)驗(yàn)結(jié)果的影響.在使用無監(jiān)督的貪婪算法逐層訓(xùn)練深度學(xué)習(xí)模型DBN時,隱藏層設(shè)定為2層,將采用MBC算法提取的人臉特征作為DBN的輸入,逐層訓(xùn)練,使用反向傳播算法優(yōu)化網(wǎng)絡(luò).實(shí)驗(yàn)結(jié)果表明MBCF編碼特征結(jié)合DBN網(wǎng)絡(luò)學(xué)習(xí)使得人臉識別精度有明顯提高.