獲取單元,執(zhí)行步驟201時(shí)能夠通過(guò)麥克風(fēng)等語(yǔ)音輸入設(shè)備采集語(yǔ)音信號(hào)進(jìn)行采樣,然后執(zhí)行步驟202的預(yù)處理,即經(jīng)過(guò)關(guān)鍵字識(shí)別單元執(zhí)行關(guān)鍵字匹配識(shí)別處理,如果匹配關(guān)鍵字?jǐn)?shù)據(jù),則對(duì)用戶操作進(jìn)行響應(yīng),否則,將此段語(yǔ)音數(shù)據(jù)打包發(fā)送。也就是說(shuō),只要該語(yǔ)音數(shù)據(jù)的識(shí)別結(jié)果不是符合關(guān)鍵字的控制命令,就直接發(fā)送語(yǔ)音數(shù)據(jù),如果識(shí)別結(jié)果是符合關(guān)鍵字的控制命令,則觸發(fā)關(guān)鍵字控制命令的發(fā)送,利用該控制命令對(duì)可視通訊進(jìn)行操作控制。
[0052]針對(duì)關(guān)鍵字識(shí)別單元而言,為了實(shí)現(xiàn)對(duì)語(yǔ)音數(shù)據(jù)進(jìn)行關(guān)鍵字匹配識(shí)別,采用的內(nèi)容包括:1)第一層次的預(yù)定方式算法;2)將第一層次和第二層次相結(jié)合的預(yù)定方式算法組合進(jìn)行,采用內(nèi)容2)是對(duì)內(nèi)容I)的匹配優(yōu)化處理,以便最終得到更為準(zhǔn)確的關(guān)鍵字,并將其作為最終的控制命令發(fā)出。其中,所述第一層次的預(yù)定方式算法是基于隱馬爾科夫模型(HMM)的方式進(jìn)行建模以實(shí)現(xiàn)關(guān)鍵字識(shí)別;所述第二層次的預(yù)定方式算法是最短距離匹配方式以實(shí)現(xiàn)關(guān)鍵字識(shí)別。以下針對(duì)內(nèi)容2)這種算法結(jié)合的情況進(jìn)行具體闡述:
[0053]對(duì)于關(guān)鍵字識(shí)別單元,本發(fā)明實(shí)施例中為了進(jìn)一步提升關(guān)鍵字識(shí)別性能,可以采取兩層算法并行識(shí)別流程并予以結(jié)合,第一層是采用現(xiàn)有的基于HMM的方法進(jìn)行建模的,對(duì)語(yǔ)音數(shù)據(jù)進(jìn)行語(yǔ)音識(shí)別所提取的聲學(xué)特征參數(shù)是Mel頻率倒譜系數(shù)(MFCC,MelFrequency Cepstrum Coefficient)特征參數(shù),將識(shí)別出的關(guān)鍵字?jǐn)?shù)據(jù)作為第一層參考,第二層是建立一個(gè)設(shè)定好的關(guān)鍵字?jǐn)?shù)據(jù)語(yǔ)音庫(kù),然后提取經(jīng)第一層得到的所述識(shí)別出的關(guān)鍵字?jǐn)?shù)據(jù)的聲學(xué)特征參數(shù),該聲學(xué)特征參數(shù)為MFCC特征參數(shù),使用矢量量化(VQ,VectorQuantizat1n)進(jìn)行所述關(guān)鍵字?jǐn)?shù)據(jù)語(yǔ)音庫(kù)中的數(shù)據(jù)聚類,得到每個(gè)類(或稱為胞腔)內(nèi)的代表矢量,然后根據(jù)每個(gè)類(或稱為胞腔)內(nèi)的代表矢量,求得所述識(shí)別出的關(guān)鍵字?jǐn)?shù)據(jù)的MFCC特征參數(shù)與每個(gè)類(或稱為胞腔)內(nèi)的代表矢量的最短距離,將最短距離與根據(jù)經(jīng)驗(yàn)得到一個(gè)經(jīng)驗(yàn)閾值做對(duì)比,如果符合一定預(yù)定準(zhǔn)則,則作為最終識(shí)別的結(jié)果,即最終得到更為準(zhǔn)確的關(guān)鍵字,并將其作為最終的控制命令發(fā)出。
[0054]對(duì)于關(guān)鍵字識(shí)別單元使用的上述算法進(jìn)行說(shuō)明如下:
[0055]語(yǔ)音識(shí)別算法的執(zhí)行過(guò)程通常包括:1)收到語(yǔ)音信號(hào);2)參數(shù)提取;3)建模統(tǒng)計(jì)分析;4)判斷邏輯;5)識(shí)別輸出。
[0056]在語(yǔ)音識(shí)別中,可以提取語(yǔ)音的不同參數(shù),達(dá)到最佳的識(shí)別效果。
[0057]對(duì)于第2)參數(shù)提取而言,本發(fā)明實(shí)施例采取的是提取MFCC。對(duì)收到的語(yǔ)音信號(hào)通過(guò)參數(shù)提取,經(jīng)過(guò)參數(shù)提取的這一預(yù)處理技術(shù)后,能去除對(duì)語(yǔ)音識(shí)別無(wú)關(guān)緊要的冗余信息,提取對(duì)語(yǔ)音識(shí)別有用的重要信息。主要步驟為:預(yù)加重、分幀、加窗、快速傅立葉變換、三角形帶通濾波器等現(xiàn)有步驟。
[0058]對(duì)于第3)建模統(tǒng)計(jì)分析而言,提取參數(shù)后,通過(guò)建模分析這些參數(shù)特性,獲取識(shí)別結(jié)果。本實(shí)施例在基于所述第一層參考進(jìn)行建模分析的情況下,所采取的是隱馬爾可夫模型(HMM, HiddenMarkovModel), HMM是一種用參數(shù)表示的用于描述隨機(jī)過(guò)程統(tǒng)計(jì)特性的概率模型。在語(yǔ)言識(shí)別的隱馬爾科夫模型中,每個(gè)單詞生成一個(gè)對(duì)應(yīng)的HMM,每個(gè)觀測(cè)序列由一個(gè)單詞的語(yǔ)音構(gòu)成,單詞的識(shí)別是通過(guò)評(píng)估進(jìn)而選出最有可能產(chǎn)生觀測(cè)序列所代表的讀音的HMM而實(shí)現(xiàn)的。
[0059]第二層的矢量量化是對(duì)第一層參考的進(jìn)一步優(yōu)化,也是一種現(xiàn)有的建模統(tǒng)計(jì)分析,矢量量化的基本原理是:將若干個(gè)標(biāo)量數(shù)據(jù)組成一個(gè)矢量(或者是從一幀語(yǔ)音數(shù)據(jù)中提取的特征矢量)在多維空間給予整體量化,從而可以在信息量損失較小的情況下壓縮數(shù)據(jù)。這里的標(biāo)量可以理解為提取的參數(shù)。
[0060]對(duì)于第一層參考和第二層的矢量量化具體舉例來(lái)說(shuō),如圖4所示,假如第一層獲取的識(shí)別結(jié)果為al,通過(guò)識(shí)別結(jié)果al可以去關(guān)鍵字語(yǔ)音庫(kù)中找到對(duì)應(yīng)的控制命令bl,該用于語(yǔ)音控制的控制命令也有自己的MFCC。然后對(duì)識(shí)別結(jié)果al,控制命令bl使用矢量量化(VQ)進(jìn)行聚類,得出對(duì)應(yīng)識(shí)別結(jié)果al的矢量a、對(duì)應(yīng)控制命令bl的矢量b,然后比較矢量
a、矢量b的相似程度,即最短距離。處理辦法是矢量a減去矢量b,得到矢量C,如果矢量c的幅度和相位越趨近于O (或者說(shuō)180° ),則說(shuō)明識(shí)別結(jié)果al和控制命令bl越相似。
[0061]針對(duì)第二層的矢量量化涉及的經(jīng)驗(yàn)閾值而言,這個(gè)經(jīng)驗(yàn)閾值為識(shí)別結(jié)果al和控制命令bl的相似程度,這個(gè)取決于得到的矢量C。矢量c這個(gè)值的獲得需要多次的重復(fù)實(shí)驗(yàn)才能確定。
[0062]針對(duì)第二層的矢量量化涉及的預(yù)定準(zhǔn)則而言,它也可以理解為判決邏輯。它是整個(gè)語(yǔ)音識(shí)別系統(tǒng)的核心,主要是:距離測(cè)度、專家知識(shí)(如構(gòu)詞規(guī)則、語(yǔ)法規(guī)則、語(yǔ)義規(guī)則等),計(jì)算輸入特征與模式庫(kù)中模式之間的相似度(如匹配距離、似然概率),判斷輸入語(yǔ)音的語(yǔ)義信息,得出識(shí)別結(jié)果。
[0063]在關(guān)鍵字識(shí)別處理當(dāng)中,當(dāng)檢測(cè)到與所設(shè)定的關(guān)鍵字匹配的時(shí)候,就響應(yīng)對(duì)應(yīng)用戶操作的控制響應(yīng)動(dòng)作。
[0064]在本發(fā)明實(shí)施例一個(gè)優(yōu)選實(shí)施方式中,需要判斷觸發(fā)關(guān)鍵字控制命令進(jìn)行響應(yīng)后,該控制命令執(zhí)行結(jié)束后,如何對(duì)關(guān)鍵字進(jìn)行識(shí)別,為此,在本發(fā)明實(shí)施例的可視通訊中,需要通過(guò)語(yǔ)音輸入設(shè)備采集語(yǔ)音信號(hào),在獲取到語(yǔ)音信號(hào)時(shí),我們可以對(duì)獲取到的語(yǔ)音信號(hào)通過(guò)關(guān)鍵字識(shí)別單元進(jìn)行識(shí)別,當(dāng)識(shí)別到關(guān)鍵字?jǐn)?shù)據(jù)時(shí),可以通過(guò)計(jì)算識(shí)別到的關(guān)鍵字的能量信息,以及前后20幀的能量信息進(jìn)行對(duì)比,如果識(shí)別到關(guān)鍵字的能量的均值是前后20幀能量均值的2倍,則確定此為真正獲取到需要進(jìn)行控制的關(guān)鍵字?jǐn)?shù)據(jù)并作為控制命令,然后就可以根據(jù)設(shè)置的關(guān)鍵字控制呼入、呼出、接聽(tīng)和掛斷等控制操作。
[0065]本發(fā)明實(shí)施例的裝置是在現(xiàn)有模塊的基礎(chǔ)上新增了語(yǔ)音獲取單元和關(guān)鍵字識(shí)別單元,主要通過(guò)關(guān)鍵字識(shí)別模塊實(shí)現(xiàn)關(guān)鍵字匹配識(shí)別,將識(shí)別出的關(guān)鍵字作為控制命令進(jìn)行響應(yīng)。
[0066]對(duì)于可視通訊應(yīng)用場(chǎng)景而言,現(xiàn)有模塊包括:代理模塊21、SIP協(xié)議棧模塊22、組件通訊功能函數(shù)庫(kù)集成模塊23、信令控制進(jìn)程模塊24、媒體處理進(jìn)程模塊25以及媒體視頻顯示模塊26。其中,代理模塊21包括MS消息代理211和好友代理模塊212 ;SIP協(xié)議棧模塊22負(fù)責(zé)和SIP服務(wù)器交互消息的接收和發(fā)送,組件通訊功能函數(shù)庫(kù)集成模塊23包含了所需要的函數(shù)用來(lái)提供函數(shù)調(diào)用,信令控制進(jìn)程模塊24用于處理呼叫控制命令,管理音視頻的輸入輸出設(shè)備,媒體處理進(jìn)程模塊25主要用于接收音視頻數(shù)據(jù)采集功能,媒體視頻顯示模塊26主要用于顯示采集的視頻數(shù)據(jù)。
[0067]如圖5-7所示分別為信令控制進(jìn)程模塊24、媒體處理進(jìn)程模塊25以及媒體視頻顯示模塊26的各個(gè)模塊運(yùn)行的實(shí)現(xiàn)流程圖,而代理模塊21、SIP協(xié)議棧模塊22、組件通訊功能函數(shù)庫(kù)集成模塊23這些模塊主要是用于語(yǔ)音數(shù)據(jù)的傳輸和交互,本發(fā)明實(shí)施例著重于對(duì)語(yǔ)音數(shù)據(jù)的處理,因此,這些模塊跟本發(fā)明實(shí)施例的關(guān)系不大,本文不做重點(diǎn)說(shuō)明。
[0068]如圖5所示為信令控制進(jìn)程模塊24運(yùn)行的實(shí)現(xiàn)流程圖,信令控制進(jìn)程模塊24用于處理呼叫控制命令,其實(shí)現(xiàn)流程包括以下步驟:
[0069]步驟401、收到控制命令。
[0070]步驟402、根據(jù)語(yǔ)音控制命令表,調(diào)用對(duì)應(yīng)操作的軟件API,就可以代替實(shí)現(xiàn)手工的所有操作。
[0071]步驟403、調(diào)用對(duì)應(yīng)操作的軟件API后執(zhí)行對(duì)應(yīng)的操作,打開(kāi)各種設(shè)備、處理具體事務(wù)或者關(guān)閉各種設(shè)備。
[0072]這里,I)可以打開(kāi)各種設(shè)備,比如打電話(進(jìn)入打電話的界面),打開(kāi)攝像頭,麥克風(fēng)等命令;2)具體事務(wù)處理,比如給某某打電話,窗口切換等一些需要手工操作的動(dòng)作;3)關(guān)閉各種設(shè)備,比如關(guān)機(jī),待機(jī),關(guān)閉攝像頭,麥克風(fēng)等。
[0073]如圖6所示為媒體處理進(jìn)程模塊25運(yùn)行的實(shí)現(xiàn)流程圖,媒體處理進(jìn)程模塊25用于采集音頻數(shù)據(jù),判定為非控制命令的音頻,其實(shí)現(xiàn)流程包括以下步驟:
[0074]步驟501、分別采集音頻數(shù)據(jù)和采集視頻數(shù)據(jù)。
[0075]步驟502、分別對(duì)采集音頻數(shù)據(jù)和視頻數(shù)據(jù)使用開(kāi)源軟件編碼。
[0076]步驟503、編碼復(fù)用,將音頻數(shù)據(jù)和視頻數(shù)據(jù)進(jìn)行整合得到音視頻數(shù)據(jù)。