馬寶澤,張?zhí)祢U,安澤亮,鄧盼
(重慶郵電大學(xué)通信與信息工程學(xué)院信號與信息處理重慶市重點(diǎn)實(shí)驗(yàn)室,重慶 400065)
盲源分離(BSS,blind source separation)是一種在信源和混合信道系統(tǒng)均未知的狀況下從觀測信號中提取源信號的信號處理技術(shù)[1],其中考慮多徑和時延的卷積盲源分離(CBSS,convolutive BSS)是比瞬時BSS更復(fù)雜的課題[2]。在CBSS 中,傳感器接收到的觀測信號是由多維源信號經(jīng)過衰減時延后組成的,例如,在混響環(huán)境下采集的語音信號[3],會導(dǎo)致現(xiàn)有的瞬時BSS方法的失效。此外,在信號傳輸過程中,卷積混合比瞬時混合更符合實(shí)際情況,因此從卷積混合的多維觀測信號中分離出源信號是很有挑戰(zhàn)性的工作。
由于解決CBSS 的時域方法受卷積長度影響較大,且存在計(jì)算復(fù)雜度大、收斂速度慢的缺點(diǎn),因而頻域方法得到了廣泛的研究[2-4]。頻域方法首先通過時頻變換將時域卷積混合模型轉(zhuǎn)換為每個頻點(diǎn)上的頻域瞬時混合模型,然后利用復(fù)獨(dú)立分量分析(CICA,complex independent component analysis)算法處理各個頻點(diǎn)上的序列,最后結(jié)合所有頻點(diǎn)重構(gòu)時域信源。即使在每個頻點(diǎn)上都能得到理想的瞬時分離結(jié)果,但排序和幅度的模糊性也會影響源信號的恢復(fù)[3-5]。文獻(xiàn)[3]闡述了聯(lián)合塊對角化和塊Tucker分解之間的關(guān)系,解決了頻譜分離和頻點(diǎn)排序模糊性問題。文獻(xiàn)[4]介紹了一種低復(fù)雜度的分步排序方法,權(quán)衡了分離性能和計(jì)算復(fù)雜度的矛盾,但沒有提出新的混合濾波器矩陣估計(jì)方案。文獻(xiàn)[5]將二元經(jīng)驗(yàn)?zāi)B(tài)分解與熵界最小化復(fù)獨(dú)立分量分析相結(jié)合實(shí)現(xiàn)了語音信號的卷積盲分離,但缺乏解決排序模糊性方面的工作量。此外,獨(dú)立向量分析(IVA,independent vector analysis)[6]提出了引入矢量源模型的方式來解決卷積盲信號分離問題。此后,獨(dú)立低秩矩陣分析(ILRMA,independent low-rank matrix analysis)[7]整合了IVA 和非負(fù)矩陣分解,用低秩時頻結(jié)構(gòu)的源模型代替了IVA 中的矢量源模型。雖然IVA 和ILRMA 可以實(shí)現(xiàn)卷積混合信號的分離,但它們對信源模型的假設(shè)嚴(yán)重限制了算法的適用范圍。因此,本文將針對CBSS 頻域方法展開研究,同時解決了混合濾波器矩陣估計(jì)和頻點(diǎn)排序2 個問題,實(shí)現(xiàn)了全面提高CBSS 算法性能的目標(biāo)。
由于多維信號的頻譜可以容易地表示成張量形式,同時經(jīng)張量分解后得到的因子矩陣也可以用于估計(jì)混合濾波器矩陣。因此,本文在張量分解的框架下研究了一種CBSS 頻域方法。首先,將觀測信號序列分為若干非重疊子塊,并對每個子塊進(jìn)行時頻變換得到張量形式的估計(jì)自相關(guān)矩陣。其次,根據(jù)張量分解技術(shù)估計(jì)出與每個頻點(diǎn)相對應(yīng)的混合濾波器矩陣,即解決每個頻點(diǎn)上的頻譜分離問題。再次,采用全局優(yōu)化的頻點(diǎn)排序策略,將功率比作為排序測度保障了屬于相同信源的頻譜被歸為同一類。最后,排序后的全部頻點(diǎn)經(jīng)逆變換得到時域分離信號。仿真實(shí)驗(yàn)中以實(shí)測語音作為信源,在模擬的立體空間中產(chǎn)生房間脈沖響應(yīng)實(shí)現(xiàn)卷積混合。此外,本文方法相較現(xiàn)有方法的有效性和優(yōu)越性在多種實(shí)驗(yàn)條件下得到了驗(yàn)證。
CBSS 混合系統(tǒng)可以用長度為L的有限脈沖響應(yīng)(FIR,finite impulse response)濾波器表示,那么n個源信號s(t)=[s1(t),s2(t),…,sn(t)]T經(jīng)過信道的線性卷積混合后可以得到m個觀測信號,即x(t)=[x1(t),x2(t),…,xm(t)]T。不考慮噪聲的卷積混合模型可以表示為
其中,hji(l)表示從第i個信源到第j個傳感器的房間脈沖響應(yīng)(RIR,room impulse response),這個過程可以用一個FIR 濾波器來模擬。CBSS 就是在混合信道系統(tǒng)H未知的情況下,通過尋找一個n×m的近似可逆的信道系統(tǒng)w來實(shí)現(xiàn)信源的估計(jì),那么分離信號可以表示為
其中,K是解混信道系統(tǒng)的總階數(shù)。分離信號是源信號s(t) 的估計(jì),但是y(t)和s(t)之間存在由BSS 模糊性造成的幅度和排序差異。
CBSS 頻域方法需要利用離散傅里葉變換(DFT,discrete Fourier transform)將時域信號變換到頻域[2-5],式(1)可以表示為
其中,X(f,p)=[X1(f,p),X2(f,p),…,Xm(f,p)]T和S(f,p)=[S1(f,p),S2(f,p),…,Sn(f,p)]T分別表示觀測信號和源信號的時頻譜,H(f) 的第i列表示第i個信源在頻點(diǎn)f上的空間特征信息。此外,f=1,2,…,F表示頻點(diǎn)的索引,F(xiàn)是頻點(diǎn)總數(shù),p=1,2,…,P表示時間幀的索引,P是時間幀總數(shù)。由式(4)可知,CBSS 問題在時頻域被轉(zhuǎn)化為了F個瞬時混合BSS 問題,即可以利用CICA 方法處理每個頻點(diǎn)上的頻譜序列,然后對頻點(diǎn)進(jìn)行排序,最后通過快速傅里葉逆變換(IFFT,inverse fast Fourier transform)恢復(fù)時域分離信號。
假設(shè)觀測信號的長度為N,那么將觀測序列數(shù)據(jù)分為P個非重疊子塊,這樣每個子塊就包含個點(diǎn),這些子塊可以用p=1,2,…,P來索引,第p個子塊包含的數(shù)據(jù)序列從tp-1到tp[3]。因此,觀測信號在第f個頻點(diǎn)和第p個子塊處的自相關(guān)矩陣可以用RX(f,p)∈Cm×m表示,也就是說,RX(f,p)=E[X(f,p)XH(f,p)],即
其中,RS(f,p)=E[S(f,p)SH(f,p)]是源信號在第f個頻點(diǎn)和第p個子塊處的自相關(guān)矩陣,(·)H表示Hermitian 轉(zhuǎn)置運(yùn)算。
不同于將時間幀依次處理,本文在給定的頻點(diǎn)處同時研究P個子塊,即
對每個頻點(diǎn)上的H(f)進(jìn)行估計(jì)就相當(dāng)于處理一個聯(lián)合相似對角化(JAD,joint approximate diagonalization)問題,那么式(6)中就存在P個JAD 問題,將它們看作一個整體,借助張量的思想解決。這樣就建立起JAD 和張量分解之間的關(guān)系,即將每個頻點(diǎn)上的傳統(tǒng)JAD 問題轉(zhuǎn)變成張量分解問題。然而,利用張量分解得到的因子矩陣估計(jì)混合濾波器矩陣的關(guān)鍵在于自相關(guān)矩陣的計(jì)算。實(shí)際上,人們很難獲得準(zhǔn)確的觀測信號自相關(guān)矩陣RX(f,p),只能通過時域觀測信號x(t),t=1,2,…,N來估計(jì)。在含有Nb個采樣點(diǎn)的每個子塊中,選擇漢寧窗對若干連續(xù)重疊幀計(jì)算Nf點(diǎn)DFT,其中,幀長和窗長都為Nf,2 個連續(xù)幀之間重疊為窗長的,即ovlp=75%[3,4]。因此,每個子塊中的重疊幀數(shù)可以表示為
由于時域卷積混合BSS 在時頻變換后就轉(zhuǎn)變成了時頻域瞬時混合BSS 問題,那么第f個頻點(diǎn)對應(yīng)張量的分解就相當(dāng)于實(shí)現(xiàn)了復(fù)數(shù)形式的瞬時混合盲信號分離。因此,通過張量分解的方式解決每個頻點(diǎn)的頻譜分離問題是值得研究的。由上述分析可知,本文處理的是三維張量,在張量分解前需要調(diào)整各維度順序。的第三維P是張量維度中最大的,這樣就保證了三維張量的維度是升序狀態(tài)。為了消除非重疊子塊P選取過大對張量分解的影響,將張量的第三維由P降維到n+1,即轉(zhuǎn)變?yōu)椤H缓?,利用擴(kuò)展QZ 分解對降維后的張量?x(f)進(jìn)行處理,實(shí)現(xiàn)舒爾(Schur)上三角化[9]。
其中,? (f)∈Cn×m×n是估計(jì)混合濾波器的解析張量。最后選取 ?(f)按照第三維方向的n個切片經(jīng)奇異值分解后的左奇異矩陣(因子矩陣)的第一列作為估計(jì)混合濾波器矩陣的列,即可以表示為。根據(jù)上述張量分解的步驟,第f個頻點(diǎn)對應(yīng)的估計(jì)混合濾波器矩陣就可以計(jì)算出來。以此類推,整個分離過程需要進(jìn)行F次運(yùn)算。
理想情況下,分離濾波器矩陣W(f)需要滿足W(f)H(f)=I的條件,其中,I是單位矩陣。那么,在第f個頻點(diǎn)處就可以根據(jù)H(f)求出W(f),從而得到相應(yīng)的分離信號的頻譜。
每個頻點(diǎn)上的頻譜序列需要在保證屬于同一源信號的頻譜成分被劃分為同一類的前提下重新排序,即頻點(diǎn)排序是利用屬于同一信號的頻譜成分會表現(xiàn)出明顯的相似性的特點(diǎn)來消除排序模糊性。根據(jù)張量分解得到的估計(jì)混合濾波器,可以將式(4)改寫為
功率比作為一種有效的頻點(diǎn)排序測度,可以表征觀測信號中第i個分離信號的占比[4]。那么,第i個分離信號在第p個子塊的功率和所有分離信號的功率之和的比值可以表示為
圖1 本文所提方法流程
在多種實(shí)驗(yàn)條件下驗(yàn)證本文方法的有效性,分別采用IVA[6]、ILRMA[7]、JAD-based[10]和CICA-EBM[11]作為對比方法。為了實(shí)驗(yàn)公平,方法中涉及的窗函數(shù)都選取Hanning 窗、幀重疊為窗長的75%。其中,ILRMA 中涉及的初始基矩陣和激活矩陣均采用隨機(jī)矩陣。采樣頻率是16 kHz 語音信號數(shù)據(jù)來自文獻(xiàn)[12],包括男聲和女生朗讀的詩詞及句子。在模擬的立體空間中,利用聲學(xué)的圖像方法[13]生成房間脈沖響應(yīng)RIR 對語音信號進(jìn)行卷積處理,其中,RIR 可以通過設(shè)置房間的尺寸、信源和傳感器的位置以及混響時間來模擬各種情況。為了模擬真實(shí)的卷積環(huán)境,實(shí)驗(yàn)是在一個長6 m、寬4.2 m、高3 m 的虛擬立體房間里進(jìn)行[14],并固定信源和傳感器高度為1.6 m。此外,所有實(shí)驗(yàn)都是在MATLAB2019a 軟件上完成的,計(jì)算機(jī)配置為Intel(R)Core(TM) i7-10710U CPU @ 1.10 GHz 1.61 GHz,內(nèi)存(RAM)為16 GB。
利用輸出信干比(SIR,signal-to-interference ratio)作為性能指標(biāo)評價信源分離的精度[3-5,12]。由于式(3) 中的第i個分離信號可以改寫為,那么,的對應(yīng)的輸出SIR 可以定義為
其中,yii(t)表示yi(t)中來自第i個信源的部分,yik(t)表示串音信號。將由式(20)計(jì)算出的n個輸出SIR 的平均值作為估計(jì)信源的全局性能指標(biāo),并以此作為基準(zhǔn)來評估對比算法的分離性能。
為了驗(yàn)證快速傅里葉變換(FFT,fast Fourier transform)長度對5 種方法分離性能的影響,選取時長為5 s 的語音信號作為信源。在m=n=2的情況下,固定2 個傳感器位置為(2,1,1.6)和(2,2,1.6),2 個信源位置為(4,1.5,1.6)和(4,2.5,1.6)。此外,將混響時間T60設(shè)置為130 ms[12]。圖2 是5 種方法在不同F(xiàn)FT長度時的輸出SIR變化情況。由圖2可以看出,當(dāng)FFT 長度小于512 時,5 種方法的分離性能都比較差。隨著FFT 長度的增加,SIR 也隨之提高。由于FFT 長度為4 096 時各方法的分離性能增長趨勢放緩,甚至ILRMA 出現(xiàn)了分離性能下降的情況。因此,綜合考慮所有方法對FFT 長度的需求,在接下來的實(shí)驗(yàn)中都將FFT 長度設(shè)為2 048。
圖2 SIR 隨FFT 長度變化情況
圖3 為5 種方法在不同信噪比(SNR,signal-to-noise ratio)下的穩(wěn)健性,隨機(jī)生成的高斯白噪聲使信噪比變化范圍由5 dB 到60 dB。從圖3 可以看出,以CICA-EBM 以及本文方法為代表的CBSS 頻域方法在抗噪性方面要優(yōu)于 IVA 和ILRMA。此外,本文方法在SNR 大于15 dB 時表現(xiàn)出了比其他方法更優(yōu)異的分離性能。
圖3 SIR 隨SNR 變化情況
混響時間T60是影響方法分離性能的重要因素,混響時間取決于空間尺寸、形狀、吸音性能以及信源和傳感器的位置。T60越大,表明由多徑和時延引起的卷積情況使信號的傳播信道變得越復(fù)雜。因此,選取從0.15 s 到0.5 s 且間隔為0.05 s 的時段作為混響區(qū)間,即T60∈[0.15,0.5]。圖4 為混響時間對5 種方法分離性能的影響。隨著T60逐漸變大,所有方法得到的輸出SIR 都隨之下降了。在m=n=2的情況下,本文方法在實(shí)驗(yàn)的全時段上的分離性能明顯優(yōu)于其余4 種對比方法。這說明了本文提出的基于張量分解和功率比全局排序策略的卷積盲源分離方法可有效提升卷積混合語音在強(qiáng)混響情況下的分離性能。
圖4 SIR 隨混響時間變化情況
將不同時長的語音作為實(shí)驗(yàn)中算法的源信號,以此驗(yàn)證信號長度對分離性能的影響。選取時長從2 s到10 s 且間隔為0.2 s 的語音信號進(jìn)行卷積分離實(shí)驗(yàn),結(jié)果如圖5 所示。圖5(a)表明各方法的輸出SIR 在不同語音時長下的變化情況,當(dāng)信號長度大于3 s 時,本文方法比其他4 種對比方法具有更高的SIR。此外,所有方法的計(jì)算時間隨信號長度變化情況如圖5(b)所示??梢钥闯?,JAD-based 計(jì)算用時最少,其次是本文方法,用時最多的是CICA-EBM。
圖5 信號長度對分離性能的影響
在m=n=2的情況下,驗(yàn)證方法在信源和傳感器不同位置下的輸出SIR 情況。根據(jù)上述實(shí)驗(yàn)結(jié)果,將FFT 長度設(shè)置為2 048、混響時間設(shè)置為130 ms、選取信號時長為5 s。固定2 個信源的位置為(4,1.5,1.6)和(4,2.5,1.6),同時固定一個傳感器位置為(2,0.3,1.6),另一個傳感器以步長為0.4 m 沿著房間寬度方向移動,這樣依次得到了9 個位置,即(2,0.3+0.4k1,1.6),k1=1,…,9。通過改變傳感器間的距離計(jì)算各方法的 SIR,如圖6(a)所示??梢钥闯?,本文方法在2 個傳感器間距離為1.6 m 時取得最大的SIR,即移動傳感器位置在(2,1.9,1.6)。
為了驗(yàn)證2 個信源間距離對算法性能的影響,固定 2 個傳感器的位置為(2,1,1.6) 和(2,2,1.6),同時固定一個信源位置為(4,0.3,1.6),另一個信源以步長為0.4 m 沿著房間寬度方向移動,分別得到 9 個位置,即(4,0.3+0.4k2,1.6),k2=1,…,9。圖6(b)為2 個信源間的不同距離對輸出SIR 的影響,且本文方法在2 個信源間距離為2.4 m 時得到最大的SIR,即移動信源的位置為(4,2.7,1.6)。
圖6 信號長度對分離性能的影響
考慮信源與傳感器之間的距離對分離性能的影響,固定 2 個傳感器的位置為(1,1,1.6) 和(1,2,1.6),同時2 個信源以步長為0.5 m 沿著房間長度方向移動,分別得到2 個信源的9 個位置,即一個信源位置可以用(1+0.5k3,1.5,1.6),k3=1,…,9表示,而另一個信源的位置可以用相同的方式表示為(1+0.5k3,2.5,1.6),k3=1,…,9。信源和傳感器之間的距離由0.5 m 增加到4.5 m 的過程中,5 種方法取得的輸出SIR 如圖6(c)所示。所有方法基本上都表現(xiàn)出了性能先降后升的趨勢,當(dāng)距離是2.5 m 時,本文方法得到了最小的SIR。
由于源信號和觀測信號數(shù)目的增加會給CBSS 帶來更大的挑戰(zhàn),因此,在m=n=3和m=n=4這2種情況下驗(yàn)證混響時間對分離性能的影響。
實(shí)驗(yàn)過程中,除了信源和傳感器位置外,剩余設(shè)置都與6.2 節(jié)一致。當(dāng)m=n=3時,固定3 個傳感器的位置分別為(2,1,1.6)、(2,2,1.6)和(2,3,1.6),同時固定 3 個信源位置分別為(4,1.5,1.6)、(4,2.5,1.6)和(4,3.5,1.6)。圖7(a)是m=n=3時輸出SIR 隨混響變化的情況,本文方法分離性能最優(yōu),其次是CICA-EBM。
圖7 混響時間對分離性能的影響
當(dāng)m=n=4時,固定4 個傳感器的位置分別為(2,1,1.6)、(2,2,1.6)、(2,3,1.6)和(2,4,1.6),同時固定 4 個信源位置分別為(4,0.5,1.6)、(4,1.5,1.6)、(4,2.5,1.6)和(4,3.5,1.6)。實(shí)驗(yàn)結(jié)果如圖7(b)所示,可以看出,當(dāng)T60≤0.4時,本文方法有明顯的優(yōu)勢,IVA 基本處于失效的狀態(tài)。此外,結(jié)合圖4 分析可知,當(dāng)信源數(shù)和觀測信號數(shù)增加時IVA 和ILRMA 分離性能變得越來越差,尤其是IVA 在m=n=4時已經(jīng)不能滿足盲源分離的基本要求。
本文根據(jù)頻域觀測信號的結(jié)構(gòu)特征和全局優(yōu)化頻點(diǎn)排序策略,研究了一種基于張量分解的CBSS 方法。首先,利用觀測序列的估計(jì)自相關(guān)矩陣構(gòu)造張量數(shù)據(jù)。然后,通過張量分解估計(jì)出每個頻點(diǎn)對應(yīng)的混合濾波器矩陣達(dá)到頻點(diǎn)上的頻譜分離效果。最后,采用以功率比為排序測度的全局優(yōu)化策略以及MDP 技術(shù)同時消除了每個頻點(diǎn)上的排序和幅度模糊性并計(jì)算出時域分離信號。在虛擬的立體空間中利用聲學(xué)的圖像方法產(chǎn)生RIR,并以實(shí)測語音作為信源。實(shí)驗(yàn)表明,在不同仿真條件下本文方法的有效性得到了證明。此外,頻域方法的分離性能整體上優(yōu)于IVA、ILRMA和傳統(tǒng)JAD 方法,尤其是在信源數(shù)和觀測信號數(shù)都增加的情況下。