一種可攜式數字移動通訊設備及其語音控制方法和系統的製作方法
2023-10-30 08:59:57 3
專利名稱:一種可攜式數字移動通訊設備及其語音控制方法和系統的製作方法
技術領域:
本發明涉及一種數字通信設備及其控制方法和系統,尤其是涉及一種可通過語音控制的可攜式數字行動裝置及其語音控制方法和系統。
背景技術:
語音識別與合成技術在近十年來,特別是在實用系統方面的進展十分迅速。經過幾十華的研究積累和實踐經驗,語音識別系統的主流算法在建模、訓練、搜索、自適應等領域已趨近統一,大多採用基於統計的連續概率密度隱馬爾可夫模型和Viterbi搜索算法;而語音合成系統為了得到較高的自然度,大多採用波形拼接加上大規模音庫的方法,通過找到最大長度的匹配音段來提高自然度。這些方法的採用對當前桌面個人計算機的CPU處理能力、內存和其他資源的配置來講當然是不成問題的。但是,對於當前的主流可攜式數字通信設備,比如手機和PDA來說,要完成同樣的任務幾乎是不可能的。目前,一些語音應用也可依賴於後端伺服器的支持存在,也有一種基於分布式語音識別DistributeSpeech Recognition模式的應用系統,但直接運行在手持設備上的語音控制技術目前尚沒有完整的技術方案。
語音識別與合成的應用對於手持設備來說,目前公知技術還存在瓶頸,主要表現在對CPU處理能力的要求和內存空間的大小上,還無法支持完整的語音作業系統的安裝和運行。既使具有足夠的資源,一般出於成本的考慮,在滿足應用程式需求的前提下手持設備的廠商也都希望用最少的資源來獲得最好的性能。
在現有的語音識別系統中,聲學模型通常採用連續密度分布的隱含馬爾可夫模型(CDHMM)來描述,但CDHMM的聲學模型需佔用大量的存儲空間,現有的非特定人漢語單音節語音識別系統中的聲學模型佔據了4M字節的空間,既使是最新的嵌入式語音合成系統,其音庫也需要大約1.2M到2M字節的空間,此外,在CDHMM中,在某一狀態下特徵矢量的概率分布函數是有多個高斯分布函數的加權和來描述,但在大詞表語音識別系統中如果採用CDHMM,那麼在解碼過程中需要多次計算高斯概率,計算量很大,會導致語音識別系統反應速度很慢,現有的僅能識別命令式詞條的嵌入式識別系統就需要在約100MIPS以上的CPU上運行。這在資源有限的嵌入式硬體平臺上幾乎不可實現,無法滿足實際使用的需要。
通常,在當今手機(包含SIM卡,下文均同)或其它手持設備(如PDA等)上的語音作業系統採用的都是基於特定人命令控制的語音識別技術,並且所能識別的詞條或命令的數目非常有限,也就是說,用戶需要在使用前訓練一遍或幾遍所有要識別的詞條或命令才能使用,並且不能任意改變命令的說法,如果想要改變就必須重新訓練。而對於非特定人且不限定發音內容的語音識別技術在手機或其它手持設備上的使用尚無先例,同時,現有手機中沒有漢語全音節的聲學模型,無法實現漢字的語音輸入功能。
在中國專利申請文件CN1346566A中,美國高通公司提出了一種在手機上實現語音識別的方案,這種方案從根本上仍未擺脫前面所說的局限性,即,它仍然使用的是特定人的命令詞條式的語音識別技術,使用前需要用戶訓練所有今後可能用到的命令。而且,對於數字的輸入只能一個一個的讀,不能連續讀出。同時,它實現的功能非常簡單,只能控制與撥號有關的操作,也只能給出非常有限的幾種提示語音。
當今主流的語音合成技術,大多採用波形拼接的算法並配合預先建立好的大規模音庫,通過分析,找到音庫中最大長度的匹配音段,再結合一些韻律調整的算法來提高合成系統的自然度。最終系統的自然度很大程度上取決於音庫的大小和覆蓋程度,因此合成系統往往需要很大的音庫。目前已經開發的嵌入式語音合成系統的音庫最少也需要1M以上的空間,對於當前主流的手持設備來說仍然是非常大的開銷。
因而,語音合成技術在手機或其它手持設備上的應用目前也未見先例。由於受手機內系統資源的限制,現有的手機雖然有的具有有限的操作提示功能,但它是通過把語音直接錄製到手機中,在相應的操作點上再播放出來。並不具有真正的語音合成功能,例如,不能以語音方式讀出接收的簡訊的內容,不能讀出電話號碼薄裡的姓名,以及備忘錄裡的內容等等,這使得現有手機在語音輸出上功能非常有限。
此外,現有手持設備上的文字輸入方法非常有限,通常是通過鍵盤或虛擬鍵盤採用某種輸入法完成,或是需要輔助設備比如筆,通過手寫識別軟體完成。後者顯然增加了產品本身的成本,因為當前採用手寫體識別技術的手持設備都需要另外配備用於輸入的手寫筆和特殊屏幕才能完成輸入功能;而通過鍵盤則會帶來諸多不便,特別是和用語音輸入的方法相比,利用鍵盤輸入漢字是一個很繁瑣和緩慢的過程,當一個人在手機上輸入漢字「張」時,如果用拼音「zhang」,在無任何失誤的情況下仍需擊鍵盤10次左右。那麼,隨著手機變得越來越小及功能越來越多,可以想像手機上的文字輸入及功能設置會變得多麼困難和複雜。本發明所涉及的語音漢字輸入方法同現有的手持設備上最常用的拼音輸入法和筆劃輸入法相比具有明顯的優勢,即它的按鍵次數非常的少,平均每個漢字約1.6次,而用其他輸入法每個漢字最少也需要則3次,平均起來每個漢字至少也要5、6次。
由上可知,現有手機在語音識別、合成、語音漢字輸入等方面功能非常有限,並不具有真正意義上的用戶與手機間的語音交互功能。
在本申請人的申請號為02148683.2,名稱為「語音識別系統及用於語音識別系統的特徵矢量集的壓縮方法」的中國專利申請中公開了一種語音識別系統,由模數變換單元、特徵提取單元、特徵碼本、量化編碼單元、解碼運算單元、概率表、語言模型組成。在語音識別過程中,由模數變換單元將輸入的語音模擬信號變換為數位訊號,在特徵提取單元對該數位訊號進行分幀處理,提取每一幀語音的特徵參數,得到輸入語音的特徵矢量序列,然後利用特徵碼本對所述特徵矢量序列進行量化編碼,得到相應的特徵碼字序列;最後進行解碼運算,從詞典樹中找到與該特徵碼字序列具有最大匹配概率的識別結果。,運算中對該特徵碼字序列中的各個碼字,只需從概率表中直接查找與高斯碼本中高斯碼字的匹配概率。
其中,特徵碼本和高斯碼本較佳採用了該申請中公開的改進的K-means聚類算法對特徵矢量集和聲學模型進行壓縮,該聚類方法可以從M維子空間得到表述該空間的碼本。假設該空間共有N個矢量,要將這N個矢量聚類到K比特碼本,K值要以預先設定,最終得到的碼本包含2K個碼字,每個碼字由M維的中心矢量構成。其步驟包括步驟100,令k=0,將M維的子空間所有矢量劃分為一個子集合,計算該子集合的中心矢量,得以初始化碼本;步驟110,如果k=K,聚類結束,否則執行下一步;步驟120,令k=k+1,將所有子集合一分為二,拆分的方法是先對每一子集合中的所有矢量,計算出其相對於該子集合中心矢量的平均方差值,將子集合中心矢量分別加減平均方差值的一半,生成兩個新的中心矢量,將所有中心矢量合在一起生成k-bits碼本;步驟130,找到與該子空間各矢量距離度量最小的中心矢量,將各適量分配到該中心矢量對應的子集合中;步驟140,計算出該子空間所有矢量的總距離度量變化率,先給定一個總距離度量的初始化值;步驟150,將該變化率與一預設的總距離度量變化率門限值作比較,如果不超過門限值,將新算出的總距離度量代替原來的總距離度量,並回到步驟110,如果超過門限值,執行下一步;步驟160,基於每一個子集合中的矢量個數和每一個子集合的總距離度量,如果矢量個數小於一預先定義的矢量個數門限值,將該子集合合併,在碼本中刪除其中心矢量,如果有一個子集合被合併,那麼需要選擇一個子集合做分裂,根據子集合中所有矢量與中心矢量的總距離度量除以該子集合包含的矢量數,得到每一個子集合的平均距離度量,再將平均距離度量最大的子集合進行分裂,按與步驟120相同的方法計算出分裂出的新集合的中心矢量,與原有的中心矢量一起構成新的碼本,將新算出的總距離度量代替原來的總距離度量,再回到步驟130。上述方法在原有的K-means方法中增加了根據子集合中矢量數和矢量的總距離度量來動態合併和分裂子集合的步驟,減小了聚類後集合中矢量與其對應的碼字的距離度量總和,提高了聚類的精度,將該方法壓縮後的碼本應用語音識別中,可在保證語音系統識別性能的同時,大大降低系統的存儲量。
其中,量化編碼將輸入語音的特徵矢量序列轉換為特徵碼字序列的步驟為將所述特徵矢量序列劃分為與所述特徵碼本相同數量的子空間,每一個子空間對應於一個碼本;計算各子空間中所有特徵矢量與相應碼本中的各碼字之間的距離度量,將與該特徵矢量具有最小距離度量的碼字作為所述特徵碼字序列中對應該特徵矢量的碼字;將所述特徵矢量序列各個子空間所有矢量所對應的碼字按原矢量順序組合起來,即得到對應的特徵碼本的碼字序列。
其中,所述概率表是通過以下步驟生成的計算高斯碼本中各碼字對應的均值矢量和方差矢量;利用上述均值矢量和方差矢量,計算所述特徵碼本中各個碼字與高斯碼本中的所有碼字相匹配的對數概率值;將特徵碼本中的所有碼字與高斯碼本中的所有碼字相匹配的概率值儲存起來即可得到概率表。
這種語音識別系統,可以用412K大小的特徵碼本和概率表代替了現有系統中的4M的聲學模型,從而大大地降低了對設備存儲空間的要求。同時,由於在解碼運算中不需要計算高斯概率,大大減少了解碼運算量,可提高識別速度50%以上。
在本申請人的申請號02146655.6,名稱為「一種嵌入式語音合成方法及系統」的中國專利申請中公開了一種新的語音合成系統和方法,該語音合成系統包括依次相連的輸入模塊、文本分析模塊及多音字處理模塊、碼字序列生成模塊、語音解碼模塊、波形拼接合成模塊、數字語音信號輸出模塊,以及與文本分析及多音字處理模塊連接的多音字詞表模塊,與碼字序列生成模塊連接的一個壓縮語音庫。壓縮語音庫中存放有按一定規則包裝的經過編碼壓縮後的語音數據(碼字),是由存儲有所有漢語音節以及一些特殊的文字、數字及符號的原始語音庫經過一定的壓縮算法(如碼激勵線性預測算法)得到壓縮碼字,再加上索引標記組合成一個文件形式而構成的。
其語音合成方法是輸入模塊產生要進行語音輸出的文本信息;文本分析及多音字處理模塊接收文本形式的輸入,通過分析輸入文本的格式和內容將輸入漢字轉換成相應的拼音符號;碼字序列生成模塊根據這些拼音符號序列,通過檢索壓縮語音庫模塊,得到對應的壓縮語音的碼字序列;語音解碼模塊接收上述壓縮過的碼字序列,通過與編碼壓縮方法相應的解壓縮算法還原出未經壓縮的原始語音的數位訊號,並輸出到波形拼接合成模塊拼接,最後通過數字語音信號輸出模塊將得到的數位訊號轉換為最終給用戶聽的聲音信號。其中,文本分析及多音字處理模塊會根據多音字詞表模塊所提供的信息查找所要分析的輸入文本中有無多音字,並根據文本分析的結果為輸入文本中具有多音字的漢字確定一個正確發音。
該語音合成系統採用高壓縮率和低失真的語音編解碼算法,大大降低了音庫所需的存儲空間,其佔用的總資源(包括音庫和系統動態內存)不到500K字節,由於採用的是字運算,計算複雜度小於5MIPS,因而能夠運行在當前主流的手機之中。
由上可知,現有手機並不具有真正意義上的用戶與手機間的語音交互功能。而本申請人的上述專利申請中公開的語音識別和合成技術,使得在保證識別性能的同時,在資源有限的可攜式數字移動通訊設備中進行非特定人及漢字全音節的語音識別和合成變得可能。
發明內容
本發明所要解決的技術問題是提供一種具有語音作業系統的可攜式數字通信設備,可以實現對非特定人的語音識別,及用語音命令實現控制操作。
本發明所要解決的又一技術問題是提供一種具有語音作業系統的可攜式數字通信設備,可以實現漢字全音節的語音輸入。
本發明所要解決的再一技術問題是提供一種具有語音作業系統的可攜式數字通信設備,可以實現對設備中任意結合的文本信息的語音提示。
為了實現上述目的,本發提供了一種具有語音作業系統的可攜式數字移動通訊設備,在所述作業系統中還包括一嵌入式語音識別裝置,所述裝置進一步包括一語音輸入模塊,用於將輸入的東方語言的語音模擬信號變換為數位訊號;一特徵提取/壓縮模塊,用於對該數位訊號進行分幀處理,提取每一幀語音的特徵參數得到特徵適量序列,利用特徵碼本對所述特徵矢量序列進行量化編碼,得到相應的特徵碼字序列;一語音識別模塊,用於接收上述特徵碼字序列,進行解碼運算找到最匹配的語音模型,再輸出該模型對應的識別結果;
一意圖分析模塊,用於對輸入信息的意圖進行分析,將其表示為程序內部的一種語義符號,並輸出至對話管理/控制模塊;一對話管理/控制模塊,用於接收所述意圖分析模塊輸出的語義符號,結合所述設備當前狀態,判斷出所述設備應採取的控制動作,並予以執行。
上述設備中,其特點是還包括一音字轉換和輸入選擇模塊,用於將拼音形式的識別結果轉換成備選漢字,通過所述設備顯示,根據用戶輸入選擇所需的漢字。
上述設備中,其特點是還包括一語言生成模塊,用於接收所述對話管理/控制模塊輸出的信息,自動調用提示詞表中要提示給用戶的文字信息,輸出到語音合成模塊;一語音合成模塊,用於根據接收所述文字信息,通過處理得到該文字所對應語音信號的數字表示並輸出;一語音輸出模塊,用於接收所述語音合成模塊輸出的語音信號的數字表示,並通過所述設備上的語音輸出裝置將聲音傳到用戶。
上述設備中,其特點是所述嵌入式語音識別與合成裝置是在30MIPS以內和1M內存空間中實現的。
上述設備中,其特點是所述語音識別模塊,進一步包括一概率表,用於存儲特徵碼本中每一個特徵碼字對應於高斯碼本中每個碼字的概率值;一識別單元,用於將所述碼字序列通過解碼運算找到與其最為匹配的語音模型,最終輸出與所述輸入語音最相似的識別結果,運算中對有效語音特徵碼字矢量序列的各個碼字,直接從概率表中查到其在搜索路徑上的觀察概率;以及若干詞典樹。
上述設備中,其特點是所述特徵碼本和高斯碼本採用的壓縮算法是在K-means聚類算法中增加了對包含矢量數小於某預設值的子集合的中心矢量刪除,再將平均距離度量最大的子集合分裂成兩個新的子集合的步驟。
上述設備中,其特點是所述解碼運算部件進一步包括一碼字序列過濾部件,用於去掉輸入碼序列中對解碼運算冗餘的碼字,從而加速解碼運算的速度;一搜索路逕自適應剪校部件,用於根據局部搜索路徑的最大似然概率,動態調整剪枝閥值,以便有效去掉對解碼運算無用的搜索路徑,從而加速解碼速度。
上述設備中,其特點是所述詞典樹包括主要由東方語言單字所組成的詞典樹,用於用語音實現東方語言的輸入時,在解碼運算中使用;以及主要由命令詞條、存儲信息及/或常用短詞組成的詞典樹,用於非語言輸入時,在解碼運算中使用。
上述設備中,其特點是所述音字轉換和輸入選擇模塊在所述設備屏幕上顯示的備選的文字是漢字,所述漢字顯示次序是按照漢字使用頻率的高低排列的;或者所述屏幕上備選的文字是日文假名,所述假名顯示次序是按照其識別結果的匹配概率的高低排列的。
上述設備中,其特點是進一步包括一聲調識別模塊,用於從來自所述語音輸入模塊的語音數據中提取所述語音信號的基頻,根據整段語音的基頻變化識別出音調,並將所述音調輸出到所述音字轉換和輸入選擇模塊。
上述設備中,其特點是所述語義分析模塊連接一識別詞表,所述語言生成模塊連接一提示詞表,該兩詞表均可通過一詞條定製模塊對其進行個性化的定製。
上述設備中,其特點是所述語音合成模塊採用了文本和多音字處理單元和句音停頓技術來提高合成語音的可懂度和自然性。
為了解決上述問題,本發明還提供了一種數字移動通訊設備的語音操作控制方法,包括以下步驟語音輸入步驟,將輸入的東方語言的語音模擬信號變換為數位訊號;語音識別步驟,對所述數位訊號進行分幀處理,提取每一幀語音的特徵參數得到特徵矢量序列,利用特徵碼本對所述特徵矢量序列進行量化編碼,得到相應的特徵碼字序列,再進行解碼運算查找最匹配的語音模型,輸出該模型對應的識別結果;語義分析步驟,對識別結果的意圖進行分析,將其表示為程序內部的一種語義符號並輸出;以及對話管理/控制步驟,接收所述語義符號,結合設備當前狀態判斷出所述設備應採取的控制動作,並予以執行。
上述方法中,其特點是還進一步包括,音字轉換和輸入選擇步驟當對話管理/控制步驟中判斷的結果為文字輸入時,將拼音形式的識別結果轉換成備選漢字,通過所述設備顯示,並根據用戶輸入選擇所需的漢字。
上述方法中,其特點是在對話管理/控制步驟中,系統進一步生成提示用戶的信息文本,並對生成的信息文本合成出要提示用戶的語音信號的數字表示,通過語音輸出裝置播放給用戶。
上述方法中,其特點是所述語音識別步驟中,在查找與所述特徵碼字序列最為匹配的語音模型時,對有效語音特徵碼字矢量序列的各個碼字,是直接從概率表中查到其在搜索路徑上的觀察概率。
上述方法中,其特點是所述音字轉換和輸入選擇步驟中,在所述屏幕上是按照漢字使用頻率的高低排列的;或者是在所述屏幕上按照識別結果的匹配概率的高低顯示備選日文假名。
上述方法中,其特點是所述語音識別步驟中,還從所述數位訊號中提取所述語音信號的基頻,根據整段語音的基頻變化識別出音調,並在所述屏幕上顯示備選漢字的步驟中,採用音調識別結果和漢字使用頻率/常用詞詞頻相結合的排序方法。
上述方法中,其特點是在語音合成時採用了波形拼接和語音壓縮算法,並採用了文本和漢字多音字處理和句音停頓技術。
上述方法中,其特點是通過設備進行文字輸入時,所述語音作業系統採用單音節識別模式,解碼時啟用單字詞典樹,得到拼音識別結果進行音字轉換後顯示在設備屏幕上供用戶選擇;不進行文字輸入時,所述語音作業系統採用詞條識別模式,解碼時啟用詞條詞典樹,結合識別結果的語義和系統當前狀態控制所述設備完成相應的控制動作。
上述方法中,其特點是在所述語音識別步驟中啟動連續識別引擎,完成一次識別後如果還有未識別的語音幀,則重新開始一次識別過程。
上述方法中,其特點是所述語音操作和按鍵操作可以並存,並且按鍵操作優先。
採用上述方案的通訊設備及其語音操作控制方法,可以在對系統資源的苛刻要求下,採用的非特定人的語音識別技術,並且不限制詞表內容和條數,用戶可以隨意增加、刪除、修改以及自己定製命令內容,無需訓練即可識別;而且用戶可以通過語音控制設備所有功能菜單,因此用戶界面更友好、更靈活。同時,系統具有語義分析、對話管理和語言生成模塊,可以處理複雜的對話過程並產生靈活的提示信息反饋給用戶。採用上述方案的通訊設備不僅可以具有非特定人語音輸入功能、語音提示功能、漢字全音節的輸入功能,而且本發明提供的語音輸入方法是一種最快捷、最經濟的輸入方法。
下面結合附圖和具體實施例對本發明進一步說明,通過結合附圖對系統各組成部件的詳細說明將會更好地描述實現本發明的步驟和過程。
圖1是本發明第一實施例手機語音作業系統的功能模塊示意圖;圖2a是本發明第一實施例手機語音作業系統啟用語音手機過程的流程圖;
圖2b是本發明第一實施例手機語音作業系統狀態轉移控制過程的流程圖;圖3是本發明第一實施例手機語音作業系統完成發出一個新簡訊過程的操作流程圖;圖4是本發明第一實施例手機語音作業系統收到一個新簡訊後的操作流程圖;圖5是本發明第一實施例手機語音作業系統完成電話簿操作中修改功能的操作流程圖;圖6是本發明第一實施例手機語音作業系統將手機設為震動模式的操作流程圖;圖7是本發明第一實施例手機語音作業系統寫備忘錄的操作流程圖;圖8是本發明第一實施例手機語音作業系統查看備忘錄的操作流程圖。
具體實施例方式
雖然背景技術中提到的語音識別和合成技術為在手機上進行真正意義上的語音交互提供了可能,但是要在手機中實現上述功能,還需要對上述語音識別和合成系統進行適應性的調整,增加進行語音操作管理的部分,並且將三個部分有機地結合起來。採用適當的方式安裝在現有的手機中。此外,必須針對於該新系統,提供一種語音操作管理的方法,能與現有手機的操作方法有效地結合起來。下面結合實施例和附圖對本發明作詳細說明。
實施例一本實施例具有語音交互功能的作業系統(以下簡稱為語音作業系統)由語音識別部分、語音操作管理部分和語音合成部分組成。針對手機1的硬體資源條件,該嵌入式語音識別與合成模塊一般控制在30MIPS以內和1M內存空間中。如圖1所示。
本實施例語音作業系統的語音識別部分包括語音輸入模塊10、特徵提取/壓縮模塊20和語音識別模塊30。和專利申請02148683.2中的語音識別系統相比,其中的語音輸入模塊10對應於該申請中的模數變換單元,用於將輸入的語音模擬信號變換為數位訊號;特徵提取/壓縮模塊20對應於該申請中的特徵提取單元、特徵碼本及量化編碼單元,用於對該數位訊號進行分幀處理,提取每一幀語音的特徵參數,利用特徵碼本對所述特徵矢量序列進行量化編碼,得到相應的特徵碼字序列;語音識別模塊30對應於該申請中的解碼運算單元、詞典樹及概率表,用於接收上述特徵碼字序列,進行解碼運算找到最匹配的語音模型,再輸出該模型對應的識別結果。
其中,為了進一步提高識別精度,本實施例中與概率表對應的特徵碼本和高斯碼本採用中國專利申請02148683.2中改進的K-means壓縮方法,分別對語音特徵集和通用的聲學模型壓縮得到。而為了進一步提高解碼運算的速度,上述解碼運算單元較佳採用中國專利申請02148682.4中公開的快速解碼方法。該解碼方法包括以下步驟(1)對語音識別系統中的解碼運算單元進行初始化;(2)從輸入解碼運算單元中的長度為T的語音特徵碼字序列中依次取出下一個語音幀的特徵碼字矢量,置其為當前語音幀;(3)對當前語音幀進行過濾,若當前語音幀被過濾掉,則轉到步驟(2)執行,否則置當前語音幀為當前有效語音幀;(4)基於當前有效語音幀,對t時刻詞典樹令牌資源的每一層I的令牌中的每一個活動節點進行判斷,並對判斷屬於可擴展的令牌則擴展該節點令牌資源表中的令牌,並將新產生的令牌鏈入目標節點的令牌資源表中,其中I為索引變量;(5)處理處於詞典樹節點的令牌;(6)根據t時刻的局部路徑最大概率以及前一有效語音幀對應的時刻的局部路徑最大概率,對與剪枝相關的閾值做自適應調整;(7)重複上述(2)~(6)步得到輸入語音結束時刻T的具有最佳分值令牌的全局路徑,結束令牌擴展,輸出此刻已生成的與聲學模型和語言模型有最佳匹配的文本串,產生語音識別結果。其中,在步驟(4)中,計算令牌從一個狀態音素到達另一個狀態音素的分值時,所採用的後一狀態音素(對應於一高斯碼字序列)對於當前語音幀(對應於一特徵碼字序列)的觀察概率是從申請號為02148683.2的專利申請中所述的概率表中做查表操作得到的。
上述解碼運算方法和傳統的方法相比,進行了以下改進增加了基於局部路徑最大概率的自適應剪枝策略;增加了基於特徵碼字矢量的語音幀過濾策略。前者有效地降低了解碼過程中的平均令牌數M(10%~20%),後者可去除所述語音特徵碼字矢量序列中20%~30%的無效語音幀。因而,採用上述解碼算法後,進一步地提高了語音識別的速度。
在本實施例中,上述語音識別部分的詞典樹包含詞條的詞典樹和漢字單字的詞典樹,對應於運行時採用的兩種識別模式詞條識別模式,單音節識別模式。在單音節識別模式中,解碼運算時所用的詞典樹中的詞表是由所有漢字單字組成的,用於漢字語音輸入的識別;而在詞條識別模式中,解碼運算時所用的詞典樹中的詞表是由系統預置的詞條、用戶2定製的詞條以及一些存儲的信息(如人名)等組成的,也包括一些單字詞。通過識別模式的劃分,將各自的詞典樹分開,可以提高識別的速度和準確率。
現有手機的語音作業系統也具有有限的對命令式詞條的語音識別功能,比如,用戶2可以通過說「發簡訊」而直接調出發簡訊的操作菜單。這種語音識別和本發明的語音識別系統具有很大的差別,最根本的,由於存儲空間及運算速度的限制,在現有手機的語音識別系統中沒有一個通用的漢字全音節的聲學模型,用戶2必須對某一詞條進行訓練,由手機在訓練過程中建立對應於該詞條的聲學模型,以後再利用該模型對用戶發出的語音進行識別。這樣,使得現有手機的語音識別只能在訓練後對特定人發生作用,對於用戶來說很不方便。而且由於對每一詞條都需要重新建模,佔用一定的存儲空間,使得詞條數受到限制,用戶不能對詞條進行個性化的定製。
而由於本發明實施例的手機內存儲了漢字全音節的聲學模型,本發明實施例的識別部分不僅可以對用戶隨意說出的單個漢字進行識別,不必在識別前進行訓練就能對非特定人的語音進行識別,而且使得對命令式詞條的個性化定製十分自由。這將在語音操作管理部分中詳細說明。
本實施例的語音合成部分包括語音合成模塊70和語音輸出模塊80。和專利申請02146655.6相比,其中語音合成模塊70對應於該申請的文本分析及多音字處理模塊,碼字序列生成模塊、語音解碼模塊、波形拼接合成模塊、多音字詞表模塊及壓縮語音庫模塊,用於根據接收到的文字信息,通過文本及多音字處理得到該文字對應的拼音,通過檢索壓縮語音庫得到該拼音序列所對應的碼字序列,用解壓縮算法從碼字序列還原出該拼音所對應的語音數位訊號,進行波形拼接後得到整句文字信息的語音數位訊號;語音輸出模塊80對應於該申請中的數字語音信號輸出模塊,用於將語音合成模塊輸出的數字語音信號轉換為聲音信號後傳送給用戶。其中的壓縮語音庫是在離線時,對包括所有漢字音節的原始語音庫,採用碼激勵線性預測或者其它高壓縮率和低失真的語音壓縮算法/編解碼算法進行壓縮得到的,只要其運算複雜度和存儲要求能夠在手機中運行。為了使一句話聽起來更有節奏、更自然,在該壓縮語音庫中還包括一些特殊的符號,比如標點,以及自定義的表示語音停頓、疑問等含義的標記所對應的發音壓縮後的碼字。相應的,在文本分析及多音字處理模塊還進一步包括對輸入文本中數字和符號的處理。
如背景技術中所述的,現有手機的語音提示功能是通過對語音提示的簡單錄製實現的,並非真正的合成系統,其語音輸出的功能十分有限。本發明的語音合成部分與其具有很大的差別,最根本的,是具有漢字全音節的壓縮語音庫,因而將隨意組成的詞或句子按其組成漢字的發音分解為拼音序列後,就能從壓縮語音庫中找到對應的碼字序列,經解壓縮還原和拼接後就可得到對應的語音信號。因此,在本發明中,只要是以文字形式存儲於手機中的信息,就能夠用語音方式讀出,如接收的簡訊的內容,電話號碼薄裡的姓名,以及備忘錄裡的內容等等。
上述的語音識別和合成模塊大大擴展了手機與用戶之間語音交互的可能。但在手機的實際語音操作中,必須結合語音操作管理部分,在原有交互手段的基礎上增加語音交互的功能,才能真正在手機上利用語音識別和合成實現人機之間的語音交互。
在本實施例中,語音操作管理部分包括與識別詞表100相連的意圖分析模塊40、對話管理/控制模塊50、與提示詞表110相連的語言生成模塊60以及音字轉換和輸入選擇模塊90。
其中,意圖分析模塊40用於對輸入信息的意圖進行分析,將其表示為程序內部的一種語義符號,以確定用戶的意圖,並輸出至對話管理/控制模塊。信息輸入主要有按鍵、語音以及來電來信等方式。在語音輸入時,該模塊是對語音輸入進行語義分析,這時需要用到識別詞表100。在其它輸入方式下,處理方式和手機的現有系統相同。
其中,識別詞表100是一個包含內部語義符號和詞條關聯信息的列表,在列表中每一語義符號均與若干的詞條相關聯,但本文所指的語義符號並非與語音識別得到的詞條相關聯,而應做廣義的理解,按鍵、手寫等各種方式的輸入信息,均可理解為用戶的一種語言。所述詞條可以包括命令詞條(可以自己定製)、電話簿裡的聯繫人姓名等存儲信息、一些常短語等等。
如果識別結果是命令詞條,如「震動模式」,通過查表,可找到「震動模式」詞條對應的語義符號並輸出到對話管理/控制模塊,觸發執行切換到「震動模式」的操作;有的識別結果是一種信息式的詞條,並不直接對應於一種操作,譬如在發簡訊時,手機提示用戶說出接收方的姓名,用戶說「xxx」後,它並不是一個命令詞條,而只是執行某一操作中所需的一種信息,它對應的語義符號主要是由系統當前狀態決定的,此處是用於觸發完成將該信息附加到簡訊上;而在單音節識別模式下,語音識別結果對應的語義符號也是由系統當前狀態決定的,識別出的漢字單字,均觸發將其送到音字轉換模塊處理的流程,等等。
本實施例中還包括一個與識別詞表100和提示詞表關聯的詞條定製模塊(圖中未示出),由定製菜單和定製處理單元組成,用於在兩個詞表中加入定製的詞條。因為不需要重新建模,本發明允許進行任意多的詞條的定製,從而使得用戶手機更具個人特色。
進行詞條定製操作時,採用專門的定製菜單將相同的控制操作定義成不同的命令表示方式。用戶進入該菜單後可以看到列出的所有預置的標準命令詞條,這些標準命令詞條一一對應於系統定義的某一語義符號,一般由系統預置。對每一標準命令詞條對應的定製詞條可以執行編輯、增加、刪除等操作,增加定製詞條時,如在「震動模式」標準詞條下增加一個「開會了」的詞條,只需輸入相應的漢字,然後按確定即可。定製處理單元將根據該詞條的漢字將其分解為一系列音素,如對應於隱馬爾科夫模型(HMM)的TRIPHONE音素,增加到命令式詞條詞典樹的相應位置,同時在命令式識別詞表100中將該詞條與「震動模式」詞條對應的語義符號加以關聯,這樣,手機即可識別該語音命令,確認其真實語義,並執行相應的操作了。
同樣,用戶也可以利用詞條定製模塊對提示信息進行個性化定製,例如,想要將來信的提示改為「快點看xx的信」或「你有信了」等等,或者將某些較長的提示定製成用戶喜歡的短語。其定製菜單的操作和命令式詞條的定製類似,但定製處理單元只需將信息存儲而無需對詞典樹進行處理,只是有時需利用定製處理單元將某一詞條設定默定詞條。
其中,對話管理/控制模塊50用於接收所述意圖分析模塊輸出的語義符號,根據所述設備所處的狀態和/或指令信息,判斷出所述設備應採取的控制動作,並予以執行。例如調出用戶所要的菜單或者下一級菜單;用語音提示下一步的操作;直接執行用戶的語音命令進行呼叫、發簡訊、開關語音功能等等。現有手機的輸入一般是通過按鍵來完成,根據按下的鍵位和當前和之前手機所處的狀態(從程序上講,即運行的當前位置)來確定應採取的控制動作。在本發明的交互操作中,增加了漢字全音節的語音輸入和輸出的管理。
在啟用語音輸入後,對話管理/控制模塊50接收意圖分析模塊40輸出的對應於語音輸入的語義符號,結合當前和之前手機所處的狀態,判斷出當前手機應當採取的控制動作,並加以執行。以簡訊編輯完成後進行保存的操作為例,在現有手機上完成簡訊編輯並輸入號碼後會彈出一個選單,列有「發送/保存/保存並發送」等內容,用戶按特定鍵選中「保存」菜單後即執行保存操作,該操作是由用戶在上述狀態下選中特定鍵而觸發的。同理,採用本發明語音輸入方法時,在手機屏幕上彈出列有「發送/保存/保存並發送」選單後,用戶說「保存」,語音識別部分對用戶的語音命令進行識別,得到「保存」詞條,在識別詞表100中可以找到相應的語義符號輸出到對話管理/控制模塊50,對話管理/控制模塊50接收到該語義符號後即可觸發對簡訊的保存操作,對信息式詞條和漢字語音輸入的處理上面已經提及。
一個語義符號在不同的狀態下可能對應於不同的操作,如在簡訊編輯完畢或者錄入新的聯繫人姓名和電話後都可以用「保存」的語音指令,前者會將簡訊保存在發件箱中,而後者會將新的聯繫人姓名和電話保存在電話薄中。對這種一個語義符號可能對應於多種操作的情況,對話管理/控制模塊50是結合當前狀態來判斷要執行的操作,如上例中,對話管理/控制模塊50接收到「保存」詞條對應的語義符號後,再結合手機當前狀態,即是在簡訊的編輯過程中,因而執行保存簡訊的操作。為了更精確,下文中將語音命令實際要執行的操作稱為該語音命令的真實語義。
這種語音命令的輸入方式為用戶帶來了一個極大的便利,即可實現底層菜單之間的跳轉,不必用按鍵從一個底層菜單一級級地返回主菜單,再一級級地進入另一個分支上的底層菜單。這是語音命令的特有的優點,因為不同的命令詞條對應於不同的語義符號,系統通過語義符號(有的需結合當前狀態)即可知道用戶的真實語義,從而執行相應的操作。譬如,用戶處于震動模式的設置狀態下時,可以說「查電話」而直接進入電話薄查詢的菜單。大大提高了操作的效率和便利性。
可以將當前手機1所處的狀態分為兩類,一類是文字輸入狀態,一類是非文字輸入狀態,分別對應於單音節識別模式和詞條識別模式。在文字輸入狀態下,對話管理/控制模塊50將語音識別部分得到的語音識別結果輸出給音字轉換和輸入選擇模塊90;在非文字輸入狀態下,語音識別結果用於控制設備相應部件完成用戶的指令或者提供所需信息,並在必要時,將相應指令完成情況和/或當前手機所處狀態的提示信息輸出到語言生成模塊60中。
其中,音字轉換和輸入選擇模塊90用於在手機處於文字輸入狀態時接收到來自對話管理/控制模塊50輸入的單音節識別結果一拼音,通過音字轉換單元將備選漢字按漢字的使用頻率高低依次輸出到手機1的顯示屏幕上,然後用戶2可以通過手機所指定的不同的按鍵或其他附件選擇所要輸入的正確漢字,輸入選擇單元會將用戶選擇的每個漢字記錄下來並保存,直到本次文字信息全部輸入完畢(如用戶按「確認」鍵)後,再通過手機將全部內容發送到意圖分析模塊40。在需要連續輸入漢字的情況下,漢字輸入選擇控制邏輯具有根據常用詞彙統計得到的詞頻顯示出下一個漢字候選輸入列表的「聯想漢字」的功能,從而使得漢字的輸入更快捷、更準確。另外,為提高該系統的識別率,該系統將同時顯示相近音對應的漢字以解決說話人發音可能不準的情況。上述通過語音進行漢字輸入的方法中,除了拼音是通過對語音輸入的識別得到的以外,和現有通過鍵盤進行的拼音輸入方法的處理過程是相同的。
其中,語言生成模塊60用於根據來自對話管理/控制模塊50的信息,自動生成所要提示給用戶的文字信息,輸出到語音合成模塊。這些提示詞條存放在提示詞表110中,當對話管理/控制模塊50判斷出需要的語音提示時,由語言生成模塊60調出提示詞表110中的提示詞條,並輸出到語音合成模塊,再通過語音輸出模塊80將語音信號播放給用戶。例如,在手機收到簡訊後,對話管理/控制模塊50根據系統設定判斷需要進行語音提示,則在提示詞表110中找到相應的提示詞條,如「xxx(來信人的姓名,由系統實時提取該信息)來信了」,輸出到語言生成模塊60,再經語音合成70、輸出模塊80發出提示語音。
由上可知,本實施例的語音作業系統是按照人機對話模式進行設計和工作的,該系統對流程的控制是通過意圖分析模塊40、對話管理/控制模塊50、音字轉換和輸入選擇模塊及語言生成模塊60來完成的。意圖分析模塊40根據語音識別模塊30給出的結果,或者來自於手機的其它輸入信息判斷用戶意圖;對話管理/控制模塊50根據判斷得到的用戶意圖,結合手機當前狀態採取相應的動作,必要時通過語言生成模塊60生成要提示給用戶的信息文字表述,由語音合成模塊70完成提示聲音的生成,通過語音輸出模塊播放給用戶;當用戶進行漢字語音輸入時由音字轉換和輸入選擇模塊完成漢字的編輯。
在本實施例中所描述的所有方法及使用模式都可以直接利用已有手機的資源,並在已有手機的基礎上以添加/整合的方式為已有設備增添了強大的「語音操作」功能,極大地擴展了原有手機的使用模式和方法。這與其它一些為了體現與之類似的使用模式而需要定義一種新的手機的方法或裝置明顯不同,它所具有的優點是非常顯而易見的。
在本實施例中,上述所有模塊都以軟體嵌入的形式存在於手機的作業系統之中,如Palm OS作業系統、Microsoft Windows CE作業系統、EPOC作業系統、Symbian作業系統或Linux作業系統,當然也可以作為作業系統的一部分和/或其上的一個應用程式而運行在手機之上。在本發明的語音合成模塊中,所採用的語音解壓縮算法既可以通過軟體實現,也可以通過晶片實現。也就是說可以利用手機上已有的DSP晶片。當然也可以使用新增的晶片,但這樣會增加手機製造成本。
基於本發明實施例的語音系統,本發明還提供了一種語音手機的操作控制方法,給出了語音識別與合成方法在手機上的應用模式。它是一種通過語音控制在手機上輸入漢字並控制手機的操作使用,以及通過語音輸出使用戶無需看手機的顯示屏幕就能知道手機當前狀態和信息的方法。
本發明語音手機操作控制方法的總體流程可以分為啟用語音手機過程和狀態控制轉移過程。下面主要從操作和狀態控制角度描述,關於語音識別和合成過程中的具體方法前面的系統中已經介紹,不再重複。
圖2a是圖1中啟用語音手機部分的流程圖。當手機開機後,首先進行作業系統初始化,手機作業系統自動加載語音識別部分和合成部分的相應模塊,手機電話簿中所有人名、各菜單控制命令等等,為進行語音識別與合成做好準備,步驟200;等到手機進入開機等待畫面,步驟210;通過預先定義的按鍵或是菜單選擇啟用「語音手機」,當然,也可以採用一個特殊的語音命令作為啟用該系統的另一種實現方法,其中的語音命令可以由用戶自己設定,比如「啟用語音手機通/語音秘書」、「關閉語音手機通」等,步驟220;啟用後,系統提示用戶「歡迎使用語音手機,請您說出指令」,步驟230;然後進入等待輸入狀態A,等待信息輸入,如果沒有啟用語音用機,則將該等待狀態表示為A*。用戶可以通過語音、按鍵或者別的方式輸入來對手機進行操作控制,手機收到新簡訊或來電也視為一種輸入方式。
圖2b是圖2中狀態控制轉移部分的流程圖。在狀態A,如果有信息輸入,步驟300;系統對語音、按鍵或其它方式的輸入信息進行識別,得到識別結果,步驟310;確定操作意圖,即對識別結果進行語義分析以確定用戶的操作意圖,步驟320;系統判斷用戶是想禁用手機嗎?步驟330;如果不是,執行步驟340;如果用戶確實要關閉「語音手機」,則該系統提示用戶「語音手機」已被關閉,如想啟用請按鍵或從菜單選擇,步驟340a,並返回狀態A*,即沒有啟用語音手機時的等待輸入狀態。
步驟340,判斷系統是否在進行漢字(包含數字)輸入?如輸入簡訊內容、備忘錄內容或在電話簿新增加人名等,若是,執行步驟350a,若否,執行步驟350;在步驟350a中,音字轉換單元根據識別出的拼音候選結果,將所對應的備選漢字顯示到手機屏幕上,然後回到等待輸入狀態A,再執行步驟1020~1023的流程,在該過程中,用戶從手機屏幕上選擇剛說出的那個漢字,該選擇過程可以通過手機上不同的按鍵組合來獲得,系統將該字選定後,再回到狀態A;然後用戶說出下一個字,再依次進行語音識別,語義分析、音字轉換和輸入選擇步驟如此循環,直到全部信息輸入完畢,用戶通過預先指定的一個特殊鍵,比如「確認」鍵,來表明全部信息輸入完畢,此時,系統對該按鍵輸入進行語義分析時,將結束漢字輸入過程,並執行下一步的操作。手機按鍵控制漢字輸入的一種實施方法是用上、下、左、右四個鍵加上確認鍵和取消鍵等六個鍵。其中,按上鍵表示選中當前光標所對應的漢字,並將其輸入到手機屏幕上方;按下鍵表示整屏翻動漢字候選列表;按左鍵表示切換不同的拼音候選;按右鍵表示光標在漢字候選結果上逐個向後右移動;按確認鍵表示當本次漢字編輯已經全部結束,即簡訊內容已經全部輸入完畢時,按下此鍵,該系統會退出單音節識別狀態,繼續對話過程;按取消鍵表示當選中了一個錯誤的漢字後,每按此鍵一次可去掉一個已輸入的漢字,或者本次識別結果中挑不出要選的漢字時,用戶按此鍵後可重新發音。在另一種實施方案中,可以用*號鍵完成左鍵的功能,#號鍵完成右鍵的功能,它會更適合於某些型號的手機按鍵配置情況,例如,特別是在某些手機型號的正面沒有左鍵/右鍵的設置時。
如果用戶不在進行漢字輸入,則系統執行相應的操作,步驟350,該操作是多種多樣的,如發簡訊、修改相應設置、調用下一級菜單等等,其中與狀態轉移有關的,是在用戶按「確認」鍵後將識別模式切換到詞條模式,相應系統轉移到非文字輸入狀態;或者在系統進入到漢字輸入狀態時,將識別模式切換到單音節模式。觸發系統進入漢字輸入狀態的輸入信息,可以從後面的示例中了解到。
為了清楚說明語音輸出的流程,這裡把語音提示獨立於步驟350外進行說明。首先根據系統設定判斷是否需要進行語音提示?步驟360,如果需要,生成提示信息文本,合成出提示語音並輸出給用戶,步驟370;如果不需要,按系統原有方式進行處理,即將信息通過手機屏幕、鈴聲/音樂或震動形式通知用戶,或者直接回到狀態A,步驟360a。本實施例的語音提示功能也可以設置為禁用。
通過以上流程,本發明的語音功能可以隨時在手機上啟用或關閉。在沒有啟用語音功能時,原手機的各種功能將不受任何影響。
利用上述語音手機的操作控制方法,用戶可以通過語音與手機交互,無需事先訓練,就可以完成各功能菜單之間的切換和一些常用菜單的下層管理,例如對電話簿的管理增加/修改/刪除功能、來電以及收到新簡訊時的語音提示功能、收/發簡訊、記錄和讀取備忘錄、設定鬧鐘、控制手機狀態等手機菜單支持的所有功能。還可以通過語音在手機上進行漢字的輸入。
在圖3-圖9中,描述了依據本發明的一種語音作業系統在手機上的應用,在該語音手機的一些應用模式和人機互動過程中,給出了一種以語音識別與合成技術為基礎的人機界面技術運用在手機上而產生的新型交互方式,但原有的人機互動的處理流程也仍然保留,手機屏幕的輸入界面或選擇界面的調用與現有手機相同,用戶可以使用語音模式、按鍵模式或其它模式輸入,所有的語音輸入步驟均可以用手機按鍵來替代執行,語音功能並不與原手機的操作衝突,而是自然地「共存」。
圖3示出了本發明語音手機上中文簡訊發送過程的流程圖。開始時手機處於狀態A,發簡訊時,手機用戶首先說「發簡訊」,步驟400;系統通過語音識別和語義分析明白用戶想要發出新的簡訊後,採用語音提示「請問發給誰?」,同時進入要求用戶輸入收信人電話號碼的菜單界面,步驟410;此時,用戶可口述收信人姓名(如該人電話已存入手機電話薄)或者鍵入/說出收信入電話號碼,當然也可以直接按鍵輸入電話號碼,步驟420;該系統在完成識別步驟後自動轉入簡訊編輯界面,提示「請按說出內容」,並切換到單音節識別模式,步驟430;判斷用戶是否按下「確認」鍵,步驟440,如果是,表明簡訊內容已經全部輸入完畢,執行步驟450,否則執行下一步;用戶說出想輸入的一個漢字的音節,步驟450;系統得到音節識別結果,並發消息給音字轉換和輸入選擇模塊,將該音節所對應的候選漢字按字頻高低顯示在手機的屏幕上,用戶可用手機已有界面選擇所需漢字,每選中一個漢字後,該系統會自動回到等待單音節輸入狀態,步驟460;在步驟470中,系統提示「簡訊輸入完畢,發送還是保存?」,並進入發送/保存/發送並保存的菜單界面;如果用戶說「發送」,步驟480,該系統就會將簡訊立即發送,並將發送成功與否的狀態提示給用戶,步驟490,或者是用戶回答「保存」,步驟480,該系統就會將簡訊保存,並提示用戶,步驟490;最後,該系統返回到狀態A。
圖4示出了本發明語音手機上中文簡訊接收過程的流程圖。開始時手機處於狀態A,如果手機收到新簡訊,步驟500;系統提示「收到新信件,來自xxx」(xxx是電話薄中的人名或電話號碼),步驟510;用戶說「查看內容」,步驟520;系統對該指令時行識別分析後,利用語音合成功能朗讀簡訊內容,步驟530;用戶聽完簡訊內容後可以進行不同的操作刪除、保存或轉發,如果用戶說出指令「刪除」,步驟540a,系統提示「要刪除簡訊嗎?」,步驟550a,用戶說「是的」,則系統執行刪除簡訊的操作,步驟560a,並提示「簡訊已刪除」,步驟570a,再回到狀態A,而用戶說「不是」,則回到狀態A;如果用戶說出指令「轉發」,步驟540b,系統會詢問「請問轉發給誰?」,步驟550b,用戶說出想要發送的人名或電話,步驟560b,系統執行轉發簡訊的操作,步驟570b,然後進入狀態A;如果用戶說出指令「保存」,步驟540c,系統執行保存簡訊的操作,提示「簡訊已保存」,步驟550c,然後進入狀態A;在這個操作實例中,用戶可以完全通過語音來完成簡訊接收的處理過程,和原有交互方式相比,藉助語音提示與用戶交流,實現了免提免視。在用戶開車或類似情況下,該功能就顯得十分方便和有用。
圖5顯示了用語音交互實現在手機中修改電話簿的實例。開始時手機處於狀態A,如果用戶說出「修改電話」指令,步驟600;系統提示「請說姓名」,步驟610;用戶說「xx」,步驟620;系統切換到單呼音節識別模式,查找到該人的電話號碼,並提示「xx的原電話號碼是xxxxxxxx,請說出新的號碼」,步驟630;用戶說出(或通過按鍵輸入)新的電話號碼「xxxxxxxx」,步驟640;系統進行識別後,切換回命令詞條識別模式,並詢問「要修改xx的電話為xxxxxxxx嗎?」,步驟650;如果用戶說「是的」步驟660,系統執行修改電話的操作,提示「xx的電話已修改」,步驟670,然後進入狀態A;如果用戶說「不是」,步驟660,系統直接返回狀態A。很明顯,查詢、增添、刪除電話號碼的操作也可以通過語音交互模式來完成。除了增加的語音提示和識別功能外,原有的處理流程並沒有變化。
圖6中,開始時手機處於狀態A,用戶說「震動模式」或「鈴聲模式」,步驟700;系統識別出指令後即執行模式切換操作,步驟710;在手機屏幕上顯示模式切換狀態,並通過語音提示用戶「手機已切換到震動/鈴聲模式」,步驟720。對於該操作,用戶可在語音手機的任何狀態下說出想要的模式,口語系統將對用戶請求進行理解,判定為鈴聲或震動並將其設置成相應的模式。
圖7示出了用語音交互實現寫備忘錄的操作實例。開始時手機處於狀態A,用戶說「打開日曆」指令,步驟800;系統顯示日曆功能相應菜單,步驟810;用戶說「寫備忘錄」指令,步驟820,值得注意的是,也可以跳過前面的步驟而直接說「寫備忘錄」;系統切換到單音節識別模式,進入備忘錄編輯界面並提示「請說出內容」,步驟830;步驟840~860與圖3中的步驟440~460相同,此處不再重複;但用戶輸入備忘錄內容並按下「確認」鍵後,系統會提示「請設定時間」,步驟870;用戶設定為「下午3點10分」,步驟880;系統執行設定操作,並提示「時間設定在15點10分」,步驟890,返回狀態A。此時用戶仍可以通過手機的按鍵來修改設定的時間。
圖8顯示了用語音交互實現查看備忘錄操作的實例。用戶說「查看備忘錄」,步驟900;系統查找當前有無記錄,步驟910;如果無記錄,則系統提示「今天無事件」,步驟920a;如果有記錄,系統讀出「今天有事件有1、15點10分電話會議,……」等備忘錄上的內容,步驟920b。該操作實際上是用戶要求查看當天行程安排,系統則將已存信息朗讀並顯示出來。
對於其它的控制操作就不再一一詳細,本發明適用於控制手機的所有操作。此外,在上述人機互動過程中,本實施例中採用按鍵優先的方式。語音提示功能可以用後續的按鍵操作來中斷。因為在可以看到手機屏幕時,語音提示太長可能會使用戶感到厭煩。
語音輸入的引入將大大簡化手機控制操作的流程。通過對識別結果的理解,系統可以自動從一個狀態轉入另一個狀態而不需層層菜單的轉移。例如系統在日曆的狀態下,用戶可直接說「震動模式」,系統將自動理解該命令從而直接執行該操作。
此外,本發明採用漢字全音節的識別技術,結合音字轉換和輸入選擇模塊控制漢字的輸入,整個過程是串行完成的。這與同時利用其它一些方法輔助識別的手段是不同的,那些方法一般同時採用其它的輸入方式,比如手寫,再通過某種信息融合的方式,多種方式並行採用並輸出最後的漢字,顯然需要利用更多的系統資源,增添了額外的成本。而本發明的語音手機具有在現有資源下就能直接應用的便利。此外,在語音識別時,用戶完全可以直接說出想要輸入的漢字的音節,而不需要其它的輔助方法。
實施例二本實施例中的手機語音作業系統,不具有語音合成的功能,但能實現全音節的語音識別,接受非特定人的語音命令,並能用語音實現東方語言全音節的輸入。在系統構成上,是將圖1中的語言生成模式和語音合成模塊去掉,只通過普通手機現有的方式輸出,如鈴聲、音樂、震動等方式。在控制方法上,相對於圖2b,要取消其中與語音提示相關的控制。
此外,本實施例的語音識別部分還包括一個聲調識別模塊,用於在單音節識別模式下,接收語音輸入模塊10的數據,分幀處理後提取出語音信號的基頻,並根據整段語音的基頻變化識別出音調,然後將音調的識別結果輸出到音字轉換和選擇輸入模塊90中。在進行音字轉換和輸入選擇控制時,對於同一聲調的漢字,出現在手機屏幕上的次序仍是按照漢字使用頻率的高低排列的。對於其他聲調,即非識別出的那個聲調,則按照漢字使用頻率統一排序,列在該識別出的音調所對應的所有漢字之後。例如,用戶說第1音的「cai」時,如果沒有音調識別模塊,那麼在手機屏幕上顯示的漢字是才菜蔡採彩財材踩猜裁睬,而在本實施例中,給出的識別結果是1聲,那麼這時的手機屏幕上出現的漢字是「猜才菜蔡採彩財材踩裁睬」。
也可以根據音調識別的混淆度按照音調識別候選結果進行漢字出現次序的排序,同一聲調內部仍按照漢字使用頻率排序。假設給出的音調候選結果依次是1聲,4聲,3聲,2聲,那麼在上述實例中,屏幕上漢字的次序將是「猜菜蔡採彩踩睬才財材裁」,即按音調識別結果排序,同一音調對應有多個漢字時該音調內部按漢字出現頻率排序。聲調識別模塊的引入可以大大提高漢字在備選列表中出現順序的準確度,從而使漢字的輸入更快速。
此外,為了進一步提高語音識別的精度,針對特定人識別的語音進行識別總會獲得更好的精度。因此,本實施例在語音識別部分增加了一個語音自適應模塊,用於不斷自動學習手機使用者的話音的功能,從而使得語音作業系統的性能越來越好。該語音自適應模塊可以採用最大似然線性回歸MLLR方法、或最大後驗概率MAP方法,或是其它任何一種語音模型自適應方法。
本發明所提出的語音作業系統及其控制方法並不限於的中文語音手機的應用,而且適用於任何一種東方語言,比如日文、韓/朝鮮、蒙文等等,這類語言的特點是它無法通過鍵盤上的ASC字符直接表示,即它的輸入無法用現有的「qwert」鍵盤直接輸入,必須通過某種輸入法轉換完成;另外,均屬於單音節發音,對應於某一種或幾種文字表示符號,且發音種類有限。
本實施例中,是一種以日文語音作為作業系統的手機實施方案,其中所涉及的各模塊的組成與圖1中所述的模塊組成完全相同,只是其中的音字轉換和輸入選擇模塊90更為簡單,反映在控制過程上,其主要區別在於日文語音的輸入步驟,以及日文字的顯示步驟。由於日文的發音有五十音圖,其中每個發音對應於一個日文假名,因此日文假名輸入法不必選字,即音字可以一一對應,因此在手機屏幕上顯示識別結果的時候,將語音識別模塊的輸出日文字與其匹配概率高低依次顯示即可,而且通過一個鍵,例如「右鍵」就可以選擇到正確的日文假名,同時「左鍵」在輸入漢字時的功能也可以省去。另外有一點要說明的是,日文假名分為″平假名″和″片假名″兩種,區分它們可以通過類似於區分大小寫字母的方法加以實現,即通過單鍵即可實現兩種假名之間的切換。
此外,本實施例在漢字單字的詞典樹中加入「下一屏」、「第2個」等在漢字輸入狀態需要用到的一些簡單詞條,同時在漢字單音節識別模式中啟用連續識別引擎,即如果識別出第一個結果後,還有餘下的語音幀,則重新啟動一次新的識別過程,這樣就可以識別出「下一屏」,「第2個」等詞條,並執行相應的動作了,用戶可以通過這些指令,對屏幕上的漢字進行選擇或執行翻屏操作,而不必通過按鍵進行,實現了漢字輸入的免提功能,對於手持電話不便的殘疾人尤其方便。同時,也可以一次讀出電話號碼的所有位,系統也可以完成識別。
本實施例的新增模塊和功能也可以用在第一實施例中。
實施例三本實施例中的手機語音作業系統,不具有東方語言語音輸入功能,但能實現對非特定人的命令詞條的語音識別以及語音提示功能。在系統構成上,是將圖1中的音字轉換和輸入選擇模塊改為普通的用鍵盤或其它方法實現東方語言輸入的模塊。在控制方法上,相對於圖2b,取消其中關於漢字輸入和識別模式切換的相關控制即可。其它部分的組成和控制與實施例一相同。
該實施例也可以利用語音來發送簡訊,簡訊的內容直接採用拼音而不轉換成漢(或其它東方語言)字,對方雖然從屏幕上看不到內容,但通過提示語音可以了解。這就好象兩個人說話時並不需要寫字,這種功能對於盲人來說是十分有益的。
實施例四本實施例中的手機語音作業系統,不具有東方語言語音輸入功能和語音提示功能,但能實現漢字全音節的識別,識別對非特定人的語音命令。在系統構成上,是將圖1中的音字轉換和輸入選擇模塊改為普通的用鍵盤或其它方法實現東方語言輸入的模塊,並取消了語言生成和語音合成模塊。在控制方法上,相對於圖2b,要取消其中的東方語言語音輸入和語音提示的相關控制。其它部分的組成和控制與實施例一相同。
實施例五本實施例中的手機語音作業系統,不具有東方語言語音輸入功能和漢字全音節識別的功能,但能夠進行全音節的語音提示。在系統構成上,將圖1中的語音識別部分取消,將音字轉換和輸入選擇模塊改為普通的用鍵盤或其它方法實現東方語言輸入的模塊。在控制方法上,相對於圖2b,要取消其中的語音識別和漢字語音輸入的相關控制。其它部分的組成和控制與實施例一相同。
當然,本發明的應用並非僅僅限於此,根據本發明的主要構思,本領域普通技術人員可以產生多種相類似的或等價的變化,例如,本發明不僅可以應有於手機,對於所有的可攜式數字移動通訊設備,如PDA等,均具有突出的應用效果。除了本發明第一實施例的二種詞典樹外,詞典樹可以根據需要組成若干種,以有利於識別的速度和精度。本發明的各模塊間的組合方式也不限於以上幾種,因此本發明的保護範圍應以權利要求書所示的內容為準。
權利要求
1.一種具有語音作業系統的可攜式數字移動通訊設備,其特徵在於在所述作業系統中還包括一嵌入式語音識別裝置,所述裝置進一步包括一語音輸入模塊,用於將輸入的東方語言的語音模擬信號變換為數位訊號;一特徵提取/壓縮模塊,用於對該數位訊號進行分幀處理,提取每一幀語音的特徵參數得到特徵適量序列,利用特徵碼本對所述特徵矢量序列進行量化編碼,得到相應的特徵碼字序列;一語音識別模塊,用於接收上述特徵碼字序列,進行解碼運算找到最匹配的語音模型,再輸出該模型對應的識別結果;一意圖分析模塊,用於對輸入信息的意圖進行分析,將其表示為程序內部的一種語義符號,並輸出至對話管理/控制模塊;一對話管理/控制模塊,用於接收所述意圖分析模塊輸出的語義符號,結合所述設備當前狀態,判斷出所述設備應採取的控制動作,並予以執行。
2.如權利要求1所述的可攜式數字移動通訊設備,其特點在於進一步包括一音字轉換和輸入選擇模塊,用於將拼音形式的識別結果轉換成備選漢字,通過所述設備顯示,根據用戶輸入選擇所需的漢字。
3.如權利要求1或2所述的可攜式數字移動通訊設備,其特徵在於進一步包括一語言生成模塊,用於接收所述對話管理/控制模塊輸出的信息,自動調用提示詞表中要提示給用戶的文字信息,輸出到語音合成模塊;一語音合成模塊,用於根據接收所述文字信息,通過處理得到該文字所對應語音信號的數字表示並輸出;一語音輸出模塊,用於接收所述語音合成模塊輸出的語音信號的數字表示,並通過所述設備上的語音輸出裝置將聲音傳到用戶。
4.如權利要求1所述的可攜式數字移動通訊設備,其特徵在於所述嵌入式語音識別與合成裝置是在30MIPS以內和1M內存空間中實現的。
5.如權利要求1所述的可攜式數字移動通訊設備,其特徵在於所述語音識別模塊,進一步包括一概率表,用於存儲特徵碼本中每一個特徵碼字對應於高斯碼本中每個碼字的概率值;一識別單元,用於將所述碼字序列通過解碼運算找到與其最為匹配的語音模型,最終輸出與所述輸入語音最相似的識別結果,運算中對有效語音特徵碼字矢量序列的各個碼字,直接從概率表中查到其在搜索路徑上的觀察概率以及若干詞典樹。
6.如權利要求5所述的可攜式數字移動通訊設備,其特徵在於所述特徵碼本和高斯碼本採用的壓縮算法是在K-means聚類算法中增加了對包含矢量數小於某預設值的子集合的中心矢量刪除,再將平均距離度量最大的子集合分裂成兩個新的子集合的步驟。
7.如權利要求1所述的可攜式數字移動通訊設備,其特徵在於所述解碼運算部件進一步包括一碼字序列過濾部件,用於去掉輸入碼序列中對解碼運算冗餘的碼字,從而加速解碼運算的速度;一搜索路逕自適應剪校部件,用於根據局部搜索路徑的最大似然概率,動態調整剪枝閥值,以便有效去掉對解碼運算無用的搜索路徑,從而加速解碼速度。
8.如權利要求5所述的可攜式數字移動通訊設備,其特徵在於所述詞典樹包括主要由東方語言單字所組成的詞典樹,用於用語音實現東方語言的輸入時,在解碼運算中使用;以及主要由命令詞條、存儲信息及/或常用短詞組成的詞典樹,用於非語言輸入時,在解碼運算中使用。
9.如權利要求2所述的可攜式數字移動通訊設備,其特徵在於所述音字轉換和輸入選擇模塊在所述設備屏幕上顯示的備選的文字是漢字,所述漢字顯示次序是按照漢字使用頻率的高低排列的;或者所述屏幕上備選的文字是日文假名,所述假名顯示次序是按照其識別結果的匹配概率的高低排列的。
10.如權利要求1所述的可攜式數字移動通訊設備,其特徵在於進一步包括一聲調識別模塊,用於從來自所述語音輸入模塊的語音數據中提取所述語音信號的基頻,根據整段語音的基頻變化識別出音調,並將所述音調輸出到所述音字轉換和輸入選擇模塊。
11.如權利要求1所述的可攜式數字移動通訊設備,其特徵在於所述語義分析模塊連接一識別詞表,所述語言生成模塊連接一提示詞表,該兩詞表均可通過一詞條定製模塊對其進行個性化的定製。
12.如權利要求1所述的可攜式數字移動通訊設備,其特徵在於所述語音合成模塊採用了文本和多音字處理單元和句音停頓技術來提高合成語音的可懂度和自然性。
13.一種數字移動通訊設備的語音操作控制方法,包括以下步驟語音輸入步驟,將輸入的東方語言的語音模擬信號變換為數位訊號;語音識別步驟,對所述數位訊號進行分幀處理,提取每一幀語音的特徵參數得到特徵矢量序列,利用特徵碼本對所述特徵矢量序列進行量化編碼,得到相應的特徵碼字序列,再進行解碼運算查找最匹配的語音模型,輸出該模型對應的識別結果;語義分析步驟,對識別結果的意圖進行分析,將其表示為程序內部的一種語義符號並輸出;以及對話管理/控制步驟,接收所述語義符號,結合設備當前狀態判斷出所述設備應採取的控制動作,並予以執行。
14.如權利要求13所述的控制方法,其特徵在於還進一步包括,音字轉換和輸入選擇步驟當對話管理/控制步驟中判斷的結果為文字輸入時,將拼音形式的識別結果轉換成備選漢字,通過所述設備顯示,並根據用戶輸入選擇所需的漢字。
15.如權利要求13或14所述的控制方法,其特徵在於在對話管理/控制步驟中,系統進一步生成提示用戶的信息文本,並對生成的信息文本合成出要提示用戶的語音信號的數字表示,通過語音輸出裝置播放給用戶。
16.如權利要求13所述的控制方法,其特徵在於,所述語音識別步驟中,在查找與所述特徵碼字序列最為匹配的語音模型時,對有效語音特徵碼字矢量序列的各個碼字,是直接從概率表中查到其在搜索路徑上的觀察概率。
17.如權利要求14所述的控制方法,其特徵在於所述音字轉換和輸入選擇步驟中,在所述屏幕上是按照漢字使用頻率的高低排列的;或者是在所述屏幕上按照識別結果的匹配概率的高低顯示備選日文假名。
18.如權利要求13或14上述的控制方法,其特徵在於所述語音識別步驟中,還從所述數位訊號中提取所述語音信號的基頻,根據整段語音的基頻變化識別出音調,並在所述屏幕上顯示備選漢字的步驟中,採用音調識別結果和漢字使用頻率/常用詞詞頻相結合的排序方法。
19.如權利要求13或14所述的控制方法,其特徵在於在語音合成時採用了波形拼接和語音壓縮算法,並採用了文本和漢字多音字處理和句音停頓技術。
20.如權利要求13或14所述的控制方法,其特徵在於,通過設備進行文字輸入時,所述語音作業系統採用單音節識別模式,解碼時啟用單字詞典樹,得到拼音識別結果進行音字轉換後顯示在設備屏幕上供用戶選擇;不進行文字輸入時,所述語音作業系統採用詞條識別模式,解碼時啟用詞條詞典樹,結合識別結果的語義和系統當前狀態控制所述設備完成相應的控制動作。
21.如權利要求13或14所述的控制方法,其特徵在於在所述語音識別步驟中啟動連續識別引擎,完成一次識別後如果還有未識別的語音幀,則重新開始一次識別過程。
22.如權利要求13或14所述的控制方法,其特徵在於所述語音操作和按鍵操作可以並存,並且按鍵操作優先。
全文摘要
本發明公開一種具有語音作業系統的可攜式數字移動通訊設備及語音操作控制方法,在進行語音識別時是利用特徵碼本對語音的特徵矢量序列進行量化編碼,而在解碼運算中對有效語音特徵碼字矢量序列的各個碼字,是直接從概率表中查到其在搜索路徑上的觀察概率;採用本發明,可以在手機中實現全音節的語音識別,無需訓練,並可實現漢字語音輸入和全音節的語音提示,系統具有語義分析、對話管理和語言生成模塊,可以處理複雜的對話過程並產生靈活的提示信息反饋給用戶,本發明還可由用戶進行語音命令和提示內容的定製。
文檔編號G10L15/00GK1703923SQ200380101122
公開日2005年11月30日 申請日期2003年10月17日 優先權日2002年10月18日
發明者劉建, 顏永紅, 庹凌雲, 孫寶海, 潘接林, 韓疆, 苗路廣 申請人:中國科學院聲學研究所, 北京中科信利技術有限公司