[0063] 獲取當前幀之前的一個或多個幀的濾波后的回聲時延并確定其均值和方差;
[0064] 確定當前幀的回聲時延與均值之差的絕對值;
[0065] 如果所述絕對值小于等于誤差閾值,則確定所述當前幀的回聲時延的誤差在誤差 范圍以內(nèi);
[0066] 否則,確定所述當前幀的回聲時延的誤差超過誤差范圍;
[0067] 其中所述誤差閾值由所述方差確定。
[0068] 由以上技術(shù)方案可以看出,本發(fā)明在獲取回聲參考信號的過程中,利用回聲參考 信號和聲音輸入信號在當前幀的互相關(guān)函數(shù)的峰值來確定回聲參考信號在當前幀的回聲 時延,從而跟蹤回聲參考信號在每一幀的回聲時延,以便為消除時延抖動以及提高回聲消 除性能的長期穩(wěn)定性提供基礎。 【【附圖說明】】
[0069]圖1示出了現(xiàn)有技術(shù)中利用AEC消除回聲的系統(tǒng)結(jié)構(gòu)示意圖;
[0070] 圖2示出了根據(jù)本發(fā)明實施例一提供的一種跟蹤回聲時延的方法流程圖;
[0071] 圖3示出了根據(jù)本發(fā)明實施例一提供的一種對當前幀的回聲時延進行跟蹤濾波的 方法流程圖;
[0072] 圖4示出了根據(jù)本發(fā)明實施例二提供的一種跟蹤回聲時延的裝置結(jié)構(gòu)示意圖;
[0073] 圖5示出了現(xiàn)有技術(shù)中自動回聲消除的效果圖;
[0074] 圖6示出了利用本發(fā)明跟蹤的回聲時延的結(jié)果;
[0075] 圖7示出了根據(jù)本發(fā)明跟蹤的回聲時延進行時延補償后的自動回聲消除的效果 圖。 【【具體實施方式】】
[0076] 為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和具體實施例對 本發(fā)明進行詳細描述。
[0077] 實施例一、
[0078]圖2為本發(fā)明實施例一提供的一種跟蹤回聲時延的方法流程圖。如圖2所示,該方 法可以包括以下步驟:
[0079] 201、獲取回聲參考信號和聲音輸入信號。
[0080]該步驟中,可以通過系統(tǒng)的硬件或軟件獲取回聲參考信號;可以通過麥克風來獲 取說話人的聲音輸入信號。
[0081 ]另外,可以將回聲參考信號的每一幀作為時間單位,每一幀執(zhí)行一次獲取信號的 操作。其中回聲參考信號的幀長可以根據(jù)需要自行設定。
[0082]例如取15mS,20ms、或30ms的回聲參考信號的長度為一幀,每次按幀來執(zhí)行獲取信 號的操作。
[0083] 202、判斷回聲參考信號在當前幀是否存在回聲。
[0084]該步驟中,可以依據(jù)回聲參考信號的能量判斷回聲參考信號在當前幀是否存在回 聲,并根據(jù)判斷的結(jié)果做相應的處理。
[0085]確定當前幀的回聲參考信號的能量的基本原理是,從包含當前幀的回聲參考信號 的預定信號長度中采集多個時間點的信號能量;根據(jù)采集的多個時間點的信號能量得到信 號能量的平均值,該平均值即為當前幀的回聲參考信號的信號能量。
[0086]其中所述預定信號長度的取值與預設的最大時延有關(guān)。由于最大時延與消除回聲 設備的設備自身處理參數(shù)有關(guān),雖然每個設備的最大時延可能會有不同,但是當設備固定 后,最大時延的范圍也將確定,因此預設的最大時延可以根據(jù)硬件設備或軟件系統(tǒng)的實際 情況進行選取。
[0087]設當前幀的回聲參考信號為u(k),k代表回聲參考信號的當前幀的時間,每次處理 的預定信號長度為N,而η代表從包含當前幀的回聲參考信號的預定信號長度中采集的η個 時間點。
[0088]則當前幀的回聲參考信號的能量可以表示為:
[0090]公式(1)中可以使回聲參考信號的幀長相對N短一些,例如設定30ms為一幀,也就 是說每30ms進行一次當前幀的回聲參考信號能量的計算,由于N與最大時延有關(guān),假設預設 的最大時延為60ms,則N可以取大于60ms的長度,或者接近60ms的長度,例如將N取IOOms,即 在I OOms的信號長度中采集η個時間點。
[0091]在對當前幀的信號能量進行計算時,通過將采集的時間點擴展為大于等于當前幀 長的預定信號長度,可以避免由于時延超過當前幀而導致檢測不到回聲的情況。還是以 30ms為一幀、在IOOms的信號長度內(nèi)采集多個時間點為例,假設時延為45ms時,由于是在 IOOms的信號長度內(nèi)采集用于計算平均能量的時間點能量,因此即使當前幀的長度小于時 延,也能檢測到當前幀的回聲。
[0092]在確定了當前幀的回聲參考信號能量后,可以將信號能量的平均值與最小能量閾 值進行比較,如果所述信號能量的平均值大于或等于最小能量的閾值,則判斷為存在回聲, 否則不存在回聲。
[0093]可以通過如下能量檢測法來判斷當前幀是否存在回聲信號,即:
[0095] 其中,Eu(k)表示當前幀的回聲參考信號的能量,EuMin表示回聲參考信號的最小能 量閾值。
[0096] 極端情況下,考慮到從系統(tǒng)獲取的回聲參考信號比較純凈,當設備自身不發(fā)聲時, 回聲參考信號的預設最小能量值可以為〇。
[0097] 然而,由于通過軟件或硬件獲取的回聲參考信號可能存在誤差與干擾,因此可以 將EuMin的閾值設定為大于0的一個值,以對噪聲給出一定的寬容性。該閾值的大小可以根據(jù) 系統(tǒng)實際情況進行設置。
[0098]當回聲參考信號的能量大于等于EuMlJt,表示當前幀存在回聲,則進入步驟203, 利用回聲參考信號和聲音輸入信號在當前幀的互相關(guān)函數(shù)來確定回聲時延;否則,直接進 入步驟206,取前一幀的回聲時延作為時延跟蹤的結(jié)果,或者不做處理。
[0099] 203、利用回聲參考信號和聲音輸入信號在當前幀的互相關(guān)函數(shù)以確定回聲時延。
[0100]該步驟中,確定回聲參考信號和聲音輸入信號在當前幀的互相關(guān)函數(shù)的目的是獲 取當前幀回聲參考信號與聲音輸入信號之間的時延差,或者稱為回聲參考信號在當前幀的 回聲時延。
[0101] 由于互相關(guān)函數(shù)的互相關(guān)就是兩個函數(shù)之間的相似性,當兩個函數(shù)都具有相同周 期分量的時候,它的極大值同樣能體現(xiàn)這種周期性的分量。由此,可以根據(jù)互相關(guān)函數(shù)的峰 值來確定回聲參考信號在當前幀的回聲時延。
[0102] 設由麥克風獲取的聲音輸入信號為d(k),表示為:
[0103] d(k) =s(k)+u/ (k)+e(k) =s(k)+u(k-ik)+e(k) (2)
[0104] 其中k與公式(I)一樣,仍然表示當前幀的時間;s(k)表示說話人信號;e(k)表示環(huán) 境噪聲,為平穩(wěn)高斯隨機過程;Y (k)表示揚聲器發(fā)出的回聲信號,與回聲參考信號u(k)之 間存在不穩(wěn)定的時延Tk,這個時延Tk即是希望準確估計的回聲時延變量。
[0105] 由于s(k)、e(k)與u(k)互不相關(guān),則聲音輸入信號d(k)和回聲參考信號u(k)的互 相關(guān)函數(shù)R du⑴可以表示為:
丨-
[0107]其中公式(3)的k、N、n與公式(1)所表示的含義相同。
[0108]當1 =地寸,互相關(guān)函數(shù)Rdu⑴取最大,信號d(k)與u(k)的波形相似性最大。因此通 過估計互相關(guān)函數(shù)Rdu(T)的峰值,在該峰值處互相關(guān)函數(shù)自變量τ的取值就是確定出的回聲 時延Tk。
[0109]可替代地,由于互相關(guān)函數(shù)與功率譜之間存在快速傅里葉變換(FFT)的關(guān)系,因此 考慮到工程實現(xiàn)的計算效率,為了加快對當前幀的回聲時延的計算速度,可以使用快速傅 里葉變換(FFT)和快速傅里葉反變換(IFFT)來確定互相關(guān)函數(shù)的峰值。
[0110]具體地,由于快速傅里葉變換所處理的是頻域信號,因此可以將當前幀的互相關(guān) 函數(shù)中的時域變量轉(zhuǎn)換為頻域變量,從而利用快速傅里葉變換確定所述互相關(guān)函數(shù)的峰 值。
[0111] 對于長度N的數(shù)字信號d(k)、u(k),互相關(guān)函數(shù)可以求解如下:
[0112] Rdu(x) = IFFT[D(jw) · U*(jw)] = IFFT[FFT[d(k)] *FFT*[u(k)]] (4)
[0113] 其中,F(xiàn)FT□和IFFT[]分別表示信號的FFT和IFFT變換;jw是對應的頻域變量;d (k)、u(k)是時域信號;*表示共輒函數(shù)。
[0114]當互相關(guān)函數(shù)的相關(guān)峰很尖銳時,比較容易得到準確的峰值位置,從而精確確定 當前幀的回聲時延。因此如果在步驟203中即獲得了滿意的結(jié)果,則可以將步驟103所確定 的當前幀的回聲時延作為跟蹤回聲時延的結(jié)果輸出。
[0115]然而在實際應用中,受到環(huán)境噪聲和語音傳播信道復雜性的影響,互相關(guān)函數(shù)可 能出現(xiàn)多個虛假峰或者沒有明顯的主峰。優(yōu)選地,為了增強互相關(guān)主峰,本實施例還可以在 步驟203的基礎上,選擇執(zhí)行步驟204和/或步驟205,以使互相關(guān)函數(shù)以及回聲時延能夠結(jié) 合跟蹤濾波來提高所確定的當前幀的回聲時延的精度。
[0116] 204、對當前幀的互相關(guān)函數(shù)進行跟蹤濾波。
[0117]該步驟的目的是對由步驟