韓芳+王學(xué)春++靳宗信
摘 要: 自相關(guān)函數(shù)法是基音周期提取中一種簡(jiǎn)單而有效的檢測(cè)算法,針對(duì)傳統(tǒng)的自相關(guān)函數(shù)法在低信噪比環(huán)境下魯棒性較差的問(wèn)題,提出一種改進(jìn)的基音周期提取算法。該算法通過(guò)譜減法對(duì)語(yǔ)音信號(hào)降噪,隨后進(jìn)行端點(diǎn)檢測(cè),并提取元音的主體,在自相關(guān)函數(shù)的基礎(chǔ)上進(jìn)行改進(jìn),對(duì)元音主體及過(guò)渡區(qū)間進(jìn)行基音檢測(cè)。實(shí)驗(yàn)結(jié)果表明,該算法具有較高的準(zhǔn)確率,與傳統(tǒng)自相關(guān)檢測(cè)算法相比,魯棒性明顯提高。
關(guān)鍵詞: 基音周期; 自相關(guān)函數(shù); 譜減法; 基音檢測(cè); 語(yǔ)音處理
中圖分類號(hào): TN912.3?34 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2017)19?0071?04
Improved pitch detection algorithm based on ACF
HAN Fang, WANG Xuechun, JIN Zongxin
(School of Information Engineering, Huanghe Science & Technology College, Zhengzhou 450063, China)
Abstract: Autocorrelation function (ACF) method is a simple and effective detection algorithm in pitch periodic extraction. Aiming at the poor robustness of the traditional ACF method in a low SNR environment, an improved pitch periodic extraction algorithm is proposed. In this algorithm, the spectral subtraction method is used to reduce noise in speech signals, endpoint detection is performed, main vowels are extracted and improved on the basis of the ACF, and pitch detection is performed for main vowels and the transition zone. The experimental results show that the algorithm has a higher accuracy rate, and the robustness is improved significantly in comparison with the traditional autocorrelation detection algorithm.
Keywords: pitch period; autocorrelation function; spectral subtraction; pitch detection; speech processing
0 引 言
基音周期是語(yǔ)音信號(hào)處理的一個(gè)重要參數(shù),準(zhǔn)確可靠地對(duì)語(yǔ)音信號(hào)進(jìn)行估計(jì)并提取基音周期,是語(yǔ)音信號(hào)處理的一個(gè)重要環(huán)節(jié)[1?2]?;魴z測(cè)廣泛地應(yīng)用于語(yǔ)音分析合成、語(yǔ)音壓縮編碼、語(yǔ)音識(shí)別以及語(yǔ)音分段等方面[3],研究人員們已經(jīng)提出了許多基音檢測(cè)算法, 例如自相關(guān)函數(shù)法(Autocorrelation Function,ACF)[4]、平均幅度差函數(shù)法(Average Magnitude Difference Function, AMDF)[5]、小波變換法[6?7]、倒譜法[8]等。理論上,這些算法都可以精確地提取無(wú)噪聲干擾的語(yǔ)音基音周期。但通常得到的語(yǔ)音信號(hào)含有各種各樣的背景噪聲 ,當(dāng)信噪比較低時(shí),檢測(cè)的準(zhǔn)確率就不夠理想,所以有必要找到一種低信噪比下魯棒性較好的基音周期檢測(cè)算法。
自相關(guān)函數(shù)是適用于低信噪比情況下的一種基音周期提取算法[9?10],利用自相關(guān)函數(shù)進(jìn)行基音提取時(shí),過(guò)渡區(qū)間獲得的基音周期估算值往往是實(shí)際基音周期值的整數(shù)倍或半值,過(guò)渡區(qū)內(nèi)提取基音參數(shù)時(shí),也常會(huì)出現(xiàn)野點(diǎn),當(dāng)野點(diǎn)個(gè)數(shù)較多或幅值較大時(shí),用中值濾波和線性平滑也很難來(lái)處理這些問(wèn)題。文獻(xiàn)[11]中提出利用小波變換對(duì)語(yǔ)音信號(hào)進(jìn)行預(yù)處理,與自相關(guān)函數(shù)相結(jié)合,在一定程度上消除了高頻噪聲和共振峰的影響,但是在低信噪比情況下效果非常不理想。文獻(xiàn)[12]中提出將譜減法和自相關(guān)函數(shù)法相結(jié)合,利用譜減法對(duì)語(yǔ)音信號(hào)進(jìn)行消噪,然后再提取基音周期,在一定程度上改善了低信噪比下基音檢測(cè)的準(zhǔn)確率,但是仍然不夠理想。
基于以上文獻(xiàn)對(duì)基音周期檢測(cè)算法的分析,本文基于音節(jié)組成的原理,在自相關(guān)函數(shù)算法的基礎(chǔ)上先提取元音主體的基音周期,然后在元音主體基音周期的基礎(chǔ)上向前和向后過(guò)渡區(qū)間延伸基音的提取,把元音主體的基音周期值作為基準(zhǔn),向兩端過(guò)渡區(qū)間擴(kuò)展搜索和尋找最接近于元音主體基音的基音周期值,這樣可以減少發(fā)生基音周期估算值是實(shí)際基音周期值的整數(shù)倍或半值的現(xiàn)象。為了提高低信噪比下基音檢測(cè)的準(zhǔn)確率,本文將譜減法與提出的改進(jìn)自相關(guān)函數(shù)法相結(jié)合,首先對(duì)帶噪語(yǔ)音進(jìn)行降噪,再將增強(qiáng)后的語(yǔ)音作為基音檢測(cè)的待處理語(yǔ)音進(jìn)行加窗分幀處理,并對(duì)語(yǔ)音進(jìn)行端點(diǎn)檢測(cè)和元音主體檢測(cè),通過(guò)數(shù)字濾波和再次加窗分幀,計(jì)算元音主體延伸區(qū)間及長(zhǎng)度,并對(duì)元音主體和過(guò)渡區(qū)間進(jìn)行基音檢測(cè),最后通過(guò)平滑濾波處理。仿真結(jié)果表明,該方法在一定程度上減小了基音提取誤差,并在不同的信噪比下取得了滿意效果。
1 譜減法
在基本譜減法[13]中,假設(shè)語(yǔ)音信號(hào)為[x(n)],對(duì)[x(n)]進(jìn)行加窗分幀處理,得到第[i]幀語(yǔ)音信號(hào)[xi(m)],對(duì)每一幀語(yǔ)音信號(hào)[xi(m)]進(jìn)行離散傅里葉變換(Discrete Fourier Transform,DFT)后得到:
[Xi(k)=m=0N-1xi(m)expj2πmkN,k=0,1,2,…,N-1] (1)
式中:[xi(m)]為語(yǔ)音信號(hào)[x(n)]加窗分幀后第[i]幀語(yǔ)音信號(hào),每幀幀長(zhǎng)為[N。]
然后對(duì)[Xi(k)]求出每個(gè)分量的幅值和相角,幅值和相角分別為[Xi(k)]和[Xiangle(k)=arctanImXi(k)ReXi(k)],在譜減法中將幅值和相角保存。通過(guò)已知的前導(dǎo)無(wú)話段時(shí)長(zhǎng)為IS,對(duì)應(yīng)的幀數(shù)為NIS,求出該噪聲段平均能量值[D(k)=1NISi=1NISXi(k)2]。譜減算法為:
4.2 實(shí)驗(yàn)結(jié)果分析
為了驗(yàn)證本文方法的性能,在SNR=5 dB時(shí),用ACF方法、文獻(xiàn)[11?12]提出的方法以及本文提出算法對(duì)它們的基音檢測(cè)性能進(jìn)行對(duì)比分析。實(shí)驗(yàn)中基音檢測(cè)性能的好壞用檢測(cè)的正確率進(jìn)行衡量。定義基頻正確率為:
[檢測(cè)正確率=正確幀數(shù)處理總幀數(shù)] (7)
以ACF為基礎(chǔ),人工標(biāo)記的方法設(shè)定參照的基音頻率,如果實(shí)際計(jì)算的基音頻率和參照的基音頻率值誤差在10 Hz之內(nèi),則認(rèn)為檢測(cè)的幀都是正確的,結(jié)果如表1所示。
從圖7可以看出,文獻(xiàn)[11?12]提出的小波?自相關(guān)法和譜減?自相關(guān)算法在高信噪比下較ACF方法有了較大提高,但是隨著信噪比的增大,基音檢測(cè)的正確率有了一定的提高,但是在低信噪比下這兩種算法均不能很好地提取基音周期,效果不理想,而本文提出的基于ACF的改進(jìn)算法在相同信噪比下較其他三種算法,其基音檢測(cè)的正確率有明顯的提高,在高信噪比下(SNR=20 dB)準(zhǔn)確率達(dá)到97%,即使在低信噪比下(SNR=-5 dB)準(zhǔn)確率也達(dá)到了70%。當(dāng)信噪為0 dB時(shí),基音檢測(cè)的正確率也達(dá)到了94%,從上述實(shí)驗(yàn)分析可知,本文方法在SNR[≥]0 dB時(shí),基音檢測(cè)都能得到很好的效果,說(shuō)明本文建議的基音檢測(cè)算法具有較強(qiáng)的抗噪性。
雖然基音檢測(cè)算法好壞的指標(biāo)由檢測(cè)正確率來(lái)判斷,但是在實(shí)際應(yīng)用中還要考慮到算法運(yùn)行的時(shí)間問(wèn)題。圖8是自相關(guān)方法、小波?自相關(guān)方法、譜減?自相關(guān)方法和本文算法的運(yùn)行時(shí)間對(duì)比圖,從圖8中可以看出,自相關(guān)算法檢測(cè)用時(shí)最短,譜減?自相關(guān)方法次之,本文算法運(yùn)用時(shí)間在譜減?自相關(guān)方法和小波?自相關(guān)方法之間,從實(shí)際應(yīng)用領(lǐng)域的角度來(lái)說(shuō),本文方法還需要進(jìn)一步減少運(yùn)行時(shí)間。
5 結(jié) 論
本文提出一種改進(jìn)的自相關(guān)函數(shù)法,結(jié)合譜減法作為預(yù)處理對(duì)噪聲進(jìn)行降噪,再利用改進(jìn)的方法進(jìn)行基音檢測(cè)。仿真結(jié)果表明,該方法在不同的信噪比下能很好地檢測(cè)出基音周期,在信噪比為0 dB的情況下仍然有很高的檢測(cè)正確率,對(duì)語(yǔ)音信號(hào)的基音周期的提取提高了檢測(cè)精度,也具有很好的魯棒性。
參考文獻(xiàn)
[1] 劉維巍.語(yǔ)音信號(hào)基音周期檢測(cè)算法研究[D].哈爾濱:哈爾濱工程大學(xué),2010.
[2] 李坤,劉加.基于小波變換和線性預(yù)測(cè)的基音提取[J].計(jì)算機(jī)工程,2010,36(10):276?278.
[3] 趙靜,羅興國(guó),蔡文濤.噪聲環(huán)境下語(yǔ)音信號(hào)的基音檢測(cè)[J].電聲技術(shù),2007,31(3):54?56.
[4] KRUBSACK D A, NIEDERJOHN R J. An autocorrelation pitch detector and voicing decision with confidence measures developed for noise?corrupted speech [J]. IEEE transactions on signal processing, 1991, 39(2): 319?329.
[5] ROSS M, SHAFFER H, COHEN A, et a1. Average magnitude difference function pitch extractor [J]. IEEE transactions on acoustics speech & signal processing, 1974, 22(5): 353?362.
[6] CAI R, ZHU Y, SHI S. A modified pitch detection method based on wavelet transform [C]// Proceedings of 2010 International Conference on Multimedia & Information Technology. [S.l.]: IEEE, 2010: 246?249.
[7] KADAMBE S, BOUDREAUX?BARTELS G F. Application of the wavelet transform for pitch detection of speech signals [J]. IEEE transactions on information theory, 1992, 38(2): 917?924.
[8] AHMADI S, SPANIAS A S. Cepstrum?based pitch detection using a new statistical V/UV classification algorithm [J]. IEEE transactions on speech & audio processing, 2002, 7(3): 333?338.
[9] 陳小利.含噪語(yǔ)音基音周期檢測(cè)算法的研究[D].鄭州:解放軍信息工程大學(xué),2007.
[10] 沈曉東.語(yǔ)音增強(qiáng)技術(shù)研究[D].北京:清華大學(xué),2010.
[11] 李鵬飛,張維強(qiáng),徐晨.基于小波變換和自相關(guān)函數(shù)的基音頻率檢測(cè)算法[J].現(xiàn)代電子技術(shù),2009,29(32):121?123.
[12] 趙振東,胡喜梅,田景峰.基于譜減法的基音檢測(cè)算法[J].計(jì)算機(jī)工程與應(yīng)用,2008,44(5):197?198.
[13] 肖全寶,徐晨,宋廣為.用于語(yǔ)音識(shí)別的基于高譜分辨率的譜減法[J].廣西師范大學(xué)學(xué)報(bào),2006,24(4):26?29.
[14] 焦蓓.語(yǔ)音信號(hào)的基音檢測(cè)法研究[D].湘潭:湘潭大學(xué),2013:56?62.