馬志豪 楊娟
(1.南京郵電大學電子與光學工程學院(微電子學院) 江蘇省南京市 210023)
(2.金陵科技學院電子信息工程學院 江蘇省南京市 211169)
情緒在人類的交流過程中扮演著重要的角色,人類通過多種方式表達情緒,面部表情是情緒最直接的外在表現。因此自動表情識別的研究具有重要意義,有廣泛的應用前景[1,2]。表情識別主要包含人臉檢測、特征提取、表情分類三個步驟。提取魯棒性和表征能力強的圖像特征是表情識別系統的關鍵。Ojala 等人[3]提出局部二值模式(Local Binary pattern,LBP)能有效編碼圖像的紋理信息,計算效率高,對單調光照有魯棒性,對于非單調光照敏感。Jabid 等人[4]提出局部方向模式(Local Direction Pattern,LDP)。LDP 通過邊緣響應值強度進行編碼。Rivera 等人[5]提出局部方向數(Local Direction Number Pattern,LDN)利用邊緣響應最大和最小的方向進行編碼。通過邊緣響應值進行編碼實質上是對局部鄰域的稠密采樣,所以魯棒性稍好,但是邊緣響應值同樣受隨機噪聲的干擾,也會造成編碼出錯。
圖1顯示Kirsch 算子的結構。其中M0和M4檢測鄰域內垂直方向邊緣,M2和M6檢測鄰域內水平方向邊緣,M1和M5與M3和M7分別檢測兩個斜向邊緣。通過疊加水平、垂直、對角方向邊緣響應值的強度值,選取顯著的邊緣方向。在灰度圖像中對顯著方向上的強度進行編碼。LPDTP 利用方向信息和紋理信息構建一個8位二進制的編碼。
LPDTP 的計算步驟如下:首先計算邊緣響應值Ri(x,y)見公式(1):

然后選取顯著的方向,計算步驟如下:

對于第一方向D1(x,y),設置自動閾值θ 對第一方向的值RsD1(x,y)(x,y)進行篩選,當RsD1(x,y)(x,y)值大于θ 則選取的第一方向D1(x,y)作為顯著方向,反之則認為該鄰域為平坦區域,并將LPDTP 值設為0。對于第二方向設置固定閾值? 對NorD2(x,y)(x,y)進行篩選,當NorD2(x,y)(x,y)大于? 時該方向是顯著方向,若小于? 則該方向不作為顯著方向,索引值Dir2(x,y)更改為0。在本文中? 取0.8。
確定顯著方向之后,在原圖像鄰域中計算中心像素與顯著方向上相鄰像素的強度差,如下所示:

然后對中心像素與相鄰像素的強度差值通過以下方式進行編碼:

最后,將選取的顯著方向特征和紋理特征進行二進制編碼,計算方式如下:

式中LPDTP(x,y)是在面部圖像中像素點(x,y)處的編碼。當有兩個顯著方向時LPDTP 的編碼模式數是4×2×3×2=48,當只有一個顯著方向時LPDTP 的編碼模式數時4×2=8,LPDTP 總的編碼模式數是48+8=56 種。
邊緣區域邊緣響應值強度大,平坦區域邊緣響應值強度小,設置一個閾值θ 根據第一方向的Rsi(x,y)值的強度信息區分邊緣和平坦區域。由于每一個圖像的像素信息不同,設置固定閾值不利于區分邊緣和平坦區域。表情圖像平坦區域在圖像所占的比率相對比較穩定,所以通過設置一個比率ρ 來確定自動閾值θ,如下所示:

其中b 是Rsi(x,y)的直方圖HRs中的bin 值,當b 的累加值所占的比率大于或等于ρ 時,此時的閾值θ 就等于b 的值,根據實驗選取ρ=0.5。
為驗證本文算法有效性,在CK+[6],JAFFE[7]數據庫上進行了實驗。CK+數據集有593 個圖像序列,其中327 個圖像序列有七種表情標簽。JAFFE 有213 幅圖像,有七種表情標簽。本次實驗中在CK+數據集中選擇除輕蔑外309 個帶有6 種標簽的表情圖像,在JAFFE 數據集中選擇所有圖像。使用Haar-like 和Adaboost 檢測并截取面部區域,然后將尺寸歸一化為110×120。采用與人無關的N 折交叉驗證方式,將受試者隨機分成N 組,其中一組用于測試,其余N-1 組用于訓練,在CK+中將受試者以12 人一組分成10 組。在JAFFE 中將受試者一人一組。在這種方式下同一人的圖像不會同時出現在訓練集和測試集中,可以確保測試圖像的獨立性,能夠更有效和準確的評估算法。使用帶有RBF 內核的支持向量機作為分類器,并通過自動訓練確定最優參數。
在表1 顯示了本文方法與LBP、LDN 和LDP 算法在CK+數據集中進行與人無關實驗各類圖像的識別率。從表中可以看出,總體上生氣、恐懼、悲傷這三類圖像的識別率偏低,厭惡、高興、驚訝這三類圖像的識別率較高,這是由于前三種面部表情動作特征不明顯,彼此之間容易產生混淆。本文算法的測試結果生氣的識別率相對其他三個算法的識別率較低,其中恐懼和悲傷的識別率相較于其他算法有明顯提升。

表1:CK+與人無關的六類表情識別率
表2顯示了不同算法在JAFFE 數據集中進行與人無關測試實驗的識別率,可以看出總體上此數據集上識別率偏低。這是由于在JAFFE 數據集中受試者較少,數據集中圖像較少,同時一些受試者擺出的表情特征不夠明顯,各類表情之間區分度不高容易產生混淆。而且在數據集中存在個別圖像數據標注錯誤。

表2:JAFFE 與人無關七類的識別率
圖像很容易遭受噪聲的干擾,若特征提取算法對噪聲魯棒性不強就會導致圖像識別率明顯下降。為測試本文算法對噪聲的魯棒性,對圖像添加不同程度的高斯噪聲進行測試。
圖2顯示了在不同峰值信噪比(Peak Signal to Noise Ratio,PSNR)下的高斯噪聲圖像。最左側圖像為原圖,之后圖像從左至右PSNR 的值分別是32±1 dB,28±1dB,25±1dB。

圖2:高斯噪聲圖像
從表3 中可以看出本文算法在CK+和JAFFE 數據集中,當PSNR 為32±1dB 時識別率分別下降1.63%,2.69%;PSNR 為28±1dB 時識別率分別下降7.16%,7.71%。在CK+數據集中同樣對LBP、LDP 和LDN 算法進行了測試,這三個算法的測試結果均劣于本文算法。

表3:不同高斯噪聲下識別率
本文提出LPDTP 用于表情分類。LPDTP 通過尋找鄰域內的顯著方向,能夠有效的編碼方向信息,在灰度圖像中對顯著方向上的像素強度編碼。通過方向信息和灰度信息的聯合,可以有效表征圖像的紋理特征。設置自動閾值θ 能夠有效消除平坦區域編碼信息。從實驗結果中可以看出LPDTP 不僅有良好的識別效果,對PSNR大于28dB 的高斯噪聲有良好的魯棒性。