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