時間:2022-05-04 23:16:29
引言:易發表網憑借豐富的文秘實踐,為您精心挑選了九篇語音識別系統范例。如需獲取更多原創內容,可隨時聯系我們的客服老師。
近年來國內教育信息化趨勢更加明顯,英語教學活動建立信息化平臺是師生所需,改變了早期英語課堂模式的不足之處。語音識別是計算機翻譯軟件不可缺少的一部分,如圖1,主要針對不同語言進行識別處理,幫助學生快速地理解英語知識內涵。語音識別技術主要包括:特征提取技術、模式匹配技術、模型訓練技術等三大技術,也是系統設計需考慮的重點。
1)特征提取技術。一般來說,語音識別系統輔助功能涉及到收錄、處理、傳遞等三個環節,這也是語音識別系統設計的關鍵所在。計算機語言與自然語言之間存在極大的差異性,如何準確識別兩種語言的差異性,這是翻譯軟件識別時必須解決的問題。特征提取技術是語音識別系統的基本構成,主要負責對英語語言特征進行提取,向翻譯器及時提供準確的語言信號,提高計算機翻譯工作的準確系數。
2)模式匹配技術。語音識別系統要匹配對應的功能模塊,以輔助師生在短時間內翻譯出語言含義,避免人工翻譯語言失誤帶來的不便。模式匹配技術采用智能識別器,由翻譯器錄入語音之后自主化識別、分析,減小了人工翻譯語句的難度。例如,計算機軟件建立匹配模型,按照英語字、詞、句等結構形式,自動選擇相配套的翻譯模式,執行程序命令即可獲得最終的語言結果,給予學生語音識別方面的幫助。
3)模型訓練技術。設計語音識別系統是為了實現教育信息化,幫助教師解決英語課堂教學中遇到的翻譯難題,加深學生們對英語知識的理解能力。語音識別結束之后,翻譯器會自動執行模擬訓練操作,為學生創建虛擬化的語音訓練平臺,這也是軟件識別系統比較實用的功能。模擬訓練技術采用人機一體化設計思想,把翻譯器、語音識別器等組合起來執行訓練方式,快速地識別、判斷英語發聲水平,指導學生調整語音方式。
2英語翻譯器語音識別系統設計及應用
英語翻譯器是現代化教學必備的操作工具,教師與學生借助翻譯器功能可準確地理解英語含義,這對語音識別系統設計提出了更多要求。筆者認為,設計語音識別系統要考慮翻譯器具體的工作流程,事先編排一套符合翻譯軟件工作的方案,如圖2,從而提高人機語言轉換速率。語音識別系統設計及應用情況:
1)識別模塊。語音識別方法主要是模式匹配法,根據不同翻譯要求進行匹配處理,實現英語翻譯的精準性。一是在訓練階段,用戶將詞匯表中的每一詞依次說一遍,并且將其特征矢量作為模板存入模板庫;二是在識別階段,將輸入語音的特征矢量依次與模板庫中的每個模板進行相似度比較,將相似度最高者作為識別結果輸出。
2)前端模塊。前端處理是指在特征提取之前,先對原始語音進行處理,這是預處理操作的主要作用。語音識別系統常受到外界干擾而降低了翻譯的準確性,設計前段處理模塊可消除部分噪聲和不同說話人帶來的影響,使處理后的信號更能反映語音的本質特征。例如,比較常用的前端處理有端點檢測和語音增強。
3)聲學模塊。語音識別系統的模型通常由聲學模型和語言模型兩部分組成,分別對應于語音到音節概率的計算和音節到字概率的計算。聲學特征的提取與選擇是語音識別的一個重要環節,這一步驟直接關系到翻譯器的工作效能,對英語語音識別與學習有很大的影響。因此,聲學模塊要注重人性化設計,語音設定盡可能符合自然語言特點。
4)搜索模塊。英語語音識別中的搜索,就是尋找一個詞模型序列以描述輸入語音信號,從而得到詞解碼序列。本次所設計的搜索模塊中,其前端是一個語音識別器,識別產生的N-best候選或詞候選網格,由語法分析器進行分析獲取語義信息,再由對話管理器確定應答信息,由語音合成器輸出。由于目前的系統往往詞匯量有限,也可以用提取關鍵詞的方法來獲取語義信息。
5)執行模塊。實際應用中,語言識別系統憑借執行模塊完成操作,對英語語言識別方式進行優化擇取,以最佳狀態完成英語翻譯工作。目前,就英語教學中使用情況,聽寫及、對話系統等是語音識別執行的兩種方式,充分展現了翻譯器在語言轉換方面的應用功能。(1)聽寫機。大詞匯量、非特定人、連續語音識別系統通常稱為聽寫機。其架構就是建立在前述聲學模型和語言模型基礎上的HMM拓撲結構。訓練時對每個基元用前向后向算法獲得模型參數,識別時,將基元串接成詞,詞間加上靜音模型并引入語言模型作為詞間轉移概率,形成循環結構,用Viterbi算法進行解碼。(2)對話系統。用于實現人機口語對話的系統稱為對話系統,英語翻譯器中完成了人機對話、語言轉換等工作,全面提升了翻譯器操控的性能系數。受目前技術所限,對話系統往往是面向一個狹窄領域、詞匯量有限的系統,其題材有旅游查詢、訂票、數據庫檢索等,隨著語音數據庫資源的優化配置,對話系統功能將全面升級。
3翻譯器使用注意事項
語音識別系統就是讓機器通過識別和理解過程,把語音信號轉變為相應的文本或命令的高科技。隨著高校教學信息化建設時期到來,計算機軟件輔助教學活動是一種先進的模式,徹底改變了傳統人工教學模式的不足。翻譯軟件采用數字化元器件為硬件平臺,配合遠程互聯網建立多元化傳輸路徑,滿足了英語翻譯數據處理與傳輸的應用要求。但是,未來英語教學內容越來越復雜,翻譯器語音識別系統承載的數據范圍更廣,學校必須實施更新翻譯軟件產品,才能進一步提升英語智能化翻譯水平。
4結論
關鍵詞:語音識別;動態時間規整(DTW);數字信號處理器(DSP)
1 引言
語音識別按不同的角度有以下幾種分類方法:從所要識別的單位,有孤立詞識別、音素識別、音節識別、孤立句識別、連續語音識別和理解。目前已進入識別的語音識別系統是單詞識別。以幾百個單詞為限定識別對象。從識別的詞匯量來分。有小詞匯(10-50個)、中詞匯(50-200個)、大詞匯(200以上)等。從講話人的范圍來分。有單個特定講話人、多講話人和與講話者者無關。特定講話人比較簡單,能夠得到較高的識別率。后兩者難度較大,不容易得到高的識別率。 從識別的方法分。有模塊匹配法、隨機模型法和概率語法分析法。這三種都屬于統計模式識別方法。
2 系統硬件及組成
2.1 系統概述
語音識別系統的典型實現方案如圖1所示。輸入的模擬語音信號首先要進行預處理,語音信號經過預處理后,接下來重要的一環就是特征參數提取,其目的是從語音波形中提取出隨時間變化的語音特征序列。然后建立聲學模型,在識別的時候將輸入的語音特征同聲學模型進行比較,得到最佳的識別結果。
2.2 硬件構成
本文采用DSP芯片為核心(圖2所示),系統包括直接雙訪問快速SRAM、一路ADC/一路DAC及相應的模擬信號放大器和抗混疊濾波器。外部只需擴展FLASH存儲器、電源模塊等少量電路即可構成完整系統應用。
2.3 系統主要功能模塊構成
語音處理模塊采用TI TMS320VC5402, TMS320VC5402含4 KB的片內ROM和16 KB的雙存取RAM,一個HPI(HostPortInterface)接口,二個多通道緩沖單口MCBSP(Multi-Channel Buffered SerialPort),單周期指令執行時間10 ns,帶有符合IEEE1149.1標準的JTAG邊界掃描仿真邏輯。語音輸入、輸出的模擬前端采用TI公司的TLC320ADSOC,它是一款集成ADC和DAC于一體的模擬接口電路,并且與DSP接口簡單,性能高、功耗低,已成為當前語音處理的主流產品。16位數據結構,音頻采樣頻率為2~22.05 kHz,內含抗混疊濾波器和重構濾波器的模擬接口芯片,還有一個能與許多DSP芯片相連的同步串行通信接口。TLC320AD50C片內還包括一個定時器(調整采樣率和幀同步延時)和控制器(調整編程放大增益、鎖相環PLL、主從模式)。TLC320AD50C與TMS320VC5402的硬件連接,如圖3所示。
3 結論
本文以TMS320VC5402芯片為核心的系統硬件設計迸行了研究,通過TLC320AD50C對語音信號進行A/D轉換,通過TMS320VC5402對語音信號“0”、“1”、“2”進行訓練和識別,并由對于燈LED0、LED1、LED2亮來顯示結果是否正確;該系統核心識別算法采用動態時間規整(DTW)算法,主要流程包括預處理、端點檢測、提取特征值、模式匹配和模板訓練,取得了很好的識別效果。
參考文獻
[1] 朱銘鋯, 趙勇, 甘泉. DSP應用系統設計 [M].北京:電子工業出版社,2002.
[2] 郭華. 自適應濾波算法及應用研究[D].蘭州:西北師范大學,2007.
[3] 張雄偉..DSP芯片的原理與開發應用[M].北京:電子工業出版社,2009.
[4] 張德豐. 數字圖象處理(MATLAB版)[M].北京:人民郵電出版社,2009.
作者簡介
王宇,邵陽學院魏源國際學院電子科學與技術專業學生。
自上世紀中期以來,語音教學在語言教學中逐步受到重視,教育部《高等學校英語專業英語教學大綱》對學生的語音能力提出明確的要求,即要求發音正確,語調比較自然,以此目標指導語音教學。語音教學隨同外語教學理論、模式的演變也在經歷著一系列的變革,教學重點從初期的音素和單詞發音,發展到目前著重超切分音,如中信、節奏和語調等(羅立勝,2002)。而語言教學方式也由機械的模仿、重復、跟讀、單音糾正發展到今天交際性的練習和自主練習。但是在對新生的語音情況調查中發現,往往這種交際性練習和自主練習存在以下幾方面問題:學生水平參差不齊,受母語影響程度不一,大部分中學學習過英語語音但不系統,也不夠重視。中學教師因受應試教育的影響,少有時間教授語音發音,經調查,80%的學生稱中學學習過程中惟一的語音輸入來自英語教師。僅有30%的學生稱聽過磁帶、看過英文電影。語音學習雙層面的脫節性和去語境化學習97%學生因高考需要背記過國際音標及其在英語單詞中的讀音,但80%的學生表示沒有進行過系統的語音訓練,缺乏語境化教學。自主語音學習效果欠佳,孤立的語音練習很難在實際語言交流中應用。目前,語音課上教師主要幫助學生一對一,對比模仿練習發音,縮小學生在語音認知上母語和目標語之間的差異。課后學生僅能通過模仿有聲資料提高語音。標準程度往往由學生自行判斷,由于學生聽說能力的差異,自行判斷發音是否準確是不確定的。本文試圖以現代的語音教學技術Reading Assistant語音識別系統的引入探討語音教學模式的改革。
二、對Reading Assistant語音識別系統有效手段的分析
Reading Assistant語言學習系統由美國科學學習公司研發的,以語言學習理論和過程為基礎,旨在通過朗讀提高語音、詞匯、語法等語言綜合技能即“以讀促學”,筆者所在西安外國語大學英文學院于2008年9月開始使用該系統,擁有600個賬號,僅供一年級新生使用。目前主要用于配合語音課程,輔助完善語音自主學習。根據上述語音教學中存在的問題和應該堅持的教學原則,和以下Reading Assistant的教學特點作一對照,就不難理解該語音識別系統對英語語音學習及語言學習的可行性了。
1.根據Reading Assistant(語音識別)系統的(以下簡稱語音識別)的設計。實行學生每人擁有一個使用賬號,便于展開個性化的、有針對性的指導。滿足不同層次學生的要求,在語音教學中眾多語言教師發現模仿是提高語音的最有效方法之一,但是模仿什么語音材料,模仿哪種語音,怎樣模仿和自主學習能否模仿后是否準確仍有很大的困難,在使用語音識別系統時,學生首先要根據其設定的不同級別,和原有的測試級別自行測試,從精選的不同層次的150篇文章中選擇適合自己水平和類別的進行朗讀。
每次朗讀后根據語音發音有成績記錄,每篇文章可以朗讀10次。語音識別系統是建立在建構主意語音教學模式的理論智商,學生是學習的主體,不是被動地接受知識,而是主動地在原有的知識體系中,通過不斷地積極實踐,構建自己的新的知識和經驗。因此在這種長期的語音練習過程中,學生可以根據自己的學習需要“建構”語音學習材料,提高自主學習能力。
2.導入語音練習的語境化,模仿對象的本土化。在實際交往活動中,聽、說、讀、寫不是以孤立的因素和單詞為單位進行思想交流的,取而代之的是以綜合的句子和更高層次的話語單位進行的,孤立的因素和單詞的發音在綜合運用中會產生很大的變異,如連讀、失去爆破、弱讀等影響,因此,語音識別系統通過不同類別的文章(包括科技、生活、文藝、人物傳記)等等構建不同的語境,除了傳統意義對話中包含的語境外,文章中還涉及各個年齡段,男聲、女聲等讀音。錄音及文章內容的選擇全部出自母語國家。確保模仿對象發音的準確性。
3.判讀過程的準確性和可調節性。根據語音識別系統讀音匹配程度的設計,學生在閱讀過程中分別會出現完全正確發音、誤讀、不會讀、不準確等情況,并以不同顏色標注。每次閱讀完成后,學生可以查看有哪些單詞不準確。開始閱讀后,每讀一個單詞就會有不同顏色顯示。而在本身閱讀中如果出現嚴重的錯讀,該識別系統會停止前進,并隨機開始正確讀音,要求練習者跟讀。教師也可以根據自己的界面監控學生朗讀過程,隨時抽聽不同學生的朗讀情況。過度的糾錯會挫傷部分水平較低學生的學習積極性,因此在開始學習階段教師可以根據學生各個層次的學習調整不同的匹配度以提高學生學習興趣。
三、學生對語音識別使用情況及存在的問題
經過對英文學院2008級540名學生一學年使用情況的調查,86%的學生表示自己經常去RA實驗室,80%的學生認為RA有助于閱讀水平的提高,95%的學生認為RA對語音語調有幫助,90%的學生認為RA對聽力有幫助,85%的學生認為RA對整體學習有提高。對于語音識別系統進一步的學習和開發,學生表示除英語專業學生初期應用在語音教學以外,還應考慮繼續輔助閱讀、寫作等課程。而語音識別系統中文章內容選擇可以適當考慮本土化,多針對中國學生發音中存在的問題進一步涉及文章和練習。
綜上所述,外語語音教學目標不再是僵硬的單音、音素教學,而是融合更多語言交際任務的綜合教學,而隨著計算機、數字化和語音識別技術的發展,充分利用現代教育技術不僅可以豐富教學內容,更重要的是注意到學生的情感因素,培養學生自主學習能力,讓語音教學改變以往依賴性、單一性、枯燥性,使其更具創造性,讓以讀促學全方位體現在英語學習中。
參考文獻
[1]羅立勝等.英語語音教學的回顧及對目前英語語音教學的幾點意見.外語與外語教學,2002(10).
[2]顧佩婭等.基于構建主義的計算機輔助項目教學實踐.外語與外語教學,2003(7).
[3]陳愛勤,石春熙.英語專業新生語音教學的語境論研究.長春師范學院學報(人文社會科學版),2008(1).
關鍵詞 空間增強;譜減法;連續語音識別;自適應;雙通道信號
中圖分類號 TP393文獻標識碼 A文章編號 10002537(2014)03006306
雖然自動語音識別(ASR)系統的研究已投入了大量的人員和資金,但是它還不能夠像電話一樣,作為日常生活的一部分完整地融入到人們的生活當中.其中一個最主要的問題就是自動語音識別系統在噪聲和混響環境下,特別是二者混合環境下的識別性能過于低下[1].在大多數情況下,為獲得可接受的識別性能,只能依賴于麥克風陣列的使用,即通過使用大量按照特定位置放置的麥克風來獲取語音輸入和空間信息.大量的ASR研究,使用麥克風陣列得到方向增益,以改善噪聲與混響環境中獲取信號的質量;采用模式識別技術中的譜減法來消除噪聲和處理語音訓練集與測試集不匹配問題[2].
在日常應用中,普通用戶既不可能隨身攜帶麥克風陣列也不可能精確地放置它們.目前,日常使用的麥克風是與雙通道耳機相對應的,它能得到雙通道語音信號,卻不能得到復雜的空間信息.如果依然采用傳統的信號增強方法(例如廣義旁瓣抵消技術)來處理雙通道信號,以作為語音識別系統的預處理端,那么噪聲的消除反而會帶來無法接受的語音失真.
譜減法[3]作為另一種消除噪聲的技術,可以不依賴麥克風陣列獲取輸入信號,但是卻存在三大缺點:(1)噪聲估計誤差過大導致噪聲消除時語音失真;(2)增強后的語音中含有明顯的“音樂噪聲”;(3)混響未被處理.
為解決上述問題,本文基于雙聲道語音信號簡單的空間特性,綜合使用改進的廣義旁瓣抵消空間增強技術和改進的譜減法技術作為語音識別系統的噪聲消除和信號放大的預處理端,并基于HTK開發工具設計一個識別性能優異的語音識別系統.
1 系統描述
圖1 系統結構
Fig.1 System structure
圖1為本系統的整體構架.它由空間增強、譜減法模塊和自動語音識別模塊3個主要部分構成.
1.1 空間增強模塊
因為空間線索是語音識別的主要部分和遠場麥克風語音識別的組織焦點,在該ASR系統中,采用PASCAL “CHiME”[4]組織提供的雙通道含噪語音信號,利用該信號簡單的空間特性可以得到表現優異的噪聲估計.
有許多經典的使用麥克風陣列的方法來放大目標信號,例如通過延遲求和方式的波束形成,自適應噪聲消除(ANC)以及獨立成分分析(ICA).它們使用麥克風陣列得到方向增益,以改善在噪聲與混響環境中獲取信號的質量.
1.2 噪聲消除模塊
通常的ASR系統在處理含噪信號時性能大幅度下降,因此,噪音消除是該系統中常見且必須的組成部分.當前主流的噪聲消除技術可以分為3大部分.(1)使用時域濾波技術,例如維納濾波和自適應濾波;(2)嘗試還原原始語音譜的譜還原技術,例如譜減法[5]和參數減法;(3)為增強語音結構,有許多基于語音模型的噪聲消除技術,例如基于諧波模型的噪聲消除.然而,使用這些技術來獲得噪聲衰減和信噪比的改善,往往會造成語音失真.通常,越干凈的噪聲消除會導致越嚴重的語音失真,因此,研究設計一個針對復雜聲學環境的ASR系統,在語音失真和噪聲消除之間尋找一個平衡點,是非常重要的工作.
1.3 識別系統自適應
通過一些經典的空間濾波和噪聲消除技術來處理麥克風陣列在真實環境中獲取的聲音信號,較直接采集含噪聲音,具有更好的聽感知質量.但是無論系統設計多么完備,獲得的加強聲音中依然會有噪聲殘留和語音失真的問題存在,它們能被正常人輕易的接受和識別,但是目前的ASR系統卻不具備這樣的能力.當前幾乎所有的ASR系統都采用模式識別技術,當測試數據集接近訓練數據集時,能夠得到非常高的識別精確度.但是噪聲殘留和語音失真會導致測試數據集完全不同于“干凈”的訓練數據集,訓練和測試不匹配的問題會直接導致ASR系統識別率的降低.
為解決這些問題,前人提出許多的方法,例如模型再訓練和自適應,特征變換和歸一化[67],建立環境模型和模型特征一體化技術將之使用在自動語音識別模塊上,能起到良好的效果.
綜合考慮到對上面所述三部分的分析,所有的模塊都應該整合為一體,只有通過良好的語音信號預處理和完善的識別系統自適應,才能構架一個更優異性能的ASR系統.
2 系統設計
本文提出一個簡潔而具有高魯棒性的針對CHiME問題的ASR系統.首先,依據雙通道信號的空間信息增強它們,然后采用改進的譜減法獲得增強信號,作為ASR系統的輸入,最終得到識別結果和關鍵詞準確率.
2.1 改進的空間增強
由于存在混響問題,使用傳統方法得到雙通道信號的空間信息的有效內容非常困難.另外,如果采用傳統的信號增強方法,例如基于廣義旁瓣相消(GSC) 的波束成型,作為ASR系統的前端,那么噪音消除會帶來語音失真[8],會極大地降低ASR系統的識別性能.語音失真是由GSC多路輸入抵消器(MC)的窄帶自適應濾波器導致的,它既無法良好地消除噪聲,同時還消耗昂貴的計算資源.
圖2 空間增強
Fig.2 Spatial enhancement
本ASR系統的前端,利用雙通道語音信號的優勢,移除了典型GSC里的MC模型,使得在空間濾波的同時盡量避免語音失真和降低計算負擔(圖2).該模塊的主要任務是提取參考噪聲,而不再進行噪聲消除.
4 結論
本文針對語音識別這一交叉性強的學科,打破傳統的語音識別系統局限于利用有限的技術,不斷挖掘技術潛力,來達到提高性能的研究模式,提出了一種全新的綜合性構架,并取得了實質性的成效;考慮到人類聽覺的生理情況,結合空間增強層得出的無目標語言的參考噪聲,對譜減法模塊做了積極的改變.將去除噪聲操作從空間增強層移動到了效率更高的譜減法層,將噪聲估計移動到空間增強層,使得整個系統的分工更加明確,以降低耦合,提高魯棒性;使用了倒譜均值歸一化實現標準39維梅爾倒頻譜系數,為語音識別模塊加入基于最大后驗概率的自適應訓練,提高了訓練效率和系統整體性能.
參考文獻:
[1] 宋志章,馬 麗,劉省非,等.混合語音識別模型的設計與仿真研究[J].計算機仿真, 2012,29 (5):152155.
[2] HIRSCH H G, PEARCE D. The aurora experimental framework for the performance evaluation of speech recognition systems under noisy conditions[C]//ASR2000Automatic Speech Recognition: Challenges for the new Millenium ISCA Tutorial and Research Workshop (ITRW). Paris, France, 2000,9:1820.
[3] 張 滿,陶 亮,周 健.基于實值離散Cabor變換的譜減法語音增強[J].計算機工程與應用, 2012,48(29):109113.
[4] BARKER J, VINCENT E, MA N, et al. The PASCAL CHiME speech separation and recognition challenge[J]. Computer Speech Language, 2013,27(3):621633.
[5] BOLL S. Suppression of acoustic noise in speech using spectral subtraction[J]. Speech and Signal Processing, IEEE Transactions, 1979,27(2):113120.
[6] HERMANSKY H, MORGAN N. RASTA processing of speech[J]. Speech and Audio Processing, IEEE Transactions, 1994,2(4):578589.
[7] CHEN C P, BILMES J, ELLIS D P W. Speech feature smoothing for robust ASR[C]//2005 IEEE International Conference on Acoustics, Speech, and Signal Processing: Proceedings: March 1823, 2005.
[8] BRANDSTEIN, MICHAEL, DARREN WARD. Microphone arrays: signal processing techniques and applications[M]. New York: Springer, 1996:2075.
[9] KAUPPINEN I, ROTH K. Improved noise reduction in audio signals using spectral resolution enhancement with timedomain signal extrapolation[J]. Speech and Audio Processing, IEEE Transactions, 2005,13(6):12101216.
關鍵詞:語音識別;數字信號處理器;美爾頻率倒譜系數;動態時間規整
中圖分類號:TP319 文獻標識碼:A 文章編號:2095-1302(2012)09-0014-02
Design of voice recognition system based on TMS320C6713
XU Fei-yan1, CHEN Tao2, SUN Xu3, FANG Zong-liang1, LI Li-rong1
(1. Department 2, Anti-Chemical Institute, Beijing 102205, China;
2. Beijing Research & Development Center of Xiamen Jiuhua Communications Equipment Factory, Beijing 100083, China;
3. Chengdu University of Technology, Chengdu 610059,China)
Abstract: Taking the TMS320C6713DSP with floating-point functions produced by Texas Instruments chip as the system core processor and the MSP430 microcontroller as a peripheral controller, a real-time speech recognition system is designed in the paper. The kernel algorithm for the system uses Mel-frequency cepstral coefficients as feature parameters for feature extraction and dynamic time warping (DTW) algorithm for pattern matching. Programming and debugging of the system indicate that the system has good flexibility and real-time capability and improves the performance in noise immunity, robustness and recognition rates. In many areas, it has a practical reference value.
Keywords: speech recognition; digital signal processing; Mel-frequency cepstral coefficients; dynamic time warping
0 引 言
語音識別[1]是一種最為理想的人機通信方式。隨著計算機技術的進步,語音識別技術已經逐漸應用于控制、通信、消費等行業[2]。但是,語音識別系統在商品化的進程中還存在著諸如識別速度、系統魯棒性以及更高的識別率等具體問題。如何提高語音識別系統的這些性能,使系統更快、更穩定地工作是目前研究的重點。本文正是基于這種思想,通過選用德州儀器公司帶浮點功能的DSP芯片TMS320C6713(主頻為200 MHz)作為語音信號處理的核心處理器,同時結合MSP430單片機作為控制器共同構建硬件系統, 以美爾頻率倒譜系數作為語音信號特征參數,結合動態時間規整孤立詞識別算法進行模式匹配,設計了一種具有良好實時性和高識別率及魯棒性的語音識別系統。
1 系統硬件設計
本設計的整個硬件系統是以DSP為核心電路對語音信號進行采集和處理,再經過A/D轉換電路把模擬語音信號轉換成數字語音信號,然后送入DSP芯片進行匹配識別,最后將識別后的結果通過單片機控制模塊外接的兩個紅綠顏色的二極管進行處理表示,其中紅色表示拒絕命令,綠色表示接受命令。系統的硬件平臺主要由DSP系統核心處理模塊、語音信號采集模塊、單片機控制模塊、外擴存儲器模塊和電路等幾個模塊構成。系統的硬件設計總體方案框圖如圖1所示。
1.1 DSP系統核心處理模塊
作為系統的核心模塊DSP芯片采用TMS320C6713,該芯片的主頻可達200 MHz。這是TI公司推出的一種新型的浮點DSP芯片,是繼定點DSP芯片TMS320C62X系列后開發的。該芯片的內部結構在TMS320C62X的基礎上進行了改進,內部同樣集成了多個功能單元,可同時執行8條指令,其運算能力可達1G FLOPS。片內具有豐富的外設,如EDMA、EMIF、McBSP、HPI、GPIO等[4]。
TMS320C6713 以其出色的運算能力、高效的指令集、智能外設、大容量的片內存儲器和大范圍的尋址能力,十分適合對運算能力和存儲量有高要求的應用場合。
論文關鍵詞:VC,Matlab,實時語音識別,MFCC,DTW,非特定人,MEX
1引言
VC和Matlab的混合編程共同運用于語音識別,可以借助VC實現對語音信號的采集,同時通過Matlab強
大的矩陣計算功能,簡便化的編程方法,實現對語音
信號的識別處理。
其中,VC主要做語音信號的采集,通過借助于微
軟提供的WindowsMultimedia API 開發了在線實時語
音采集程序,實現了人機在線實時交互。
2 語音識別系統概述
語音信號的一般處理過程如圖 1所示,其中首先對語音信號進行預處理DTW,其中預處理包括預濾波、采樣和量化、加窗、端點檢測、預加重等。然后是信號特征量的提取,本文對信號的特征量進行Mel 頻率倒譜系數(Mel-Frequency Cepstrum Coefficients)處理。最后通過對已經建立好的參數模板進行對比,測試的依據是失真度最小準測,如本文用到的動態時間規整: DTW(DynamicTime Warping)。
圖 1 語音識別過程基本流程圖
3 語音信號的采集
語音信號的兩個過程為:對語音信號進行實時
的采集,對采集的語音信號做出識別。本文對語音信號的采集是通過VC調用Microsoft的Windows系統中提供了多媒體應用程序接口(Multimedia API)實現。
3.1 用VC生成動態鏈接庫供Matlab調用
通過mex文件來實現VC與Matlab的混合編程。mex
代表 MatlabExecutable。Matlab中可以調用的C或
Fortran語言程序稱為mex文件。mex文件是一種特殊的動態連接庫函數,它能夠在MATLAB里像一般的M函數那樣來執行。
VC編譯的時候應該包含頭文件mex.h。與C中的主函數main()函數一樣,mex程序中的開始函數為:
void mexFunction(int nlhs,mxArray *plhs[], int nrhs, const mxArray *prhs[])其中
nlhs指的是在調用函數時返回值的個數;
plhs[]是每個返回值(在MATLAB中都是矩陣)的指針;
nrhs指的是調用函數時的參數個數;
prhs[]是每個參數的指針。
對mexFunction的參數是進行指針操作的,不能用單純的return返回值。mex程序傳送回來的整數數據要變為雙精度型數據,才能為其它函數所處理。
3.2 Multimedia API函數介紹
API(ApplicationProgramming Interface,應用程序編程接口)是一些預先定義的函數,目的是提供應用程序與開發人員基于某軟件或硬件的以訪問一組例程的能力,而又無需訪問源碼,或理解內部工作機制的細節。
MultimediaAPI 函數主要有以下幾個:獲取音頻設備信的函數waveInGetNumDevs(),該函數用于獲取當前系統中所安裝的音頻輸入設備的數目。
查詢音頻設備的能力函數waveInOpen(),該函數的作用是打開波形輸入輸入設備。
通過CALLBACK_FUNCTION命令來打開設備。錄音緩沖區的組織WAVEHDR結構, 一般都是設置雙緩存區對語音信號進行平穩緩沖站。開始和停止錄音時用到waveInStart()和waveInStop()兩個函數。
4 用Matlab實現語音識別過程
4.1 端點檢測
從背景噪聲中找出語音的開始和終止點這是在很多語音處理應用中的基本問題。端點檢測對于語音識別有著重要的意義。本文主要采用短時能量與短時平均過零率雙門限結合的方式,來對漢語語音的起止點進行檢測。短時能量和過零率分別確定兩個門限, 信號必須達到比較高的強度, 該門限才可能被超過。且低門限被超過未必就是語音的開始, 有可能是由短時間的噪聲引起; 高門限被超過則可以基本確定是由于語音信號引起的。
%每幀過零率
4.2 特征函數的提取
語音信號完成分幀處理和端點檢測后,下一步就是特征參數的提取。目前在語音識別中較為常用的特征參數是線性預測倒譜系數(LPCC,LinearPredictive Cepstrum Coefficients)和Mel頻率倒譜系數(MFCCDTW,Mel-FrequencyCepstrum Coefficients),這兩種特征參數都是將語音信號從時域變換到倒頻域上。LPCC從人的發聲模型角度出發,利用線性預測編碼(LPC,LinearPredictive Coding)技術求出倒譜系數,而MFCC則是構造人的聽覺模型,把通過該模型(濾波器組)的語音輸出為聲學特征,直接通過離散傅立葉變換(DFT,DiscreteFourier Transform)進行變換。本文采用MFCC方法。Mel頻率倒譜系數,即MFCC為:
其中,S(m)為語音信號通過預加重、離散傅里葉變換、通過MEL濾波器、并通過對數能量處理等得到的對數頻譜。
4.3 非特定人孤立詞語音識別算法
通常,語音識別的方法可以大致分為三類,即模板匹配法、隨機模型法、和概率語法分析法。這三類方法都屬于統計模式識別方法。其中模板匹配法是將測試語音與參考模板的參數逐一進行比較和匹配,判決的依據是失真測度最小準測,隨機模型法是使用隱馬爾可夫模型(HMM,HiddenMarkov Model)來對似然函數進行估計與判決,從而得到相應的識別結果。而概率語法分析法利用連續語音中的語法約束知識來對似然函數進行估計和判決,更適用于大規模連續語音識別。本文用小詞匯量的DTW方法。動態時間規整(DTW)是采用動態規劃(DP,DynamicProgramming)技術,將一個復雜的全局最優化問題轉化為許多局部最優化問題DTW,一步一步地進行決策。假設時間規整函數為:其中,表示時間規整函數中的第個匹配點對
這個匹配點對是由待測語音的第個特征矢量和參考模板第個特征矢量構成的,其中兩者之間的距離(或失真值)稱為局部匹配距離,記做,處于最優時間規整情況下兩矢量的距離稱為全局匹配距離,記做,表達式如下所示:
由于DTW不斷地計算兩矢量的距離以尋找最優的匹配路徑,所以得到的兩矢量的匹配距離是累計距離最小的規整函數,這就保證了它們之間存在最大的聲學相似特性。
5 結束語
在本語音識別系統中, 設定采樣率為11025Hz,幀數為300幀,幀長為240點,則最長的語音段長度不會超過300*240/11025=6.5秒。采樣樣本為男女各5個人的數碼語音資料, 實驗表明, 系統達到了較好的實時性和較高的識別率。由于Matlab功能強大, 在處理中可直接利用許多現成的函數, 編程方便, 結果可視化也容易實現。
參考文獻
[1]楊熙,蘇娟,趙鵬.MATLAB環境下的語音識別系統[J].電聲技術,2007,31(2): 51-53.
[2]龍銀東,劉宇紅,敬嵐,等.在MATLAB環境下實現的語音識別[J]
以下是來自現場的報道。
市場變化提出新需求
搬遷至新物流中心
神田業務支持公司成立于1974年,當時與長崎屋合資,主要負責服裝配送。該公司在日本最早引進了大型托盤輸送機,曾一時成為業界熱議的話題。2002年,3家分公司合并后統一命名為神田業務支持公司。
公司現任總經理吉林正和先生當時已經進入公司,他回顧公司的發展歷程時說:“30多年來,公司經營的物流業務幾乎都集中在服裝領域,因此積累了豐富的服裝物流經驗。近些年,公司的物流設施及分揀設備等已開始老化,為此建設了新的物流中心。同時,為適應客戶新的需求,我們準備配送服裝以外的貨物,因此決定引進語音識別系統。”
目前,習志野物流中心處理的貨物以服裝為主,同時也負責配送鞋類以及其他日用品,據說已接到約20家客戶的業務委托。物流中心根據客戶訂單的要求進行分揀、貼標簽等操作,然后向全國配送。
服裝類商品主要來自中國大陸及臺灣、越南等地,平均每天發送10萬件左右,需要投入包括物流中心職員和小時工在內的50~60人從事物流作業,并根據業務量進行靈活調整。
適應市場變化
在公司的舊址茜浜,倉庫內的主要設備除了大型托盤輸送機外,還有自動分揀機。如果要繼續使用這些設備,物流中心一層需要擁有2310平方米的面積,并且老化的設備也需要大筆資金進行維修,如此看來實屬浪費。可以說,繼續使用大型設備的外部條件發生了變化。
自動分揀機每小時的處理能力達2000件,這是人工作業望塵莫及的。如果不使用分揀機,根本不可能達到2000件/小時的處理能力,那么其他設備也都會閑置下來,其結果將是物流中心無法應對市場的變化。
神田公司經營策劃室的松尾健太郎科長談到:“考慮公司業務范圍的變化,我們的方針是保證低成本的同時,新系統要能夠應對市場的變化。”
這個新系統就是“語音識別系統”。
選擇語音識別系統
耳、眼、手、口總動員
吉林總經理談到:“在建設新物流中心時,神田面臨的最大問題是建設資金,因此我們要控制初期投資。如果使用自動分揀機,至少需要2~3億日元的資金,但我們的總預算只有1億日元。而且還要求必須保證訂單的交付時間。最終,我們選擇了語音識別系統。”
除軟件外,新物流中心引進的設備只有掛在腰間的便攜式終端和耳機,共25套。包括基礎系統改造在內,總投資共6000萬日元。
實際上,神田公司從幾年前就已開始研究語音識別系統,只不過一直沒有對外公開。
新物流中心處理的貨物仍以服裝為主。通常,以箱(盒)為包裝的物品是很容易處理的,數量統計也不易出錯。但服裝往往裝在塑料袋中,既薄又輕,進行揀選操作時,如果工作人員一只手拿著無線終端,另一只手拿著塑料袋,不容易讀取條碼標簽,又容易數錯數量。此外,服裝的一大特點是顏色、規格多,SKU多,因此,如果使用手持終端進行操作將非常費力。
現在使用語音識別系統,終端掛在腰間,解放了雙手,操作人員可以用雙手完成揀選作業。操作人員通過耳機得到系統指令的同時,可以立即回應,而不需要“看明細”、“按開關”的動作,能夠集中精力進行揀選。
松尾科長說:“過去,物流現場的操作在很大程度上依賴于‘眼睛’,所有終端和明細單都必須用眼睛來判斷,如果看錯了。就會直接導致發錯貨。現在有了語音識別系統,其最大的魅力就是通過‘聽’接受指令,用‘眼’和‘手’來確認,用‘說’來回應,讓兩手同時工作。這就是感覺器官的總動員。由此帶來工作準確率和效率的大幅提高。”
這也是神田公司選擇語音識別系統的初衷。
語音揀選解決方案在世界的發展
回顧歷史,在上世紀90年代,日本有幾家公司曾引進過語音識別系統,但由于當時的識別能力有限,結果半途而廢。之后,經過改良的語音識別系統再度登場,尤其是在歐美物流界頗受歡迎,其中VOCOLLECT公司開始嶄露頭角。
特別值得一提的是,世界零售巨頭沃爾瑪把語音識別系統作為標準化配置的系統,在其世界各地的物流中心都在使用。早在3年前,日本國內的沃爾瑪旗下的西友?三鄉物流中心業也已引進了VOCOLLECT的產品。
此后,眾多經銷商的市場拓展行動終于開啟了語音揀選的世界市場之門。VOCOLLECT公司于2006年成立了VOCOLLECT日本分公司,同時在東歐、南美也逐漸打開市場,目前年銷售額近100億日元,占世界同行業銷售的80%。
承擔神田公司語音系統建設項目的日本優利公司售后服務事業部矢島孝安部長說:“人們往往認為只憑借聲音并不十分可靠,但VOCOLLECT的產品解決了這一難題。其識別系統和硬件設備組成了堪稱完美的系統。”
VOCOLLECT產品的特性
VOCOLLECT日本分公司總經理塞薩爾?西森介紹說,市場上的其他產品大多是把幾家公司的終端和軟件組合在一起,而VOCOLLECT則根據物流現場的實際需要,從硬件到軟件都是自主研發的,具有非常實用的語音識別功能,能夠用日語應答就是其一大特色。
如何確保語音識別的精度是使用中的關鍵問題。塞薩爾?西森總經理認為,要提高語音識別的精度是有前提的。語音識別的基本條件是“指定說話人”和“不指定說話人”,在日本,其他公司都選擇了“不指定說話人”,唯獨VOCOLLECT公司選擇了“指定說話人”。塞薩爾?西森總經理指出,在被噪音環繞的物流和生產現場,“不指定說話人”的方式存在很多問題。
“不指定說話人”即任何人的聲音都可能被確認。因為它忽略了每個人聲音的差異,那么其識別能力自然低下,特別是在噪音大的場所,附近幾個人同時作業,如果別人的聲音一旦被確認。必將出現差錯。
VOCOLLECT公司的“指定說
話人”的方式,是根據每個人所發出的聲音的頻率而設定的,具有聲音識別功能。這在很大程度上提高了識別精確度。在實際操作中,只要改變用戶名、輸入ID號,就能夠直接調出所需的信息,因此在登錄系統后,其他工作人員也可以使用。
當然。每個工作人員初次登錄時,都需要經過多次練習,登錄加練習的時間大約在20-30分鐘。因為設有語音矯正功能,經過幾次練習,工作人員就可以熟練掌握。
此外,終端設備的堅固性也非常突出,即使跌落地面,或被踩、被壓,都能保持完好無損。這給工作人員帶來安全感,可以全神貫注地投入揀選工作。
構建并起用系統僅耗時3個月
神田公司選擇日本優利推薦的VOCOLLECT公司的語音識別系統之前,已對該系統的結構和實用性做了全面、細致的調查和論證。
吉林總經理說:“因為我們是首次使用語音識別系統,因此必須進行全面的考察。在考察3家日用品批發商使用該系統的效果時,我們發現該系統不僅能用于分揀,還能用于盤點。這也是我們選擇它的一個重要原因。事實證明這個系統是完美的。”
接下來的系統設計,神田公司僅給優利公司和VOCOLLECT公司3個月時間。在此期間,神田為了讓員工盡快進入狀態,在現場進行實地演示。2008年8月15~16日,公司在搬遷的同時安裝新系統,18日就開始正常發貨了。
下面介紹語音識別系統的實際應用。
貨物初次分揀
1、2、總體分類
語音識別系統主要應用于服裝的發貨流程。
圖1、圖2是位于物流中心二層的存儲區。每天上午,操作人員根據發貨指示,首先進行總體分類,即把當天需要發的貨按款式分別集中在臺車上的紙箱中。這里的揀選作業是對照產品明細進行的。
3 二次分揀
在相鄰的揀選區,貨物按照店鋪別進行分揀。在圖3中,左邊是使用手持終端進行掃描,右邊是使用語音識別系統進行揀選。
4、5手持終端+輸送機
總體分類完成后,把紙箱放到輸送機上,按發貨店鋪的不同,用手持終端逐一進行掃描。
因為每件貨物和產品明細都要進行掃描,因此排除了款式錯誤的可能。但因為是單手作業,尤其對于較薄的服裝,產品數量容易弄錯。偶爾也會發生無法讀取條碼標簽的情況,或者標簽被翻轉放置,此時操作起來相當費力。
6、7、臺車+手持終端
圖6是臺車分揀區。臺車底層放置了4個空周轉箱用于調節高度,上層的4個周轉箱分別代表4個店鋪,操作人員同時處理4家店鋪的貨物,操作非常快捷。當然。通道,必須留有足夠的寬度,以保證臺車通過。
使用語音識別系統進行揀選
8~11 語音識別揀選
前面提到的輸送機傳送來的周轉箱到達此處,按照發貨店鋪的不同依次進行揀選。此時操作人員通過耳機接收指示,用麥克進行回應,在“是”、“下面”的應聲中進行分揀作業。不僅雙手可同時操作,并且不需要看手持終端顯示的數據,只需用眼睛確認發貨明細上的代碼即可。
操作人員聽到的是什么樣的指示呢?是商店代碼、貨物代碼以及揀選的數量等,速度很快,聽到指示后必須立刻做出回應。按照操作人員的話說:“聲音的節奏逐漸變快,我們已經習慣了這樣的速度。”由于每個人的聽力和反應速度存在差別,物流中心根據這一差別安排操作人員的崗位。
操作人員做出回應后。下面的指示隨即就到。在這種快節奏中,幾乎沒有等待指示或閑下來的時間。
塞薩爾?西森總經理說:“如果是使用手持終端,必然存在等待指令的時間。使用語音識別系統后,節省了操作時間。一旦有空閑的時間,操作人員反而會不習慣。”
VOCOLLECT的設計中包含了勞動心理學原理,因為操作人員的腰間攜帶了便攜終端,每個人可以調節適合自己的速度。
系統投入使用后,操作人員的熟練程度不斷提高,人均處理能力由原來每小時200~300件提高到500~700件。
此外,夏裝和冬裝有所不同,操作效率也存在差別,但結果卻比預期提高了50%。
12、13、不同商店的發貨明細及標簽
根據語音指令做好的發貨明細上,標有貨物代碼和商店代碼,暫時貼在貨箱的外面(圖12),待貨箱裝滿后,再把發貨明細放入箱中,然后把箱子放到輸送機上。
14、檢驗
通過語音識別系統揀選的貨物。因為沒有讀取條形碼,因此在包裝前需要檢查一遍。數量少時只要確認條形碼即可,數量多時全部都要進行檢驗。
15、無線傳輸
通過2.4GHz的無線電波頻率,無線終端與服務器聯網后,進行數據交換。
16、充電
在辦公室一角的架子上,放置了25臺充電器,以便為終端進行充電。每次的充電過程需要8小時。
17、語音系統的管理
在同一辦公室內設置了語音系統的管理器。畫面上顯示的是神田公司的WMS與合作公司VOCOLLECT的管理過程。
貼標簽、包裝、發貨
18、19、貼價格標簽、過檢針
貼價格標簽、過檢針的操作也在物流中心二層完成。
20、21、搬運發貨箱
貨箱打包完畢后碼盤,托盤貨物用叉車搬到垂直輸送機,送往一層出貨區。
22、23、裝車
在出貨口,貨物裝上卡車,送到各店鋪。
目前,像這樣成功應用語音識別系統的案例在日本還不多見。吉林總經理對于初次引進語音識別系統是這樣評價的:對于習慣了以往傳統分揀方法的操作人員來講,他們完全沒有不適應的感覺,反而更喜歡現在極富節奏感的作業。
“要通過改善工作流程,使所有人員都適應語音識別系統,不斷提高工作效率。我們不要求最好,只追求更好”。吉林總經理說。
關鍵詞:語音識別;MYASR系統;XML語言
1.引言
在小詞匯量的語音識別系統中,主要分為孤立詞識別和基于詞網模型的連續語音識別。前者通過詞發音端點分割算法,把每個詞的發音從整段語音中分割出來,然后再到模型集中去尋找最佳的匹配作為識別結果。XML同HTML一樣,都來自SGML(標準通用標記語言)。SGML是一種在Web發明之前就早已存在的用標記來描述文檔資料的通用語言。但SGML十分龐大且難于學習和使用。鑒于此,人們提出了XML 語言,它具有可擴展性、靈活性、自描述性、簡明性的優點。
在MYASR系統中有多個功能模塊,每個功能模塊都有各自的參數,采用XML語言對這些參數進行描述更加直觀,可讀性更強。例如,MYASR中MFCC編碼的XML描述如下:
<mfcc_params>
<type_mask> MFCC_0_D_A </type_mask>
<sample_rate> 16000 </sample_rate>
<win_size> 400 </win_size>
<win_shift> 160 </win_shift>
<fft_size> 512 </fft_size>
<low_freq> 200 </low_freq>
<high_freq> 7000 </high_freq>
<pre_enphasis> 0.97 </pre_enphasis>
<mel_num> 26 </mel_num>
<cep_num> 12 </cep_num>
<cep_lifter> 10 </cep_lifter>
</mfcc_params>
MYASR通過XML解析器將XML元素中的參數提取出來,然后再傳遞給各個功能模塊。當需要增加參數時,只要在XML文件中適當位置增加一個元素(Element)即可,具有良好的可擴展性。
3.系統開發
MYASR系統的模塊結構如下所示:
3.1前端處理
MYASR的前端處理包括以下功能模塊:自動增益控制(AGC)、噪音消除、預加重處理。其相應的XML描述如下:
<preprocess_bat workdir="d:worktmp">
<params>
<frame_ts> 20 </frame_ts> //幀長
<agc>
<level> 0.5 </level>
<max_gain> 2.0 </max_gain> //最大增幅
<min_gain> 1.0 </min_gain> //最小增幅
<agc>
<pre_enphasis> 0.97 </pre_enphasis>//預加重系數
<denoise>1</denoise> //噪音消除
</params>
<transcrip> pretrans.scp </transcrip>
</preprocess_bat>
其中屬性"workdir"表示當前的工作目錄,元素<agc>表示自動增益控制參數,元素<pre_enphasis>表示預加重參數,元素<denoise>表示是否對語音進行噪音消除。元素<transcrip>表示批處理文件,此文件中描述了目標文件名及處理后的文件名,內容如下:
"speech1.wav" "speech1_dn.wav"
"speech2.wav" "speech2_dn.wav"
"speech3.wav" "speech3_dn.wav"
.........
3.2端點分割
在MYASR系統中,實現兩種類型的端點分割:句子端點檢測,詞端點檢測。采用的靜音檢測方法有【2】:基于短時能量、基于短時平均過零率、和基于GMM模型。其XML描述如下:
<endpoint>
<endpoint_method> SENT_CUT </endpoint_method>
<vad_method> GMM_VAD </vad_method>
<sil_interval> 500 </sil_interval> //單位為毫秒
</endpoint>
元素<endpoint_method>表示端點分割方法:設置SENT_CUT表示句子端點分割,設置WORD_CUT表示詞端點分割。元素<vad_method>表示靜音檢測的方法:設置GMM_VAD 表示采用基于GMM模型,PW_VAD表示基于短時能量,COS_VAD表示基于短時平均過零率。<sil_interval>元素表示檢測對象之間允許的停頓時間,超過停頓時間意味著出現新的句子或詞。
3.3特征提取
MYASR系統中目前采用MFCC結合動態差分參數作為特征矢量。將語音文件轉換為MFCC編碼的XML描述文件如下所示:
<wav2mfcc workdir = "d:myworkdir">
<params_xml>mfccparams.xml</params_xml>
<transcrip> trans.scp </transcrip>
</wav2mfcc>
其中mfccparams.xml是MFC C特征參數的描述文件,內容如下:
<mfcc_params>
<type_mask> MFCC_0_D_A </type_mask>//類型
<sample_rate> 16000 </sample_rate> //采樣率
<win_size> 400 </win_size> //幀長
<win_shift> 160 </win_shift> //幀移
<fft_size> 512 </fft_size> //FFT的窗長
<low_freq> 200 </low_freq> //截止的最低頻率
<high_freq> 7000 </high_freq> //截止的最高頻率
<mel_num> 26 </mel_num> //MEL濾波器數
<cep_num> 12 </cep_num> //MFCC維數
<cep_lifter> 10 </cep_lifter> //參數提升系數
</mfcc_params>
其中<type_mask>元素表示特征矢量標志,有6種類型:
表3-1 MYASR中MFCC編碼類型
標志
含義
MFCC
MFCC參數
MFCC_0
MFCC參數加對數能量
MFCC_D
MFCC參數及其一階差分
MFCC_0_D
MFCC參數加對數能量,及一階差分
MFCC_D_A
MFCC參數及其一階、二階差分
MFCC_0_D_A
MFCC參數加對數能量,及一階、二階差分
<transcrip>元素中的trans.tsp文件描述了語音源文件及轉換成MFCC的目標文件,內容如下:
"speech1.wav" "speech1.mfc"
"speech2.wav" "speech2.mfc"
"speech3.wav" "speech3.mfc"
.........
3.4模型訓練
MYASR采用了連續概率密度的HMM模型,模型參數初始化采用了"K-均值分割"算法,參數重估采用"Baum-Welch"算法。其XML描述文件如下:
<hmm_train workdir="d:worktmpmytimit">
<label_scrip> phones.lst </label_scrip>
<featlep_scrip> trainmfcclabep.scp </featlep_scrip>
<hmm_params>
<state_num>3</ state_num > //HMM狀態數
<mixture>4</mixture> //高斯分量個數
<veclen>39</veclen> //特征矢量維數
<cluster>GMM_EM</cluster> //聚類算法
<feat_flag>MFCC_0_D_A</feat_flag> //特征矢量標志
</hmm_params>
<model_file>modelhmmmodelEM4.xml</model_file> //輸出文件
</ hmm _train>
其中,<label_scrip>元素中的文件phones.lst表示要訓練的那些詞或音子。
<featlep_scrip>元素中的文件trainmfcclabep.scp描述了特征矢量文件及其標注文件,內容如下:
"mfcspeech1.mfc" "labspeech1.lab"
"mfcspeech2.mfc" "labspeech2.lab"
"mfcspeech3.mfc" "labspeech3.lab"
.........
標注文件".lab"中注明了每個單元的發音起點和終點,MYASR將根據標注文件從特征文件中讀取特征矢量進行HMM模型的訓練。標注文件內容如下:
0 191 sil
191 285 sh
285 358 ix
358 415 hh
415 548 eh
548 646 jh
646 720 ih
720 790 d
790 920 ah
....
其中時間單位為毫秒。
<cluster>元素表示"K-均值分割"算法中對B參數進行重估所采用的算法,有兩種選項:GMM_EM表示EM算法,K_MEANS表示"K-means"算法。實驗結果顯示,EM算法比"K-means"算法具有更好的性能。
<model_file>表示訓練輸出的HMM模型文件,內容如下:
<hmm_set>
<params>
<feat_mask>MFCC_0_D_A</feat_ mask >
<state_num>3</state_num>
<mixture>4</mixture>
<vec_len>39</vec_len>
</params>
<hmm >
<state>
<mixture> 1.906841e+001 1.900540e-001 ......</mixture> //均值
<var> 2.945649e+001 1.096035e+002......</var> //方差
<weight> 2.212352e-001 </weight>
//權重
</state>
......
</hmm>
......
</hmm_ set >
3.5詞網構建
3.5.1 詞網模型的雙層結構
MYASR中的詞網模型分為兩層:一層是描述層,主要用于描述詞網的結構,包括上下文無關文法和有限狀態圖;另一層是模型層,這一層由HMM模型構成的搜索網絡,是搜索算法的輸入。首先由用戶定義語法規則,然后轉換成有限狀態圖,最后結合HMM模型集和發音字典將其轉化成搜索算法可以處理的模型層搜索網絡。
3.5.2 描述層到模型層的轉換
在模型層搜索網絡中,按節點是否有詞輸出分為兩類:空節點和詞節點。空節點中不含有HMM模型,而只是作為詞網中的一個過度節點,如起始節點(#START),終止節點(#END),中轉節點(#L)都是沒有詞輸出的節點。而詞節點則包含了構成這個詞的HMM模型。
詞網模型的有限狀態圖轉換成模型層搜索網絡的過程為:當遇到空節點時,不作處理;當遇到詞結點時,在字典哈希表找到這個詞,并保存word_id,word_id是這個詞在字典哈希表的索引,當搜索結束后,回溯時就是根據這個word_id找到哈希表中對應的詞;同時根據這個詞的發音,到HMM哈希表中查找子詞的HMM模型,然后在這個詞結點中創建指向子詞HMM模型的指針。轉換后的模型層搜索網絡如圖3-4所示。
模型層搜索網絡構建后,就可以用Token-Passing算法進行搜索。
4 總結
本文在研究語音識別理論的基礎上,設計并開發了基于詞網模型的連續語音識別系統-MYASR。MYASR提供了豐富的功能模塊,使開發一個基于詞網模型的連續語音識別應用系統更加方便,同時也是語音識別研究的實驗平臺。MYASR所采用的XML描述文件,使系統具有良好的可讀性和可擴展性。通過在TIMIT語料庫上單音子連續語音識別的實驗顯示,MYASR具有很高的識別性能和實時性能。當前系統只是在Windows平臺上,為適應各種應用的需要,在后續的語音識別系統設計中,可考慮將系統移植到嵌入式平臺。
關鍵詞:語音識別;文本識別;多線程瀏覽器
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2013)21-4949-02
語音識別,也被稱為自動語音識別Automatic Speech Recognition(ASR),是一門跨越多門學科的技術。早在計算機的發明之前,語音識別就被人們所提出,早期的聲碼器可以認為是語音識別及合成的雛形。最早的語音識別器是產生于20世紀20年代生產的“Radio Rex”玩具狗,當人們呼喚該產品的名字的時候,它能夠從底座上自動彈出來。而最早的基于計算機的語音識別系統是由AT&T 貝爾實驗室開發的Audrey語音識別系統,該系統的正確率達到98%。
1 C#語言的語音識別及合成的接口
C#是一種安全的、穩定的、簡單的、優雅的,由C和C++衍生出來的面向對象的編程語言。C#實現語音識別功能的主要接口有:IsRecoContext接口、IspRecognizer接口、IsRecoGrammar接口、IspVoice接口。
1)IsRecoContext接口:是主要的用于語音識別的接口,能關注不同的語音識別事件,安裝或者卸載識別時使用的語法文件。
2)IspRecognizer接口:一個程序擁有兩種不同的語音識別引擎(ISpRecognizer)類型。一個是共享的語音識別引擎,需要建立一個采用共享語音識別引擎的識別環境(IspRecoContext),應用程序需要調用COM接口位于CoCreateInstance結構上的CLSID_SpSharedRecoContext。然后SAPI會設立一個音頻輸入流,并把這個音頻輸入流定義為默認的SAPI音頻輸入流。由于它可以與其他語音識別應用程序共享其程序資源,所以在大多數場合中被推薦使用。另一個是非共享的語音識別引擎的語音識別環境,應用程序首先需要調用COM接口位于CoCreateInstance結構上的CLSID_SpInprocRecoIns-
tance。然后,應用程序必須調用IspRecognizer的SetInput方法來設立一個音頻輸入流。最后,應用程序通過調用IspRecognizer的CreateRecoContext方法來建立它自己的識別環境。
C#語言的語音合成的主要接口有:Voice Commands 接口,Voice Dictation接口,Voice Text,Voice Telephone接口,Audio Objects接口。
1)Voice Commands API。對應用程序進行控制,一般用于語音識別系統中。識別某個命令后,會調用相關接口是應用程序完成對應的功能。如果程序想實現語音控制,必須使用此組對象。
2)Voice Dictation API。聽寫輸入,即語音識別接口。
3)Voice Text API。完成從文字到語音的轉換,即語音合成。
4)Voice Telephone API。語音識別和語音合成綜合運用到電話系統之上,利用此接口可以建立一個電話應答系統,甚至可以通過電話控制計算機。
5)Audio Objects API。封裝了計算機發音系統。
其中Voice Text API,就是微軟TTS引擎的接口,通過它我們可以很容易地建立功能強大的文本語音程序。
2 系統設計與實現
2.1 系統功能概述
根據對系統需求進行分析,本系統需要完成操作、工具、用戶管理、皮膚管理和幫助功能。這些功能將分成五個功能模塊。操作功能:朗讀、命令識別、文本識別、生成語音文件、添加操作命令、網頁瀏覽;工具功能:訓練、開機自動運行、取消開機自動運行;用戶管理:添加用戶、刪除用戶、修改用戶;皮膚管理功能:皮膚的修改功能;幫助功能:幫助文檔、關于作者
2.2 語音識別功能的實現
語音識別的原理就是將人發出的語音通過麥克風傳到電腦的聲卡,然后語音引擎對對語音信息進行采取,最后和語音庫里面的信息匹配從而識別出相應的語音信息輸出到電腦屏幕進行各種各樣的操作。
語音識別的一個最大的難點就在于不能正確地對語音信息進行正確的識別,這里在系統開發的時候需要做兩個處理工作。
第一是對語音庫進行大量的語音訓練,可以通過windows內置的語音識別訓練系統進行訓練,該功能集成與微軟的XP系統的控制面板的語音選項里面。鑒于每個人的發音都是有所差異的,使用人必須先對語音引擎進行大量持久的語音訓練,這樣才能不斷地提高語音識別的正確率,以方便計算機正確地識別出來需要操作的動作和需要對電腦輸入的文字。在進行對語音庫訓練的前提是要安裝微軟提供的語音引擎Speech SDK 5.1,在安裝了該引擎之后方能對語音進行訓練,可以支持中英日三種語言的使用。
第二是對語音識別的結果進行模糊處理,也就是說,在不可能實現100%的識別率的情況下,要盡可能地考慮到語音識別出來的錯誤信息,比如本來要識別的信息是:open,但是電腦識別出來的是opened,這時候就要“將錯就錯”,通過數據庫將識別出來的opened告訴電腦這是一個open。如此進行常用字的多次測試,并通過微軟的sql server2000進行海量的數據識別模糊處理,最大化地考慮到所出現的錯誤來更正。
2.3文本識別功能的實現
文本識別功能的實現是要借助于微軟的TTS(Test To Speech)引擎進行來實現。TTS是“文本到語音(Text To Sound)”的簡稱,TTS語音引擎為我們提供清晰和標準的發音,所用的關鍵技術就是語音合成(SpeechSynthesis)。
該文本識別引擎可以支持中英日三種語言。要使用該功能是只需要進入文本識別界面并啟動文本識別按鈕,然后將要識別的文字通過鍵盤輸入到編輯框里面,再單擊朗讀按鈕,這就可以將文本信息轉化為語音信息通過音響發出。
2.4多標簽的語音識別瀏覽器功能的實現
首先是多標簽瀏覽器功能的實現。由于C#有自帶的WebBrowser瀏覽器控件,使用其自帶的方法。而對于多標簽功能的實現則要使用C#的多線程的技術,也就是說支持多個線程同時不互相干擾的工作。
其次是具有語音識別功能瀏覽器的實現。這個過程可以參照之前所制作的語音識別制作的過程,只需要的瀏覽器里面添加一個開啟語音識別和關閉語音識別功能的按鈕即可。當單擊開啟語音識別功能時,系統將會提示已經開啟語音識別功能,這個時候就可以使用語音識別功能進行網上沖浪;當單擊關閉語音識別功能是,系統將會提示已經關閉語音識別功能,這個時候系統會系統語音識別功能已經關閉,此時的瀏覽器就和傳統的多標簽瀏覽器如360安全瀏覽器一樣。
3 結論
本系統主要研究了用語音控制電腦的技術,成功地利用微軟新一代開發平臺.NET Framework開發了語音識別系統的新產品。本系統打破了傳統的人機交互方式,實現的使用語音對計算機進行操作。使用微軟的TTS語音引擎可以使系統具備識別中英日三種語言,并且添加了國內的捷通語音公司的語音引擎,可以識別粵語,閩南語等方言,對于文本識別的功能的實現,提高了語言學習者的學習效率,這給廣大的語言學習者帶來了福音。設計實現具有語音識別功能的多標簽瀏覽器技術。主要是方便一些不會使用鍵盤打字的人群,使得這類人群可以通過語音控制就可以上網沖浪。
參考文獻:
[1] ZHANG Jinsong, Takatoshi Jitsuhir.An Introduction to the Chinese Speech Recognition Front—End of the NICT/ATR Multi-·Lingual Speech Translation System [J].O'Reilly. 2008.
[2] Arun Krishnaraj, Joseph K. T. Lee. Voice Recognition Software: Effect on Radiology Report Turnaround Time at an Academic Medical Center [J]. 2010.
[3] wu Zhiyong. CAO Guangqi. Voice Recognition Software: Effect on Radiology Report Turnaround Time at an Academic Medical Center [J]. 2008.
[4] Jing Li. Thomas Fang Zhen91. A Dialectal Chinese Speech Recognition Framework [J]. 2006.
[5] 國玉晶,劉剛,劉健,郭軍.基于環境特征的語音識別置信度研究[J].清華大學學報,2009,49(S1).
[6] 林琳,王樹勛,郭綱. 短語音說話人識別新方法的研究[J].系統仿真學報,2007(10).
[7] 姚琳,梁春霞,張德干.基于實例推理的人機對話系統的設計與實現[J].計算機應用,2007(03)
[8] 林茜,歐建林,蔡駿.基于Microsoft Speech SDK的語音關鍵詞檢出系統的設計和實現[J].心智與計算,2007,12-30:433.
[9] 韓紀慶,張磊,鄭鐵然.網絡環境下的語音識別方法[J]. 計算機科學,2005(01).