虞蘇鑫,賀俊吉
(上海海事大學物流工程學院,上海 201306)
人臉表情包含大量的個人行為信息,能反映人內(nèi)心的情緒[1]?,F(xiàn)今,隨著人工智能的發(fā)展,人臉表情識別更是成為了研究的重要方向之一,其在安全駕駛[2]、醫(yī)療衛(wèi)生[3,4]、虛擬現(xiàn)實[5]、遠程網(wǎng)絡(luò)教學[6]、人機交互[7 - 9]和安防監(jiān)控[10]等方面都有著廣泛的應(yīng)用。例如在醫(yī)療衛(wèi)生領(lǐng)域中,通過對各年齡段患者表情的識別,可準確高效地判斷其疼痛等級并采取相應(yīng)的措施。
在現(xiàn)有的表情識別研究中,文獻[4]提出了結(jié)合RGB、深度和面部熱圖像的人臉疼痛表情識別方法。文獻[5,6,11]采用的是主動外觀模型方法,從彩色圖像中提取面部表情點來作為識別的幾何特征。文獻[9,10,12]提出了基于主成分分析的表情識別方法。羅元等[13]通過對人臉表情圖像進行離散余弦變換得到人臉的全局特征,再將其與人臉的局部紋理特征相融合,本文特指局部二值模式LBP (Local Binary Pattern)特征,獲得了更為精確的表情特征,從而進一步提高了表情識別率。胡敏等[14]提出了采用經(jīng)典線性分析法融合局部紋理和形狀特征的人臉表情識別方法。由于人臉存在表情無關(guān)區(qū)域及不同區(qū)域?qū)Ρ砬榈呢暙I度不同,王鎮(zhèn)鎮(zhèn)[15]提出了基于人臉子區(qū)域加權(quán)和線性判別分析LDA (Linear Discriminant Analysis)的表情識別算法,研究人臉關(guān)鍵子區(qū)域分割及不同權(quán)值分配對表情識別的影響。
上述研究都是基于公開的表情數(shù)據(jù)庫。例如,JAFFE數(shù)據(jù)庫,該庫中只包含青年人的表情圖像,對于文獻[4]中研究對象是老年人的情況,該數(shù)據(jù)庫就不適用;CK+數(shù)據(jù)庫中雖有不同年齡的受試者,但上述研究都是基于對他們的統(tǒng)一無區(qū)別實驗,忽略了不同年齡段的人同一表情相關(guān)區(qū)域貢獻度存在差異的問題,導致對特定年齡段的人臉表情識別效果不佳。為此,本文分別研究了不同年齡段的人各自最為有效的權(quán)值分配方式。具體方法如下:首先建立包含中老年人、青年人和兒童表情圖像的數(shù)據(jù)庫;再對數(shù)據(jù)庫中的圖像進行預(yù)處理,得到眼睛、嘴巴這2個與表情相關(guān)的區(qū)域的圖像,以及單純的人臉圖像;然后提取整個人臉的表情輪廓特征,以及眼睛和嘴巴的紋理特征;最后將這3部分的特征數(shù)據(jù)經(jīng)主成分分析法降維并歸一化后進行加權(quán)融合,分別設(shè)置不同的權(quán)值組合,利用支持向量機進行表情分類。
本文著眼于不同年齡段人的表情識別,由于人臉子區(qū)域?qū)Ρ砬樽R別的貢獻度會因年齡的不同而不同,因此,為對不同年齡群體表情進行針對性研究,以準確提高不同年齡段人臉表情的識別率,本文通過采集3個不同年齡段人的表情圖像建立了表情數(shù)據(jù)庫。
首先,本文對中老年人、青年人和兒童這3個年齡段的參與者拍攝表情視頻,然后從視頻中提取共1 076幀表情圖像,包括高興、悲傷、生氣、恐懼、驚訝、厭惡和中性,對每位參與者都采集這7種表情,共采集中老年人的表情圖像380幅,青年人的表情圖像406幅,兒童的表情圖像290幅。各個年齡段人每人每種表情均采集5~8幅圖像,將訓練圖像設(shè)置為每人每種表情的前3~5幅圖像,而后2、3幅圖像則設(shè)置為測試圖像。
數(shù)據(jù)庫建立以后,本文對數(shù)據(jù)庫進行了一些必要的處理,主要是先對數(shù)據(jù)庫中的圖像進行人臉檢測,再預(yù)處理這些人臉圖像,包括確定眼睛的中心位置、校正人臉、裁剪純?nèi)四槄^(qū)域、分割表情關(guān)鍵子區(qū)域、尺寸歸一化及直方圖均衡化等,為下一步操作做好準備。
當人的表情不同時,其面部眉毛、眼睛和嘴巴等的邊緣輪廓也會不同。為了更好地分離人臉表情相關(guān)區(qū)域和無關(guān)區(qū)域,本文采用最大類間方差閾值分割算法。該算法將圖像所有像素點按灰度值的大小劃分成2部分,使這2部分間的像素灰度差異最大,而每部分內(nèi)的像素灰度差異最小[16],然后用邊緣檢測算子自動檢測并描繪出所獲得的二值化圖像中表情相關(guān)區(qū)域的邊緣輪廓特征,作為后續(xù)用于分類的特征之一,表示如式(1)所示:
F=[F0,F1,…,Fl-1]
(1)
其中,F(xiàn)表示表情輪廓特征向量,F(xiàn)i表示第i個像素的灰度值,l表示圖像的總像素數(shù)。最大類間方差閾值分割算法的實現(xiàn)效果如圖1所示。
Figure 1 Features of facial expression profile圖1 人臉表情輪廓特征
LBP算法對光照和旋轉(zhuǎn)不敏感,計算相對簡單,被普遍用于紋理分類、模式識別等任務(wù)中[17],因此本文提取關(guān)鍵子區(qū)域的LBP特征,作為融合的另一種特征。
最初LBP算子被定義在3×3的窗口內(nèi),此窗口中間點的LBP值可由式(2)計算得到:
(2)
其中,中間像素位置表示為(xc,yc),其灰度值為ic,四周像素的總個數(shù)表示為P,這些像素的值表示為ip,符號函數(shù)s(x)的定義如式(3)所示:
(3)
圖2為一個LBP算子的編碼和特征值的計算過程示例。圖2a為圖像某局部區(qū)域各像素點的值,取中心像素點的值作為閾值,將其四周大于或等于該閾值的像素賦1,其余賦0,得到圖2b。將圖2b中心點左邊的值作為最高位,逆時針依次連接四周二進制碼即可得圖2a中心點所對應(yīng)的二進制編碼B,如式(4)所示:
a 圖像局部區(qū)域像素值 b 中心點的二進制編碼
B=10001101
(4)
進而計算出中心點的LBP特征值,如式(5)所示:
LBP=1+4+8+128=141
(5)
為使LBP算子既可準確表征表情圖像的局部信息,又可反映其全局信息,本文設(shè)計了一種基于子窗口的LBP特征值提取方法,具體做法如下所示:
(1)設(shè)子窗口的大小為21×19,將大小為126×133的人臉圖像分割成大小為126×38的眼睛區(qū)域和大小為84×38的嘴巴區(qū)域,則眼睛被均等劃分為12個子窗口,嘴巴被均等劃分為8個子窗口,進而統(tǒng)計每個子窗口的LBP特征值。
(2)將眼睛和嘴巴所有子窗口的LBP特征值分別結(jié)合在一起,形成2個長的特征向量。分別如式(6)和式(7)所示:
E=[E0,E1,…,Em-1]
(6)
M=[M0,M1,…,Mn-1]
(7)
其中,E和M分別表示眼睛和嘴巴的LBP特征向量,m和n分別為相應(yīng)的子窗口數(shù)目。
LBP特征值提取流程如圖3所示。
Figure 3 Acquisition of LBP features圖3 LBP特征值提取
本文針對不同年齡段人臉子區(qū)域?qū)Ρ砬樽R別貢獻度不同的問題,提出了基于子區(qū)域可變加權(quán)的表情識別方法。支持向量機常用于各種模式識別任務(wù)[18],因此本文采用支持向量機進行分類?;谧訁^(qū)域可變加權(quán)的表情識別方法實現(xiàn)過程如圖4所示。
Figure 4 Implementation process of facial expression recognition based on variant weights of face sub-regions圖4 基于子區(qū)域變加權(quán)的表情識別方法實現(xiàn)過程
具體步驟如下所示:
(1)分別采集中老年人、青年人和兒童的7種表情圖像,建立較為完整的表情數(shù)據(jù)庫。
(2)對數(shù)據(jù)庫中的表情圖像進行人臉檢測,定位人眼中心,根據(jù)人眼中心連線與水平軸線的夾角校正人臉;再裁剪純?nèi)四槄^(qū)域、眼睛區(qū)域和嘴巴區(qū)域,并歸一化人臉區(qū)域到126×133像素,歸一化眼睛區(qū)域到126×38像素,歸一化嘴巴區(qū)域到84×38像素;然后對圖像進行直方圖均衡化。
(3)分別提取3個年齡段人的整個人臉區(qū)域的表情輪廓特征,特征數(shù)據(jù)共126×133=16758維,提取眼睛區(qū)域和嘴巴區(qū)域的LBP特征,其中眼睛特征數(shù)據(jù)共有126×38=4788維,嘴巴特征數(shù)據(jù)共有84×38=3192維。
(4)分別對3個年齡段人提取到的表情輪廓和紋理特征進行主成分分析降維,將3部分特征均降到10維并將降維后的數(shù)據(jù)歸一化到某固定范圍,使最后的識別能達到最好的效果。
(5)分別將3個年齡段人臉區(qū)域的表情輪廓特征與眼睛和嘴巴的LBP特征進行融合(即特征相加),并根據(jù)不同區(qū)域?qū)Ρ砬樽R別的貢獻度分別多次設(shè)置人臉區(qū)域、眼睛區(qū)域和嘴巴區(qū)域的權(quán)值,分析比較不同權(quán)值組合對不同年齡段人表情識別的影響。
(6)運用SVM多類分類器分別對不同年齡段人的表情進行分類并計算分類正確率。
本節(jié)在自建的表情數(shù)據(jù)庫上,對本文所提方法進行實驗仿真。3個不同年齡段人的表情圖像預(yù)處理的主要結(jié)果如圖5~圖7所示。
Figure 5 Facial expression images preprocessing of the middle-aged people and the old people圖5 中老年人表情圖像預(yù)處理
Figure 6 Facial expression images preprocessing of young people圖6 青年人表情圖像預(yù)處理
Figure 7 Facial expression images preprocessing of children圖7 兒童表情圖像預(yù)處理
圖8~圖10分別為這3個不同年齡段人的特征提取過程結(jié)果圖。
Figure 8 Expression feature extraction of the middle-aged and the old people圖8 中老年人的表情特征提取
Figure 9 Expression feature extraction of young people圖9 青年人的表情特征提取
Figure 10 Expression feature extraction of children圖10 兒童的表情特征提取
本文基于自建數(shù)據(jù)庫,研究加權(quán)值對不同年齡段人表情識別率的影響,從而得出不同年齡段人最佳表情識別率所對應(yīng)的最佳權(quán)值分配方式。
該實驗中由于人臉、眼睛和嘴巴3部分的權(quán)值之和為1,每部分的權(quán)值都可由0取至1,本文按步長0.1取權(quán)值,則共有66種權(quán)值分配方式,用向量表示為:[WF,WE,WM]=[0,0,1],…,[0,1,0],[0.1,0,0.9],…,[0.1,0.9,0],…,[1,0,0]。在每種權(quán)值分配方式下,對每種表情均進行10次實驗,然后取其平均值作為該表情的識別率,總識別率為該權(quán)值分配方式下所有7種表情識別率的平均值。為了更好地比較人臉、眼睛和嘴巴這3個區(qū)域分別進行權(quán)值調(diào)整后的總識別率,本文將權(quán)值作為橫坐標,各條曲線分別對應(yīng)相應(yīng)的權(quán)值。將各個特征區(qū)域在各種權(quán)值分配方式下的最佳總識別率作為縱坐標,按照各年齡段人最佳總識別率值的分布區(qū)間分別選取縱坐標的范圍及數(shù)據(jù)間隔,從而得出中老年人、青年人和兒童在各特征區(qū)域權(quán)值調(diào)整后的表情識別率變化曲線圖,如圖11~圖13所示。
Figure 11 Expression recognition rate of the middle-aged and the old people圖11 中老年人表情識別率
Figure 12 Expression recognition rate of young people圖12 青年人表情識別率
Figure 13 Expression recognition rate of children圖13 兒童表情識別率
由圖11可以看出,中老年人的表情識別率主要分布在70%~100%。隨著人臉、眼睛和嘴巴特征區(qū)域權(quán)值的增加,其表情識別率都呈現(xiàn)先上升后下降的趨勢。當任一特征區(qū)域的權(quán)值為0,即只融合另外2種特征時,其最佳表情識別率都能達到較好的水平,而當任一特征區(qū)域的權(quán)值為1,即只提取1種特征時,其表情識別率明顯下降。當人臉特征區(qū)域的權(quán)值為0.5,眼睛特征區(qū)域的權(quán)值為0.3,嘴巴特征區(qū)域的權(quán)值為0.2,即[WF,WE,WM]=[0.5,0.3,0.2]時,中老年人的表情總識別率最高,約為95.7%,此時,人臉特征區(qū)域所占比重最高。
由圖12可以看出,青年人的表情識別率主要分布在90%~100%。當任一特征區(qū)域的權(quán)值為0,即只融合另外2種特征時,其最佳表情識別率都能達到較好的水平,而當人臉特征區(qū)域的權(quán)值為1,即只提取人臉這1種特征時,其表情識別率明顯下降。隨著人臉特征區(qū)域權(quán)值的增加,青年人的表情識別率整體呈現(xiàn)下降的趨勢,說明人臉區(qū)域的判別信息對青年人的表情識別作用甚微。隨著眼睛特征區(qū)域權(quán)值的增加,青年人的表情識別率呈現(xiàn)先上升后下降再保持不變的趨勢,隨著嘴巴特征區(qū)域權(quán)值的增加,青年人的表情識別率呈現(xiàn)先下降后上升再下降的趨勢,且當人臉特征區(qū)域的權(quán)值為0,眼睛特征區(qū)域的權(quán)值為0.4,嘴巴特征區(qū)域的權(quán)值為0.6,即[WF,WE,WM]=[0,0.4,0.6]時,青年人的表情總識別率最高,約為99.2%,此時,嘴巴特征區(qū)域所占比重最高。
由圖13可以看出,兒童的表情識別率主要分布在50%~85%。隨著人臉、眼睛和嘴巴特征區(qū)域權(quán)值的增加,其表情識別率整體都呈現(xiàn)上升、下降交替變化的趨勢。當人臉或眼睛特征區(qū)域的權(quán)值為0,即只融合另外2種特征時,其最佳表情識別率都較好,而當人臉特征區(qū)域或眼睛特征區(qū)域的權(quán)值為1,即只提取這2種特征中的一種時,其表情識別率明顯下降。當人臉特征區(qū)域的權(quán)值為0.1,眼睛特征區(qū)域的權(quán)值為0.1,嘴巴特征區(qū)域的權(quán)值為0.8,即[WF,WE,WM]=[0.1,0.1,0.8]時,兒童的表情總識別率最高,約為81.4%,此時,嘴巴區(qū)域所占比重最高。
由于中老年人和兒童對某些表情不夠理解,導致對其表達存在偏差,且他們的有些圖像采集環(huán)境較青年人復(fù)雜,有些圖像的頭部有較大程度的前后旋轉(zhuǎn),所以中老年人和兒童的表情識別率整體偏低。另外,由于兒童的訓練樣本數(shù)較其它2個年齡段人的少,因此兒童的表情識別率在三者中最低。
表1為對各年齡段人進行統(tǒng)一無區(qū)別實驗所得的表情識別率與其可變加權(quán)組合下最佳表情識別率的對比結(jié)果。
Table 1 Uniform and indistinguishable experiments for people at all ages表1 各年齡段人統(tǒng)一無區(qū)別實驗 %
表1中固定權(quán)值組合欄下的第1~3列分別表示中老年人、青年人和兒童最高表情識別率所對應(yīng)權(quán)值組合下的各年齡段人的表情識別率,第4列表示各年齡段人表情識別率綜合最高時所對應(yīng)的權(quán)值組合下的各表情識別率。
由表1可以看出,對某一特定年齡段人來說最好的權(quán)值組合并不能同時使其他年齡段人的表情識別率也最好,且在對不同年齡段的人用同一種綜合最佳的權(quán)值分配方式時,其表情識別率均低于用可變加權(quán)組合時的表情識別率,即該固定權(quán)值組合并不是所有年齡段人的最佳方式。因此可得出結(jié)論:最佳表情識別率所對應(yīng)的人臉各關(guān)鍵子區(qū)域分配的權(quán)重會因年齡段的不同而有所區(qū)別,這也驗證了本文研究加權(quán)參數(shù)對不同年齡段人表情識別效果產(chǎn)生影響的重要性。
本節(jié)基于JAFFE公開數(shù)據(jù)庫進行實驗,比較分析本文方法與文獻中方法的識別率。由于該數(shù)據(jù)庫中的圖像均為青年人圖像,所以該實驗在權(quán)值分配組合[WF,WE,WM]=[0,0.4,0.6]下進行。首先對JAFFE數(shù)據(jù)庫中7種表情重復(fù)進行10次實驗,得出10個識別率值,然后取其平均值作為該表情的總識別率,并與其它方法的識別率進行對比。實驗對比結(jié)果如表2所示。
由表2可以看出,本文基于子區(qū)域可變加權(quán)融合的方法在JAFFE數(shù)據(jù)庫上的表情識別效果最好,比文獻中方法所得的識別率最低提高了0.3%,最高提高了2.6%,驗證了本文方法的優(yōu)越性。
Table 2 Comparative experiments表2 實驗對比
本文方法對基于JAFFE數(shù)據(jù)庫的表情識別率略低于自建庫上青年人的表情識別率,主要是因為JAFFE中的樣本數(shù)較少,導致一定的識別率下降。另外,由于本文使用的是自建數(shù)據(jù)庫,數(shù)據(jù)量整體還不夠多,所以采用的是傳統(tǒng)的特征提取方法,而未采用基于深度學習的方法進行實驗。
本文采用子區(qū)域可變加權(quán)的方法來研究自建數(shù)據(jù)庫中不同年齡段人的表情識別與分類,通過分別實驗不同的加權(quán)組合,得出了對于不同年齡段人來說最有效的權(quán)值分配方式。在最有效的權(quán)值分配方式下,中老年人的表情識別率最高可達95.7%,青年人的表情識別率最高可達99.2%,兒童的表情識別率最高可達81.4%,總體而言效果還算令人滿意,驗證了本文方法的優(yōu)越性,表明了該研究的意義與價值。從中老年人和兒童的表情識別率低于青年人的部分原因可知,本文方法對復(fù)雜環(huán)境、前后旋轉(zhuǎn)等的魯棒性還不夠好,這也將是下一步的研究內(nèi)容。