劉興亮,姚劍敏,郭太良
(福州大學(xué) 物理與信息工程學(xué)院,福建 福州 350116)
基于LPC的混響時(shí)間估計(jì)算法*
劉興亮,姚劍敏,郭太良
(福州大學(xué) 物理與信息工程學(xué)院,福建 福州 350116)
準(zhǔn)確計(jì)算混響時(shí)間需要知道房間的尺寸、墻壁的吸聲系數(shù)等。經(jīng)典的混響時(shí)間盲估計(jì)方法可以避免這些條件,但需要事先提供一個(gè)沖激信號(hào)。文章對(duì)經(jīng)典算法進(jìn)行了改進(jìn),提出了一種基于線性預(yù)測(cè)的混響時(shí)間盲估計(jì)算法。首先,將采集到的語(yǔ)音通過(guò)一個(gè)低階的線性預(yù)測(cè)濾波器來(lái)獲得線性預(yù)測(cè)殘差信號(hào);其次,計(jì)算殘差信號(hào)的自相關(guān),并選取合適的部分;最后,將選取的部分通過(guò)一個(gè)最大似然估計(jì)器,提取參數(shù)計(jì)算混響時(shí)間。文章還提出了一種改進(jìn)的二分法來(lái)求解最大似然估計(jì)方程。實(shí)驗(yàn)證明,與經(jīng)典算法相比,所提出算法估計(jì)的混響時(shí)間精度更高,且更具有實(shí)時(shí)性。
線性預(yù)測(cè)編碼濾波器;線性預(yù)測(cè)殘差信號(hào);最大似然估計(jì);無(wú)偏自相關(guān)函數(shù)
混響是聲音在密閉空間中經(jīng)過(guò)內(nèi)部障礙物等反射面多次連續(xù)反射產(chǎn)生的,它可使語(yǔ)音的質(zhì)量和清晰度惡化,導(dǎo)致語(yǔ)音處理系統(tǒng)(電話會(huì)議、自動(dòng)語(yǔ)音識(shí)別系統(tǒng)等)性能下降。在許多重要的應(yīng)用中(例如助聽(tīng)器以及免提電話),一種改善系統(tǒng)性能的策略就是估計(jì)房間聲學(xué)參數(shù)(主要是混響時(shí)間),同時(shí)利用最合適的方法消除混響[1-2]。另外,在許多語(yǔ)音處理應(yīng)用中混響時(shí)間也需要計(jì)算[3-6]。
混響時(shí)間是房間聲學(xué)的一個(gè)重要特征,它實(shí)質(zhì)是描述房間沖激響應(yīng)(RIR)的特征。聲源停止發(fā)聲后,聲能密度的空間均值衰減60 dB所需時(shí)間定義為混響時(shí)間。目前,估計(jì)混響時(shí)間的方法主要有三種,分別是基于時(shí)域RIR的方法[7]、基于房間尺寸以及障礙物吸聲系數(shù)的方法[8]和基于語(yǔ)音的盲估計(jì)方法[9-12]。RIR會(huì)隨著聲源位置、房間溫度和障礙物位置的變化而變化,計(jì)算比較困難;房間的大小以及墻壁的吸聲系數(shù)實(shí)際也不易獲取。還有通過(guò)檢測(cè)聲源停止發(fā)聲后聲音能量衰減來(lái)衡量[7],這種方法需要提供一個(gè)沖激信號(hào)。因此,以上方法無(wú)法應(yīng)用到實(shí)時(shí)語(yǔ)音處理系統(tǒng)中去。
混響時(shí)間盲估計(jì)的方法發(fā)展至今,出現(xiàn)了許多不同的思路。利用逆調(diào)制傳輸函數(shù)濾波器[10]來(lái)存儲(chǔ)能量包絡(luò)的方法計(jì)算量大,不滿足實(shí)時(shí)性要求;基于時(shí)頻域房間衰減模型[13]的方法對(duì)語(yǔ)音的長(zhǎng)度有要求;一些基于最大似然估計(jì)的方法不適用于噪聲環(huán)境,還有一些方法需要語(yǔ)音中的話語(yǔ)之間要有一定長(zhǎng)度的停頓。
針對(duì)經(jīng)典混響時(shí)間盲估計(jì)方法計(jì)算復(fù)雜、精度不高且不滿足實(shí)時(shí)性要求的問(wèn)題,本文提出了一種基于線性預(yù)測(cè)的混響時(shí)間盲估計(jì)算法,不僅使得精度提高,還滿足實(shí)時(shí)性要求。
1.1 混響時(shí)間計(jì)算公式
混響的理論是由Sabine在1900年提出來(lái)的,他通過(guò)大量的實(shí)驗(yàn),得到混響時(shí)間RT60的計(jì)算公式為:
(1)
其中,V表示房間的容積,A表示房間的吸聲量。
Sabine的理論開(kāi)啟了建筑聲學(xué)的研究熱潮,人們按照聲學(xué)原理設(shè)計(jì)劇院和音樂(lè)廳取得了很好的效果。Sabine的理論意義巨大,但是也有局限性。對(duì)于當(dāng)前熱門的人工智能來(lái)說(shuō),機(jī)器的位置是任意的,而快速地獲取房間的尺寸以及障礙物的吸聲系數(shù)是不現(xiàn)實(shí)的。
1.2 經(jīng)典混響時(shí)間盲估計(jì)算法
經(jīng)典混響時(shí)間盲估計(jì)算法是由Ratnam[11]等人在2003年提出來(lái)的。該算法首先模擬房間混響,得到近似的房間沖激響應(yīng)函數(shù),然后利用最大似然估計(jì)獲取相關(guān)參數(shù),最后計(jì)算混響時(shí)間。
混響時(shí)間為200 ms的房間沖激響應(yīng)波形如圖1所示。
大多數(shù)情況下,RIR可以根據(jù)Polack模型表示成一種非平穩(wěn)隨機(jī)過(guò)程[14]:
(2)
經(jīng)典算法通過(guò)沖激信號(hào)模擬房間沖激響應(yīng),然后通過(guò)最大似然估計(jì)來(lái)求解參數(shù)a的值。該算法的復(fù)雜之處主要集中在房間沖激響應(yīng)估計(jì)部分和最大似然估計(jì)部分。算法開(kāi)始需要提供一個(gè)沖激信號(hào),而沖激信號(hào)在現(xiàn)實(shí)環(huán)境下是不易獲取的,對(duì)于一個(gè)實(shí)時(shí)系統(tǒng)來(lái)說(shuō),實(shí)時(shí)地產(chǎn)生沖激信號(hào)是不現(xiàn)實(shí)的。同時(shí),經(jīng)典算法利用牛頓迭代法來(lái)求解最大似然估計(jì)問(wèn)題,其對(duì)初值要求比較高且局部收斂,計(jì)算復(fù)雜度高。
1.3 本文提出的基于線性預(yù)測(cè)的混響時(shí)間盲估計(jì)算法
為了避免算法對(duì)沖激信號(hào)的依賴,同時(shí)減小算法計(jì)算的復(fù)雜度,本文對(duì)經(jīng)典算法進(jìn)行了改進(jìn)。算法的整體框架不變,對(duì)房間沖激響應(yīng)估計(jì)部分和最大似然估計(jì)部分進(jìn)行了改進(jìn)。算法的思路是從采集到的語(yǔ)音信號(hào)(非沖激信號(hào))中提取估計(jì)RT60所需要的信息,將采集到的語(yǔ)音通過(guò)線性預(yù)測(cè)濾波器得到線性預(yù)測(cè)殘差信號(hào),再計(jì)算殘差信號(hào)的自相關(guān),幀平均后選取合適的部分作為最大似然估計(jì)的輸入,估計(jì)參數(shù)a,最后求解混響時(shí)間。算法的流程如圖2所示。
1.3.1 線性預(yù)測(cè)殘差信號(hào)模型分析
假設(shè)噪聲為零,混響環(huán)境下接收到的語(yǔ)音可以表示為:
x[n]=s[n]*h[n]
(3)
其中,x[n]、s[n]、h[n]分別表示麥克風(fēng)采集到的語(yǔ)音信號(hào)、源語(yǔ)音信號(hào)以及時(shí)不變房間沖激響應(yīng)。
語(yǔ)音信號(hào)s[n]可以表示為一個(gè)激勵(lì)信號(hào)e[n]和一個(gè)聲道濾波器v[n]的卷積[16],所以式(3)可以表示為:
x[n]=e[n]*v[n]*h[n]
(4)
聲道的影響可以通過(guò)線性預(yù)測(cè)濾波器(全極點(diǎn)濾波器)來(lái)消除[16]。LPC的系數(shù)可以通過(guò)計(jì)算信號(hào)的相關(guān)性來(lái)獲取,同時(shí)假設(shè)RIR濾波器是一個(gè)非相干過(guò)程,當(dāng)LPC濾波器的階數(shù)很小時(shí)(32ms的幀長(zhǎng)時(shí)設(shè)置為10),它可以近似移除混響語(yǔ)音信號(hào)中的聲道濾波器的影響。因此,假設(shè)LPC濾波器能夠?qū)[n]中的v[n]移除,線性預(yù)測(cè)殘差信號(hào)可以近似表示為:
(5)
=(e[n]*h[n])*(e[-n]*h[-n])
=e[n]*e[-n]*h[n]*h[-n] =Ce[n]*Ch[n]
(6)
其中Ce[n]和Ch[n]分別是e[n]和h[n]的自相關(guān)函數(shù)。h[n]的自相關(guān)以及它與e[n]自相關(guān)卷積情況如圖3所示,其中e[n]用一幀殘差信號(hào)來(lái)表示。
由圖3可以觀察到 :
(7)
混響時(shí)間為300ms的語(yǔ)音處理后截取的合適部分如圖5所示。這部分做為最大似然估計(jì)的輸入,最終估計(jì)出的混響時(shí)間是292ms,非常靠近300ms。
1.3.2 最大似然估計(jì)模型
(8)
(9)
(10)
(11)
剩下的問(wèn)題就是如何解方程組。
利用牛頓迭代法求解最大似然估計(jì)方程組復(fù)雜度較高且局部收斂,本文提出了一種二分法,可以快速求解方程。RT60的范圍設(shè)置為0.1 s~3 s,時(shí)間精度設(shè)置為0.01 s,方法的流程如下:
(1)初始化
T60_min=0.1;T60_max=3;t_accur=0.01;
Num_iter=log2((T60_max-T60_min)/t_accur);
t_accur表示時(shí)間精度,Num_iter表示迭代的次數(shù)。
(2)迭代
T(i)=(T60_max+T60_min)/2
a(i)=exp (-6.91/T(i))
g(i)>0 then T60_min=T(i)
g(i)<0 then T60_max=T(i)
該方法的優(yōu)點(diǎn)是不用初始化a,能夠快速收斂。
實(shí)驗(yàn)所使用的混響語(yǔ)音信號(hào)是利用純凈語(yǔ)音信號(hào)與RIR卷積合成的。其中,純凈語(yǔ)音信號(hào)取自TIMIT數(shù)據(jù)庫(kù),采樣頻率為16 kHz;RIR是根據(jù)image方法[17]來(lái)構(gòu)建的。構(gòu)建的RIR的混響時(shí)間范圍為0.1 s~1 s,對(duì)應(yīng)的房間大小從2.5 m×3.5 m×2 m到6 m×6 m×4 m,同時(shí)對(duì)麥克風(fēng)和聲源的位置進(jìn)行了相應(yīng)的設(shè)定。將本文算法與經(jīng)典方法進(jìn)行對(duì)比。利用這兩種方法分別對(duì)混響時(shí)間為0.1 s~1 s的10組語(yǔ)音信號(hào)進(jìn)行估計(jì)。本次實(shí)驗(yàn)采用的窗長(zhǎng)度為300 ms。本文算法與經(jīng)典算法估計(jì)出的混響時(shí)間與真實(shí)值之間的關(guān)系如圖6所示。由圖6可知,本文算法的混響時(shí)間估計(jì)值明顯與混響時(shí)間實(shí)際值更加貼近,Ratnam方法對(duì)混響時(shí)間的估計(jì)值誤差較大,且越偏越遠(yuǎn)。
算法若滿足實(shí)時(shí)性的要求,必須減少對(duì)語(yǔ)音長(zhǎng)度的依賴。為了驗(yàn)證算法的實(shí)時(shí)性能,從同一混響語(yǔ)音信號(hào)中截取長(zhǎng)度為1 s~10 s的語(yǔ)音段,利用它們來(lái)估計(jì)混響時(shí)間,并分析混響時(shí)間的估計(jì)誤差,誤差計(jì)算公式如下:
(12)
由圖7可以看出,當(dāng)語(yǔ)音長(zhǎng)度大于等于5s時(shí),相對(duì)誤差較小甚至趨于穩(wěn)定;語(yǔ)音長(zhǎng)度在3s~5s之間時(shí),誤差也在可接受范圍之內(nèi)。這種效果基本滿足實(shí)時(shí)性要求。
本文提出了一種基于線性預(yù)測(cè)的方法來(lái)估計(jì)混響時(shí)間,該算法直接利用接收到的語(yǔ)音作為系統(tǒng)輸入,不用再另外提供沖激信號(hào)。利用合適的窗函數(shù)對(duì)接收到的信號(hào)進(jìn)行分幀,然后利用低階線性預(yù)測(cè)編碼濾波器來(lái)獲取殘差信號(hào)。計(jì)算每一幀殘差信號(hào)的自相關(guān),然后求平均,消除信道以及其他因素的影響。本文還提出了一種快速求解最大似然估計(jì)方程組的方法,使得算法效率更高。利用本文算法估計(jì)的混響時(shí)間誤差不超過(guò)0.1 s,相對(duì)于經(jīng)典的混響盲估計(jì)算法,精度提高了至少15%,且算法對(duì)于語(yǔ)音長(zhǎng)度的要求也不高,3 s~5 s的語(yǔ)音相對(duì)誤差已經(jīng)很小,滿足實(shí)時(shí)性的要求。本研究為后續(xù)語(yǔ)音混響消除做了鋪墊。
[1] COUVREUR L, COUVREUR C. Blind model selection for automatic speech recognition in reverberant environments[J]. Journal of Signal Processing Systems, 2004, 36(2):189-203.
[2] GAMMAL J S, GOUBRAN R A. Combating reverberation in speaker verification[C]. IEEE Instrumentation & Measurement Technology Conference, 2005:687-690.
[3] HEINRICH W L. L?LLMANN (EURASIP Member), VARY P. Low delay noise reduction and dereverberation for hearing aids[J]. Journal on Advances in Signal Processing, 2009, 2009(1):1-9.
[4] HABETS E A P, GAUBITCH N D, NAYLOR P A. Temporal selective dereverberation of noisy speech using one microphone[C]. IEEE International Conference on Acoustics, 2008:4577-4580.
[5] MOSAYYEBPOUR S, SHEIKHZADEH H, GULLIVER T A, et al. Single-microphone LP residual skewness-based inverse filtering of the room impulse response[J]. IEEE Transactions on Audio Speech & Language Processing, 2012, 20(5):1617-1632.
[6] MOSAYYEBPOUR S, SAYYADIYAN A, MOHAMMADI E S, et al. Time delay estimation using one microphone inverse filtering in highly reverberant room[C]. International Conference on Signal Acquisition and Processing, IEEE, 2010:140-144.
[7] SCHROEDER M R. New method of measuring reverberation time[J]. Journal of the Acoustical Society of America, 1965, 37(3):409-412.
[8] SABINE W C, EGAN M D. Collected papers on acoustics[M]. Collected Papers on Acoustics. Harvard University Press, 1922.
[9] VESA S, HARMA A. Automatic estimation of reverberation time from binaural signals[C]. IEEE International Conference on Acoustics, 2005:281-284.
[10] UNOKI M, HIRAMATSU S. Blind estimation method of reverberation time based on concept of modulation transfer function[J]. Journal of the Acoustical Society of America, 2008, 123(5):3616.
[11] RATNAM R, JONES D L, O'BRIEN W D. Fast algorithms for blind estimation of reverberation time[J]. IEEE Signal Processing Letters, 2004, 11(6):537-540.
[12] L?LLMANN H W, VARY P. Estimation of the reverberation time in noisy environments[C]. In Proc. Int. Workshop Acoust. Echo Noise Control(IWAENC), 2008:1-4.
[13] WEN J Y C, HABETS E A P, NAYLOR P A. Blind estimation of reverberation time based on the distribution of signal decay rates[C]. IEEE International Conference on Acoustics, 2008:329-332.
[14] HABETS E. Single and multi-microphone speech dereverberation using spectral enhancement[D]. Eindhoven: Eindhoven University of Techn.,2007.
[15] MOORER J A. About this reverberation business[J]. Computer Music Journal, 1985, 3(2):605-639.
[16] BELLANGER M G. Digital processing of speech signals[M]. New Jersey: Prentice-Hall, 1978.
[17] ALLEN J B, BERKLEY D A. Image method for efficiently simulating small-room acoustics[J]. Journal of the Acoustical Society of America, 1976, 60(S1):943-950.
A algorithm of blind reverberation time estimation based on LPC filter
Liu Xingliang, Yao Jianmin, Guo Tailiang
(College of Physics and Information Engineering, Fuzhou University, Fuzhou 350116, China)
Accurate calculation of the reverberation time need to know the size of the room and the absorption characteristics of the walls .Classical method of blind reverberation time estimation can estimate the reverberation time without knowing the size of the room and the absorption characteristics of the walls, but have to provide an impulse signal. In this paper, we proposed a linear prediction based method. Firstly, the input speech is passed through a low order linear prediction coding filter to obtain the LP residual signal. Then, calculating the autocorrelation function of the LP residual signal and extracting the appropriate portion. Lastly, calculating the reverberation time with the ML estimator whose input is the appropriate portion. In this paper, we also proposed an improved dichotomy to solve the ML equation. It is proved that the accuracy of the proposed method is increased, and the proposed method meets the requirements of real time.
linear predictive coding (LPC) filter; linear predictive residual signal; maximum likelihood estimate; unbiased autocorrelation function
國(guó)家重點(diǎn)研發(fā)計(jì)劃課題(2016YFB0401503)
TP312
A
10.19358/j.issn.1674- 7720.2017.05.024
劉興亮,姚劍敏,郭太良.基于LPC的混響時(shí)間估計(jì)算法[J].微型機(jī)與應(yīng)用,2017,36(5):80-83.
2016-11-03)
劉興亮(1991-),男,碩士研究生,主要研究方向:音頻處理。
姚劍敏(1978-),男,博士,副研究員,主要研究方向:圖像處理、音頻處理等。
郭太良(1963-),男,研究員,博士生導(dǎo)師,主要研究方向:場(chǎng)致發(fā)射等。