基于過零率指標的雙端說話檢測與回聲消除方法
【專利摘要】本發(fā)明公開了一種基于過零率指標的雙端說話檢測與回聲消除方法:步驟1、過零率計算及雙端說話監(jiān)測;對雙端和單端兩種場景分別采用不同的回聲消除策略。步驟2、回聲濾波器估計及回聲消除;由于房間沖擊響應,麥克風采集到的回聲信號和遠端信號存在差異,從麥克風信號中減除該回聲分量。步驟3、目標語音諧波結構恢復。本模塊采用諧波結構分析的方法對近端語音缺失的諧波成分進行補償,以進一步抑制語音扭曲。本發(fā)明和傳統(tǒng)的回聲消除技術相比,通過過零率指標實現(xiàn)雙端監(jiān)測,避免目標語音被消除;基于頻域最小均方誤差準則,回聲消除濾波器收斂迅速;采用頻域并行處理框架,復雜度低;增加了語音扭曲抑制模塊,降低了目標語音的扭曲程度。
【專利說明】
基于過零率指標的雙端說話檢測與回聲消除方法
技術領域
[0001] 本發(fā)明設及語音信號處理領域,具體設及一種基于過零率指標的雙端說話檢測與 回聲消除方法。
【背景技術】
[0002] 有關回聲消除:
[0003] 所謂回聲是指任一個同時內(nèi)置有麥克風和揚聲器的終端設備,麥克風在采集目標 用戶語音的同時也會接收到有揚聲器發(fā)出的聲音。對于語音通訊設備,如果不把回聲消除 掉會在通訊回路內(nèi)多次迭代并形成嘯叫,造成通訊無法使用。對于內(nèi)置語音控制中樞的智 能音箱等應用,如果從回聲不被抑制,則會影響語音識別的準確性,降低了語音控制的智能 化水平。
[0004] 回聲消除系統(tǒng)有Ξ個重要的信號:近端信號(near-end signal),遠端信號(far- end signal)和回聲。近端信號是指,在目標通訊端,由麥克風采集到的目標語音信號,是回 聲消除系統(tǒng)要保留的目標信號;遠端信號是指在通訊系統(tǒng)的另一端,由用戶發(fā)出,并通過網(wǎng) 絡信道傳輸至目標通訊端,通常用作回聲消除的參考信號;回聲是指遠端信號由通訊端的 揚聲器發(fā)出,再次被麥克風采集到的信號,需要被消除。
[0005] 語音通訊系統(tǒng)必須要求回聲消除能夠?qū)崟r處理,如果不能做到實時處理,會造成 數(shù)據(jù)包的擁塞。對于許多內(nèi)置語音控制功能的終端設備,還需要在回聲消除的同時,不會造 成目標語音的扭曲。
[0006] 有關雙端說話檢測:
[0007] 雙端說話(double-ta化)是指通訊雙端說話人同時在發(fā)出語音信號。相對應的,單 端說話(single-ta化)是指通訊端只有單方用戶在講話。在實際應用中,雙端說話的持續(xù)時 間遠低于單端說話的持續(xù)時間。雖然雙端說話的持續(xù)時間短,但是會對回聲消除的濾波器 收斂造成很大的干擾,因此雙端說話檢測非常的重要。
[000引通用的回聲消除系統(tǒng)中,檢測到雙端說話場景之后,停止回聲消除的適應濾波器 更新,或者濾波器更新步長調(diào)整到很小值,W避免目標語音被錯誤的抑制。如果雙端說話場 景沒有被及時檢測,則會造成目標語音在開始的一段時間內(nèi)會被扭曲,影響通訊質(zhì)量。在諸 如Wifi音箱等應用中,目標語音的扭曲會造成后續(xù)語音識別的誤差。因此,雙端說話檢測必 須對迅速響應雙端說話場景。
[0009] 過零率是指在一段時間內(nèi),相鄰兩個樣本分別為正負樣本的次數(shù),占所有樣本數(shù) 量的比值。雙端說話場景和單端說話場景過零率有很大的不同,因此過零率是用W監(jiān)測雙 端說話的有效指標。
[0010] 雙端說話及回聲消除技術現(xiàn)狀和不足:
[0011] 目前,基于最小均方誤差準則的自適應濾波技術是當前業(yè)界采用主流回聲消除技 術,在基于電話通訊等通訊終端中有了比較成熟的應用。雙端說話檢測主要依據(jù)判斷回聲 消除后的能量殘留或者互相關系數(shù)的方式實現(xiàn),主要的技術不足包括:
[0012] 1)長混響情況下存在很強的回聲殘留。在傳統(tǒng)的電話通訊系統(tǒng)中,一方面麥克風 與揚聲器的距離比較短,混響比較小,采用自適應濾波技術可W很好的解決回聲消除問題; 另一方面揚聲器的聲音通常遠低于用戶的聲音能量,即便存在回聲殘留也不至于被感知。 然而,當前的許多應用中,麥克風與揚聲器的距離比較遠、混響大,采用傳統(tǒng)算法回聲殘留 更多。
[0013] 2)基于能量殘留或者互相關系數(shù)的雙端說話檢測需要人為設定一個闊值,通過對 比每一帖與當前闊值來決定是否為雙端說話場景。采用運種方式會有一定的延遲,即雙端 說話持續(xù)若干時間帖之后才能被監(jiān)測到。另外一個缺陷在于,闊值的設定不能百分之百保 證雙端檢測的準確性,通常會有誤檢時間帖的發(fā)生。
[0014] 3)通訊系統(tǒng)除了回聲之外還被系統(tǒng)白噪聲所干擾,一個高質(zhì)量的語音通訊系統(tǒng)需 要對白噪聲魯棒。而傳統(tǒng)算法對系統(tǒng)噪聲比較敏感,容易被噪聲所干擾。
【發(fā)明內(nèi)容】
[0015] 針對現(xiàn)有技術的不足,本發(fā)明公開了一種基于過零率指標的雙端說話檢測與回聲 消除方法。
[0016] 本發(fā)明的技術方案如下:
[0017] -種基于過零率指標的雙端說話檢測與回聲消除方法,包括W下步驟:
[0018] 步驟1、過零率計算及雙端說話監(jiān)測;
[0019] 將麥克風信號y(t)寫入緩沖區(qū),緩沖區(qū)長度為N;對緩沖區(qū)域中間內(nèi)的樣本點,計 算過零率:
[0020]
(2)
[0021] 式(2)中,Μ為漢明窗函數(shù)w(n)的長度;
[0022] 計算當前緩沖區(qū)過零率的平均值:
[00%]式(8)中,f>表示經(jīng)過平滑處理的麥克風信號與遠端信號的互相關系數(shù);f',,、f; 分別表示經(jīng)過平滑處理的麥克風信號與遠端信號的自相關系數(shù)
[0027]雙端說話判定基于過零率平均值與該自適應闊值的對比,判定準則如下:
[002引如果,則表明當前緩沖區(qū)存在近端信號,為雙端說話場景;
[0029] 如果玄<;/,則表明當前緩沖區(qū)不存在近端信號,為單端說話場景;
[0030] 步驟2、回聲濾波器估計及回聲消除;
[0031] 在每一個頻帶,對當前時間帖構建參考信號向量:
[0032] 復保巧二[這執(zhí)鮮原(/ - U )….,欠 α _ V+ U)f, (11)
[0033] 式(11)中,R(l,k)為遠端信號r(t)的傅里葉變換,Lp為向量長度;
[0034] 計算回聲濾波器:
[003引 r(/,A)二 T";?(/,/0、[%,, (14)
[0036] 式(14)中,WrrQ ,k)為參考向量的自相關矩陣,Ψκγ(1 ,k)為麥克風信號與參考信 號向量的互相關矩陣;
[0037] 在每一個麥克風上估計回聲并消除回聲,信號輸出為:
[003引 z(/,幻二r(/,A)-w"(u')房(U), (巧)
[0039] 基于該步驟,回聲的大部分能量得到了抑制;
[0040] 基于所述步驟1中的雙端說話監(jiān)測結果,如果當前緩沖區(qū)為雙端說話場景,需要對 估計信號進行補償,補償步驟如下所示:
[0041] 首先、計算語音扭曲控制因子:
[00 創(chuàng) vij,k)三(l-a)良;'y,k)、\' , ( 16 )
[0043] 其次、更新目標語音估計如下所示:
[0044]
(17)
[0045] 最后、更新互相關矩陣估計,如下所示:
[0046]
(18)
[0047] 步驟3、目標語音諧波結構恢復;采用諧波結構分析的方法對近端語音缺失的諧波 成分進行補償;
[004引構造梳狀濾波函數(shù),濾波器頻域響應函數(shù)為:
[0049]
(23)
[0050] 其中,β為控制參數(shù),F(xiàn)o為聽覺譜的互通道相關系數(shù)的最大值所應處的基頻對應圓 頻率,F(xiàn)s為采樣頻率;出。mb(f)用W抓取諧波結構上的語音能量,出hift(f)用W抓取諧波結構 之間的語音能量;
[0051 ]根據(jù)濾波后的信號計算梳狀信號殘留比:
[005^
(24)
[0053] 根據(jù)設定闊值判定當前時頻單元是否缺失,并對缺失的時頻單元能量進行補償:
[0054] 如果CFR(f ,m)<0.6,則當前時頻單元諧波結構缺失,掩蔽值為1;
[0055] 如果CFR(f,m)含0.6,則當前視頻單元諧波結構無缺失,掩蔽值為0;
[0化6] 根據(jù)掩蔽值,z(t)通過gammatone濾波器組,得到缺失的諧波結構信號21');最終的 輸出語音信號為:
[0057] i(〇二2·(η + ?η。 (2面)
[005引其進一步的技術方案為:
[0059] 近端信號和遠端信號分別表示為s(t)和r(t);終端麥克風采集到的信號記為y (t),可w表示為:
[0060] y(t)=h(t)*r(t)+s(t)+u(t), 1 = 1,2, . . . ,Ν, (1)
[0061] 式(1)中,h(t)為揚聲器到麥克風的房間沖擊響應,x(t)=h(t)*r(t)為回聲信號, u(t)為系統(tǒng)白噪聲和環(huán)境噪聲,為卷積運算符;
[0062] 步驟10、麥克風信號y(t)寫緩入沖區(qū),緩沖區(qū)長度為N;
[0063] 步驟11、構造長度為Μ的漢明窗函數(shù)w(n);
[0064] 步驟12、對緩沖區(qū)域內(nèi)的樣本點,計算過零率:
[0070]步驟14、當前緩沖區(qū)內(nèi)的麥克風信號的自相關系數(shù)和遠端信號的自相關系數(shù)分別 為:
[0076] 式(7)中,α為為平滑因子,帶有'pre'角標的符號'1%,./均代表上一緩沖區(qū)的相關 數(shù)值,初始緩沖區(qū)統(tǒng)一設置為零;
[0077] 步驟17、計算自適應闊值:
[007引
(致)
[0079] 步驟18、雙端說話判定基于過零率平均值與該自適應闊值的對比,判定準則如下:
[0080] 如果,則表明當前緩沖區(qū)存在近端信號,為雙端說話場景;
[0081] 如果z<y,則表明當前緩沖區(qū)不存在近端信號,為單端說話場景;
[0082] 步驟19、更新自相關及互相關系數(shù),并進入下一緩沖區(qū)計算;系數(shù)更新如下所示:
[0083]
(訝)
[0084] 其進一步的技術方案為,所屬步驟2具體包括:
[0085] 步驟20、分別計算當前緩沖區(qū)麥克風信號與遠端信號的傅里葉變換:
[0086]
( 10 )
[0087] 式(10)中a和k分別代表時間帖和頻帶;
[0088] 步驟21、在每一個頻帶,對當前時間帖構建參考信號向量:
[0089] 々(/,,'〇 二[/?(/,",/?(/…1,/(),...'/?(/ -L., + 1,/(Xl', (11)
[0090] 式(11)中,Lp為向量長度;
[0091 ]步驟22、計算該參考向量的自相關矩陣:
[0092]
(巧)
[0093] 式(12)中,Η為共輛算子,α為平滑參數(shù);
[0094] 步驟23、計算麥克風信號與參考信號向量的互相關矩陣:
[0095]
(巧)
[0096] 步驟24、計算回聲濾波器:
[0097]
( 14)
[0098] 步驟25、在每一個麥克風上估計回聲并消除回聲,信號輸出為:
[0099]
(15)
[0100] 步驟26、基于步驟1中的雙端說話監(jiān)測結果,如果當前緩沖區(qū)為雙端說話場景,需 要對估計信號進行補償,補償步驟如下所示:
[0101] 步驟26a、計算語音扭曲控制因子:
[0102]
(16)
[0103] 步驟26b、更新目標語音估計如下所示:
[0104]
(17)
[0105] 步驟26c、更新互相關矩陣估計,如下所示:
[0106] Ψ,,(/,Is) = Ψ,,,(/.k)-n-a)R{Lk)Ζ'\ΙΛ) , ( 18)
[0107] 步驟27、對各個頻帶處理之后,進行短時傅里葉逆變換,得到回聲抑制后的時域信 號:
[010 引
(19)
[0109] 經(jīng)過步驟2,回聲能量受到抑制。
[0110] 其進一步的技術方案為,所屬步驟3具體包括:
[0111] 步驟31、對步驟2輸出的時域信號z(t),估計聽覺譜;聽覺譜由64路gammatone變換 所得到,該變換的沖擊響應函數(shù)為:
[0112]
t撕)
[011引式(20)中,1為濾波器階數(shù),等效矩形帶寬為b = 1.019X24.7X(0.0043f+l);
[0114]步驟32、根據(jù)聽覺濾波器輸出,計算第f通道、第m時間帖自相關譜:
[0118] 其中,互通道相關系數(shù)的最大值對應處為基頻對應圓頻率Fo;
[0119] 步驟34、構造梳狀濾波函數(shù),此濾波器頻域響應函數(shù)為:
[0120]
(23)
[0121] 式(23)中,β為控制參數(shù),F(xiàn)s為采樣頻率,出。mb (f)用W抓取諧波結構上的語音能量, Hshift(f)用W抓取諧波結構之間的語音能量;
[0122] 步驟35、根據(jù)濾波后的信號計算梳狀信號殘留比:
[0123]
(24)
[0124] 步驟36、根據(jù)設定闊值判定當前時頻單元是否缺失,并對缺失的時頻單元能量進 行補償:
[0125] 如果CFR(f,m)<0.6,則當前時頻單元諧波結構缺失,掩蔽值為1,對當前時頻單元 進行補償;
[0126] 如果CFR(f,m) ^ 0.6,則當前視頻單元諧波結構沒有缺失,掩蔽值為0,不補償諧波 結構;
[0127] 步驟37、根據(jù)掩蔽值,z(t)再次通過gammatone濾波器組,得到缺失的諧波結構信 號訓;
[0128] 步驟38、諧波結構恢復后,最終的輸出語音信號為:
[01 巧]f(〇 = z(〇 + S(〇。 (25)
[0130] 本發(fā)明的有益技術效果是:
[0131] 本發(fā)明公開了基于過零率指標的雙端說話檢測與回聲消除方法。回聲抑制是語音 通訊、會議系統(tǒng)、智能語音控制領域最基本的問題之一,隨著計算機網(wǎng)絡、嵌入式系統(tǒng)相關 領域的技術進展,應用場景變得更為復雜,回聲抑制的難度也隨之增大。本發(fā)明針對當前復 雜的應用場景,設計了一種可W快速實現(xiàn)雙端說話監(jiān)測、強混響情況下的回聲消除技術,復 雜度低,對系統(tǒng)白噪聲有著很強的適應性和魯棒性,可W做到實時處理,有著巨大的商業(yè)應 用潛力。
[0132] 本發(fā)明和傳統(tǒng)的回聲消除技術相比,通過過零率指標實現(xiàn)雙端監(jiān)測,避免目標語 音被消除;基于頻域最小均方誤差準則,回聲消除濾波器收斂迅速;采用頻域并行處理框 架,復雜度低;增加了語音扭曲抑制模塊,降低了目標語音的扭曲程度。相比于現(xiàn)有回聲抑 制技術,本項發(fā)明的優(yōu)勢包括:
[0133] 1.采用頻域濾波器,可W適應于長混響情況下,回聲殘留能量低,語音扭曲小。
[0134] 2.采用過零率指標,雙端監(jiān)測更加迅速和完整,避免了語音扭曲的出現(xiàn)。
[0135] 3.增加了語音扭曲抑制模塊,可W處理多說話人同時說話的應用場景,語音純凈 度更高。
[0136] 另外,本發(fā)明還有很強的實用性,適用于各種場景如下:
[0137] 本發(fā)明的一個重要應用是車載語音控制中樞,用W抑制行車過程中播放音樂的回 聲信號。雙端檢測可W保證用戶發(fā)出語音指令的第一時間做出響應,提高語音控制的準確 度。車載語音控制運項應用是近幾年來的新興產(chǎn)業(yè),潛力巨大。
[0138] 本發(fā)明的另外一個重要應用面向企業(yè)的高質(zhì)量視頻會議系統(tǒng)。此類視頻會議系統(tǒng) 價格昂貴,利潤率高,市場需求迫切,有著很大的應用前景。
[0139] 智能硬件是運兩年來發(fā)展比較迅速的新興行業(yè),許多集成語音控制功能的智能終 端走進人民的生活,比如陪伴型機器人、Wifi音箱等,由于運些智能設備也集成了揚聲器W 支持語音播放、音樂播放等功能,因此也迫切需要本項技術。如果該揚聲器產(chǎn)生的回聲信號 得不到抑制,后續(xù)的語音識別會受到抑制而無法實現(xiàn)智能控制的目的。
【附圖說明】
[0140] 圖1是過零率計算及雙端說話監(jiān)測步驟的流程圖。
[0141] 圖2是漢明窗函數(shù)的示意圖。
[0142] 圖3是回聲濾波器估計及回聲消除處理流程圖。
[0143] 圖4是目標語音諧波結構恢復處理流程圖。
[0144] 圖5是64通道gammatone變換頻域響應函數(shù)示意圖。
[0145] 圖6是梳狀濾波器頻域響應示意圖。
【具體實施方式】
[0146] 本發(fā)明主要包括Ξ個核屯、步驟:(1)過零率計算及雙端說話監(jiān)測;(2)回聲濾波器 估計及回聲消除;(3)目標語音諧波結構恢復。本發(fā)明的處理流程詳細介紹如下:
[0147] 步驟1、過零率計算及雙端說話監(jiān)測。
[0148] 假定近端信號和遠端信號分別表示為s(t)和r(t)。通訊或其他應用終端麥克風采 集到的信號記為y(t),可W表示為:
[0149] y(t)=h(t)*r(t)+s(t)+u(t),i = l,2,...,N, (1)
[0150] 式(1)中,h(t)代表揚聲器到麥克風的房間沖擊響應,x(t)=h(t)*r(t)代表回聲 信號,u(t)代表系統(tǒng)白噪聲和環(huán)境噪聲,"*"代表卷積運算。本項發(fā)明的第一個重要任務是 計算在一段時間內(nèi)的信號過零率,并監(jiān)測出是否為雙端說話場景,即s(t)是否非零值。
[0151] 圖1是過零率計算及雙端說話監(jiān)測步驟的流程圖。如圖1所示,步驟1的具體的計算 流程如下:
[0152] 步驟10、麥克風信號y(t)寫緩沖區(qū),緩沖區(qū)大小為1024B,其中遠端信號信號r(t) 的緩沖區(qū)大小也為1024B。
[0153] 步驟11、構造長度為M = 256的漢明窗函數(shù)w(n),圖2是漢明窗函數(shù)的示意圖。
[0154] 步驟12、對緩沖區(qū)域中間內(nèi)的樣本點,計算過零率:
[0160]式(4)中N=1024代表緩沖區(qū)的長度。
[0161 ]步驟14、當前緩沖區(qū)內(nèi)的麥克風信號的自相關系數(shù)和遠端信號的自相關系數(shù)分別 九,
[0167] 式(7)中,α = 〇.995為平滑因子,帶有'pre'角標的符號均代表上一緩沖區(qū)的相對 應的值,初始緩沖區(qū)統(tǒng)一設置為零。
[0168] 步驟17、計算自適應闊值:
[0169]
(8)
[0170] 和傳統(tǒng)基于能量殘留的雙端監(jiān)測相比,該闊值由系統(tǒng)自適應計算,避免了主觀設 定造成的雙端誤檢。
[0171] 步驟18、雙端說話判定基于過零率平均值與該自適應闊值的對比,判定準則如下:
[0172] 如果Z>y:,則表明當前緩沖區(qū)存在近端信號,為雙端說話場景;
[0173] 如果Z<y,則表明當前緩沖區(qū)不存在近端信號,為單端說話場景。
[0174] 步驟19、更新自相關及互相關系數(shù),并進入下一緩沖區(qū)計算,系數(shù)更新如下所示:
[0175]
(9)
[0176] 步驟1可W迅速的監(jiān)測出是否為雙端說話場景,并對雙端和單端兩種場景分別采 用不同的回聲消除策略,可W最大的程度的消除回聲而不造成近端語音扭曲。
[0177] 步驟2、回聲濾波器估計及回聲消除。
[0178] 如上文所述,麥克風采集到的回聲信號和遠端信號存在差異,運個差異是由房間 沖擊響應所造成?;芈暈V波器估計的目的即為估計出房間沖擊響應,并從麥克風信號中減 除該回聲分量。根據(jù)步驟1得到的雙端監(jiān)測結果采用不同的估計策略。圖3是回聲濾波器估 計及回聲消除處理流程圖,如圖3所示,濾波器估計及回聲消除流程如下所示:
[0179] 步驟20、分別計算當前緩沖區(qū)麥克風信號與遠端信號的傅里葉變換:
[0180]
(10)
[0181] 式(10)中,1和k分別代表時間帖和頻帶。
[0182] 步驟21、在每一個頻帶,對當前時間帖構建參考信號向量:
[0183] 卸/·,'()二[巧(/.H/?(/-l,/(),...,W-L,,, + U)y, (11)
[0184] 式(11)中,Lp = 4為向量長度。
[0185] 步驟22、計算該參考向量的自相關矩陣:
[0186]
(12)
[0187] 式(12)中,Η代表共輛算子,平滑參數(shù)α = 0.995。
[0188] 步驟23、計算麥克風信號與參考信號向量的互相關矩陣:
[C
[C
[C
[0192] 該濾波器基于最小均方誤差準則估計得出,該濾波器輸出可W使得無目標語音時 間帖回聲殘留在均方誤差評價指標下最小。該濾波器即為回聲濾波器估計。
[0193] 步驟25、在每一個麥克風上估計回聲并消除回聲,信號輸出為:
[0194] Z{Lk) = Y{L k) - W''(/,k)R{Lk) , ( 15)
[01M]基于該步驟回聲的大部分能量得到了抑制。
[0196] 步驟26、基于步驟1的雙端說話監(jiān)測結果,如果當前緩沖區(qū)為雙端說話場景,需要 對估計信號進行補償,補償步驟如下所示:
[0197] 步驟26a、計算語音扭曲控制因子:
[0203] 步驟27、對各個頻帶處理之后,進行短時傅里葉逆變換,得到回聲抑制后的時域信 號:
[0204]
( 19)
[0205] 經(jīng)過步驟2的處理流程,回聲能量受到了抑制。
[0206] 上述步驟完成,雖然通過語音扭曲控制因子,對近端語音的扭曲程度進行了控制, 依然存在一定的語音扭曲,還需要進一步抑制W提高語音通訊質(zhì)量。
[0207] 步驟3、目標語音諧波結構恢復。
[0208] 由于回聲消除是在各個頻帶分別進行處理,在某些時頻單元上近端語音可能會缺 失。由于語音信號能量大部分分布在基頻及其倍頻上,本模塊采用諧波結構分析的方法對 缺失的諧波成分進行補償,W進一步抑制語音扭曲。圖4是目標語音諧波結構恢復處理流程 圖,如圖4所示,步驟3的具體流程如下所示:
[0209] 步驟31、對上一模塊輸出的時域信號Z (t),估計聽覺譜。聽覺譜由64路gammatone 變換所得到,該變換的沖擊響應函數(shù)為:
[0210]
(20)
[0別。式(20)中,濾波器階數(shù)1 = 4,等效矩形帶寬為b = 1.019X24.7X(0.0043f+l)。本 項發(fā)明采用64路濾波器組。圖5是64通道gammatone變換頻域響應函數(shù)示意圖。
[0212]步驟32、根據(jù)聽覺濾波器輸出,計算第f通道、第m時間的帖自相關譜:
[0216] 其中,互通道相關系數(shù)的最大值對應處為基頻對應圓頻率Fo,由于語音濁音基頻 通常分布在[50,800化Z之間,如果超出運個區(qū)間,則定義為無諧波結構,L= 128為最大計算 長度。假設當前帖互通道系數(shù)最大值處為fi,根據(jù)頻率換算,其基頻為:
[0217]
[0218] 如果Fi屬于[50,800化Z之間,則定義該時頻單元存在諧波結構,否則判定為不存 在諧波結構。
[0219]步驟34、構造梳狀濾波函數(shù),濾波器頻域響應函數(shù)為:
[0220]
(23)
[0221] 其中,β為控制參數(shù),本項發(fā)明采用參數(shù)i3 = 0.8,F(xiàn)s為采樣頻率。出。mb(f)用W抓取諧 波結構上的語音能量,Hshift(f)用W抓取諧波結構之間的語音能量。圖6是梳狀濾波器頻域 響應示意圖。圖6所示的為基頻為400Hz對應的濾波器頻域響應函數(shù)。
[0222] 步驟35、根據(jù)濾波后的信號計算梳狀信號殘留比:
[0223]
(24)
[0224] CFR特征是反應諧波結構是否缺失的最重要特征。
[0225] 步驟36、根據(jù)設定闊值判定當前時頻單元是否缺失,并對缺失的時頻單元能量進 行補償:
[0226] 如果CFR(f,m)<0.6,則說明當前時頻單元諧波結構是缺失的,采用全l掩蔽的方 式對當前時頻單元進行補償。
[0227] 如果CFR(f,m)含0.6,則說明當前視頻單元諧波結構沒有缺失,則不用補償諧波結 構,掩蔽值為0。
[0。引步驟37、根據(jù)掩蔽值,z(t)再次通過gammatone濾波器組,得到缺失的諧波結構信 號部)。
[0229] 步驟38、諧波結構恢復后,最終的輸出語音信號為:
[0230] z{/) = z(/) + z(/) ^ (25;
[0231] 步驟3主要利用基于gammatone變換的諧波結構分析的方式,對信號時頻單元缺失 的諧波成分進行判定和恢復。經(jīng)過步驟3的處理,輸出信號的諧波結構更為完整,語音感知 質(zhì)量更高。
[0232] W上所述的僅是本發(fā)明的優(yōu)選實施方式,本發(fā)明不限于W上實施例??蒞理解,本 領域技術人員在不脫離本發(fā)明的精神和構思的前提下直接導出或聯(lián)想到的其他改進和變 化,均應認為包含在本發(fā)明的保護范圍之內(nèi)。
【主權項】
1. 一種基于過零率指標的雙端說話檢測與回聲消除方法,其特征在于,包括以下步驟: 步驟1、過零率計算及雙端說話監(jiān)測; 將麥克風信號y(t)寫入緩沖區(qū),緩沖區(qū)長度為N;對緩沖區(qū)域中間內(nèi)的樣本點,計算過 零率:式(2)中,Μ為漢明窗函數(shù)w(n)的長度; 計算當前緩沖區(qū)過零率的平均值:計算自適應閾值:式(8)中,fV表示經(jīng)過平滑處理的麥克風信號與遠端信號的互相關系數(shù);t分別 表示經(jīng)過平滑處理的麥克風信號與遠端信號的自相關系數(shù) 雙端說話判定基于過零率平均值與該自適應閾值的對比,判定準則如下: 如果之,則表明當前緩沖區(qū)存在近端信號,為雙端說話場景; 如果之</,則表明當前緩沖區(qū)不存在近端信號,為單端說話場景; 步驟2、回聲濾波器估計及回聲消除; 在每一個頻帶,對當前時間幀構建參考信號向量: /?(/, k) =: [/?(/, k),R{i-ikh.,.,m - lp+mf , c l i) 式(11)中,R(l,k)為遠端信號r(t)的傅里葉變換,LP為向量長度; 計算回聲濾波器: W(l,k) = ^^(LmRyU,k) , (14) 式(14)中,Wrr(1,k)為參考向量的自相關矩陣,Ψι?(1,k)為麥克風信號與參考信號向 量的互相關矩陣; 在每一個麥克風上估計回聲并消除回聲,信號輸出為: Z(l,k) = Y(Lk)-Wn(/,k)R(i,k) , ( Π ) 基于該步驟,回聲的大部分能量得到了抑制; 基于所述步驟1中的雙端說話監(jiān)測結果,如果當前緩沖區(qū)為雙端說話場景,需要對估計 信號進行補償,補償步驟如下所示: 首先、計算語音扭曲控制因子: vU,k)-Q-a)Rn(Lm ,; (/,k)R(J,k) , (16 ) 其次、更新目標語音估計如下所示:最后、更新互相關矩陣估計,如下所示: Ψ !<Υ(ΙΛ、= Ψ RYiU、-{\-a、KiU々H{LkU (18) 步驟3、目標語音諧波結構恢復;采用諧波結構分析的方法對近端語音缺失的諧波成分 進行補償; 構造梳狀濾波函數(shù),濾波器頻域響應函數(shù)為:其中,β為控制參數(shù),F(xiàn)o為聽覺譜的互通道相關系數(shù)的最大值所應處的基頻對應圓頻率, Fs為采樣頻率;H_b(f)用以抓取諧波結構上的語音能量,Hshlft(f)用以抓取諧波結構之間 的語音能量; 根據(jù)濾波后的信號計算梳狀信號殘留比:根據(jù)設定閾值判定當前時頻單元是否缺失,并對缺失的時頻單元能量進行補償: 如果CFR(f,m) <0.6,則當前時頻單元諧波結構缺失,掩蔽值為1; 如果CFR(f,m) 2 0.6,則當前視頻單元諧波結構無缺失,掩蔽值為0; 根據(jù)掩蔽值,z(t)通過ga_atone濾波器組,得到缺失的諧波結構信號〗(〇;最終的輸出 語音信號為: z(/) := ζ(/)+ ζ{?) ^ ( 25 )2.如權利要求1所述的過零率指標的雙端說話檢測與回聲消除方法,其特征在于,所屬 步驟1具體包括: 近端信號和遠端信號分別表示為s(t)和r(t);終端麥克風采集到的信號記為y(t),可 以表示為: y(t)=h(t)*r(t)+s(t)+u(t) ,i = l ,2,. . . ,N, (1) 式(1)中,h(t)為揚聲器到麥克風的房間沖擊響應,乂(1:)=11(1:)*1'(1:)為回聲信號,11(1:) 為系統(tǒng)白噪聲和環(huán)境噪聲,為卷積運算符; 步驟10、麥克風信號y(t)寫緩入沖區(qū),緩沖區(qū)長度為N; 步驟11、構造長度為Μ的漢明窗函數(shù)w (η); 步驟12、對緩沖區(qū)域內(nèi)的樣本點,計算過零率:式(2)中,函數(shù)sgn表示為:步驟13、計算當前緩沖區(qū)過零率的平均值:步驟14、當前緩沖區(qū)內(nèi)的麥克風信號的自相關系數(shù)和遠端信號的自相關系數(shù)分別為:步驟15、計算當前緩沖區(qū)內(nèi)麥克風信號與遠端信號的互相關系數(shù):步驟16、對所述自相關系數(shù)與互相關系數(shù)進行平滑:式(7)中,α為為平滑因子,帶有'pre'角標的均代表上一緩沖區(qū)的相關數(shù)值, 初始緩沖區(qū)統(tǒng)一設置為零; 步驟17、計算自適應閾值:步驟18、雙端說話判定基于過零率平均值與該自適應閾值的對比,判定準則如下: 如果之,則表明當前緩沖區(qū)存在近端信號,為雙端說話場景; 如果之</,則表明當前緩沖區(qū)不存在近端信號,為單端說話場景; 步驟19、更新自相關及互相關系數(shù),并進入下一緩沖區(qū)計算;系數(shù)更新如下所示: -Λ. Λ Λ Λ .Λ Λ'. :「…:,.=Γ抄,:^3=匕,1^",. = :^。 ( 9 )3.如權利要求1所述的過零率指標的雙端說話檢測與回聲消除方法,其特征在于,所屬 步驟2具體包括: 步驟20、分別計算當前緩沖區(qū)麥克風信號與遠端信號的傅里葉變換:式(10)中,1和k分別代表時間幀和頻帶; 步驟21、在每一個頻帶,對當前時間幀構建參考信號向量: /?(/,k ) - [/?(/,k), R{! -1, A),..., /?(/ - Z." + l,/c)]7 , (.11) 式(11)中,LP為向量長度; 步驟22、計算該參考向量的自相關矩陣: Ψ^(/, k) = (/, + (1 - aW,k )R'\L fe): , (12;) 式(12)中,H為共輒算子,α為平滑參數(shù); 步驟23、計算麥克風信號與參考信號向量的互相關矩陣: Ψ,, (/, A) = ,;) (/,/0 + (1- α)Λ(/,Λ)Κ i7(/,k) , (13) 步驟24、計算回聲濾波器: WU,k) = W^!JYVRr{Ui) , ( 14) 步驟25、在每一個麥克風上估計回聲并消除回聲,信號輸出為: Z{Lk) = )\Lk)-W'\Lk)R{l^) , (In) 步驟26、基于步驟1中的雙端說話監(jiān)測結果,如果當前緩沖區(qū)為雙端說話場景,需要對 估計信號進行補償,補償步驟如下所示: 步驟26a、計算語音扭曲控制因子: v(l,k) = (\ --a)Rl!(!J.yV ,^{ΙΛ)??{ΙΛ) , (16) 步驟26b、更新目標語音估計如下所示:步驟26c、更新互相關矩陣估計,如下所示: T /;). (/, k) = Ψ ,!y (/, Λ) - (1 - c?)R(L k )Z u{Lk) , C18 ) 步驟27、對各個頻帶處理之后,進行短時傅里葉逆變換,得到回聲抑制后的時域信號:經(jīng)過步驟2,回聲能量受到抑制。4.如權利要求1所述的過零率指標的雙端說話檢測與回聲消除方法,其特征在于,所屬 步驟3具體包括: 步驟31、對步驟2輸出的時域信號z (t),估計聽覺譜;聽覺譜由64路gammatone變換所得 到,該變換的沖擊響應函數(shù)為:式(20)中,1為濾波器階數(shù),等效矩形帶寬為b= 1.019 X 24.7 X (0.0043f+1); 步驟32、根據(jù)聽覺濾波器輸出,計算第f通道、第m時間幀自相關譜:步驟33、計算互通道相關系數(shù):其中,互通道相關系數(shù)的最大值對應處為基頻對應圓頻率F〇; 步驟34、構造梳狀濾波函數(shù),此濾波器頻域響應函數(shù)為:式(23)中,β為控制參數(shù),F(xiàn)s為采樣頻率,H_b(f)用以抓取諧波結構上的語音能量,H shlft (f)用以抓取諧波結構之間的語音能量; 步驟35、根據(jù)濾波后的信號計算梳狀信號殘留比:步驟36、根據(jù)設定閾值判定當前時頻單元是否缺失,并對缺失的時頻單元能量進行補 償: 如果CFR(f,m) <0.6,則當前時頻單元諧波結構缺失,掩蔽值為1,對當前時頻單元進行 補償; 如果CFR(f,m) 2 0.6,則當前視頻單元諧波結構沒有缺失,掩蔽值為0,不補償諧波結 構; 步驟37、根據(jù)掩蔽值,z(t)再次通過gammatone濾波器組,得到缺失的諧波結構信號 步驟38、諧波結構恢復后,最終的輸出語音信號為: = z(/) +£(/)。 (25)
【文檔編號】G10L25/06GK105825864SQ201610335013
【公開日】2016年8月3日
【申請日】2016年5月19日
【發(fā)明人】唐明
【申請人】南京奇音石信息技術有限公司