高磊 章小兵
基金項目:安徽工業(yè)大學產學研基金資助重大項目;項目編號:RD14206003。
作者簡介:高磊(1997— ),男,安徽合肥人,碩士研究生;研究方向:測控技術與語音識別。
*通信作者:章小兵(1972— ),男,安徽蕪湖人,教授,博士;研究方向:測控技術與語音識別。
摘要:傳統(tǒng)的端點檢測在低信噪比(SNR)非平穩(wěn)噪聲下性能會失效,因此文章提出了將最優(yōu)改進的對數(shù)譜幅度估計(OMLSA)以及最小控制遞歸平均算法(IMCRA)相結合的方法對包含噪聲的語音指令進行去噪處理,提取PNCC的第一維靜態(tài)特征作為特征參數(shù)。同時,文章在單參數(shù)雙門限法的基礎上設計了一個自適應閾值,可以更好地跟蹤預測實際語音的起始與終止端。Matlab仿真結果顯示,該算法在各種非平穩(wěn)噪聲下比經典算法優(yōu)勢更大。
關鍵詞:端點檢測;最優(yōu)改進的對數(shù)譜幅度估計;最小控制遞歸平均算法;PNCC;自適應閾值
中圖分類號:TN912.3 文獻標志碼:A
0 引言
語音端點的檢測準確度是語音識別精度中最關鍵的一步。它的功能是把被背景噪聲覆蓋的語音提取出來,確定語音的開始和結尾。針對端點檢測的方法,人們研究出了模型匹配和特征提取兩大類。模型匹配方法對計算機的性能是一個考驗,消耗時間長,實際情況下用處不大。特征提取方法時域、頻域、時頻域的結合可以優(yōu)勢互補,應用較為廣泛。張毅等[1]在子帶譜熵的基礎上結合了子帶能量,兩者做比值處理,拉開語音片段與噪聲片段差距,解決了子帶譜熵的不穩(wěn)定性問題,添加中值濾波去除參數(shù)波形中不穩(wěn)定的毛刺,該算法計算簡單、快速高效,更易檢測出語音的端點。朱春利等[2]基于LMS自適應濾波降噪,選擇合適的窗長計算短時能量,改進過零率拉開靜音與噪聲的差距,之后中值平滑去除LMS殘留野點,更能反映原始語音信號的特征。目前,這些方法在高信噪比環(huán)境下可以穩(wěn)定運行,但是在非平穩(wěn)環(huán)境下不再生效,判斷端點仍不能達到人們的滿意度。
本文首先利用最小控制遞歸平均算法來跟蹤噪聲的實時變化,其次用最優(yōu)改進的對數(shù)譜幅度估計算法增強語音重建語音質量,最后提取PNCC的第一維靜態(tài)特征作為端點檢測的參數(shù)。在檢測過程中,本文基于VAD的原理設計出自適應根據(jù)特征參數(shù)變化的閾值,為更加精確地定位語音提供幫助。
1 最優(yōu)改進對數(shù)譜幅度估計(OM-LSA)
為了有效地抑制非平穩(wěn)聲,引入基于統(tǒng)計模型的單通道語音增強方法,可以顯著地減少殘留噪聲,提高了增強語音的質量。
其中,y(t)表示帶噪語音,x(t)表示純凈語音,d(t)表示不相關的噪聲,其中t表示離散時間指數(shù)。兩邊同時做離散傅里葉變換:
其中,k表示頻域分量索引,l表示幀的編號索引。為了使估計出來的純凈語音頻譜幅度X^(k,l)與實際純凈語音X(k,l)接近,需要計算自適應頻譜濾波器增益函數(shù):
自適應濾波器增益為:
其中,GH1(k,l)表示對數(shù)譜幅度增益,p(k,l)表示語音存在條件概率,Gmin表示最小增益經驗值起到抑制音樂噪聲的作用[3]。
2 基于PNCC的端點檢測
2.1 PNCC特征
PNCC是一種在抗噪聲和混響下有很大優(yōu)勢的語音特征,能夠在不影響識別能力和運算復雜性的前提下,通過長時間幀功率分析有效地消除背景噪聲的影響[6]。
PNCC特征參數(shù)公式:
其中,B表示PNCC維數(shù),n表示PNCC維數(shù)的索引。
近幾年,美國科學家Kim等[7]提出功率歸一化倒譜系數(shù)(PNCC)將其運用于語音增強算法。參考吳新忠等[5]提取MFCC0的優(yōu)秀效果,本文取PNCC的第一維參數(shù)PNCC1用于端點檢測任務。
2.2 自適應閾值
外界噪聲的變化會帶動特征參數(shù)的變化,因此將特征參數(shù)與閾值聯(lián)系起來才能適應環(huán)境的變化。將PNCC1特征參數(shù)的前幾幀進行平均得到的PNCCN作為初始閾值:利用對數(shù)譜距離(VAD)式(14)判定當前幀是否語音幀,若為語音幀(NF=0),則閾值不變,若為非語音幀(NF=1),則依據(jù)下式(15)對閾值進行更新得到PNCCnew:
其中,NoiseCounter是累計的無語音段長度,NoiseMargin是語音段與無語音段之間的最小距離,設為2.5,Hangover是最小的無語音段長度,設為8。
T1,T2分別是雙門限法的高低門限值,如圖1所示,橫虛線T1是高閾值,橫曲線T2是低閾值。豎實線S、豎虛線E是檢測出來每一段語音的起始端點。若PNCC1(i)>T1則一定是語音段,從PNCC1(i)與T1的交點分別向兩邊擴展,將PNCC1(i)與T2的交點作為語音段的起始點位置。相對于傳統(tǒng)的雙門限法本文注重于細節(jié)上的追蹤,傳統(tǒng)的雙門限法T2是一條固定的直線,不能及時應對特征參數(shù)波形突變從而導致的誤判現(xiàn)象。
3 實驗與分析
3.1 實驗裝置
筆者用高保真麥克風在安靜的房間里錄音,數(shù)據(jù)存儲格式為8 000 Hz、16 bit的wav文件,此次實驗中錄制的純凈語音為“你好悠悠,導航去安徽工業(yè)大學”,長度為6 s,將Noisex-92標準噪聲庫中的白噪聲、pink噪聲、f16噪聲和factory噪聲分別生成-3,0,3 dB 3個不同的水平,再添加到干凈的語音文件中,然后將合成的語音用于端點檢測。信號分幀每幀長設為200個樣本,幀移為80個樣本,兩個連續(xù)幀的重疊為120個樣本,窗口函數(shù)為漢明窗。
在Windows 10操作系統(tǒng)下,本文在實驗平臺Matlab2013a上進行一系列的實驗來評價所提算法的有效性,將其與近幾年的語音端點檢測經典算法進行比較,分別是張毅等[1]、陳昊澤等[8]、朱春利等[2]。
3.2 與經典算法的性能比較
如圖2所示,在純凈語音波形上分別用豎實線和豎虛線標記了每一段真實語音的起點和終點,在-3dB f16、factory環(huán)境中測試了上述不同的端點檢測方法。
如圖2所示,張毅等[1]提出的子帶能熵比雖然通過雙參數(shù)比值的方法拉開語音與噪聲特征的差距,但是周圍產生了大量的尖端毛刺破壞了語音特征,這是導致把噪聲誤判為語音的關鍵。
如圖3所示,在不規(guī)律的factory噪聲下,噪聲的特征掩蓋住語音本身的特征,擾亂原始語音的成分,使得子帶能熵比算法失效。
陳昊澤等[8]提出的對數(shù)能量頻帶方差積法雖然與張毅等[1]提出的方法原理相似,但是在圖2、圖3中均表現(xiàn)出能量弱的語音處兩參數(shù)做乘積處理會使得能量大處的語音特征幅值更大,能量小處的語音特征幅值更小的特性,因此若閾值選擇過小,從而使得弱語音處特征與噪聲齊平,導致誤判,若閾值選擇過大,又會有漏檢的錯誤。朱春利等[2]提出的LMS自適應濾波在非平穩(wěn)噪聲下降噪,前端都會有延遲噪聲,殘余噪聲在圖2中表現(xiàn)出過零率前端突出,不可避免地帶來了誤差,并且雙參數(shù)雙門限法能量和過零率參數(shù)對于表達語音的特征自身缺乏抗噪性和魯棒性,不能有效區(qū)分語音和非語音。
本文提出基于IMCRA的高斯統(tǒng)計模型語音增強方法對于被平穩(wěn)和非平穩(wěn)的噪聲污染的語音在重建語音質量上都有顯著的改善,極大地幫助了后續(xù)端點特征的提取工作。如圖2、圖3中本文算法特征參數(shù)相較于其他3種算法整體波形平緩,相差大的語音能量通過本文的特征提取也可以達到上下幅值差距不大,語音段幅度遠高于噪聲段幅度,這樣也避免了閾值的選擇帶來的困惑,最后自適應的閾值也會隨著特征參數(shù)的變化而實時更新門限,相比學者[1-2,8]中固定的閾值在語音的開始端和結束端都會有一個上升或下降的趨勢,此系統(tǒng)對所有環(huán)境下語音的泛化和應變能力得到了提升。
4 結語
經模擬實驗得到驗證,不管在多么嚴峻的平穩(wěn)或非平穩(wěn)的噪聲場景下,相比于經典算法,本文構造的改進方法都能最大限度地保證它必須具有的實際的語音成分,具有判斷端點誤差度量小和檢出率高的優(yōu)勢。此算法對于語音識別前端的預處理項目有一定的參考價值,但是依舊存在不足,一方面如何對算法進行進一步的優(yōu)化以滿足更加復雜的環(huán)境,另一方面保持算法精度的同時降低計算量、縮短運算時間是本文接下來要做的工作。
參考文獻
[1]張毅,王可佳,席兵,等.基于子帶能熵比的語音端點檢測算法[J].計算機科學,2017(5):304-307.
[2]朱春利,李昕.基于LMS減噪與改進的雙門限語音端點檢測方法[J].系統(tǒng)仿真學報,2017(9):1950-1959,1967.
[3]WANG J,YAN L,TIAN J,et al.Speech enhancement algorithm of improved OMLSA based on bilateral spectrogram filtering[J].Journal of Intelligent & Fuzzy Systems,2020(5):6881-6889.
[4]張建偉,陶亮,周健,等.基于改進譜平滑策略的IMCRA算法及其語音增強[J].計算機工程與應用,2017(1):153-157.
[5]吳新忠,夏令祥,張旭,等.基于譜熵梅爾積的語音端點檢測方法[J].北京郵電大學學報,2019(2):83-89.
[6]WANG N,HE M,SUN J,et al.Ia-PNCC:noise processing method for underwater target recognition convolutional neural network[J].Computers,Materials & Continua,2019(1):169-181.
[7]KIM C,STERN R M.Power-normalized cepstral coefficients(PNCC)for robust speech recognition[J]. IEEE/ACM Transactions on Audio,Speech,and Language Processing,2016(7):1315-1329.
[8]陳昊澤,張志杰.基于能量和頻帶方差結合的語音端點檢測方法[J].科學技術與工程,2019(26):249-254.
(編輯 王雪芬)
Abstract: The performance of traditional endpoint detection will fail under low SNR non-stationary noise. Therefore, this paper proposes a method combining the optimal improved logarithmic Spectral Amplitude Estimation (OMLSA) and the Minimum Control Recursive Averaging algorithm (IMCRA) to denoise speech commands containing noise. The first dimension static features of PNCC are extracted as the feature parameters.At the same time, an adaptive threshold is designed based on the single-parameter double-threshold method, which can better track and predict the start and end of the actual speech. Matlab simulation results show that the proposed algorithm has more advantages than the classical algorithm under various non-stationary noises .
Key words: endpoint detection; OMLSA; IMCRA; PNCC; adaptive threshold