【說(shuō)話人識(shí)別】基于MFCC特征結(jié)合VQ特定人孤立詞語(yǔ)音識(shí)別附matlab代碼
1 簡(jiǎn)介
伴隨著計(jì)算機(jī)技術(shù)和信息化技術(shù)的蓬勃發(fā)展,人機(jī)交互技術(shù)扮演著越來(lái)越重要的角
色,人類(lèi)希望計(jì)算機(jī)和人之間的交互能夠突破鼠標(biāo)和鍵盤(pán)等外圍設(shè)備的局限,希望以一個(gè)智能化的方式使得計(jì)算機(jī)和人之間能夠暢通無(wú)阻地交流,于是,語(yǔ)音,作為人的自然屬性,是一個(gè)上上之選。眾所周知,語(yǔ)音,是人與人之間進(jìn)行信息交互的一種最直接的手段,通過(guò)語(yǔ)音,使計(jì)算機(jī)和人能夠直接交流,必然離不開(kāi)語(yǔ)音識(shí)別技術(shù)。廣義的語(yǔ)音識(shí)別是指計(jì)算機(jī)能夠?qū)θ说恼Z(yǔ)音指令進(jìn)行正確的響應(yīng)的一種技術(shù),它包括有語(yǔ)音識(shí)別技術(shù)(識(shí)別語(yǔ)音的內(nèi)容)、說(shuō)話人識(shí)別(也稱(chēng)為聲紋識(shí)別,用來(lái)鑒定說(shuō)話人身份的一種技術(shù))、語(yǔ)種識(shí)別(能夠?qū)ΥR(shí)別的語(yǔ)音的種類(lèi)進(jìn)行識(shí)別)以及說(shuō)話評(píng)分(對(duì)語(yǔ)音的標(biāo)準(zhǔn)程度打分)。
在數(shù)字信息化時(shí)代,互聯(lián)網(wǎng)技術(shù)的發(fā)展使得對(duì)身份驗(yàn)證技術(shù)有更高的要求,不僅需
要安全性好,而且需要便捷和經(jīng)濟(jì),同時(shí)由于傳統(tǒng)的基于密碼的身份驗(yàn)證方法具有很多不安全性,因此,基于信息技術(shù)和生物學(xué)的新一代身份驗(yàn)證方式。目前使用廣泛的基于人的生理特征的生物認(rèn)證方法有指紋識(shí)別、虹膜識(shí)別、人臉識(shí)別和說(shuō)話人識(shí)別等,這些生物認(rèn)證方法在身份鑒定時(shí),安全性和識(shí)別準(zhǔn)確性更高。說(shuō)話人識(shí)別是一種生物認(rèn)證技術(shù),它從采集到的語(yǔ)音信號(hào)中提取出能夠反映說(shuō)話人生理和行為特征的特征參數(shù),從而對(duì)說(shuō)話人身份進(jìn)行自動(dòng)鑒別。在互聯(lián)網(wǎng)技術(shù)和信息技術(shù)的快速發(fā)展趨勢(shì)的推動(dòng)下,說(shuō)話人識(shí)別技術(shù)成為當(dāng)今語(yǔ)音信號(hào)處理領(lǐng)域中的研究熱點(diǎn),它在各個(gè)領(lǐng)域中以其獨(dú)特的方便性、經(jīng)濟(jì)性和準(zhǔn)確性,將會(huì)受到世人矚目。
因?yàn)槊课徽f(shuō)話人的發(fā)音器官都有一定的生理差異,在后天的生活中,都具有一定的
發(fā)音習(xí)慣和行為差異,因此使用語(yǔ)音來(lái)進(jìn)行說(shuō)話人身份驗(yàn)證,有著獨(dú)特的優(yōu)點(diǎn),不僅由于語(yǔ)音是人的自然屬性,具有非接觸性和方便性,這種身份認(rèn)證方式更容易讓用戶(hù)接受,而且采集人的語(yǔ)音的設(shè)備成本不高,同時(shí)采集方便,更重要的是,可以遠(yuǎn)程進(jìn)行身份驗(yàn)證,通過(guò)移動(dòng)電話、電信網(wǎng)絡(luò)或者其他設(shè)備,可以實(shí)現(xiàn)遠(yuǎn)程的客戶(hù)服務(wù),相比其他的生物驗(yàn)證,說(shuō)話人識(shí)別技術(shù)有著廣闊的應(yīng)用前景。說(shuō)話人識(shí)別技術(shù)是一種綜合性的課題,從中涉及到模式識(shí)別、統(tǒng)計(jì)學(xué)理論、人工智能、生理學(xué)以及語(yǔ)音信號(hào)處理等知識(shí)領(lǐng)域。
在對(duì)語(yǔ)音信號(hào)進(jìn)行分析處理之前,需要對(duì)語(yǔ)音信號(hào)進(jìn)行預(yù)處理,預(yù)處理步驟包括對(duì)
語(yǔ)音信號(hào)進(jìn)行預(yù)加重、分幀、加窗和端點(diǎn)檢測(cè)等。
(1) 預(yù)加重
因?yàn)榘l(fā)聲過(guò)程中聲帶和嘴唇的效應(yīng),語(yǔ)音信號(hào)在 8000Hz 以上的高頻時(shí)約按 6dB/oct衰減,為此需要在預(yù)處理中進(jìn)行預(yù)加重。預(yù)加重的目的是提升高頻部分,使信號(hào)的頻譜變得平坦,有利于進(jìn)行頻譜分析或聲道參數(shù)的分析。預(yù)加重可以在防混疊濾波與 A/D 轉(zhuǎn)換之前進(jìn)行,這樣,不僅能夠進(jìn)行預(yù)加重,而且可以壓縮信號(hào)的動(dòng)態(tài)范圍,有效地提高信噪比,預(yù)加重也可以在 A/D 轉(zhuǎn)換之后進(jìn)行,用具有 6dB/oct 地提升高頻特征預(yù)加重?cái)?shù)字濾波器實(shí)現(xiàn)。其公式為

