陳斌杰,陸志華,周 宇,葉慶衛(wèi)
(寧波大學(xué) 信息科學(xué)與工程學(xué)院,浙江 寧波 315211)(*通信作者電子郵箱zhouyu@nbu.edu.cn)
基于雙麥克風(fēng)的室內(nèi)多聲源信息感知系統(tǒng),相比基于麥克風(fēng)陣列[1-3]或麥克風(fēng)網(wǎng)絡(luò)[4-5]的系統(tǒng),具有體積小、功耗少、成本低等特性[6],更適合智能產(chǎn)品小型化的發(fā)展趨勢(shì)。 然而,基于雙麥克風(fēng)的系統(tǒng)采集的信號(hào)樣本維度比聲源數(shù)量小(欠定問(wèn)題),空間信息相對(duì)較少,可利用的其他信息也相對(duì)較少,如何在欠定情況下融合有限的信息,成為了研究的重點(diǎn)。
在過(guò)去的研究中,基于雙通道的語(yǔ)音分離技術(shù)的研究已經(jīng)取得了許多豐厚的成果。2004年,Yilmaz等[7]利用兩信道間信號(hào)的時(shí)延差和強(qiáng)度差來(lái)分離任意數(shù)量的源信號(hào)。2007年,Sawada等[8]通過(guò)高斯混合模型來(lái)擬合時(shí)頻點(diǎn)對(duì)混合信號(hào)進(jìn)行了分離。2009年,Kim等[9]通過(guò)提取雙麥克風(fēng)之間的相位差信息實(shí)現(xiàn)了語(yǔ)音的分離。2012年,Kim等[10]又通過(guò)信道加權(quán)角度分布的統(tǒng)計(jì)建模提高了分離性能。2017年,Zermini等[11]將深度神經(jīng)網(wǎng)絡(luò)應(yīng)用到雙通道的語(yǔ)音分離,提高了混響環(huán)境下的分離質(zhì)量。然而,這些方法主要側(cè)重于從雙通道混合信號(hào)中分離出不同的聲源信號(hào),幾乎不涉及聲源的位置信息。
另一方面,基于聲達(dá)時(shí)間差(Time Delay of Arrival, TDOA)的麥克風(fēng)定位方法可以通過(guò)估計(jì)聲源到達(dá)兩麥克風(fēng)的時(shí)間差來(lái)確定聲源的空間位置。2007年,Izumi等[12]在稀疏假設(shè)的前提下通過(guò)期望最大化(Expectation Maximization, EM)算法估計(jì)了每個(gè)源的方位角。2011年,Cobos等[13]利用拉普拉斯混合模型對(duì)時(shí)頻域中的方位角分布進(jìn)行了建模。2014年,Escolano等[14]利用貝葉斯方法估計(jì)了聲源位置的概率分布。2016年,Wang等[15]利用兩個(gè)遠(yuǎn)端的麥克風(fēng)之間的相位差建模在混響環(huán)境中定位出了多個(gè)聲源。但是,這些技術(shù)大多只能估計(jì)出聲源的方向(一維定位),而不能確定聲源在二維平面中的具體位置,更不能重構(gòu)出聲源信號(hào)。
本文通過(guò)推導(dǎo)衰減參數(shù)與信號(hào)能量比之間的關(guān)系,在同一個(gè)時(shí)延-衰減模型的基礎(chǔ)上,將DUET(Degenerate Unmixing Estimation Technique)算法和基于到達(dá)時(shí)間差(TDOA)的定位方法相結(jié)合,利用兩個(gè)麥克風(fēng)實(shí)現(xiàn)語(yǔ)音分離的同時(shí)完成了聲源的定位。實(shí)驗(yàn)利用兩個(gè)麥克風(fēng)對(duì)多個(gè)聲源進(jìn)行了分離和定位。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)有效地降低了麥克風(fēng)的數(shù)目,和傳統(tǒng)的麥克風(fēng)陣列的定位系統(tǒng)相比較,在一定程度上減小了陣列尺寸,有助于手機(jī)、助聽器等小型通信設(shè)備的發(fā)展。
整個(gè)系統(tǒng)分為語(yǔ)音信號(hào)的采集及預(yù)處理、參數(shù)估計(jì)、語(yǔ)音信號(hào)分離和聲源定位四個(gè)階段。其中,信號(hào)的采集及預(yù)處理又包括信號(hào)的接收,信號(hào)的幅度歸一化、分幀及加窗處理。參數(shù)估計(jì)階段,通過(guò)兩個(gè)麥克風(fēng)建立混合信號(hào)模型,應(yīng)用DUET算法估計(jì)模型的時(shí)延-衰減參數(shù),接著采用二值掩蔽的方法對(duì)信號(hào)進(jìn)行分離,得到源信號(hào),與此同時(shí),將模型參數(shù)進(jìn)行轉(zhuǎn)化并應(yīng)用到聲源定位中,進(jìn)行幾何計(jì)算,從而確定聲源在平面中的具體位置?;陔p麥克風(fēng)的語(yǔ)音分離與聲源定位系統(tǒng)框圖如圖1所示。
圖1 基于雙麥克風(fēng)的語(yǔ)音分離與聲源定位系統(tǒng)框圖Fig. 1 System block diagram of speech separation and sound source locating based on dual-microphone
DUET算法處理由一對(duì)麥克風(fēng)采集多個(gè)聲源組成的混合信號(hào),其基本模型[16]如式(1):
(1)
式中:t=1,2,…,T表示離散時(shí)刻;N為聲源信號(hào)的數(shù)量;x1(t)和x2(t)表示兩個(gè)麥克風(fēng)接收到的信號(hào);sj(t)表示第j個(gè)源信號(hào);αj和δj分別表示第j個(gè)源信號(hào)到兩個(gè)麥克風(fēng)的相對(duì)衰減和相對(duì)延遲,這兩個(gè)參數(shù)均與兩個(gè)麥克風(fēng)與信號(hào)源之間的路徑之比相關(guān)。
信號(hào)從時(shí)域通過(guò)短時(shí)傅里葉變換(Short-Time Fourier Transform, STFT)到時(shí)頻域。式(1)在時(shí)頻域的表達(dá)式如式(2)所示:
(2)
假設(shè)語(yǔ)音信號(hào)具有短時(shí)不相關(guān)正交性,在時(shí)頻域中可表示為:
(3)
由語(yǔ)音信號(hào)的W-DO(W-Disjoint Orthogonality)特性可知,在每個(gè)時(shí)頻域點(diǎn)至多只有一個(gè)源占主導(dǎo),式(2)可化簡(jiǎn)為:
(4)
根據(jù)式(4),一個(gè)信號(hào)的相對(duì)衰減和相對(duì)時(shí)延可表示為:
(5)
式中:ln(·)為取對(duì)數(shù);Im(·)為取虛部。
若將混合信號(hào)中的每個(gè)時(shí)頻點(diǎn)描繪在參數(shù)空間中,那么就能得到各個(gè)聲源信號(hào)在此空間中的分布直方圖。計(jì)算出混合參數(shù)后,由最大似然估計(jì)(Maximum-Likelihood estimation, ML)[7]算式得到每個(gè)時(shí)頻點(diǎn)的加權(quán)幅值:
(6)
其中:p和q為調(diào)整指數(shù),一般情況下,取p=1,q=0。每個(gè)幅值都對(duì)應(yīng)一個(gè)衰減和時(shí)延參數(shù)對(duì)。
為了方便繪圖,定義對(duì)稱衰減a(τ,ω)表示為:
a(τ,ω)=α(τ,ω)-1/α(τ,ω)
(7)
將具有相同對(duì)稱衰減和相對(duì)延時(shí)的參數(shù)對(duì)進(jìn)行累加,即可得到二維直方圖的矩陣幅值:
(8)
實(shí)驗(yàn)使用Roomsimove工具箱[17]對(duì)房間內(nèi)麥克風(fēng)接收的信號(hào)進(jìn)行模擬,設(shè)定房間尺寸為4.25 m×3.55 m×2.5 m(長(zhǎng)×寬×高),兩個(gè)麥克風(fēng)的坐標(biāo)分別設(shè)定為(2, 1.775,1.4)m和(2, 1.825,1.4)m。實(shí)驗(yàn)使用聲源為SISEC2008[18]中“欠定的語(yǔ)音和音樂(lè)混合”數(shù)據(jù)庫(kù)中的時(shí)長(zhǎng)為11 s的5個(gè)男語(yǔ)音信號(hào)(s1,s2,s3,s4,s5),采樣頻率fs=16 kHz。實(shí)驗(yàn)共分為3組 ,分別設(shè)定各組實(shí)驗(yàn)聲源在房間中的位置坐標(biāo),聲源與麥克風(fēng)處于同于平面,設(shè)定Z軸坐標(biāo)都為1.4 m,X軸、Y軸坐標(biāo)如表1所示。設(shè)置無(wú)混響的環(huán)境下,將聲源信號(hào)進(jìn)行混合得到兩個(gè)麥克風(fēng)采集的混合信號(hào)。
表1 聲源個(gè)數(shù)及坐標(biāo)位置Tab. 1 Number and coordinate positions of sound sources
然后對(duì)麥克風(fēng)采集的信號(hào)進(jìn)行歸一化、分幀和加窗處理,
采用1 024點(diǎn)的漢明窗,幀移512點(diǎn),然后作1 024點(diǎn)的STFT。對(duì)每個(gè)時(shí)頻點(diǎn)的對(duì)稱衰減a(τ,ω)和相對(duì)時(shí)延δ(τ,ω)進(jìn)行加權(quán)聚類并描繪二維直方圖。調(diào)整指數(shù)p=1、q=0,得到的參數(shù)估計(jì)直方圖如圖2所示,峰的個(gè)數(shù)代表著聲源的個(gè)數(shù),峰值中心坐標(biāo)即為參數(shù)估計(jì)的值。
參數(shù)直方圖的繪制是本系統(tǒng)的關(guān)鍵部分,直方圖的好壞程度決定了后續(xù)語(yǔ)音分離和聲源定位的精度。對(duì)于各個(gè)峰值坐標(biāo)的提取,利用了自動(dòng)搜索峰值最大點(diǎn)的方法。由圖2可知,本文在進(jìn)行多聲源參數(shù)估計(jì)的過(guò)程中,能夠順利地估計(jì)各個(gè)聲源的參數(shù)對(duì)。
圖2 不同聲源混合信號(hào)參數(shù)分布直方圖Fig. 2 Parameter distribution histogram of different sound source mixed signals
將混合信號(hào)x1(t)變換到時(shí)頻域可得:
(9)
在假設(shè)條件下,各信號(hào)源滿足式(3),在任意時(shí)頻點(diǎn)(τi,ωk),至多存在一個(gè)聲源信號(hào)的頻率分量,即:
(10)
(11)
Mj(τ,ω)={mj(τi,ωk)|i=1,2,…,I;k=1,2,…,K}
(12)
式中:I和K分別表示混合信號(hào)所有的時(shí)間點(diǎn)和頻率點(diǎn)。稱Mj(τ,ω)為二進(jìn)制時(shí)頻掩膜(Binary Time-Frequency Masking, BTFM),通過(guò)它能直接實(shí)現(xiàn)聲源信號(hào)的分離。
(13)
將時(shí)頻掩膜應(yīng)用到參數(shù)直方圖中,以直方圖峰值中心坐標(biāo)的歐氏距離作為相似度,對(duì)峰值附近的時(shí)頻域點(diǎn)進(jìn)行聚類[7],使用BTFM將屬于一類的時(shí)頻點(diǎn)標(biāo)記如下:
(14)
式中,aj和δj為第j個(gè)聲源的對(duì)稱衰減和相對(duì)延時(shí)。
利用式(14)將聲源信號(hào)的時(shí)頻單元提取出來(lái),通過(guò)逆STFT(Inverse STFT, ISTFT)將提取的時(shí)頻域下的源信號(hào)恢復(fù)到時(shí)頻,從而達(dá)到語(yǔ)音分離的目的。
語(yǔ)音分離算法的具體步驟如下:
步驟1 構(gòu)建時(shí)頻掩膜。構(gòu)建N個(gè)聲源所對(duì)應(yīng)的時(shí)頻掩膜。
步驟2 將屬于同一源信號(hào)的時(shí)頻單元提取出來(lái),得到單一聲源的時(shí)頻域表示。
步驟3 時(shí)頻域反變換。將分離的單一聲源的時(shí)頻域經(jīng)過(guò)短時(shí)傅里葉反變換到時(shí)域得到需要的源信號(hào)。
根據(jù)圖2所得到的參數(shù)直方圖,首先確定各個(gè)聲源峰值中心坐標(biāo),然后為每個(gè)峰值中心構(gòu)建BTFM,得到信號(hào)的時(shí)頻域表達(dá),再對(duì)其進(jìn)行短時(shí)傅里葉逆變換,將信號(hào)變換回時(shí)域,最后得到估計(jì)的聲源信號(hào)。原始信號(hào)與其對(duì)應(yīng)的估計(jì)信號(hào)如圖3所示。
源估計(jì)采用SISEC2008[18]中的評(píng)價(jià)標(biāo)準(zhǔn),定義信號(hào)失真比率(Signal to Distortion Ratio, SDR),信號(hào)源與干擾成分比率(Source to Interference Ratio, SIR),信號(hào)源與人造成分比率(Sources to Artifacts Ratio, SAR)分別如下:
由表2可以看出,在無(wú)混響的條件下,本系統(tǒng)可以識(shí)別和分離出多個(gè)聲源,在三聲源和四聲源實(shí)驗(yàn)中,分離效果較好。隨著聲源個(gè)數(shù)的增加,系統(tǒng)分離出的信號(hào)質(zhì)量下降,主要原因在于在同一個(gè)時(shí)頻域點(diǎn),假設(shè)一個(gè)源占主導(dǎo)的情況不一定成立。
圖3 原始的聲源信號(hào)與分離后的估計(jì)信號(hào)Fig. 3 Original sound source signals and separated estimated signals
表2 語(yǔ)音分離結(jié)果評(píng)價(jià)Tab. 2 Speech separation result evaluation
在單位時(shí)間內(nèi),兩個(gè)麥克風(fēng)所獲得的同一聲源的能量的比值是固定的[19]。在一個(gè)時(shí)間點(diǎn),僅存在單個(gè)源時(shí),其能量的計(jì)算公式為:
(15)
其中,Ei(i=1,2)為第i個(gè)麥克風(fēng)接受到的信號(hào)能量;xi(t)為第i個(gè)麥克風(fēng)接受到的時(shí)域信號(hào)。
經(jīng)過(guò)短時(shí)傅里葉變換后,信號(hào)在時(shí)頻域中的能量公式為:
(16)
式(1)變換到時(shí)頻域又可以表示為:
(17)
(18)
(19)
在時(shí)頻點(diǎn)(τi,ωk),到達(dá)兩麥克風(fēng)之間的能量比為:
(20)
設(shè)(xi,yi)為第i(i=1,2)個(gè)麥克風(fēng)的位置坐標(biāo),(xl,yl)為第l個(gè)聲源的位置坐標(biāo),根據(jù)麥克風(fēng)接收到信號(hào)的能量與麥克風(fēng)到聲源距離的關(guān)系[20]可得:
(21)
當(dāng)估計(jì)出的第j個(gè)源到達(dá)兩個(gè)麥克風(fēng)的相對(duì)時(shí)延δj后,可得方程:
cδj
(22)
其中c為聲速。
根據(jù)式(20)~(22),化簡(jiǎn)可得:
(23)
由于到達(dá)兩麥克風(fēng)的相對(duì)衰減αj和相對(duì)時(shí)延δj在語(yǔ)音分離階段已經(jīng)估計(jì)出來(lái),其余各個(gè)參數(shù)都是已知的,求解方程組式(23),最后通過(guò)進(jìn)一步的變換便可以得到方程的閉合解,從而確定聲源在二維平面中的具體位置坐標(biāo)。
根據(jù)圖2得到的信號(hào)參數(shù)分布直方圖,首先讀取各個(gè)峰的峰值坐標(biāo),然后根據(jù)式(7)將對(duì)稱衰減aj轉(zhuǎn)化為相對(duì)衰減αj,通過(guò)計(jì)算,得到參數(shù)對(duì)(δj,αj),再將參數(shù)分別代入到方程組式(20)中,根據(jù)實(shí)際情況舍去無(wú)關(guān)解,最終可以確定聲源位置坐標(biāo)。
聲源定位結(jié)果和誤差如表3所示,對(duì)定位精度的衡量采用文獻(xiàn)[21]中的評(píng)價(jià)準(zhǔn)則:
誤差率=(估計(jì)坐標(biāo)-原始坐標(biāo))/原始坐標(biāo)×100%
由表3可知,系統(tǒng)進(jìn)行多聲源定位時(shí),在X軸上的平均誤差的絕對(duì)值分別為15 mm(三聲源)、7.5 mm(四聲源)和13.6 mm(五聲源),在Y軸上的平均誤差的絕對(duì)值分別為10.9 mm(三聲源)、6.25 mm(四聲源)和10.2 mm(五聲源)。針對(duì)于三聲源、四聲源和五聲源的定位,所有情況下的定位誤差均在2%以下。由此可見,本文的模型可以在分離出多個(gè)聲源的同時(shí)獲得聲源在二維平面中的位置,該方法具有一定的有效性。
表3 聲源定位結(jié)果Tab. 3 Source localization results
本文利用兩個(gè)麥克風(fēng)實(shí)現(xiàn)了多聲源目標(biāo)的分離和定位,在一定程度上克服了利用雙麥克風(fēng)進(jìn)行分離定位時(shí)空間信息不足的缺陷,一定程度上能夠滿足系統(tǒng)對(duì)誤差的要求,具有一定的實(shí)用價(jià)值,例如會(huì)議記錄、助聽裝置、車載通信等。但是本文系統(tǒng)目前只考慮了二維平面中的定位,也僅適用于室內(nèi)說(shuō)話人數(shù)量較少的情況。在以后的研究中,為了更加接近實(shí)際的需要,除了考慮混響和環(huán)境噪聲的干擾外,還應(yīng)該將此模型擴(kuò)展到三維空間,增加房間內(nèi)聲源的個(gè)數(shù),進(jìn)一步提高系統(tǒng)的性能。