陳 姣,劉小紅
(湖南信息學院計算機科學與工程學院軟件工程系,長沙 410151)
人臉表情是生活中最常見的一種信息傳遞方式,在有關情感的信息中,面部表情占總體表情量的55%,面部表情蘊含著人物的內(nèi)心深處的心理活動變化,所謂的 “察言觀色” 就表明人臉表情包含了非常多的信息,通過人臉表情就能很直觀地獲取別人的情感狀態(tài)。
人臉表情識別(FER)是近幾年人工智能領域的熱門話題,F(xiàn)ER 在虛擬現(xiàn)實、計算機視覺、人臉支付、視頻會議和心理學等領域具有廣泛的應用。比如:通過實時表情監(jiān)測可以判斷駕駛員是否處于疲勞狀態(tài),應時發(fā)出相關提醒,以減少交通事故發(fā)生。 自動人臉表情識別(AFER)通過監(jiān)測人臉表情,來判斷用戶的情感狀態(tài),并且以此為依據(jù)來創(chuàng)建自適應環(huán)境,比如:遠程教學中可以通過監(jiān)測學生的表情,獲得當時比較真實的學習狀態(tài),輔助學生和老師更好地掌握學習情況。又如在審訊過程中警察也可以通過表情來檢測,排除一些潛在性的欺騙。在解決心理困擾時,可以通過分析表情來獲取更為真實的信息[1]。
當下人臉表情識別多是在無遮擋的表情庫中進行分析的,如果想結合實際生活來研究表情識別技術并推廣到日常生活,就必須要考慮現(xiàn)實中人臉遮擋的問題。有些人覺得戴上口罩或墨鏡就可以遮擋住自己面部的某些器官,在此情況下就無法得到表情的全部特征,因此可以隱藏自己的內(nèi)心世界。但越來越多人員開始對人臉去遮擋情況進行研究,即使遮擋物隱藏掉了面部的部分內(nèi)容,還是可以通過算法進行還原。
目前去遮擋的思想有兩種:直接舍棄和填補。
關于舍棄法,如果是圖像邊緣或者是無關信息的背景缺失,舍棄法則完全不會影響識別結果,但是,很多時候圖像中缺失的區(qū)域很有可能是決定表情類別的五官關鍵所在,例如眼睛、眉毛、嘴巴和鼻子等。那么舍棄法會直接導致表情特征的大部分流失,這樣的圖像無論有多么精準的特征提取以及分類算法都無濟于事。因此,以舍棄法為基礎的遮擋圖像表情識別系統(tǒng)不可能達到一個較高的識別率。與之相比,填補法就可靠很多,填補法更多是以某種學習算法為基礎,通過學習殘缺圖像中的像素信息和圖像結構信息來還原缺失部分,最具有代表性的是卷積神經(jīng)網(wǎng)絡[2],以此為基礎的識別系統(tǒng)能夠處理還原后的整張人臉圖像,當殘缺區(qū)域面積合適時,用填補法有較高的識別結果[3?4]。
但是,卷積神經(jīng)網(wǎng)絡的學習能力和還原圖像的能力受到了遮擋區(qū)域的大小限制,當遮擋區(qū)域過大時,學習網(wǎng)絡將不能捕捉到正確的像素和結構信息,這種情況下能夠還原的情緒狀態(tài)或是五官形狀與原始圖像相比較都存在很大差別。2014 年,創(chuàng)新又實用的生成對抗網(wǎng)絡(GAN)的生成算法為人工智能技術帶來了新的突破。該算法將博弈論引入到損失函數(shù)中,在不斷對抗的過程中逐漸形成了系統(tǒng)的學習和生成能力,由于其出色的表現(xiàn)力,近年來在圖像生成、重建圖像高分辨率、圖像復原等領域被廣泛應用。
本文認為用生成對抗網(wǎng)絡進行人臉去遮擋會取得更好的效果,所以將生成對抗網(wǎng)絡作為遮擋圖像填補算法的基礎,通過分析其原理與不足設計出改進方案。
生成對抗網(wǎng)絡是博弈論和機器學習相結合的產(chǎn)物,在2014年由Goodfellow 等[5]提出,一經(jīng)問世即廣受歡迎,可見人們對于這種算法的認可。如果要更詳細地了解GAN,就需要知道它是怎么來的,以及這種算法能體現(xiàn)什么價值,存在的意義是什么。研究者最初想法是通過它完成計算機自動生成數(shù)據(jù)的功能,例如通過訓練某種算法模型,使該模型通過學習一些蘋果的圖片,然后自動生成蘋果的圖片,具備這些功能的算法被認為具有生成功能。但GAN 不是第一個生成算法,而是以往的生成算法在衡量生成圖片與真實圖片之間的差距時采用均方誤差作為損失函數(shù),但是研究者發(fā)現(xiàn)有時均方誤差一樣的兩張生成圖片的效果卻大相徑庭。針對此不足, Goodfellow等[5]提出了GAN。
如圖1所示,GAN 由兩個模型組成:生成模型G和判別模型D。首先第一代生成模型1G的輸入是隨機噪聲z,然后生成模型會生成一張初級照片,訓練一代判別模型1D并進行二次分類操作,將生成的圖片判別為0,而真實圖片判別為1;為了隱瞞一代判別器,一代生成模型開始進行優(yōu)化,然后進階成二代模型,當它生成的數(shù)據(jù)成功隱瞞1D時,判別模型也會優(yōu)化更新,進而升級為2D,按照相同的過程會不斷更新出N代的G和D。直到最后一代D再也區(qū)分不出生成圖片和真實圖片,就意味著模型訓練成功,以上過程就是GAN訓練過程的通俗理解。
圖1 GAN網(wǎng)絡循環(huán)訓練過程
該方法主要實現(xiàn)遮擋人臉圖像中去遮擋和表情識別的兩個功能,能夠有效補全含有復雜表情信息的人臉遮擋圖像,緩解局部遮擋區(qū)域?qū)τ谡趽醣砬樽R別算法的影響,提高圖像識別準確率和分辨率。方法以Wasserstein 生成對抗網(wǎng)絡(Wasserstein Generative Adversarial Network,WGAN)模型為基礎,該方法由一個生成器和一個判別器組成。
基于WGAN 的遮擋表情識別方法一共包含三個部分,第一部分為人臉表情的圖像預處理,具體包含人臉監(jiān)測、人臉校準、圖像尺度歸一化和圖像像素值的歸一化。第二部分為圖像遮擋區(qū)域的生成處理,從中提出加權重構損失函數(shù)Kwr、三連子損失函數(shù)Kt 和對抗損失函數(shù)Ka對生成器進行約束。并且,輸入原始未遮擋圖像、生成的補全圖像以及無關區(qū)域遮擋圖像對判別器進行訓練,充分利用遮擋圖像中未遮擋區(qū)域的像素信息,被遮擋圖像、生成圖像和原始未遮擋圖像之間的結構信息來對輸入的遮擋表情圖像進行填補修復,使補全圖像更加逼真和自然。第三部分在WGAN 網(wǎng)絡判別器的基礎上,使用其部分卷積層和池化層完成特征提取步驟,通過Wasserstein 距離構建原始未遮擋圖像、生成圖像以及無關區(qū)域遮擋圖像之間的對抗損失Ka 來提升系統(tǒng)的特征提取能力。另外加入全連接層和Sigmoid 層完成真假圖像的判別,同時將全連接層和Softmax 層相連接構成表情分類器。本文提出用原始未遮擋圖像、無關區(qū)域遮擋圖像、去遮擋的生成圖像來共同完成分類器的訓練,從而完成表情分類與識別。
方法框架如圖2所示,其中G和D分別代表生成器和判別器,G代表去遮擋的生成圖像,X(i,j)代表遮擋圖像, Kwr 和Kt 分別代表生成器的加權重構損失函數(shù)和三連子損失函數(shù),Ka 代表對抗損失函數(shù),Kc代表分類損失函數(shù)。
圖2 基于改進的生成對抗網(wǎng)絡的遮擋人臉表情識別方法框架
根據(jù)對現(xiàn)有遮擋面部表情識別分析和研究,目前還沒有發(fā)現(xiàn)一個成熟的、通用的、數(shù)據(jù)豐富的真實遮擋面部表情數(shù)據(jù)庫。除此之外,真實的遮擋圖像實際處理起來要困難很多,因為它不太容易被檢測為遮擋,也不太容易同時獲得無遮擋與遮擋這兩個結果的訓練表情圖像。所以,目前對遮擋表情的識別主要是研究人員在自己建立的遮擋模擬數(shù)據(jù)庫上進行研究。大多數(shù)研究人員使用掩模圖像(如膠片、黑色方形、濾光片、底片等圖像)與未遮擋的表情圖像進行拼接,以合成模擬的遮擋數(shù)據(jù)。
對于真實的遮擋表情圖像,本文研究方法的去遮擋效果并不太理想,仍有改進空間。這是由于本研究是通過在人臉表情圖像的不同位置增加大小不同的黑色矩形來模擬現(xiàn)實中可能存在的遮擋情況,并使用模擬數(shù)據(jù)作為訓練數(shù)據(jù)集。此研究缺乏一些真實遮擋表情圖像作為訓練數(shù)據(jù)。因此,在測試真實遮擋圖像時,不能有效地還原遮擋區(qū)域,如手遮擋、太陽鏡和膠帶等。對于現(xiàn)有的面部遮擋表情識別,不管研究人員使用哪種掩模圖像來模擬遮擋圖像,其結果都與真實遮擋的面部表情圖像的效果區(qū)別較大。沒有充足的真實遮擋訓練數(shù)據(jù)為基礎,任何方法都不能有效地處理真實遮擋的面部表情圖像。因此,建立一個公開、完善、真實的遮擋表情數(shù)據(jù)庫,并利用真實數(shù)據(jù)訓練網(wǎng)絡是今后的研究方向和努力目標。