(2) 分幀和加窗
語(yǔ)音信號(hào)是一種非平穩(wěn)的時(shí)域信號(hào),但是具有短時(shí)平穩(wěn)性,即語(yǔ)音信號(hào)在短時(shí)間內(nèi)
可以看做是平穩(wěn)信號(hào),研究發(fā)現(xiàn),在?5~50ms?的范圍內(nèi),語(yǔ)音頻譜特征和一些物理特性參數(shù)基本保持不變,因此需要對(duì)語(yǔ)音信號(hào)進(jìn)行分幀,即將語(yǔ)音信號(hào)劃分為很多短時(shí)間的語(yǔ)音段,每個(gè)短時(shí)間的語(yǔ)音段稱(chēng)為一個(gè)分析幀,在一幀的語(yǔ)音信號(hào)中,可以采用平穩(wěn)過(guò)程的分析處理方法來(lái)處理每一幀的信號(hào)。幀既可以是連續(xù)的,也可以是交疊分幀,一般幀長(zhǎng)為?10~30ms,取數(shù)據(jù)時(shí),前后兩幀的交疊部分稱(chēng)為幀移,幀移一般取幀長(zhǎng)的?0~1/2。
信號(hào)進(jìn)行分幀處理截短后,將會(huì)產(chǎn)生能量泄漏現(xiàn)象,分幀后的加窗處理,就是用一
個(gè)窗函數(shù)與信號(hào)相乘,從而形成加窗信號(hào),其作用是減少分幀處理所帶來(lái)的頻譜泄露,對(duì)提取的語(yǔ)音信號(hào)進(jìn)行研究。在分幀的時(shí)候,相當(dāng)于用一個(gè)矩形窗與語(yǔ)音信號(hào)進(jìn)行頻譜的周期卷積,由于矩形窗頻譜的旁瓣較高,信號(hào)的頻譜會(huì)產(chǎn)生“拖尾”,即頻譜泄漏,泄漏與窗函數(shù)頻譜的兩側(cè)旁瓣有關(guān),如果兩瓣的高度趨于零,而使得能量相對(duì)集中在主瓣,就可以接近真實(shí)的頻譜。因此可以采用不同的窗函數(shù)進(jìn)行加窗處理,可以減低頻譜泄露的影響,得到平滑的頻譜。設(shè)窗長(zhǎng)為 N,窗函數(shù)主要有下面幾種:
z矩形窗

