凌賢鵬 李綻蕾 劉昊 張釤釤 俞蕓蕓
摘 要:文中設計了一款智能家居系統(tǒng),主要介紹了語音識別技術的相關基礎原理以及流程。詳細分析了一段語音信號從采集到預處理,提取特征值后與語音庫中的聲學模型比對得出識別結果的過程及隱馬爾科夫的建模過程、算法流程,最后利用Arduino開發(fā)板搭建智能家居系統(tǒng)。
關鍵詞:智能家居;語音識別;Arduino;隱馬爾科夫模型;特征提取
中圖分類號:TP39文獻標識碼:A文章編號:2095-1302(2019)01-00-02
0 引 言
第一次工業(yè)時代后,生活方式大不同前,越來越多的機器設備開始代替手工作業(yè),而在家居行業(yè)也出現(xiàn)了類似的機器人幫人們處理家居生活中的簡單工作,不僅解放了人們的雙手,又節(jié)省了大量時間。智能家居的發(fā)展與人機交互技術有著密不可分的關聯(lián),在長期探索中,語音識別技術脫穎而出。本文詳細分析了語音識別過程,并設計了一套基于Arduino平臺的智能家居系統(tǒng)實現(xiàn)對家居燈光、環(huán)境(溫度和濕度)、光線、安防監(jiān)督的語音化控制。
1 語音識別系統(tǒng)相關理論技術
語音識別的信號處理流程如圖1所示。語音識別系統(tǒng)由語音前期預處理、語音信號特征參數(shù)提取、參考模型庫建模、模式匹配以及語音后處理五個部分組成[1]。語音識別可分為如下四大階段:
(1)第一個階段先通過性能優(yōu)良的語音采集設備采集語音信號,然后進行相關預加重、分幀、加窗、端點檢測等預處理操作。
(2)第二階段是聲學模型訓練階段。提取語音庫中已知語義的語音信號特征參數(shù),將其作為模板存入?yún)⒖寄P蛶熘?。使用訓練算法建立聲學模型,而聲學模型的訓練過程也是建模過程,通過訓練語音庫的特征參數(shù)訓練聲學模型參數(shù)[2],因此要設置合理的模型初始值。
(3)第三階段是識別階段,將輸入語音的特征參數(shù)經(jīng)過一定的識別算法與訓練好的參考模型庫中的特征參數(shù)進行相似度對比,匹配相似度概率最高的即為輸入語音最終識別結果[3]。
(4)第四階段是語音后處理階段,確定當前哪個詞語可以跟隨上一個已經(jīng)識別的詞,排除不可能的單詞,將最佳匹配結果語音信號進行語言建模,匹配出文本語義。
2 語音信號的時域處理
在對語音信號分析前,要先對語音信號進行預處理,包括端點檢測、預加重、加窗和分幀等技術[4]。
預加重采用一個6 dB/倍頻的一階高通數(shù)字濾波器實現(xiàn),其傳遞函數(shù)為H(z)=1-μz-1,加窗可以讓一幀信號的幅度在兩端平滑的衰減漸變到零,以避免短時語音段邊緣的影響。但由于加窗削弱了語音邊緣的信號,為了使相鄰幀連續(xù)不中斷,一般采用重疊分幀方法[5]。
端點檢測技術的目的是檢測出有效語音信號的起始點和終止點[6],從而減少需要處理的數(shù)據(jù)量和運算量,同時還能降低噪聲對語音識別系統(tǒng)的影響,一般采用雙門限端點檢測法。
3 語音信號的特征提取
語音信號提取的特征值應該準確、完全地包含語音信號的全部信息。同時提取能有效反映語音特性、減少語音信號中與識別無關的信息,減少識別數(shù)據(jù)量。本文分析了語音信號的三種特征參數(shù),即線性預測系數(shù)(LPC)、線性預測倒譜系數(shù)(LPCC)、梅爾頻率倒譜系數(shù)(MFCC)[7]。
3.1 線性預測系數(shù)(LPC)
線性預測的原理:語音信號S(n)的值可由過去若干時刻的采樣值或其線性組合來逼近[8]。在逼近過程中,逼近值與原始值之間的差值稱為預測誤差,當預測誤差達到最小時,即預測效果最接近,也是模型建立最完美的值。可以推得,線性預測系數(shù)ai的值達到了收斂。線性預測方法得到的參數(shù)可以很好地反映語音信號的頻譜幅度。
3.2 線性預測倒譜系數(shù)(LPCC)
LPCC可以將語音模型中的聲門激勵信號與聲道沖激響應信號進行分離,計算量小,實現(xiàn)相對簡單,提高了特征參數(shù)的穩(wěn)定性[9]。該值是對語音信號進行FFT后再取對數(shù),求IFFT后得到的。
3.3 梅爾頻率倒譜系數(shù)(MFCC)
Mel頻率倒譜系數(shù)(MFCC)充分考慮了人耳聽覺的感知特性后進行語音信號處理。MFCC具有更好的識別性能[10],語音信號中的能量主要集中在低頻部分,對人耳的聽覺特性模擬地更好,而人耳對低頻分量也更敏感。語音信號低頻部分的一個參數(shù)淡化了易受環(huán)境噪聲干擾的高頻部分,提高了語音識別系統(tǒng)的抗噪聲能力。
4 隱馬爾科夫模型HMM
隱馬爾科夫過程是一個雙重隨機過程:其一用于描述每幀語音信號的統(tǒng)計特性(可直接觀測到);其二用于描述每幀語音信號如何轉變到寫一個語音幀信號(隱含在觀察序列中)。隱馬爾可夫模型就像一個黑箱子,內(nèi)部狀態(tài)外部不可見,外界只能看到各個時刻的輸出值[11]。可觀測部分是人的語音,而隱含部分則是人組織語言的大腦激勵信號。隱馬爾可夫模型可用λ=(π,A,B)表示[12]。
本文詳細分析了HMM模型三個基本問題的解決算法。假設已知可觀察狀態(tài)值序列O=(O1,O2,…,OT)(T是語音信號的幀數(shù))和馬爾科夫模型參數(shù)λ=(π,A,B),計算可觀察序列的概率P(O|λ)時一般使用向前-向后算法[13]。
已知可觀察狀態(tài)值序列O=(O1,O2,…,OT)和模型λ=(π,A,B),計算最有可能生成該可觀察序列的隱含狀態(tài)序列,通常使用Viterbi算法[14]。
在已知可觀察狀態(tài)的序列O=(O1,O2,…,OT)的前提下,確定HMM的模型參數(shù)λ=(π,A,B),使得可觀察序列的概率P(O|λ)最大,通常使用Baum-Welch算法[15]。
5 智能家居系統(tǒng)實現(xiàn)
結合Arduino開發(fā)平臺實現(xiàn)智能家居模塊的交互系統(tǒng),對家居系統(tǒng)整體以及軟硬件需求進行分析與總體設計,實現(xiàn)通過語音控制家居設備的目標。該系統(tǒng)具有燈光控制,光線以及溫度濕度檢測和危險氣體警報功能。為了擁有更好的人機交互環(huán)境,本文系統(tǒng)還添加了語音播報功能。
調(diào)試并連接智能家居的軟硬件系統(tǒng),分別測試智能家居系統(tǒng)的語音識別率,以及相應的語音命令能否實現(xiàn)對應功能。在安靜的環(huán)境下,系統(tǒng)功能能夠全部實現(xiàn),測試非特定人100次的語音識別率均在90%以上。在有噪聲的環(huán)境下,系統(tǒng)功能均未實現(xiàn),測試非特定人100次的語音識別率均在50%以下甚至更低。由實驗結果可知,與安靜環(huán)境對比,噪聲環(huán)境下的語音識別效果大大降低,且長語音命令的識別率同之前一樣低于安靜環(huán)境下的語音識別率。
6 結 語
本文主要對語音識別技術做了大致分析,比較了特征提取線性預測技術、線性預測倒譜系數(shù)以及梅爾頻率倒譜系數(shù)之間的優(yōu)缺點。詳細分析了隱馬爾科夫的建模過程以及相應算法,結合Arduino開發(fā)平臺,對智能家居系統(tǒng)做出簡單設計,實現(xiàn)了語音命令“開燈”“關燈”“溫度濕度檢測”“環(huán)境光線檢測”等操作,同時還采用危險氣體警報對家居安防進行布施。語音播報提供了良好的人機交互環(huán)境,通過智能家居各模塊功能語音識別測試可知,提高語音識別率不僅需要安靜的環(huán)境,還需要說標準的普通話。語音識別如何在有較大噪音的環(huán)境中進行準確識別是一道難關,也是未來科研人的努力方向。
參 考 文 獻
[1]許春冬,張震,戰(zhàn)鴿,等.面向語音增強的約束序貫高斯混合模型噪聲功率譜估計[J].聲學學報,2017,42(5):633-640.
[2]趙明明.語音識別系統(tǒng)中特征提取和聲學建模的研究[D].重慶:重慶師范大學,2012.
[3]張志霞.語音識別中個人特征參數(shù)提取研究[D].太原:中北大學,2009.
[4]許春冬,戰(zhàn)鴿,應冬文,等.基于隱馬爾科夫模型的非監(jiān)督噪聲功率譜估計[J]. 數(shù)據(jù)采集與處理,2015,30(2):359-364.
[5]李寶祥.語音關鍵詞檢索若干問題的研究[D].北京:北京郵電大學,2013.
[6]劉洋.基于神經(jīng)網(wǎng)絡的語音端點檢測方法研究[D].大連:大連理工大學,2010.
[7]郭秋雨.小詞匯量非特定人的孤立詞語音識別系統(tǒng)研究[D].青島:中國海洋大學,2010.
[8]張輝.基于線性預測和激勵機制的在線語音傳輸實驗系統(tǒng)[D].天津:南開大學,2008.
[9]許春冬,王晶,戰(zhàn)鴿,等.基于功率譜包絡動態(tài)分割的魯棒語音端點檢測[J]. 北京理工大學學報,2015,35(11):1189-1193.
[10]陳衛(wèi)東,王曉亞,解靜.基于LPCC的多語種識別算法[J].無線電工程,2009,39(9):16-18.
[11]孫穎華.高階離散隱馬爾科夫模型的嚴格定義及等價性質(zhì)[D].鎮(zhèn)江:江蘇大學,2016.
[12]郭雷勇,李宇,林勝義,等.用于隱馬爾科夫模型語音帶寬擴展的激勵分段擴展方法[J].計算機應用,2017,37(8):2416-2420.
[13] XU L,KONG A L,LI H,et al.Generalizing I vector estimation for rapid speaker recognition[J].IEEE/ACM transactionson audio speech & language processing,2018,26(4):749-759.
[14] FAN J L.Forward-backward algorithm[J].Springer international,2016,13(2):97-116.
[15] VITERBI A J.Error bounds for convolute-onal codes and an asymptotically optim-um decoding algorithm[J].IEEE Trans.informat.theory,1967,13(2):260-269.