更太加,張新意,魏建國,
(1.青海民族大學人工智能應用技術國家民委重點實驗室,青海西寧 810007;2.天津大學智能與計算學部,天津 300350)
健康的飲食可以使人們獲得充足的營養(yǎng),同時也可以預防一些疾病。飲食和健康是息息相關的,所以人們也越來越注重飲食習慣?,F(xiàn)代社會,人們承受著生活和工作的雙重壓力,再加上不健康的飲食習慣,處于“亞健康”狀態(tài)的人越來越多。健康問題也逐漸成為研究熱點。研究人員正致力于將計算機技術、生物醫(yī)學技術和物聯(lián)網(wǎng)技術緊密結合,開發(fā)出更加精確便利的系統(tǒng)來監(jiān)控、指導人們的飲食和健康狀況。
為了降低飲食習慣不規(guī)律的風險,需要對人們的進食進行計劃和評估從而保持健康飲食。通常情況下,醫(yī)護人員通過采訪來檢查人們的健康狀態(tài)、記錄飲食數(shù)據(jù)。但是,這種方法存在一個問題,得到的數(shù)據(jù)準確率通常很低。通過監(jiān)測人們的口腔運動,可以間接監(jiān)測人們的飲食習慣,例如咀嚼次數(shù)、咀嚼頻率等都會影響著人們的飲食和健康。在分析健康飲食行為的領域,Woda等研究了在攝入固體食物過程中咀嚼過程的重要性,認為咀嚼頻率是診斷健康飲食行為的一個關鍵參數(shù)[1]。
2013年,臺灣大學資訊工程系的研究員研發(fā)了一款牙齒傳感器Tattletale,這款傳感器可以放入假牙的傳感裝置,實時監(jiān)控用戶的口腔活動以及飲食狀況[2]。Tattletale裝置將有望應用于健康護理方面,用來監(jiān)測人們的咀嚼、吸煙、講話以及咳嗽等活動。裝置中有內(nèi)置的加速度計,智能手機可以接收其上傳的信息,用于口腔活動的數(shù)據(jù)分析,準確程度高達94%。2014年,一款名為BitBite的產(chǎn)品進入了人們的視野。它通過收集和分析人們咀嚼食物發(fā)出的聲音,來監(jiān)測用戶的咀嚼習慣[3]。其工作原理是通過內(nèi)部的麥克風、傳感器,把傳感器收集的信息,發(fā)送到智能手機上。經(jīng)過算法處理咀嚼食物時所產(chǎn)生的音頻信號,最終判別所吃的食物類型。不僅如此,它還能記錄咀嚼的間隔和吃飯的速度。應用程序能可視化顯示這些信息,生成一系列圖表和報告,提醒用戶咀嚼習慣和飲食習慣是否健康。應用程序有多種判斷標準,比如咀嚼質(zhì)量、咬合數(shù),以及攝入的熱量等,最后應用程序還可以提供關于飲食習慣和熱量攝入的建議。2016年,德國帕紹大學研發(fā)了一款新穎的設備“節(jié)食眼鏡”,一般的眼鏡主要是改善視力或者保護眼睛,但是這款設備可以對所食用的食物進行分類[4]。它的工作機制是采用機器學習技術來處理收集到的數(shù)據(jù)。對于不同種類的食物,人們的咀嚼力度是不一樣的,例如餅干需要的咀嚼力量會小一些,而牛軋?zhí)切枰木捉懒α繒却笠恍?,因此收集到的肌電圖信號也不同,使用機器學習算法來處理這些數(shù)據(jù),從而判別食物的種類。目前,這款眼鏡還處于研究階段。
以往的研究方法成本較高,硬件也較復雜,沒有對食物咀嚼做骨導麥克風數(shù)據(jù)的咀嚼音識別。骨導麥克風對振動敏感,能夠很好地排除環(huán)境噪聲對實驗數(shù)據(jù)采集的影響,而且其體積相對小巧,便與用戶攜帶,固定性好。本文通過骨導麥克風數(shù)據(jù)對咀嚼聲音的類型進行判斷,從而指導人們的健康飲食習慣。
本文從咀嚼音的發(fā)音機制、骨導音的傳導機制、隱馬爾可夫模型、骨導音數(shù)據(jù)采集,實驗和實驗結果等方面介紹了基于骨導麥克風數(shù)據(jù)下的咀嚼發(fā)音類型分類方法。
發(fā)聲運動主要借助于能夠發(fā)音的器官相互協(xié)調(diào)配合。另外在發(fā)聲時聲道內(nèi)空氣特性也會發(fā)生變化。在日常的生活中,我們會通過說話進行交流,感冒身體不舒服時會發(fā)出咳嗽的聲音,吃東西的時候會發(fā)出咀嚼的聲音。說話、咳嗽、咀嚼、安靜是最常見的口腔運動。食物材質(zhì)不同,類型不同,發(fā)出的咀嚼音也不相同??雌饋黼s亂無章的咀嚼運動,其實也相對比較有規(guī)律,例如牙齒周期性地研磨食物,舌頭和牙齒配合使食物在口腔中不斷被磨碎,由此形成的咀嚼音也比較有規(guī)律。本文主要研究口腔運動中咀嚼音的識別。
聲音的產(chǎn)生來源于物體的振動,身體內(nèi)聲音的傳導主要分為兩種類型,氣傳導和骨傳導。在氣傳導的過程當中,聲波依靠空氣傳播至人的外耳道,再通過外耳道傳導至鼓膜,受到聲波的影響,鼓膜發(fā)生振動,振動的聲音經(jīng)過聽小骨,引起聽小骨振動,接著將振動傳導至內(nèi)耳,這些聲音信號進入耳蝸,刺激耳蝸內(nèi)的組織器官,使之發(fā)生神經(jīng)沖動,神經(jīng)沖動通過身體相應的細胞組織進行傳播,最終傳導至大腦皮層上的聽覺中樞,最后人們感受到了聲音。還有一種通過骨傳導的聲音信號,由于傳導介質(zhì)是骨頭,所以傳導的速度更快。骨導語音與氣導語音信號均由同一發(fā)聲源產(chǎn)生。兩者最大的不同在于聲音傳輸路徑的不同,氣導語音是激勵信號經(jīng)過聲道調(diào)制后再經(jīng)過口腔、鼻腔等輻射最終形成的語音信號。骨導語音則可看成激勵信號經(jīng)過人體內(nèi)部骨頭、組織等路徑傳輸形成的語音信號[5]。
1970年前后,Baum等建立了隱馬爾可夫模型(HiddenMarkovModels,HMM)的理論基礎[6]。后來,研究人員將隱馬爾可夫模型引入到語音識別過程中,打開了隱馬爾可夫模型在語音識別領域的大門。在20世紀80年代中期,更多的研究人員擴大了隱馬爾模型的研究范圍。隱馬爾可夫模型算法比較成熟,效率比較高,在語音識別領域應用比較廣泛[7-9]。同時隱馬爾可夫模型也存在一定的缺點,即它需要建立一個較大的訓練庫,識別過程中的運算量較大[10]。
HMM和一階馬爾可夫(Markov)過程的不同之處在于HMM由兩個隨機過程組成,一個是狀態(tài)轉移序列,另一個是每次狀態(tài)轉移時輸出的符號組成的符號序列[11]。圖1是三個狀態(tài)的隱馬爾可夫模型狀態(tài)轉移圖。其中:X1、X2、X3代表了隱含狀態(tài)序列,y1、y2、y3代表了可觀察的輸出,a12、a23、a32、a21代表了狀態(tài)轉移概率,b1、b2、b3代表了輸出概率。
圖1 三個狀態(tài)的隱馬爾可夫模型狀態(tài)轉移圖Fig.1 State transition graph of hidden Markov model under three states
隱馬爾可夫工具包(Hidden Markov Toolkit,HTK)是構建隱馬爾可夫模型的工具包,隱馬爾科夫模型可用于對任何時間序列進行建模,HTK的核心具有與其一致的目的。然而,HTK主要是用來構建基于隱馬爾科夫模型的語音處理工具,特別是構建識別器。因此,HTK的大部分基礎架構支持都致力于這項任務。作為最常用的語音處理工具集之一,HTK的實現(xiàn)方法在業(yè)界十分具有影響力。它具有語音識別和合成源代碼的開放性過程,而且它還為了大眾提供了開發(fā)新的語音識別工具的全部過程。
隱馬爾科夫模型可以由以下元素組成:
(1)模型中的狀態(tài)數(shù)N。雖然狀態(tài)是隱藏的,但對于許多實際應用來說,通常會對可觀狀態(tài)或模型狀態(tài)集合具有某些程度上的物理意義。例如遍歷模型那樣,通常情況下,各狀態(tài)之間可以通過某種連接相互到達。我們將各個狀態(tài)表示為S={s1,s2,...,sn},時間t的狀態(tài)為q1。
(2)每個狀態(tài)的不同觀察符號的數(shù)量M。觀測符號對應于被建模的系統(tǒng)的物理輸出。我們將各個符號表示為V={v1,v2,...,vm}。
(3)狀態(tài)轉移概率分布矩陣A={aij},其中,aij如式(1)所示:
對于任意狀態(tài)可以在單個步驟中達到任何其他狀態(tài)的特殊情況,對于所有i,j,我們有aij>0。對于其他類型的HMM,對于一個或多個(i,j)對,有aij=0。
(4)狀態(tài)j的觀測符號概率分布矩陣B={bj(k)},如式(2)所示:
(5)初始狀態(tài)分布π={πi},其中πi式(3)所示:
最終對于給定N、M、A、B和π的適當值,HMM可以用作發(fā)生器來給出觀測序列:O=O1O2……OT,其中每個觀察值OT是來自V的符號之一,T是序列中的觀測次數(shù).
在建立口腔運動信號數(shù)據(jù)庫時,使用骨導麥克風采用單聲道模式采集咀嚼信號,采樣頻率為16 000Hz。在數(shù)據(jù)采集過程中,共采集了20名不同的實驗人員的咀嚼音信號,實驗人員沒有明顯的面部偏斜、顳頷關節(jié)癥狀等嚴重影響咀嚼的病癥,其中男生16人,女生4人,年齡分布為:10~20歲5人,20~30歲25人。每個實驗人員錄制的內(nèi)容包括軟咀嚼(咀嚼米飯)、硬咀嚼(咀嚼花生)、口香糖咀嚼(咀嚼口香糖)和咳嗽聲音,每個內(nèi)容每人錄制10 min,每人骨導音采集持續(xù)約30 min。骨導音錄制的內(nèi)容如表1所示。
表1 骨導音錄制的內(nèi)容Table 1 Content of the bone guided sound recording
要使機器正確地學習采集到的數(shù)據(jù)特征,需要提供正確的數(shù)據(jù)標注,算法在標注內(nèi)容的監(jiān)督下調(diào)整產(chǎn)生正確的模型。
根據(jù)本項目的需求,需要分別建立包括三種咀嚼音模型在內(nèi)的五種模型,即軟咀嚼、硬咀嚼和口香糖咀嚼、靜音模型和咳嗽模型。對于軟咀嚼,選擇米飯作為實驗材料,米飯的質(zhì)地比較柔軟,咀嚼發(fā)出的骨導音信號強度較??;對于硬咀嚼,選擇質(zhì)地相對堅硬的花生,因為質(zhì)地較硬,產(chǎn)生的骨導音相對較強,不過質(zhì)地較脆的食品在咀嚼初始階段信號強度較大,被牙齒咬斷磨碎后,食物粒度變小,信號強度隨之下降,咀嚼類型由硬咀嚼變?yōu)檐浘捉溃栽跇俗r,對于硬咀嚼的不同階段特征,要標注不同的信息;口香糖咀嚼是相對比較穩(wěn)定的一種咀嚼狀態(tài),信號強度基本上不會隨著咀嚼過程有太大變化,標注比較簡單。除了咀嚼食物發(fā)出的咀嚼音之外,我們還要考慮人體觸碰儀器所發(fā)出的噪聲、周圍環(huán)境的噪聲和吞咽的聲音,由于錄音器材和貼附位置儀器與皮膚之間的摩擦等聲音,所以需要將與咀嚼無關的聲音進行標注。本項目采用praat軟件對聲音進行標注,最后確定的標注為軟咀嚼(chs)、硬咀嚼(chh)、口香糖咀嚼(gum)、咳嗽(cou)、靜音(sil)和其它(oth)。咀嚼信號的內(nèi)容和標簽如表2所示。
表2 咀嚼音數(shù)據(jù)標注內(nèi)容和標簽Table 2 Marking content and symbols of chewing sound data
根據(jù)praat軟件,對以上咀嚼音數(shù)據(jù)進行標注,標注結果如圖2~6所示,圖2~6中上方的數(shù)據(jù)表示時長,單位s。
圖2所示咀嚼米飯的咀嚼音標注過程是軟咀嚼,標注為chs。圖3表示咀嚼花生時的咀嚼音標注,咀嚼過程為硬咀嚼,標注為chh。圖4表示咀嚼口香糖時的咀嚼音標注,咀嚼過程為口香糖咀嚼,標注為gum。圖5表示咳嗽時的標注,標注為cou。圖6為靜音標注圖,標注為sil。
圖2 軟咀嚼的咀嚼音標注圖Fig.2 Annotation diagram ofsoft chewing sound during chewing rice
圖3 硬咀嚼的咀嚼音標注圖Fig.3 Annotation diagram of hard chewing sound during chewing peanuts
圖4 口香糖咀嚼的咀嚼音標注圖Fig.4 Annotation diagramof chewing sound during chewing gum
圖5 咳嗽音標注圖Fig.5 Phonetic notation of cough
圖6 其他聲音和靜音標注圖Fig.6 Phonetic notation of other sound and mute
4.3.1 特征參數(shù)提取要求
骨導音存在很多冗余信息,一方面影響處理的速度,一方面加重存儲的負擔,所以需要把語音信號中最有用的信息提取出來,對其進行降維處理。特征參數(shù)最好具備以下要求[11]:
(1)提取的特征參數(shù)有代表性,不能失去語音信號的重要信息。
(2)各階參數(shù)之間要相互獨立,處理起來更加方便。
(3)提取特征參數(shù)的方法太復雜,需要控制計算量,提取方法要簡單方便,這樣才能使語音識別系統(tǒng)的實用性更強。
4.3.2 美爾頻率倒譜系數(shù)
根據(jù)上述原則,本文采用了美爾頻率倒譜系數(shù)(Mel Frequency Cepstrum Coefficient,MFCC)進行特征提取。MFCC結合了人耳聽覺特性和語音生理的特征,相比LPCC更適合語音識別,是目前比較受歡迎的一種特征參數(shù),且計算簡便,能夠比較好地區(qū)分幀與幀之間的特征參數(shù)[12]。
特征提取是提取音頻信號中的部分信息使其能夠代表原來的音頻信號,把多余的信息去掉。人的聽覺對所有頻率的接收和處理是不同的。人耳類似于一個濾波器組,只讓某些頻率的信號通過。但這些濾波器不是均勻分布的,在低頻區(qū)域濾波器較多,但人耳識別的低頻信號更多,相比之下,高頻區(qū)域的濾波器的數(shù)目較少,即人耳對高頻信號的感知不足。提取的MFCC特征具有線性關系:即語音信號的Mel頻率的差別與人耳識別的差別是一樣的。圖7是MFCC特征參數(shù)提取的過程。
圖7 MFCC特征參數(shù)的提取過程Fig.7 The extraction process of MFCC characteristic parameters
對輸入的數(shù)字語音信號進行預加權,其目的是為了對高頻部分進行加權,增加語音的高頻分辨率。一般通過傳遞函數(shù)H(z)的一階FIR高通數(shù)字濾波器來實現(xiàn)預加權,傳遞函數(shù)H(z)為[13]
其中,μ為預加權系數(shù),本文中所使用的預加權系數(shù)為0.97。和其他平穩(wěn)信號相比,語音信號為非平穩(wěn)信號,處理語音信號時,需要把語音信號進行平穩(wěn)化處理[11]。人的發(fā)聲器官振動會產(chǎn)生語音,這個振動比語音信號更加平緩,所以在短時間內(nèi)(10~30 ms),可以把語音信號作為平穩(wěn)信號來處理?;谶@個前提,平穩(wěn)信號的處理技術便可以應用于語音信號的分析和處理過程,所以第一步要對語音信號進行分幀。
分幀可以連續(xù)分段,但是由于幀與幀之間不能平滑過渡,一般情況下,采用交疊分幀法來保證幀與幀的連續(xù)性。前一幀與后一幀有部分重疊,幀與幀之間的重疊稱為幀移。一般情況下,幀移的長度不會超過幀長的一半[11]。通過加窗處理,人們可以對某一窗內(nèi)的序列進行分析,常用的三種窗函數(shù)為矩形窗、漢明窗和漢寧窗[13]。窗函數(shù)選取非常重要[13],就主瓣寬度而言,矩形窗最窄,其中漢明窗最寬,而兩者的旁瓣高度正好相反,漢明窗應用最為廣泛。
實驗數(shù)據(jù)選用了自行錄制的10個實驗人員的全部478個咀嚼聲音頻樣本。這些樣本是采樣率為16 000 Hz、時長為1~5 s不等的wav格式文件。
本次實驗采用了HTK工具包,HTK(HMM Tools Kit)是一個基于隱馬爾可夫模型對語音信號進行分析處理的工具包。主要包括兩個部分:庫程序和工具,庫程序是由眾多開源C函數(shù)模塊構成。
HTK提供的HCOPY可以依據(jù)用戶給出的配置文件獲取相應的特征參數(shù)。配置文件通常會定義編碼類型、全頻帶系數(shù)的個數(shù)、預處理系數(shù)、加視窗的種類和大小等特征提取所需的參數(shù)。本文提取的特征參數(shù)是梅爾頻率倒譜組合參數(shù)(MFCC_0_D_A),包括梅爾頻率特征參數(shù)、MFCC一階差分系數(shù)、MFCC二階差分系數(shù)[9],在HTK中,通過HCopy函數(shù)提取MFCC特征參數(shù)。
在完成隱馬爾科夫模型的訓練之后,就可以進行HMM的識別測試。訓練已有的語音數(shù)據(jù)會產(chǎn)生相應的隱馬爾科夫模型參數(shù),通過維特比算法(Viterbi Algorithm)尋找出最佳的路徑,計算得出數(shù)據(jù)字典和詞網(wǎng)絡形成的各種合法的模型序列概率,修改到最優(yōu)標準,可以提高識別率。實驗的總體環(huán)境為:采樣頻率為16 000 Hz,量化精度為16 bit,單聲道模式。其中,MFCC參數(shù)為39維,39個濾波器,預加權系數(shù)0.96,使用漢明窗。
在HTK過程中,可以使用Hvite命令進行識別。HTK提供的HResluts工具可以進行結果分析,工作原理是首先由HVite識別出標識文件和參考標識文件,HResluts讀入這兩個文件,通過比較兩個文本分別計算出文本中詞匯被替換、刪除和插入的錯誤的數(shù)量,然后計算出詞匯和句子的識別率。HResluts使用動態(tài)編程技術對兩個標注文本進行分析處理,然后將統(tǒng)計結果輸出到指定位置。結果輸出格式如圖8所示。
圖8 咀嚼音識別結果的輸出格式Fig.8 Output format of chewing sound recognition result
圖8中第一行表示通過與參考標識文件比較,得出語句級別的準確率RCor為0,因為本文沒有使用句子級別的識別,所以識別率沒有參考意義。第二行給出本文得到的結果,即單詞級別準確率為84.70%,準確數(shù)目H=4 357,刪除的標記的數(shù)目D=324,被替換的標記數(shù)目S=463,插入的標記數(shù)目I=232,錄音文件中定義的標記的總數(shù)N=5 144。使用HResults工具可以對識別系統(tǒng)的識別水平進行有效的評估分析,可以方便地對比多次實驗的結果。
準確數(shù)目H和其他參數(shù)之間的關系式為
單詞級別的精確率可以表示為
飲食狀況直接影響著人們的健康,很多人飲食不規(guī)律再加上工作壓力大、生活節(jié)奏快,導致了健康狀況下降,于是人們越來越重視自己的飲食狀況,因此,本文致力于監(jiān)測人們的咀嚼活動來監(jiān)測人們的飲食狀況。本文共錄制了20人的咀嚼音數(shù)據(jù),并利用HTK工具包、基于隱馬爾可夫模型對咀嚼音進行分析,識別出咀嚼音中的硬咀嚼、軟咀嚼、口香糖咀嚼、咳嗽和靜音。
通過音頻文件的識別結果和結果分析可以得到以下結論:
(1)通過實驗表明,可以通過隱馬爾可夫模型分辨出軟咀嚼,硬咀嚼以及口香糖咀嚼的音頻。
(2)咳嗽的音頻識別率較高,因為靜音和咳嗽的特征明顯區(qū)分于其他咀嚼音的特征。
本課題的研究結果可以為今后口腔運動以及醫(yī)療健康檢查方面的研究提供可靠的數(shù)據(jù)和參考價值。但數(shù)據(jù)規(guī)模較小、音頻場景單一等問題,今后將結合領域知識與深度學習技術進行更深入的研究。