楊海紅,王琳娟
(1.山西旅游職業(yè)學(xué)院 計算機科學(xué)系,山西 太原 030031;2.山西農(nóng)業(yè)大學(xué) 基礎(chǔ)部,山西 晉中 030801)
說話人位置的準確定位和跟蹤是人工智能領(lǐng)域研究熱點問題,近年來,受到了國內(nèi)外研究人員的廣泛關(guān)注[1-4]。為克服虛擬聲源的影響,研究人員將粒子濾波方法引入到說話人跟蹤系統(tǒng)中,取得了很大的改進,一定程度上克服了虛擬聲源的影響[3-10]。其主要特點是說話人的位置信息是根據(jù)最新的觀測信息隨著時間進行遞推估計的,通過采用一個Markov說話人運動模型將說話人的位置狀態(tài)信息進行實時的遞歸處理[11-13]。可以看出,基于濾波方法的說話人跟蹤方法充分利用了說話人的運動信息和時間的相關(guān)性,可以有效地克服傳統(tǒng)方法中存在的虛擬聲源干擾問題,提升了噪聲背景下說話人的位置定位和跟蹤精度[14-16]。但是這些研究存在著一個缺陷,即說話人發(fā)音的連續(xù)性。假設(shè)說話人一直處于發(fā)聲狀態(tài),且跟蹤的時間只有一個人在活動。很明顯,這種假設(shè)是不符合實際應(yīng)用場景的,特別是在有多人參與的會議場景,經(jīng)常會出現(xiàn)語音的靜默,以及多個人的交叉說話。且多人交互說話情況往往導(dǎo)致背景噪聲的惡化和相關(guān)性,導(dǎo)致現(xiàn)有非線性濾波方法的跟蹤精度降低?;诖?,本文針對強混響及噪聲相關(guān)背景下說話人跟蹤問題,提出了一種解相關(guān)粒子濾波跟蹤方法。該方法的主要創(chuàng)新有2點:一是利用狀態(tài)方程恒等變換和矩陣相似變換理論實現(xiàn)了過程噪聲和量測噪聲的解相關(guān);二是隨機有限集(Random Finite Set,RFS)理論對說話人的個數(shù)和狀態(tài)進行聯(lián)合建模。最后,基于計算機仿真和實際的語料庫對算法的性能進行了詳細分析。
在沒有混響情況下的單個說話人場景中,麥克風對接收到的信號可以表示為[13]:
(1)
式中,s(t)為聲源信號;vi(t),i=1,2為背景噪聲;m為2個麥克風對之間的到達時間差(Time Difference of Arrival,TDOA)。采用二維坐標矢量α∈R2表示說話人的二維坐標(x,y)。則TDOA可以通過下面的計算獲得:
(2)
式中,ui,i=1,2為麥克風的位置坐標;‖·‖表示距離;c表示聲音的傳播速度(實際上將這種方法可以直接擴展到三維坐標系中)。TDOA可以通過GCC估計其進行量測。其計算公式為[14]:
(3)
(4)
圖1 實驗中采用的斷續(xù)語音信號Fig.1 Intermittent speech signal used in the experiment
(a) 麥克風對1
在實際的說話人環(huán)境中,說話人的位置α是時變的。因此,需要采用一個適當短的時間幀來估計τ,目的是為了確保α在這個計算的時間幀上可以近似為靜止不動的。本小節(jié)采用式(5)、式(6)的短時估計來代替式(4)中的Sy1,y2(w),其計算表達式為:
(5)
(6)
式中,T為短時的時間幀長度;k為短時的時間參數(shù)。
通過前面的研究可以看出,基于非線性濾波方法的說話人跟蹤系統(tǒng)需要預(yù)先建立滿足說話人運動特性的運動模型,多數(shù)研究采用朗之萬模型,該模型的最大特點是滿足說話人的隨機運動特性。但是標準朗之萬模型是在連續(xù)時間運動的基礎(chǔ)上計算得到,但是實際應(yīng)用中需要采用的是離散狀態(tài),其相應(yīng)的離散化模型為:
x(k+1)=f(x(k))+w(k),
(7)
式中,x(k)∈Rn×1為說話人狀態(tài);f(·)為非線性狀態(tài)函數(shù)傳遞過程;過程噪聲w(k)為N(0,Q(k));其相應(yīng)的觀測模型為:
z(k)=g(x(k))+v(k),
(8)
式中,z(k)∈Rm×1為觀測量;g(·)為相應(yīng)的觀測非線性函數(shù);v(k)為滿足N(0,R(k))的高斯噪聲。假設(shè)上述系統(tǒng)滿足噪聲相關(guān)的條件,其相應(yīng)的相關(guān)關(guān)系可以表示為:
(9)
假設(shè)跟蹤目標的初始狀態(tài)可以表示為x(0),其滿足N(x0,P0)的高斯特性,且獨立于w(k)和v(k)。在給定觀測矩陣的情況下,相應(yīng)的觀測信息可以表示為:
(10)
過程噪聲的離散值可以表示為:
(11)
相應(yīng)的測量噪聲矩陣可以表示為:
(12)
相應(yīng)的方差可以計算為:
R(k)=E[v(k)vT(k)]=
(13)
式中,w(k)與v(k)的相關(guān)性為:
B(k)=E[w(k)vT(k)]=[B1(k),B2(k),…,BN(k)]。
(14)
因為R(k)為一個正定的實對稱矩陣,故而存在酉矩陣U(k)滿足:
Λ(k)=UT(k)R(k)U(k),
(15)
式中,Λ(k)=diag{λ1(k),λ2(k),…,λN(k)}為正定的對角陣;λj(k)(j=1,2,…,N)為R(k)的特征值,將U(k)左乘式(15),則有:
(16)
其中,
(17)
(18)
(19)
修正以后的測量噪聲的統(tǒng)計特性可以表示為:
(20)
式中,Λ(k)=diag{Λ1(k),Λ2(k),…,ΛN(k)},這樣就完成了測量噪聲方差舉證的解耦,而新的測量噪聲與過程噪聲之間的相關(guān)性可以表示為:
[C1(k),C2(k),…,CN(k)],
(21)
相應(yīng)的狀態(tài)方程可以改寫為:
(22)
其中,
(23)
Q(k)-C(k)Λ-1(k)CT(k)。
(24)
上面分析的解耦以后的朗之萬模型的狀態(tài)空間方程可以重新表示為:
αk=αk-1+Tφk-1,
(25)
(26)
(27)
為了滿足Cxk=αk,要求C=[I,0]。另外,真實計算的TDOA值為:
(28)
通過貝葉斯方法進行相應(yīng)的遞推估計說話人位置信息的后驗概率密度函數(shù)可以表示為:
(29)
(30)
由于τq(·)的非線性,精確計算非常困難。目前研究中均采用蒙特卡羅近似處理的方法,也就是常說的粒子濾波方法。在進行相關(guān)解耦以后,需要將RFS方法引入到解耦以后的粒子濾波框架中進行未知數(shù)目的說話人跟蹤處理。
f(χk/χk-1),
(31)
似然函數(shù)可以表示為:
(32)
(33)
(34)
式中,F(xiàn)(Rn)為Rn所有有限子集的類;μ為F(Rn)的一個量測。
(35)
(36)
對于說話人的狀態(tài)估計,結(jié)合貝葉斯遞歸公式可以表示為:
(37)
結(jié)合前面的分析,可以將基于解相關(guān)粒子濾波與隨機有限集結(jié)合的說話人跟蹤方法(RF-DSPF)的具體步驟總結(jié)如下:
對于k=1,2,…,N,給定粒子集合的總長度L,其具體的實現(xiàn)步驟:
① 噪聲特性解相關(guān)
根據(jù)解相關(guān)步驟分析,針對系統(tǒng)噪聲特性進行解相關(guān)分析,并獲取解相關(guān)以后的系統(tǒng)狀態(tài)方程:
和相應(yīng)的量測方程:
獲得解相關(guān)以后的說話人運動模型。
② 標準采樣
③ 重采樣
(38)
(Pmiss+(1-Pmiss)×
(39)
(40)
該部分主要針對方法進行2類仿真實驗:首先,針對提出的解耦相關(guān)粒子濾波方法和RFS相結(jié)合,進行了多說話人(2個不連續(xù)說話人)的計算機仿真實驗;然后,針對AMI提供的智能會議環(huán)境中的語料庫資料,采用本文方法,分別針對多人分開交互單人不連續(xù)發(fā)音、多人同時交互不連續(xù)發(fā)音的情況進行了仿真分析,并給出具體的實驗分析結(jié)果。
仿真分析中,參量設(shè)置如下:狀態(tài)采用解相關(guān)分析中的朗之萬運動模型,TDOA的標準偏離度誤差為σv=124 μs(同樣也是語音信號的采樣周期)。其他的參量設(shè)置為:Nmax=1,Pbirth=0.05,Pdeath=0.01,Pmiss=0.25,λc=3,L=500。仿真實驗分析主要針對實際量測的TDOA結(jié)果以及實際的說話人數(shù)目進行實時的測量和估計,驗證本文方法針對多交互說話人的跟蹤效果。圖3展示了本例中房間的具體設(shè)置,房間大小為3 m×3 m×2.5 m。
圖3 仿真用的實驗室布局及相應(yīng)的說話人軌跡Fig.3 Laboratory layout and speaker trajectory for simulation
實驗中采用4個麥克風進行語音信號采集,每對麥克風之間的距離為0.5 m(相互的時間延遲為1.5 ms),圖中也給出了說話人的運動軌跡,以及說話人加入和消失的時刻。說話人的聲音為一男一女,其中說話人1的語音信號如圖1所示,說話人2的語音信號如圖4所示。
圖4 實驗中采用的語音信號Fig.4 Speech signal used in the experiment
房間脈沖響應(yīng)的混響時間為T60=0.15 s,為選擇合適SNR進行跟蹤分析,針對不同SNR情況下跟蹤精度進行了分析,跟蹤誤差值如圖5所示。從中可以看出,隨著SNR的增加跟蹤精度也在改善,但是改善的效果明顯降低,結(jié)合實際環(huán)境中SNR的狀態(tài),本文信噪比取值為SNR=20 dB,量測的TDOA的時間幀長度為128 ms,時間上的交互是不重疊的。
圖5 不同SNR情況下跟蹤誤差值Fig.5 Tracking error under different SNR conditions
4個麥克風對在整個時間段內(nèi)的TDOA量測信息如圖6所示。
(a) 麥克風對1獲取的TDOA估計
由圖6可以看出,量測值出現(xiàn)了很多虛假的峰值信息,GCC的最大值并不是一直表示著真實的TDOA值。而且,在20~30 s之間,由于2個人同時說話,相互之間語音信號干擾,導(dǎo)致TDOA量測出現(xiàn)了較大的惡化。本文方法對說話人數(shù)目的實時估計效果如圖7所示,可以看出,估計是有效的。
圖7 說話人個數(shù)估計效果Fig.7 Results of speaker number estimation
該部分主要是針對AMI提供的智能會議環(huán)境下的標準語料庫信息進行實際環(huán)境的實驗仿真分析,其中,語料庫信息采集的智能會議布局如圖8所示。針對該語料庫信息,該部分主要做了2組仿真分析實驗。第1組,主要是針對多人交互發(fā)言,但每一次只有一個人發(fā)言情況下的說話人進行跟蹤;第2組,主要針對2個人交互,但有時同時發(fā)言、有時同時靜默的情況進行定位跟蹤具體的實驗結(jié)果如圖9~圖12所示。
圖8 AMI智能環(huán)境布局Fig.8 Layout of AMI intelligent environment
圖9給出了第一組單人不重疊交互的跟蹤結(jié)果圖。
由圖9可以看出,該段語料庫是一種有4個人參與會議的討論,但是真正參與討論的人有2個,這2個人輪流發(fā)言,彼此說話在時間域不存在重疊現(xiàn)象。跟蹤結(jié)果顯示,本文方法保持了較好的跟蹤精度。在單人交互不重疊發(fā)言的情況下,2種方法均保持了滿足要求的跟蹤定位結(jié)果。
圖9 單人交互發(fā)言的跟蹤結(jié)果Fig.9 Tracking results of single person interactive speaking
目標位置跟蹤的坐標均方誤差值如圖10所示,RFS-PF為隨機有限集-標準粒子濾波方法跟蹤結(jié)果(在圖中以黃色橢圓標記跟蹤結(jié)果),RFS-DPF為隨機有限集-解耦粒子濾波跟蹤結(jié)果(在圖中以紅色橢圓標記跟蹤結(jié)果。)
(a) x軸位置均方誤差曲線
由圖10可以看出,在這種簡單交互場景下位置跟蹤均方誤差為0.03和0.2,精度較高,主要原因是在這種簡單的交互環(huán)境下,不存在交互重疊現(xiàn)象,噪聲之間的相關(guān)性影響較小,所以2種方法的跟蹤效果基本保持一致。
由圖11可以看出,當說話人在時間上具有重疊性的時候,彼此之間的模型噪聲關(guān)聯(lián)性增強,如果不加入解相關(guān)處理的話,會導(dǎo)致跟蹤誤差累積效應(yīng)明顯增加。
圖11 多人重疊交互發(fā)言的跟蹤效果Fig.11 Tracking results of multi-person overlapping interactive speaking
(a) x軸位置均方誤差曲線
由圖12的跟蹤均方誤差曲線可以看出,加入解相關(guān)處理以后,跟蹤誤差保持穩(wěn)定,沒有出現(xiàn)較大的波動,特別是在說話人語音重疊的時候,仍然保持了很好的跟蹤效果。
針對說話人存在場景下,說話人不連續(xù)發(fā)音以及說話人之間的交互說話問題進行了分析研究,提出了采用隨機有限集思想,將多個目標的多種狀態(tài)建立為隨機的有限集合,分別作為系統(tǒng)模型的單一狀態(tài);為處理說話人語音重疊情況的跟蹤效果,將模型噪聲進行解相關(guān)處理,保證在語音重疊情況下系統(tǒng)模型的相互獨立性,增強了系統(tǒng)的跟蹤穩(wěn)定性和跟蹤精度。最后,將解相關(guān)噪聲粒子濾波方法引入到了RFS理論框架,給出了相應(yīng)的應(yīng)用框架結(jié)構(gòu),并基于計算機仿真和實際的AMI語料庫對不同場景下的多說話人定位跟蹤效果進行了仿真分析,實驗結(jié)果證明了本文所提方法的可行性和優(yōu)越性。