郭文強,趙 艷,張 棟,黃梓軒,侯勇嚴,肖秦琨,郭志高
(1.陜西科技大學 電子信息與人工智能學院,陜西 西安 710021;2.陜西科技大學 電氣與控制工程學院,陜西 西安 710021;3.西安工業(yè)大學 電子信息工程學院,陜西 西安 710021)
自動疼痛識別對那些不能用口頭表達疼痛的人,如新生患病兒童、癡呆癥患者、精神受損或重癥監(jiān)護中的病人等至關(guān)重要[1].若能及時利用這些患者的表情進行疼痛評估,便可以及時有效地輔助治療.隨著計算機視覺技術(shù)的發(fā)展,基于面部分析的疼痛表情識別技術(shù)成為了一個快速發(fā)展研究領(lǐng)域[2].然而,表情識別過程中因真實場景中光照的變化、個體的姿態(tài)及表情的夸張程度等復(fù)雜因素會對圖像觀測準確性帶來不利影響.另外,由于目前醫(yī)療測試手段的局限性以及建模采用的知識表達具有不確定性,比如,測試手段的局限性會導(dǎo)致面部特征向量局部丟失;建模訓練過程中疼痛程度與面部動作單元(Action Unit,AU)關(guān)系的復(fù)雜性和不唯一性,往往也會使知識表達不精確.因此,基于復(fù)雜、不確定性環(huán)境下的疼痛評估的建模和分析有著巨大的挑戰(zhàn).
針對不確定性問題的解決方法主要有模糊邏輯、DS 證據(jù)理論、粗糙集理論、貝葉斯網(wǎng)絡(luò)等方法,但目前上述不確定性處理方法在疼痛評估中的應(yīng)用未見報道.現(xiàn)有的圍繞面部表情的疼痛評估研究主要有:文獻[3]提出了一種利用卷積深度信念網(wǎng)絡(luò)進行特征提取,然后采用支持向量機(Support Vector Machine,SVM)對基于面部表情的疼痛出現(xiàn)與否進行識別.但采用的網(wǎng)絡(luò)模型復(fù)雜,且SVM方法對二分類問題有較好的識別效果,對多分類的疼痛評估問題有應(yīng)用局限性.文獻[4]提出了利用多示例學習(Multiple Instance Learning,MIL)構(gòu)建疼痛表情分類器.但MIL方法依賴于大量的已知樣本,而實際中用于學習的有效疼痛樣本數(shù)量往往非常有限,會導(dǎo)致疼痛識別模型準確率下降.文獻[5]提出了一種利用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)進行面部特征提取,然后采用聯(lián)合深度循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Networks,RNN)進行4個面部疼痛強度等級的劃分.但CNN與RNN聯(lián)合的方法其模型復(fù)雜,可解釋性差.
結(jié)合了圖論與概率論的貝葉斯網(wǎng)絡(luò)(Bayesian Network,BN)能清晰、直觀地顯示變量之間的因果關(guān)系,并可以利用概率推理框架有效地應(yīng)對不確定性建模與推理問題[6].本文提出了一種基于貝葉斯網(wǎng)絡(luò)建模的疼痛評估方法.首先獲取人臉有關(guān)疼痛的AU特征樣本,并對不平衡的特征樣本進行平衡化處理,然后建立疼痛評估BN模型.最后利用BN推理算法進行完全證據(jù)下和不完全證據(jù)下的推理,實現(xiàn)復(fù)雜、不確定性條件下的多分類疼痛強度評估.
本文研究的疼痛評估過程涉及圖像采集、特征提取、建模與推理等.由于識別過程復(fù)雜且系統(tǒng)中存在較多的不確定性,如測試手段的局限性等,可能會導(dǎo)致局部特征證據(jù)的丟失(不完全證據(jù)),應(yīng)用貝葉斯網(wǎng)絡(luò)研究成果可以較好解決疼痛評估存在的復(fù)雜性和不確定性.
為了描述面部肌肉運動和人臉表情的關(guān)系,Ekman和Friesen[7]建立了面部動作編碼系統(tǒng) (Facial Action Coding System,FACS).這個系統(tǒng)將人臉區(qū)域共分為44個獨立的運動單元,并提供了這些運動單元和基本表情的關(guān)系.
隨后,Prkachin和Solomon提出與疼痛相關(guān)的運動單元,圖1所示為PSPI分數(shù)表征患者疼痛狀態(tài)的AU的關(guān)系[8].AU主要表征為:眉毛聚攏(AU4)、眼窩收緊(AU6和AU7)、提肌收縮(AU9和AU10)以及閉眼(AU43).
圖1 人臉關(guān)于疼痛的AU表征
Prkachin和Solomon采用的PSPI表達式如公式(1)所示[8].
PSPI=AU4+max(AU6,AU7)+
max(AU9,AU10)+AU43
(1)
式(1)中:max(AU6,AU7)表示取AU6和AU7強度中的最大值,max(AU9,AU10)表示取AU9和AU10強度中的最大值;其中AU43取值為0或1表示睜眼或閉眼,其他AU取值范圍均為0 ~5表示各AU發(fā)生的強度值,所以PSPI的取值范圍為0 ~16.
貝葉斯網(wǎng)絡(luò)常表示為B(G,θ),其中G代表具有N個節(jié)點的有向無環(huán)圖,圖中的N個節(jié)點表示N個隨機變量,節(jié)點間的有向邊表示隨機變量間的依賴關(guān)系;θ代表節(jié)點xi同其父節(jié)點πxi之間的依賴程度[9].其中變量X1∶N的聯(lián)合概率分布如式(2)所示[9]:
(2)
式(2)中:πxi表示xi的父節(jié)點集合條件概率分布;p(xi|πxi)表示給定父節(jié)點值的變量時xi出現(xiàn)的概率.
1.2.1 BN建模
通常,BN建模分為結(jié)構(gòu)建模和參數(shù)建模.其中,BN結(jié)構(gòu)建模就是確定與給定訓練樣本集相匹配的網(wǎng)絡(luò)結(jié)構(gòu),常采用基于專家經(jīng)驗或根據(jù)給定樣本學習的方法來建立[10].BN參數(shù)建模是在網(wǎng)絡(luò)拓撲結(jié)構(gòu)建立好的基礎(chǔ)上,依照一定的數(shù)學準則,確定BN的參數(shù)分布.通常采用基于專家經(jīng)驗法、數(shù)據(jù)驅(qū)動法和兩者混合的方法進行參數(shù)建模.
E步(Expectation),求期望:計算對數(shù)似然函數(shù)的期望,如式(3)所示.
(3)
M步(Maximization),求極大:找θ(k+1)∈Θ使?jié)M足式(4),對?θ∈Θ成立
Q(θ(k+1),θ(k))≥Q(θ,θ(k))
(4)
通過E步和M步的不斷迭代產(chǎn)生的參數(shù)值序列{θ(k)},當滿足式(5)時停止迭代,此時{θ(k)}便是參數(shù) 的估計.
|L(θ(k+1))-L(θ(k))|<λ(?λ>0)
(5)
1.2.2 BN推理
BN推理是在已有的BN模型基礎(chǔ)上,已知證據(jù)節(jié)點集合e取值狀態(tài),計算非證據(jù)節(jié)點o的后驗概率分布.本文采用運算速度快、應(yīng)用廣的聯(lián)合樹(Junction Tree,JT)推理算法,其表達如式(6)所示[12]:
(6)
本文提出的基于貝葉斯網(wǎng)絡(luò)建模的疼痛評估流程圖如圖2所示.主要過程包括:獲取人臉有關(guān)疼痛的AU特征樣本,并對不平衡的特征樣本進行平衡化處理,然后建立疼痛評估BN模型.最后利用BN推理算法實現(xiàn)疼痛等級評估.
圖2 基于BN模型的疼痛評估流程圖
本文根據(jù)文獻[13]的方法,采用主動外觀模型(Active Appearance Models,AAM)獲取AU特征樣本的過程如下所示:
步驟一:樣本選取與標定,通過去除背景、手動標記人臉輪廓得到樣本輸入數(shù)據(jù);
步驟二:對獲取的樣本人臉進行歸一化處理并利用Procrustes變換得到平均形狀模型;
步驟三:通過Delaunay三角劃分和三角映射得到平均紋理模型;
步驟四:對獲取的形狀模型和紋理模型進行加權(quán)組合得到AAM模型,再利用主成分分析進行降維;
步驟五:將已建立好的AAM模型在當前圖像中尋找最佳匹配目標,獲取需要的特征參數(shù);
步驟六:利用SVM分類器對以上獲取的特征進行AU分類,獲取最終的AU特征樣本集.
如果獲取的樣本集存在不平衡問題(如PSPI值為0的樣本數(shù)量明顯多于其他類),則可采用文獻[5]中所提到的下采樣方法對樣本進行平衡化處理.
Lucey等[14]為推動疼痛評估的研究,發(fā)布了UNBC-McMaster數(shù)據(jù)庫該數(shù)據(jù)庫包含來自25個患有肩部疼痛患者的200個視頻序列,共計48 398幀圖像,其中每一幀圖像都采用PSPI進行編碼.其PSPI值的分布如圖3所示,可以明顯看出該數(shù)據(jù)庫存在嚴重的數(shù)據(jù)不平衡問題,會導(dǎo)致建立疼痛評估BN模型時產(chǎn)生嚴重的過擬合現(xiàn)象,使疼痛表情識別率降低.本文以樣本數(shù)量相對較少的"重度疼痛"樣本量為劃分依據(jù),利用下采樣技術(shù)解決各類數(shù)據(jù)不平衡問題,處理后的結(jié)果如圖4所示.其主要對多數(shù)類(如PSPI值為0的無痛類等)序列隨機選擇并依次排序和劃分,達到減少多數(shù)類的目的形成實驗所需樣本集.
圖3 UNBC-McMaster數(shù)據(jù)庫中PSPI值分布圖
圖4 下采樣處理后的PSPI值分布圖
本文以PSPI值及各類別數(shù)據(jù)的均衡性作為疼痛等級劃分依據(jù),劃分結(jié)果如表1所示,將疼痛表情共劃分為“不痛”、“輕微疼痛”、“中度疼痛”和“重度疼痛”四個等級,且平衡化后各等級樣本數(shù)量也列于表1中,可以看出平衡化處理后各疼痛等級樣本數(shù)接近同一數(shù)量級.
表1 樣本平衡化及疼痛等級劃分
根據(jù)Prkachin和Solomon等的研究成果[8],基于疼痛與各AU之間的關(guān)系分析,本文提出了一種疼痛評估BN結(jié)構(gòu)模型如圖5所示.其中,父節(jié)點Pain Level代表疼痛等級的4種狀態(tài),分別是“不痛”、“輕微疼痛”、“中度疼痛”和“重度疼痛”;AU各節(jié)點代表由疼痛觸發(fā)的面部活動單元,其中子節(jié)點AU43共有2種狀態(tài),其他AU子節(jié)點各有6種狀態(tài),代表AU發(fā)生的強度.圖5簡潔、直觀地顯示了疼痛等級與各AU之間的因果關(guān)系.
圖5 疼痛評估BN結(jié)構(gòu)模型
在疼痛評估BN結(jié)構(gòu)模型完成的基礎(chǔ)上,本文參數(shù)建模主要根據(jù)樣本數(shù)據(jù)集利用EM算法完成BN參數(shù)建模.至此,疼痛評估BN模型已經(jīng)建模完成.
基于貝葉斯網(wǎng)絡(luò)的疼痛評估模型建立完成后,將待評估的面部AU特征樣本用于疼痛評估模型的輸入特征向量,利用聯(lián)合樹推理算法完成推理.每次疼痛等級推理結(jié)果分別對應(yīng)“不痛”、“輕微疼痛”、“中度疼痛”和“重度疼痛”等不同疼痛等級分別出現(xiàn)的概率.通過比較推理得到的疼痛表情屬性概率的大小,輸出概率最大且唯一時所對應(yīng)的疼痛表情屬性,即可得到疼痛等級評估結(jié)果.
為了驗證本文方法的準確性和有效性,分別進行完全證據(jù)和不完全證據(jù)的推理實驗,并在完全證據(jù)的條件下利用本文的方法與經(jīng)典的SVM[3]、MIL[4]和RNN[5]識別方法進行實驗對比.
本文的仿真實驗平臺為Windows 10系統(tǒng),處理器為AMD CPU 1.8GHz,編程工具為MATLAB R2016b,使用的數(shù)據(jù)集為UNBC-McMaster疼痛數(shù)據(jù)庫[14].
實驗中基于BN模型的疼痛評估中結(jié)構(gòu)建模采用專家經(jīng)驗法,參數(shù)建模采用數(shù)據(jù)驅(qū)動法.其中基于專家經(jīng)驗所建立的疼痛評估BN結(jié)構(gòu)模型如圖5所示.當疼痛評估BN模型的結(jié)構(gòu)確定后,基于數(shù)據(jù)驅(qū)動的方法利用EM算法得到BN模型參數(shù),實驗中將EM的迭代次數(shù)設(shè)為5000.
本次實驗選用UNBC-McMaster數(shù)據(jù)庫中平衡化后的樣本數(shù)(如表1所示)作為實驗所需數(shù)據(jù)集,利用本文基于貝葉斯網(wǎng)絡(luò)建模的疼痛評估方法實現(xiàn)疼痛等級評估.根據(jù)疼痛等級的劃分結(jié)果和相應(yīng)的樣本數(shù),每類可選取251組數(shù)據(jù),其中170組數(shù)據(jù)作為參數(shù)模型訓練,剩下的81組數(shù)據(jù)作為測試集(未用作訓練集).為了更直觀的表明該模型的疼痛等級評估效果,實驗結(jié)果采用混淆矩陣的方式表示.
3.2.1 完全證據(jù)下的推理
當使用完全6個AU特征證據(jù)進行推理驗證時,采用基于BN模型的疼痛評估結(jié)果如圖6所示.
圖6 完全證據(jù)下的疼痛評估結(jié)果
由圖6可以看出,在完全證據(jù)的推理下,其中“不痛”的識別率可達到100%;“輕微疼痛”和“重度疼痛”的識別率都達到96%,其容易與“中度疼痛”混淆;而“中度疼痛”的識別率為91%.分析可知,基于貝葉斯網(wǎng)絡(luò)建模的疼痛評估方法可以準確的劃分疼痛等級,平均識別率可以達到95.75%.
3.2.2 不同評估方法的實驗結(jié)果對比
為了凸顯本文方法的優(yōu)勢,在相同條件下利用該方法與經(jīng)典的SVM[3]、MIL[4]和RNN[5]識別方法進行對比.為了更直觀的表示各分類模型的優(yōu)劣,選用曲線下面積(Area Under the Curve,AUC)來進行評價.AUC值一般是通過計算接收工作特性曲線 (Receiver Operating Characteristic curve,ROC curve)下的面積得到的,取值范圍為0~1[15].一般隨機猜測產(chǎn)生的對角線的AUC值為0.5,AUC值越大說明該分類模型越好.本次實驗結(jié)果采用平均識別率和AUC的方式來表示,不同分類方法的實驗結(jié)果如表2所示.
表2 不同評估方法下的實驗結(jié)果
由表2可以看出,本文方法的平均識別率為95.75%、AUC值為0.97,均高于經(jīng)典的SVM、RNN等方法,說明了本文方法的有效性.分析可知,本文利用貝葉斯網(wǎng)絡(luò)強大的模型學習能力較好的解決了疼痛表情識別過程中多分類的建模問題,并使用簡潔且因果關(guān)系可解釋性好的模型,取得了較好的疼痛表情識別結(jié)果.
3.2.3 不完全證據(jù)下的推理
假設(shè)由于真實場景中光照的變化等因素引發(fā)局部特征向量AU4缺失時,經(jīng)典的神經(jīng)網(wǎng)絡(luò)無法進行疼痛表情的分類識別,而利用本文方法進行推理的實驗結(jié)果如圖7所示.
圖7 不完全證據(jù)下(AU4缺失)疼痛評估結(jié)果
由圖7可以看出,在不完全證據(jù)的推理下,其中“不痛”的識別率可達到100%;“輕微疼痛”的識別率達到95%,其容易與“中度疼痛”混淆;“中度疼痛”的識別率為79%;“重度疼痛”的識別率為84%,比完全證據(jù)下的識別率略有下降.分析可知,相比較基于經(jīng)典神經(jīng)網(wǎng)絡(luò)的方法,本文評估方法在不完全證據(jù)下的推理有著更強的適用性和優(yōu)越性.
針對疼痛表情識別中的復(fù)雜、不確定性問題,本文提出了一種基于貝葉斯網(wǎng)絡(luò)建模的疼痛評估方法.該方法首先通過AAM模型獲取人臉有關(guān)疼痛的AU特征向量,并對不平衡的特征樣本進行平衡化處理,然后結(jié)合專家經(jīng)驗和數(shù)據(jù)驅(qū)動的方法建立疼痛評估BN模型,最后通過BN推理算法實現(xiàn)疼痛強度評估.
實驗結(jié)果表明:在完全證據(jù)的推理下,與經(jīng)典的SVM,MIL和RNN方法進行對比,表明基于貝葉斯網(wǎng)絡(luò)建模的疼痛評估方法模型簡單、可解釋性強且對多分類的疼痛強度評估有著更高的識別精度;在不完全證據(jù)的推理下,即當輸入特征向量存在局部缺失時,本文方法依然具有較好的疼痛識別結(jié)果,為不確定性環(huán)境下的疼痛評估提供了一條有效的途徑.