駱天依 劉大運 李修政 房國志 安欣 魏華杰 胡城



摘要:針對唇語識別過程中唇部特征提取和時序關系存在的問題,提出一種卷積神經(jīng)網(wǎng)絡(CNN)和雙向長短時記憶網(wǎng)絡(Bi-LSTM)相結合的深度學習模型。利用CNN學習唇部特征,并將學習到的唇部特征送入Bi-LSTM進行時序編碼,通過Softmax進行分類。建立NUMBER DATASET和PHRACE DATASET兩個大型漢語數(shù)據(jù)集以解決漢語唇語數(shù)據(jù)缺失問題。將該模型與傳統(tǒng)的唇語識別方法在兩個數(shù)據(jù)集上進行實驗對比,發(fā)現(xiàn)在NUMBER DATASET上識別準確率為81.3%,比傳統(tǒng)方法提高了8.1%,在PHRACE DATASET上識別準確率為83.5%,比傳統(tǒng)方法提高了9%。實驗結果表明該模型能有效提高唇語識別的準確率。
關鍵詞:唇語識別;卷積神經(jīng)網(wǎng)絡;雙向長短時記憶網(wǎng)絡;深度學習;時序編碼
DOI:10.11907/rjdk.191058開放科學(資源服務)標識碼(OSID):
中圖分類號:TP301文獻標識碼:A 文章編號:1672-7800(2019)010-0036-04
0引言
唇語識別指通過觀察人說話時唇部特征變化,識別出入所說的話。作為智能化人機交互的重要組成部分,唇語識別技術由于具有方便快捷、安全度高等特點,逐漸應用在輔助語音識別、協(xié)助警方破案、提高人臉識別安全性等眾多領域。
目前,大多數(shù)研究主要集中在唇部檢測定位、特征提取以及對樣本數(shù)據(jù)的訓練幾方面。在唇部檢測定位方面,田原螈等提出基于YCbCr膚色檢測與AdaBoost聯(lián)級算法的嘴部特征定位,采用自適應閾值分割法進行唇部特征狀態(tài)分析。在特征提取方面,王嘩等通過改進的主動形狀模型(Active Shape Model,ASM),計算標定點間平均紋理和協(xié)方差矩陣實現(xiàn)對人臉表情的識別。雖然這種方法直觀地獲得了唇部特征參數(shù),但模型對唇部初始位置和形狀十分依賴,不能很好地適應唇部復雜多變的紋理結構。在樣本數(shù)據(jù)訓練方面,Alan J.Goldschen等利用隱馬爾可夫模型(Hidden Markov Model,HMM)和層次聚類算法,實現(xiàn)對口腔動態(tài)特征的識別;Jfirgen Schmidhuber提出基于長短時記憶單元(Long Short-Term Memory,LSTM)的遞歸結構,解決了傳統(tǒng)循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network,RNN)梯度消失的問題。LSTM考慮了過去信息對當前信息的影響,馬寧等將LSTM運用到唇語識別,有效解決了唇讀信息多樣性問題。然而LSTM沒有考慮未來信息對當前信息的影響,在一定程度上影響了識別準確率。
針對以上問題,本文提出一種基于卷積神經(jīng)網(wǎng)絡(Con-volutional Neural Network,CNN)和雙向長短時記憶網(wǎng)絡(Bidirectional-Long Short-Term Memory,Bi-LSTM)的深度學習方法,充分利用CNN捕捉局部特征以及Bi-LSTM捕捉時序信息的特點,無需考慮唇部紋理特征并將未來信息對當前信息的影響考慮在內,實現(xiàn)了對數(shù)字0-9和10個常用漢語短語的唇語識別。
1唇語識別模型
基于CNN和Bi-LSTM的唇語識別模型如圖1所示,該模型由4個部分組成:①唇讀視頻預處理;②利用CNN模型學習唇部特征;③利用Bi-LSTM模型提取唇動時序特征;④利用分類器進行特征分類。
1.1輸入層
首先將視頻轉換成圖片,然后利用dlib庫提取唇部的20個特征點,根據(jù)這20個特征點確定唇部位置和裁取范圍,裁出唇部隨時間變化的特征圖像序列,將唇動序列送人輸入層。
1.2CNN模型
CNN是一種專用于處理類似網(wǎng)格結構數(shù)據(jù)的神經(jīng)網(wǎng)絡,包含卷積層、池化層和全連接層3個單元。多層卷積層和池化層交替排列自主學習,在保留訓練樣本主要特征的同時防止過擬合,并提高模型泛化能力。全連接層對前面學習到的特征進行加權處理,得到各種分類情況概率。
如圖2所示,輸入層、卷積層和池化層均只有一個。假設輸入層和卷積層之間存在m個卷積核,根據(jù)卷積層計算公式可以得到卷積層輸出的第m個特征面:
類比這類計算方法,可以得到多卷積層情況下的全連接層。
本實驗采用CNN對唇部特征進行學習。將輸入層內容送人CNN后,卷積層用采樣器從視頻中采集唇部關鍵特征信息數(shù)據(jù),池化層對卷積層結果進一步壓縮,提取到唇部更關鍵的特征信息,全連接層對池化層結果進行整合,最終將學習到的唇部特征送人到Bi-LSTM中。
1.3Bi-LSTM模型
LSTM網(wǎng)絡主要由遺忘門(forget gate)、輸入門(inpulgate)及輸出門(output gate)構成。遺忘門決定從上一單元中丟失哪些信息,輸入門的輸入信號為h(t-1)和X(t),輸出門輸出信號h(t)介于0和1之間,見圖3。
輸出門最終確定LSTM單元的輸出值。首先運行一個sigmoid層確定細胞狀態(tài)的哪個部分將輸出出去,之后經(jīng)過非線性變換得到最終輸出。
2實驗結果與分析
2.1數(shù)據(jù)集建立
唇語識別研究剛剛起步,有關唇語方面的數(shù)據(jù)集很少,其中較具有影響力的數(shù)據(jù)集如下:
(1)OuluVS數(shù)據(jù)集。包含20個說話人,語料為每人讀10個日常問候短語。
(2)MIRACL-VC數(shù)據(jù)集。5男10女錄制的同時包含深度圖和彩色圖的唇語數(shù)據(jù)集,由微軟Kinect錄制,語料為每人讀10個單詞和10個短語各10次的視頻。
(3)哈工大HIT Bi-CAV語料庫。語料為10人基于96個音讀出的200個常用漢語句子。
這些視頻數(shù)據(jù)大部分為外文發(fā)音,并且大多是針對特定的拍攝技術和場地要求建立的數(shù)據(jù)集,無法滿足中文數(shù)字0-9和短語語料要求。因此,筆者根據(jù)需求分別構建了中文數(shù)字數(shù)據(jù)集NUMBER DATASET和中文短語數(shù)據(jù)集PHRACE DATASET。
NUMBER DATASET數(shù)據(jù)集由10人錄制5天完成,每人每天讀0-9各10遍,共計5000個視頻的普通話唇語數(shù)據(jù)集。本數(shù)據(jù)集的視頻分辨率為480×640,幀率約為25fps,時長約為2s,見圖5。
PHRACE DATASET數(shù)據(jù)集的建立方法和NUMBERDA7ASET相同,分別錄制了唇讀生活中10種常見水果名稱的視頻,將此作為短語數(shù)據(jù)集的主要內容。
2.2實驗設置
分別對NUMBER DATASE7和PHRACE DATASET兩個數(shù)據(jù)集采用分層抽樣的方式,抽取500個樣本作為測試數(shù)據(jù),其余樣本作為訓練數(shù)據(jù)。將測試數(shù)據(jù)與訓練數(shù)據(jù)分離開進行交叉驗證,以更好地評估模型的泛化能力。基于上述訓練集和測試集,設置了18個唇部特征點+LSTM、CNN+LSTM和CNN+Bi-LSTM三組對比實驗,以驗證模型的有效性。
三組實驗的神經(jīng)網(wǎng)絡模型均采用Keras搭建并基于Tensorflow后端。
在18個唇部特征點+LSTM的實驗中,本實驗設置與馬寧等的實驗設置一致。
在CNN+LSTM實驗中,圖像特征提取的CNN部分采用在ImageNet上預訓練過的VGGl6。VGGl6使用連續(xù)的小卷積核對圖像進行多次卷積,在圖像特征提取中表現(xiàn)較好。而本實驗中VGGl6模型對最上面的5層進行fine-tuning,其它層的參數(shù)不變以適應本文實驗數(shù)據(jù)。對于輸入的每幀RGB圖像(初始大小為(128,128,3)),經(jīng)過VGG抽取后的特征向量為(4,4,512),然后采用Flatten方法將三維特征向量轉為一個大小為8192的一維向量,使其能夠作為LSTM的輸入。同時為避免直接輸入LSTM的數(shù)據(jù)過大,還應在CNN與LSTM之間加入一個神經(jīng)元數(shù)為2048的全連接層以減小LSTM輸入的數(shù)據(jù)量。然后使用Keras中Time Distributed層為視頻序列中每個CNN網(wǎng)絡輸出連接一個LSTM,整個模型輸出為10個神經(jīng)元的全連接層,全連接層的激活函數(shù)則采取適用于多分類問題的softmax函數(shù)。
在CNN+Bi-LSTM實驗中,僅將LSTM替換為Bi-LSTM,其余實驗設置與第二組實驗設置一致。
2.3實驗結果
本文選取識別準確率作為評價指標,識別準確率定義如下:
表1和表2分別展示了3種模型在NUMBER DA7AS-ET和PHRACE DATASET數(shù)據(jù)集上的識別準確率。從表中可以看出,采用CNN+LSTM方法比采用18個唇部特征點+LSTM方法的單詞識別準確率提高了5.6%,短語識別準確率提高了6.1%。采用CNN+Bi-LSTM方法比采用CNN+LSTM方法在單詞識別準確率和短語識別準確率分別提高了2.5%和2.9%。采用CNN識別特征信息時無需考慮特征對象復雜多變的紋理特征,比采用傳統(tǒng)的特征點提取特征信息容錯率更高。同時,Bi-LSTM考慮了未來信息對于當前信息的影響,對于唇語識別準確率提升是切實有效的。實驗結果表明,CNN和Bi-LSTM相結合的方法識別準確率最高。
3結語
通過對現(xiàn)有深度學習技術和傳統(tǒng)唇語識別技術研究,發(fā)現(xiàn)傳統(tǒng)唇語識別方法存在以下問題:①唇部特征提取時用特征點替代唇部特征不能很好地體現(xiàn)唇部特征;②在時序編碼時LSTM并未捕獲未來信息對當前信息的影響。針對以上問題,本文提出了一種基于CNN和Bi-LSTM相結合的唇語識別方法,通過CNN有效地學習唇部特征,通過Bi-LSTM捕獲上下文信息。實驗結果表明,CNN和Bi-LSTM相結合的唇語識別方法,對于提高唇語識別準確率作用明顯。本實驗還有待完善的地方,如訓練數(shù)據(jù)不夠、語料數(shù)據(jù)集僅包含數(shù)字和漢語短語等等,后期將針對以上問題進一步改進。