李德龍
(中國(guó)傳媒大學(xué)傳播聲學(xué)研究所,北京 100024)
人耳可以在嘈雜場(chǎng)景中跟蹤辨別某一目標(biāo)說(shuō)話人的語(yǔ)音,這種現(xiàn)象稱為“雞尾酒會(huì)效應(yīng)”[1]。目前針對(duì)雞尾酒會(huì)效應(yīng)問題的解決辦法是盲源分離算法,典型代表為ICA 算法[2]及其頻域延伸算法[3],該類方法不利用源信號(hào)和傳輸通道參數(shù),根據(jù)輸入源信號(hào)的統(tǒng)計(jì)特性,由觀測(cè)信號(hào)恢復(fù)出源信號(hào)的各個(gè)獨(dú)立成分,完成對(duì)目標(biāo)信號(hào)的拾取與分離。但該類算法存在幅度和順序的不確定性,受混響和其他聲源的干擾較大,因此只適用于特定場(chǎng)景。為了減少混響干擾,有研究將盲源分離算法與去混響算法結(jié)合[4],但輸出信號(hào)存在一定的失真。對(duì)于目標(biāo)語(yǔ)音的提取大多基于規(guī)則拓?fù)涞膫髀暺麝嚵袑?shí)現(xiàn),通過陣列估計(jì)信號(hào)的波達(dá)方向(Direction of Arrival,DOA),結(jié)合語(yǔ)音信號(hào)的頻譜平滑和諧波特性,可以解決頻域ICA 算法次序不確定性問題[5],但在聲源距離相近時(shí)會(huì)失效,存在距離限制。分布式傳聲器陣列具有空間覆蓋范圍廣、拓?fù)浣Y(jié)構(gòu)靈活、容錯(cuò)率高的優(yōu)點(diǎn),無(wú)需估計(jì)DOA,沒有距離的限制[6]。
在教室等多說(shuō)話人同時(shí)講話的室內(nèi)場(chǎng)景中,由于聲源的位置相對(duì)固定,房間脈沖響應(yīng)可以通過測(cè)量獲得。因此本文將分布式傳聲器陣列與一種基于房間脈沖響應(yīng)實(shí)現(xiàn)的語(yǔ)音提取算法結(jié)合,實(shí)現(xiàn)對(duì)目標(biāo)語(yǔ)音的提取和對(duì)干擾語(yǔ)音的抑制,通過主觀漢語(yǔ)清晰度測(cè)量實(shí)驗(yàn)證明了該方法的有效性。
在實(shí)際環(huán)境中,傳聲器陣列陣元接收的信號(hào)是源信號(hào)經(jīng)過幅度衰減、時(shí)間延遲及反射疊加后的信號(hào),源信號(hào)與混合觀測(cè)信號(hào)之間的關(guān)系如下:
式中:Xi(t)表示第i個(gè)傳聲器陣元拾取的混合觀測(cè)信號(hào),Sj(t)表示第j個(gè)源信號(hào),hij表示第j個(gè)源信號(hào)到第i個(gè)傳聲器的房間脈沖響應(yīng)。其中,房間脈沖響應(yīng)包含了幅度衰減、時(shí)延及反射信息,可直接通過源信號(hào)與脈沖響應(yīng)的卷積求和表示接收的混合信號(hào)。在聲源和接收傳聲器位置固定的情況下,房間脈沖響應(yīng)保持不變。
從矩陣角度給出卷積混合模型下的數(shù)學(xué)表達(dá)式。在時(shí)域內(nèi)矩陣卷積運(yùn)算的表達(dá)式如下:
式中:H(t)是系統(tǒng)函數(shù)矩陣,矩陣的每個(gè)元素均為聲源到傳聲器的房間脈沖響應(yīng);S(t)為源信號(hào)時(shí)域矩陣,其中每個(gè)行向量均為一個(gè)聲源信號(hào);X(t)為傳聲器陣元拾取混合語(yǔ)音構(gòu)成的時(shí)域矩陣。設(shè)定分布式傳聲器陣列陣元個(gè)數(shù)為16,聲源個(gè)數(shù)為7,陣元拾取的混合信號(hào)為房間脈沖響應(yīng)與源信號(hào)的卷積疊加,即:
由于語(yǔ)音信號(hào)具有短時(shí)平穩(wěn)特性,需要將語(yǔ)音信號(hào)分幀加窗后再進(jìn)行時(shí)頻變換,即對(duì)語(yǔ)音進(jìn)行短時(shí)傅里葉變換,將時(shí)域信號(hào)轉(zhuǎn)換到時(shí)頻域。短時(shí)傅里葉變換公式如下[7]:
式中:win表示本文所選擇的窗函數(shù),L表示STFT幀數(shù),l表示STFT 滑動(dòng)長(zhǎng)度,τ為時(shí)間幀,fk是頻域內(nèi)的頻點(diǎn),n代表信號(hào)采樣后的時(shí)間變量。采用漢明窗可以將窗邊界處的信號(hào)平滑衰減,克服矩形窗的泄露現(xiàn)象,因此本文在后續(xù)加窗中均選擇漢明窗對(duì)信號(hào)進(jìn)行加窗。
若窗函數(shù)長(zhǎng)度比房間脈沖響應(yīng)的階數(shù)大,時(shí)域卷積混合運(yùn)算可以近似轉(zhuǎn)換為頻域內(nèi)同一頻點(diǎn)下的乘積運(yùn)算[6]。滿足該條件后,以某頻點(diǎn)w0為例建立數(shù)學(xué)表達(dá)式,將時(shí)域卷積運(yùn)算變換到每個(gè)頻點(diǎn)下的乘積運(yùn)算。
此時(shí)矩陣形式的頻域方程為:
將分布式傳聲器陣列拾取的混合語(yǔ)音和測(cè)量的房間脈沖響應(yīng)代入上述方程后,求解某一頻點(diǎn)下的聲源矩陣。其中系統(tǒng)函數(shù)矩陣為超定矩陣,需要借助系統(tǒng)函數(shù)矩陣的廣義逆矩陣求解原理[8],進(jìn)行超定方程組的求解。在完成所有頻點(diǎn)的方程求解后,將求解完成的目標(biāo)源信號(hào)矩陣通過短時(shí)傅里葉反變換即可實(shí)現(xiàn)對(duì)目標(biāo)語(yǔ)音的提取。
選擇尺寸大小為10 m×6.4 m×4 m 的房間進(jìn)行實(shí)驗(yàn),模擬教室場(chǎng)景下多說(shuō)話人同時(shí)討論的情況。經(jīng)測(cè)量,該房間的中頻混響時(shí)間為350 ms 左右,滿足小教室對(duì)于房間參數(shù)要求。設(shè)置聲源個(gè)數(shù)為7,分布式傳聲器陣列陣元個(gè)數(shù)為16,整體布局如圖1 所示。
圖1 室內(nèi)聲源與陣列布局示意圖
7 個(gè)聲源分為1 名教師和6 名學(xué)生。其中學(xué)生位于前中后三排,教師位于最前排中央。由于日常授課場(chǎng)景中老師的高度高于學(xué)生,因此設(shè)置1 號(hào)揚(yáng)聲器高于其他揚(yáng)聲器。宋慧[9]得出結(jié)論,發(fā)音人的性別對(duì)于漢語(yǔ)清晰度的影響不具有顯著性差異,因此音源性別保持男女比例基本均衡。揚(yáng)聲器位置和音源的性別信息如表1 所示。
表1 揚(yáng)聲器位置及音源信息
傳聲器陣列陣元個(gè)數(shù)設(shè)置為16,分為兩組,每組為8 個(gè)陣元,一組分布于房間頂部,一組分布于房間墻壁。避免將陣列分布于地面,可以不改變房間原有布局,也不影響聲源狀態(tài)。采取針對(duì)目標(biāo)聲源就近布置陣元的原則,給出傳聲器陣元的具體位置如表2 所示。
表2 分布式傳聲器陣列陣元位置
實(shí)驗(yàn)所用傳聲器選擇1/4 英寸預(yù)極化駐極體測(cè)量傳聲器。該傳聲器內(nèi)置前置放大器,傳聲器采用恒流源供電方式。該傳聲器靈敏度較高,頻響曲線平直,一致性較好;尺寸較小,便于移動(dòng),符合室內(nèi)分布式傳聲器陣列拾音要求。
為了便于后續(xù)單音節(jié)字清晰度評(píng)測(cè)實(shí)驗(yàn),實(shí)驗(yàn)音源采用預(yù)先錄制好的7 張KXY 表[10]。KXY表包含漢語(yǔ)普通話所有可能音節(jié),聲韻母及聲調(diào)出現(xiàn)概率與日常漢語(yǔ)交流一致。每張表有75 個(gè)音節(jié),隨機(jī)組合分為25 組,每組含有3 個(gè)音節(jié),連續(xù)不具有語(yǔ)義。通過聲卡控制7 個(gè)揚(yáng)聲器同時(shí)播放7 張KXY 表。搭建十六通道信號(hào)調(diào)理器對(duì)傳聲器陣列進(jìn)行集成電路型壓電式傳感器(Integrated Electronics Piezo-Electric,IEPE)供電,多通道聲卡與PC 進(jìn)行音頻交換,最后通過算法實(shí)現(xiàn)對(duì)目標(biāo)語(yǔ)音的提取,整個(gè)系統(tǒng)框圖如圖2 所示。
圖2 多通道語(yǔ)音增強(qiáng)系統(tǒng)框圖
按照標(biāo)準(zhǔn)[11]利用分布式傳聲器陣列對(duì)7 個(gè)聲源到16 個(gè)傳聲器陣元的房間脈沖響應(yīng)進(jìn)行測(cè)量。將測(cè)得的每一個(gè)房間脈沖響應(yīng)作為系統(tǒng)函數(shù)矩陣的元素。共進(jìn)行112 個(gè)房間脈沖響應(yīng)的測(cè)量,以1號(hào)聲源到1 號(hào)傳聲器為例,給出測(cè)量的房間脈沖響應(yīng)時(shí)域波形圖,如圖3 所示。
從圖3 可以看出,該場(chǎng)景下房間脈沖響應(yīng)的截止點(diǎn)數(shù)為2 048 點(diǎn)。因此在進(jìn)行時(shí)頻轉(zhuǎn)換時(shí),將短時(shí)傅里葉變換窗長(zhǎng)點(diǎn)數(shù)設(shè)置為4 096 點(diǎn),可滿足時(shí)域卷積方程與頻域乘積方程的轉(zhuǎn)化條件。通過系統(tǒng)函數(shù)及混合語(yǔ)音矩陣在頻域不同頻點(diǎn)建立超定方程組后,結(jié)合矩陣的廣義逆求解原理完成超定方程組的求解。從求解獲得的源信號(hào)矩陣中選擇1號(hào)音源和7 號(hào)音源對(duì)應(yīng)的頻域矩陣作為目標(biāo)音源,進(jìn)行短時(shí)傅里葉反變換,可以實(shí)現(xiàn)對(duì)1 號(hào)音源和7號(hào)音源的語(yǔ)音提取。以7號(hào)聲源作為目標(biāo)聲源為例,給出源信號(hào)、距離聲源最近陣元拾取的混合信號(hào)、從混合語(yǔ)音中提取的目標(biāo)信號(hào)時(shí)域波形圖,如圖4所示。從圖4 可以明顯看出,經(jīng)本文系統(tǒng)從混合語(yǔ)音中提取的目標(biāo)語(yǔ)音與源信號(hào)波形基本一致,對(duì)其他干擾音源有抑制效果。
圖3 房間脈沖響應(yīng)h11 的測(cè)量結(jié)果
圖4 目標(biāo)拾取語(yǔ)音時(shí)域波形對(duì)比圖
以漢語(yǔ)單音節(jié)清晰度作為評(píng)測(cè)指標(biāo),測(cè)量目標(biāo)語(yǔ)音的清晰度。將1 號(hào)揚(yáng)聲器和7 號(hào)揚(yáng)聲器播放的KXY 表作為目標(biāo)語(yǔ)音,分別評(píng)測(cè)本文系統(tǒng)處理前后的漢語(yǔ)語(yǔ)音清晰度。處理前拾取的混合語(yǔ)音選擇距離揚(yáng)聲器最近的傳聲器陣元拾取混合信號(hào)。
實(shí)驗(yàn)被試共11 人,男女比例基本平衡。被試熟悉漢語(yǔ)拼音規(guī)則,具有標(biāo)準(zhǔn)普通話能力且聽力正常。實(shí)驗(yàn)開始前,使用測(cè)試信號(hào)對(duì)被試進(jìn)行預(yù)實(shí)驗(yàn)訓(xùn)練使其熟悉實(shí)驗(yàn)流程。實(shí)驗(yàn)正式信號(hào)播放順序?yàn)橄炔シ潘惴ㄌ幚砬靶盘?hào),再播放算法處理后信號(hào)。在聽音室內(nèi)進(jìn)行實(shí)驗(yàn),信號(hào)通過監(jiān)聽耳機(jī)重放,監(jiān)聽耳機(jī)經(jīng)人工校準(zhǔn)將聲壓級(jí)控制在70 dBA。
實(shí)驗(yàn)時(shí),按照每3 個(gè)單音節(jié)字為1 個(gè)信號(hào)進(jìn)行實(shí)驗(yàn),每組信號(hào)間隔約8 s,供被試記錄聽到的信號(hào)。為了方便實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)與計(jì)算,將聲調(diào)以數(shù)字代替,陰平以數(shù)字“1”表示,陽(yáng)平以數(shù)字“2”表示,上聲以數(shù)字“3”表示,去聲以數(shù)字“4”表示。例如,聽到“紅、帶、退”,被試需要記錄“hong2、dai4、tui4”。
若被試記錄的結(jié)果與實(shí)驗(yàn)信號(hào)播放完全一致則記為正確,否則為錯(cuò)誤。通過三倍標(biāo)準(zhǔn)差對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行檢驗(yàn),剔除一名無(wú)效被試后對(duì)剩余的10位有效被試數(shù)據(jù)進(jìn)行處理,計(jì)算出算法處理前后漢語(yǔ)單音節(jié)字的清晰度,結(jié)果如表3 所示。
表3 算法處理前后清晰度表
數(shù)據(jù)表明,經(jīng)本文算法處理后的目標(biāo)語(yǔ)音清晰度有一定提升。陳思宇[12]在語(yǔ)音可懂度實(shí)驗(yàn)中得出結(jié)論,在噪聲干擾下,當(dāng)清晰度達(dá)到40%左右,語(yǔ)句可懂度可以達(dá)到90%。這表明經(jīng)本文系統(tǒng)拾取處理的目標(biāo)信號(hào)可以滿足語(yǔ)音可懂度的要求。
本文利用分布式傳聲器陣列,在教室等多說(shuō)話人場(chǎng)景中設(shè)計(jì)并實(shí)驗(yàn)了一套目標(biāo)語(yǔ)音拾取系統(tǒng),可以從混合語(yǔ)音中提取目標(biāo)語(yǔ)音,抑制其他干擾語(yǔ)音。實(shí)驗(yàn)結(jié)果表明,處理后的語(yǔ)音清晰度有明顯提升,可以滿足漢語(yǔ)可懂度的要求。未來(lái)該系統(tǒng)可以在工程中落地應(yīng)用,實(shí)現(xiàn)多說(shuō)話人干擾場(chǎng)景下的目標(biāo)語(yǔ)音拾取。