田建勛 陳 香 李 云 楊基海
(中國科技大學電子科學與技術(shù)系,合肥 230027)
手語識別研究的目的是使計算機能自動理解手語執(zhí)行者所表達的信息,一方面可為正常人與聾啞人的通信建立一種有效的途徑,另一方面可提供一種利用手語手勢動作和計算機進行自然交互的有效方法。
基于加速計[1](accelerometer,ACC)和基于表面肌電(surface electromyography,SEMG)傳感器[2]的動作感知技術(shù)是手語手勢識別研究領(lǐng)域的兩個重要分支。加速計擅長檢測手部或手臂運動軌跡和手所處姿態(tài)等較大尺度的動作,而表面肌電信號包含相關(guān)肌肉群的豐富運動信息,可用于手指、手腕等細微運動的識別。利用兩類傳感器信號的特點進行信息融合,可提高可識別手語手勢動作的種類和準確率。作者實驗室前期研究工作表明[3],將肌電傳感器和加速計結(jié)合起來對23種手勢動作進行檢測和分類,比單獨使用其中一種傳感器可提高5%~10%的準確率。Kim等將兩種傳感器融合技術(shù)應用到德國手語7個手語詞識別,取得了相似的研究結(jié)果[4]。
基于表面肌電和加速度信息融合的手語手勢動作識別存在的問題是,動作表面肌電信號和加速度信號在采集時受外界影響較大,且存在較大的個體差異,不同對象做同樣的動作時信號存在有差異,甚至同一對象在不同時間做同樣的動作也會出現(xiàn)差異。這些信號差異對手語動作識別有著很大的影響,需要在識別過程中進行消除。為實現(xiàn)基于肌電和加速度信息融合的連續(xù)中國手語手勢的可靠識別,一方面提出使用“詞根”作為識別基元的識別方法,以消除手語詞中詞根動作之間的運動偽跡的影響,減小識別錯誤的可能性。另一方面,由于詞根被識別出后,從詞根到句子的轉(zhuǎn)變與漢語中組詞造句過程十分相似,在識別方法中引入統(tǒng)計語言模型,從語言概率方面來對詞根識別結(jié)果進行錯誤檢測和糾正,實現(xiàn)對連續(xù)句子的正確識別。
本研究工作與其他研究的顯著不同在于:1)提出使用詞根作為識別基元,采用多級決策樹型結(jié)構(gòu)和HMMs模型實現(xiàn)對詞根動作的建模和識別,以提高手語手勢動作識別的準確率。2)在識別過程中引入bigram統(tǒng)計模型,利用轉(zhuǎn)移概率、互信息等參數(shù)對句子中的詞根接續(xù)關(guān)系進行檢測,從而進行錯誤檢測與糾正。3)對中國手語120個常用詞根動作和由此構(gòu)建的200個中國手語例句開展了手語識別實驗。
基于加速計和多通道表面肌電信息融合的手語識別流程如圖1所示,大致分為手語動作信號采集,詞根分割與特征提取,詞根識別和句子識別等4個主要步驟。
由于手語動作中很多涉及到雙手運動,在左右手前臂各自安放了4個SEMG傳感器和1個3D加速計用于數(shù)據(jù)采集。考慮到傳感器雙手上的安放具有對稱性,故具體安放位置以右手為例,如圖2所示。三軸加速計安置在前臂背側(cè)靠近腕部的位置,以捕獲手部姿態(tài)和運動軌跡信息,4通道SEMG傳感器分別放置在前臂小指伸肌、尺側(cè)腕屈肌、伸指總肌和橈側(cè)腕伸肌附近以檢測手指和手腕的多種運動。
圖1 連續(xù)手語語句識別流程Fig.1 The flow diagram of continuous sign language recognition
圖2 右手傳感器安放位置示意Fig.2 SEMG and ACC sensor placement on the right hand
當采集到原始的SEMG和ACC信號后,為了去除高頻高斯噪聲信號的干擾,需要對其進行濾波去噪,然后進行A/D轉(zhuǎn)換,以得到無擾、離散的信號供使用。在預處理中,采用20~500Hz的帶通濾波器對SEMG信號進行濾波,采用20Hz的低通濾波器對ACC信號進行濾波,然后以1 000Hz的采樣頻率進行A/D轉(zhuǎn)換。
詞根被定義為手語中的最小單元,具有一定含義,并且可以用來區(qū)分不同的手勢詞,以詞根為單位進行手語識別的優(yōu)點在于:詞根的數(shù)目是有限的,對其進行建模的工作量較小,而它可以組成的詞的數(shù)目則是很大的[6],而且詞根動作易于從手語動作信號流中分割出來。
由于SEMG信號的強度和手勢運動時肌肉的收緊與放松密切相關(guān),本研究根據(jù)兩個詞根動作間隔中,肌肉短暫放松時會出現(xiàn)SEMG信號強度變低的特點,采用多通道SEMG瞬時能量與閾值比較的方法自動檢測詞根動作的起點和終點,加速度信號流也按照相同的起點和終點進行分割。其主要步驟可見參考文獻[7]。
圖3所示為受試者連續(xù)執(zhí)行例句“他想跑回去”所采集的信號中右手3軸ACC和4通道SEMG信號以及詞根動作分割結(jié)果,圖中最后一行(E_MA)為多通道SEMG均值信號的瞬時能量的移動平均序列。由圖中信號可以看出,詞根的動作信號與動作間隔信號相比SEMG能量非常顯著,可以方便地通過合適的閾值檢測方法確定起始點。手語單詞“回去”由詞根“回”和“去”組合而成,相比整段信號而言,兩個詞根各自的信號更能精確表現(xiàn)出手語動作的特點,也更利于特征提取和識別。
圖3 例句“他想跑回去”詞根信號分割示意Fig.3 Illustration of subword segmentation in 3-axis ACC and 4-channel EMG signal streams
當提取到顯著的詞根動作信號時,就需要用一組最有效的特征來對詞根動作信號進行描述。對于詞根動作中的加速度信號通過減采樣抽取為32點和幅度歸一化得到一組三維的特征向量序列作為主要特征[7],此外還提取出三軸的均值、標準差等簡單特征用于決策樹分類判斷。對于多通道SEMG信號進行分幀提取每幀中各通道信號幅值的絕對值均值(mean absolute value,MAV)和4階自回歸(auto-regressive,AR)模型系數(shù)作為主要特征向量[7]。
決策樹是一種以拓撲結(jié)構(gòu)為樹型的多級決策系統(tǒng),具有不同屬性特征的樣本數(shù)據(jù)從根節(jié)點輸入,依據(jù)非葉子節(jié)點的一系列規(guī)則被分配到具有不同屬性的分支,最終到達葉子節(jié)點確定樣本所屬類別[8]。圖4為用于手語識別的多級決策樹。其結(jié)構(gòu)原理和建立過程分為以下幾個部分。
靜態(tài)與動態(tài)手語手勢分類:在決策樹結(jié)構(gòu)的第一層中,通過ACC活動段三軸標準差的均方根值與指定閾值比較來判定手語手勢動作的動靜態(tài)。
手部姿態(tài)分類:在決策樹結(jié)構(gòu)的第二層中,對所有類別訓練樣本的ACC三軸均值特征用模糊K均值聚類算法,可以將相近手部姿態(tài)的動作劃分在同一個聚類集中,供下一級進行識別分類。
動作時間長短分類:在樹型結(jié)構(gòu)第三層中,采用SEMG活動段時間長度與閾值比較的方法區(qū)分短時和長時執(zhí)行手語手勢動作。
多流HMM最終分類:經(jīng)過上面三層樹形分類之后,待識別的手語手勢動作僅出現(xiàn)在一個較小規(guī)模的候選集合中。對該集合中的手語詞,采用包含有ACC和EMG流的多流HMM實現(xiàn)兩類傳感器信息的決策級融合和手語詞判決識別[8]。作者實驗室以往的工作表明,在識別過程中出現(xiàn)的錯誤常見于此,即識別出的錯誤結(jié)果與正確結(jié)果一般來說存在于同一個候選集合中。因此,我們可以將此候選集合作為錯誤糾正部分中的糾錯候選集。
圖4 多級決策樹結(jié)構(gòu)示意Fig.4 Diagram of herarchical decision tree
在多級決策樹給出詞根識別結(jié)果序列的基礎(chǔ)上,采用統(tǒng)計語言模型對詞根接續(xù)的合理性進行判斷,糾正錯誤識別并給出連續(xù)語句識別結(jié)果。統(tǒng)計語言模型通常采用語料庫語言學的方法,通過對語料庫進行深層加工、統(tǒng)計和學習,可以客觀地描述大規(guī)模真實文本中細微的語言現(xiàn)象。常見的統(tǒng)計語言模型指N-gram模型,它反映了元素的同現(xiàn)概率等信息,可以用來進行錯誤檢測及糾正[5,9]。哈爾濱工業(yè)大學利用N-gram模型和依存分析,實現(xiàn)了對大規(guī)模句子文本中的錯誤進行有效檢測[5]。高文等在手語識別的過程中也將bigram模型引入來進行句子的識別研究[6]。
1.5.1 N-gram統(tǒng)計模型的建立
假設(shè)一個句子由l個詞根組成:W=w1,w2,w3,…,wl,若引入馬爾科夫假設(shè),即假設(shè)當前的這個詞根只依賴于前面有限幾個詞根(例如n-1個),而不是依賴前面所有的詞根[9],則
根據(jù)最大似然估計原則,元素wi的上下文條件概率p(wi|)的估計公式則為
1.5.2 詞根接續(xù)錯誤檢測與糾正方法
互信息表征的是兩個統(tǒng)計量相互關(guān)聯(lián)的程度,關(guān)聯(lián)程度越高,互信息越大,反之則小。在基于詞根容量為N的手語語料庫建立的bigram模型中,可定義Xi-1,Xi之間的互信息為
式中,r(Xi-1,Xi)為Xi-1,Xi鄰接共同出現(xiàn)的次數(shù),P(Xi-1,Xi)=r(Xi-1,Xi)/N為Xi-1,Xi的鄰接共現(xiàn)概率,P(Xi-1)=r(Xi-1)/N,P(Xi)=r(Xi)/N為Xi-1,Xi出現(xiàn)的概率。
若I(Xi-1,Xi)>τ1,τ1為大于0的閾值,則有P(Xi-1,Xi)>>P(Xi-1)P(Xi),此時Xi-1,Xi接續(xù),互信息量越大,接續(xù)強度越大。若I(Xi-1,Xi)≈0,則P(Xi-1,Xi)≈P(Xi-1)P(Xi),此時Xi-1,Xi之間的接續(xù)關(guān)系不明確。若I(Xi-1,Xi)<<0,則P(Xi-1,Xi)<<P(Xi-1)P(Xi),此時Xi-1,Xi之間基本沒有接續(xù)關(guān)系。
統(tǒng)計理論Pearson的χ2統(tǒng)計量可以用來檢驗Xi-1和Xi的獨立性,其也可以判斷詞根接續(xù)關(guān)系。假設(shè)二元組(X,Y)表示相鄰的兩個詞根組合,X的取值范圍是(S,-S),-S表示取值不為S。假設(shè)Xi-1和Xi獨立,從二元組(X,Y)取得同現(xiàn)矩陣中的n個非零元為子樣,用n11表示取值為(Xi-1,Xi)的子樣個數(shù),n12、n21、n22分別表示取值為(Xi-1,-Xi),(-Xi-1,Xi),(-Xi-1,-Xi)的子樣的個數(shù),記ni.=ni1+ni2,(i=1,2;j=1,2),有n=n11+n12+n21+n22。χ2(Xi-1,Xi)統(tǒng)計量可以定義為
由假設(shè)估計方法可知,當χ2(Xi-1,Xi)<τ2(τ2是由某個顯著水平所得到的判斷閾值)時假設(shè)成立,Xi-1和Xi獨立,即Xi-1和Xi不接續(xù),反之二者接續(xù)。
轉(zhuǎn)移概率體現(xiàn)著前一個詞根跳到后一個詞根的概率,它也從一定程度上反映了兩個詞根前后接續(xù)的可能大小。結(jié)合二元語法F(Xi/Xi-1)和一元語法F(Xi),使用退步法計算從Xi-1到Xi的轉(zhuǎn)移概率
λ為經(jīng)驗參數(shù),一般取λ=0.8。
由上述公式可認為當P(Xi/Xi-1)>τ3的時候,Xi-1、Xi之間存在接續(xù)關(guān)系,并且P(Xi/Xi-1)越大,接續(xù)強度越強。
綜合以上各式,可以設(shè)定合適的閾值,若I(Xi-1,Xi)>τ1,則判定系數(shù)K1=1,反之K1=0;若χ2(Xi-1,Xi)>τ2,則判定系數(shù)K2=1,反之K2=0;若P(Xi/Xi-1)>τ3,則判定系數(shù)K3=1,反之K3=0。定義詞根接續(xù)判定函數(shù)CGJX(Xi-1,Xi)為
用來綜合判定詞根接續(xù),若CGJX(Xi-1,Xi)≥2時,相鄰兩詞根接續(xù),反之認為相鄰詞根不接續(xù)。
當檢測到某個詞根與相鄰詞根不接續(xù)的時候,可以對糾錯候選集中的候選結(jié)果計算相應的參數(shù)值,看它們是否滿足與前后詞根的接續(xù)關(guān)系,從而找出最符合接續(xù)關(guān)系的結(jié)果作為最終結(jié)果,以此糾正錯誤,識別出連續(xù)句子。
本研究從中國手語詞中選了120個常用詞根,以這120個詞根構(gòu)建了260個左右的手語詞匯,并以此為基礎(chǔ)構(gòu)建了200個實驗例句,例句平均長度為4.6個詞根。實驗選取2名受試者,每名受試者分5次采集數(shù)據(jù),每次實驗采集40個例句,每個句子重復三遍。這樣,用于實驗分析的數(shù)據(jù)集包含了5 640個手語詞根樣本和1 200個句子樣本。數(shù)據(jù)處理時將每個受試者5d的數(shù)據(jù)分為三組,每組數(shù)據(jù)包含全部200個句子且不重復,以其中2組作為訓練樣本,剩下的1組作為測試樣本。
由于本工作的研究對象為手語詞根和句子,與日常語言有著很大的不同,所以在本工作中建立統(tǒng)計語言模型需要先建立相應的手語語句語料庫。本工作使用的語料庫中包含有2 000個日常手語語句,并依據(jù)手語的構(gòu)成規(guī)則進行了相應的詞根標注。在此日常手語語料庫中共含有9 344個手語詞根樣本,平均語句長度為4.7個詞根。
以120個詞根動作為對象進行統(tǒng)計建立模型,則可能出現(xiàn)的詞根接續(xù)對為120×120=14 400個。由于語料庫的規(guī)模大小是有限的,它并不能完全的反映出所有詞根動作的出現(xiàn)規(guī)律,仍然會有大量的低頻詞出現(xiàn),即有數(shù)據(jù)稀疏情況的出現(xiàn)。為了避免數(shù)據(jù)稀疏對實驗的影響,使用了katz平滑方法對統(tǒng)計結(jié)果進行數(shù)據(jù)平滑,其在小訓練集的bigram模型上有較大的優(yōu)勢。最終經(jīng)數(shù)據(jù)平滑后獲得120個詞根的二元統(tǒng)計模型矩陣和一元統(tǒng)計結(jié)果。
當建立了bigram統(tǒng)計模型后,為了對詞根接續(xù)關(guān)系進行判定,需要對相應的閾值參數(shù)進行設(shè)定,其中包括互信息,Pearson的χ2統(tǒng)計量和轉(zhuǎn)移概率。由于語料庫的規(guī)模有限,它不能完全的反映所有詞根動作的接續(xù)關(guān)系,會引起在糾錯的過程中有些錯誤可能漏檢,而有些出現(xiàn)比較少的接續(xù)關(guān)系有可能被判錯。為了對糾錯模型進行定量分析,定義正確率(accuracy)Pa,誤報率(false)Pf和漏報率(omission)Po。記待檢測文本中實際的錯誤數(shù)(error)Me,檢測出錯誤的位置數(shù)量為(check)Mc,其中正確檢測出錯誤位置的數(shù)目為(right check)Mr,檢測出錯誤而實際上原文位置正確的數(shù)量為(false check)Mf。則有
Pa=Mr/Me
Pf=Mf/Mc
Po=(Me-Mr)/Me
為了找到最佳的糾錯模型參數(shù),利用部分測試文本進行了相應的實驗,在測試文本中,共有727個接續(xù)檢測點,其中錯誤位置為109個,通過對不同的閾值進行設(shè)定檢測,統(tǒng)計此時測試文本的檢錯相應結(jié)果,從而找到最佳的閾值。
在確定了合適的統(tǒng)計語言模型后,為驗證所提出的基于加速度與表面肌電信息融合,和統(tǒng)計語言模型的手語識別方法的有效性和實用性,首先對所采集的融合表面肌電和加速度信息的手語詞根動作進行數(shù)據(jù)分析處理,利用多級決策樹模型進行識別統(tǒng)計,為每個句子識別出相應的詞根序列,然后使用bigram模型進行詞根的二元接續(xù)關(guān)系進行檢測,從而進一步改正詞根動作的誤識別,對糾錯后的句子中的詞根識別結(jié)果進行統(tǒng)計。
表1以正確率、誤報率和漏報率的形式給出了在不同的閾值選取下,bigram二元檢錯模型對測試文本中的錯誤檢測的結(jié)果。
由表1可以看出,若閾值取得過低的話,可能有大量的錯誤會被漏檢,而若閾值取得過高的話,則會有大量的誤報情況出現(xiàn)。隨著閾值取值的不斷提高,誤報率的升高趨勢越來越明顯。這是由于構(gòu)建的語料庫與真實的語言模型還有差距,盡管進行了數(shù)據(jù)平滑,但是某些正確存在的詞根組合所存在的概率仍然很小,當取得較高的閾值來判定的時候,這些組合則會被判定為錯誤。一個較好的檢錯模型應該在正確率、誤報率和漏報率中取得較好的平衡,即正確率盡量高,而誤報率和漏報率盡量低。通過大量的不同閾值實驗后選取τ1=0.4,τ2=0,τ3=0.01作為實驗時的所使用的閾值參數(shù)。
表2以120個手語詞根平均識別率(Mean)和標準差(Std),以及200個測試句子的整體識別率的形式,給出了使用統(tǒng)計糾錯模型和未使用統(tǒng)計糾錯模型兩種方法進行對比的手語識別結(jié)果。由表2可知,120個手語詞根全局平均識別率在90%以上,句子識別率在86%以上。驗證了所提出的基于SEMG和ACC信息融合與結(jié)合統(tǒng)計糾錯模型的手語識別方法的可行性和有效性。此外,通過對比實驗結(jié)果不難發(fā)現(xiàn),采用糾錯模型的方法與未采用糾錯模型相比,詞根的平均識別率提高了近4%左右。對200個連續(xù)手語句子的句子識別結(jié)果進行統(tǒng)計(每個句子中有一個詞根錯誤就算句子錯誤),可以看出句子的識別率比未使用糾錯模型時有了10%左右的提高。這是由于在多級決策樹的最后一級中,使用ACC和EMG流的多流HMM實現(xiàn)兩類傳感器信息的決策級融合和手語詞判決,此時在同一集合中的動作具有相似的信號特征,但是它們在語言的含義上,比如詞性,具有較大的差別,因此可以明顯的用統(tǒng)計語言模型進行詞根的接續(xù)判定來進行糾錯。
表1 不同參數(shù)閾值對糾錯結(jié)果的影響Tab.1 The correction results of different threshold
表2 兩種方法的詞根及句子識別結(jié)果Tab.2 The recognition results of the subwords and the sentences
表3是連續(xù)句子識別判斷糾錯的一個實例。正確例句為“他想跑回去”,識別結(jié)果為“他想跑他他”,即詞根“回”和“去”識別錯誤。此時,結(jié)果中需要進行接續(xù)檢測的詞根組合為〈他,想〉,〈想,跑〉,〈跑,他〉,〈他,他〉四組。(選定的閾值為τ1=0.4,τ2=0,τ3=0.01,帶下劃線的值低于選定的閾值)
表3 詞根接續(xù)錯誤檢測結(jié)果示例Tab.3 The error detection results of the example sentence
在本例中,確定了詞根“跑”和“他”以及詞根“他”和“他”之間不接續(xù),由此就確定了錯誤區(qū)間為句子的最后兩個詞根。然后對多層決策樹所提供的糾錯候選集里面的詞根進行3-best結(jié)果判斷,發(fā)現(xiàn)第一個錯誤詞根“他”的HMMs識別結(jié)果中最好的三個詞根為[他,我,回],第二個錯誤詞根“他”的HMMs識別結(jié)果中最好的三個詞根為[他,我,去],由此建立候選結(jié)果搭配集,通過再計算相應的參數(shù)值,可以得到“跑”和“回”的計算結(jié)果為[4.898 5,240.118 8,0.110 7],“回”和“去”的計算結(jié)果為[3.965 6,189.231 4,0.207 9],兩者均滿足接續(xù)關(guān)系,所以句子“他想跑回去”是合理的,作為糾錯后的最終句子識別結(jié)果。
綜上所述,將基于SEMG和ACC融合的手勢識別方法與基于詞根接續(xù)糾錯模型結(jié)合起來,互相補充,可以有效地提高手語連續(xù)語句的識別率。此種方法主要應用于句子中局部錯誤的檢測與糾正,如相鄰詞根之間的關(guān)系判斷。
本研究首先對基于SEMG和ACC融合的手語手語手勢識別技術(shù)進行了分析,對其優(yōu)缺點進行了總結(jié),并針對其識別結(jié)果受動作信號影響較大的缺點,提出了一種基于SEMG與ACC信息融合與結(jié)合統(tǒng)計語言模型糾錯的中國手語手勢識別方法。該方法先通過基于SEMG與ACC信息融合的多級決策樹得到手語詞根識別的初步結(jié)果,然后再利用統(tǒng)計語言模型對識別結(jié)果中的相鄰詞根動作的接續(xù)關(guān)系進行檢測,從而把結(jié)果中可能出現(xiàn)的錯誤限定在一個小窗口中,然后再利用多級決策樹中所給出的糾錯候選集進行錯誤糾正。實驗結(jié)果表明:這種方法可明顯提高手語手勢動作的正確識別率。這種糾錯方法比較依賴于所選取進行訓練的語料庫的完備程度,且擅長于檢測局部范圍內(nèi)的錯誤,對一些語義級別的錯誤還不能做到糾錯。今后準備進行更大規(guī)模的手語語句語料庫的建設(shè),并將句法結(jié)構(gòu)進一步引入到識別過程中,以期望實現(xiàn)大詞匯量、連續(xù)的中國手語識別系統(tǒng)。
[1]M?ntyj?rvi J,Kela J,Korpip?? P,et al.Enabling fast and effortless customisation in accelerometer based gesture interaction[C]//Proceedings of the 3rd International Conference on Mobile and Ubiquitous Multimedia.New York,NY:ACM,2004:25-31.
[2]Oskoei M,Hu Huosheng.Myoelectric control systems—A survey[J].Biomedical Signal Processing and Control,2007,2(4):275-294.
[3]Chen Xiang,Zhang Xu,Zhao Zhangyan,et al.Hand gesture recognition research based on surface EMG sensors and 2D-accelerometers[C]//Proceedings of the 11th International Symposium Wearable Computers.Boston,MA:IEEE,2007:11-14
[4]Kim J,Wagner J,Rehm M,et al.Bi-channel sensor fusion for automatic sign language recognition[C]//Proceedings of the 8th IEEE International Conference on Automatic Faceand Gesture Recognition.Amsterdam:IEEE,2008:647-652.
[5]馬金山,張宇,劉 挺,等.利用三元模型及依存分析查找中文文本錯誤[J].情報學報,2004,23(06):723-728.
[6]王春立,高 文,馬繼勇,等.基于詞根的中國手語識別方法[J].計算機研究與發(fā)展,2003,40(2):150-156.
[7]Zhang Xu,Chen Xiang,Wang Wenhui,et al.Hand gesture recognition and virtual game control based on 3D accelerometer and EMG sensors[C]//Proceedings of the 13th International Conference on Intelligent User Interfaces.New York:Association for Computing Machinery,2009:401-405.
[8]Fang Gaolin,Gao Wen,Zhao Debin.Large vocabulary sign language recognition based on hierarchical decision trees[C]//Proceedings of the 5th International Conference on Multimodal Interfaces.New York,NY:ACM,2003:125-131.
[9]邢永康,馬小平.統(tǒng)計語言模型綜述[J].計算機科學,2003,30(9):22-26.