語(yǔ)音端點(diǎn)檢測(cè)是通過(guò)數(shù)字化處理方法去檢測(cè)語(yǔ)音的端點(diǎn),把語(yǔ)音中的干擾和噪聲去
除,區(qū)分噪聲段和語(yǔ)音段,把需要的語(yǔ)音部分提取出來(lái)的一種語(yǔ)音處理方法。端點(diǎn)檢測(cè)是語(yǔ)音分析、合成和識(shí)別中不可缺少的一部分。端點(diǎn)檢測(cè)的準(zhǔn)確性直接影響到識(shí)別系統(tǒng)的性能,較高的端點(diǎn)檢測(cè)能夠在識(shí)別中防止噪聲的影響,提高識(shí)別精度,同時(shí)可以在語(yǔ)音分析中能夠減少計(jì)算量和處理時(shí)間,優(yōu)化系統(tǒng)性能,在應(yīng)用環(huán)境下,難以得到純凈的語(yǔ)音段,由于錄音環(huán)境、音頻收集設(shè)備和其他的傳輸系統(tǒng),都會(huì)帶來(lái)一定的噪聲影響,因此如何在噪聲的影響下,如何得到準(zhǔn)確的檢測(cè)語(yǔ)音的端點(diǎn),是語(yǔ)音信號(hào)處理的一個(gè)重要的研究方向。
目前,在時(shí)域上,常用的端點(diǎn)檢測(cè)方法有基于短時(shí)能量法、基于過(guò)零率法、基于短
時(shí)能量和過(guò)零率的雙門(mén)限端點(diǎn)檢測(cè)方法。在頻域上,常用的端點(diǎn)檢測(cè)方法有基于子帶譜熵和基于頻帶方差的端點(diǎn)檢測(cè)算法等。這些方法在背景噪聲的影響下,不是識(shí)別準(zhǔn)確性不高,就是計(jì)算量大,影響系統(tǒng)的整體性能。
在實(shí)際應(yīng)用中,有效的端點(diǎn)檢測(cè)具體要求是:(1)設(shè)置的門(mén)限值要根據(jù)背景噪聲的變化做自適應(yīng)調(diào)整,滿(mǎn)足在不同的環(huán)境下進(jìn)行端點(diǎn)檢測(cè);
(2)不能丟失語(yǔ)音的一些能量較低的有效成分,比如爆破音和鼻音等,否則會(huì)影響最后的識(shí)別效果;
(3)能夠在各種噪聲環(huán)境下都具有準(zhǔn)確的檢測(cè)效果;
(4)計(jì)算量小,應(yīng)用方便。在說(shuō)話人識(shí)別中,端點(diǎn)檢測(cè)的主要是為了得到說(shuō)話人語(yǔ)音的起始端點(diǎn)。有效的端點(diǎn)檢測(cè)方法,不僅能減少整個(gè)系統(tǒng)的計(jì)算量,而且有利于系統(tǒng)的實(shí)時(shí)識(shí)別,提高系統(tǒng)的整體性能。?






2 部分代碼
function d = disteu(x, y)
[M, N] = size(x); ?%1音頻x賦值給【M,N】
[M2, P] = size(y); %音頻y賦值給【M2,P】
if (M ~= M2)
? ?error('不匹配!') ?%兩個(gè)音頻時(shí)間長(zhǎng)度不相等
end
d = zeros(N, P);
if (N < P)%在兩個(gè)音頻時(shí)間長(zhǎng)度相等的前提下 ? ?
? ?copies = zeros(1,P); ?
? ?for n = 1:N ? ? ? ?
? ? ? ?d(n,:) = sum((x(:, n+copies) - y) .^2, 1); ? ?
? ?end
else
? ?copies = zeros(1,N); ?
? ?for p = 1:P
? ? ? ?d(:,p) = sum((x - y(:, p+copies)) .^2, 1)'; ?
? ?end%%成對(duì)歐氏距離的兩個(gè)矩陣的列之間的距離
end
d = d.^0.5;
3 仿真結(jié)果

4 參考文獻(xiàn)
[1]王偉, 鄧輝文. 基于MFCC參數(shù)和VQ的說(shuō)話人識(shí)別系統(tǒng)[C]// 第四屆全國(guó)信息獲取與處理學(xué)術(shù)會(huì)議. 0.