多頻音檢測器的製作方法
2023-07-31 03:40:11 2
專利名稱:多頻音檢測器的製作方法
技術領域:
本發明一般涉及用於電話系統的檢音器,具體涉及一種改進的具有濾波器的檢音器,和一種改進的使用該濾波器的滾降特性和背景噪聲的檢測算法,其中該濾波器的特徵在於其頻譜零點的位置可以防止音調附近的頻率被檢測到。
多頻(MF)音被廣泛地應用於電信技術中。MF音的例子是DTMF和R2。典型的現有技術檢音器包括前置濾波器,用於抑制帶外頻率;分析濾波器,用於確定輸入信號在每個所關注的多頻音的能量;和判定邏輯塊,用於解釋從分析濾波器輸出的多頻能量值並對此響應而進行通過/失敗測試,以確定在每個所關注的多頻音的音調是否存在。
現有技術分析濾波器是利用標準數字濾波技術實現的。必須仔細選擇用於這種現有技術數字濾波器的分析窗口。為簡單起見經常使用矩形窗口。但是,矩形窗口的旁瓣中的能量洩漏可能會導致其它MF頻率的誤檢測。而且,通常強制採用快滾降特性(即,高階),以便捨棄任何過分偏離其額定值的音調。
根據本發明的一個方面,提供一種多頻音檢測器,其分析窗口(即濾波器尺寸)的選擇使得頻譜零點位於所關注的鄰近頻率。根據另一個方面,判定邏輯塊使用濾波器的滾降特性以及背景噪聲來確定任何過分偏離其額定值的音調的閾值通過/失敗。本發明的上述方面導致了與現有技術檢音器相比更簡單的濾波器設計(即,階數降低),同時保持了高的檢音精度。
下面將參照附圖對本發明的優選實施例進行更完整的說明,在附圖中
圖1是已知的多頻音檢測器的方框圖;圖2顯示具有矩形窗口的檢音器濾波器的頻率響應;圖3顯示根據本發明的具有以900Hz為中心的矩形窗口的濾波器的頻率響應,顯示了在鄰近900Hz的均勻間隔頻率處的頻譜零點;圖4顯示具有矩形窗口的濾波器的濾波器滾降;圖5顯示根據本發明另選實施例的具有以852Hz為中心的大小為N=195的矩形窗口的濾波器的頻率響應,顯示了鄰近DTMF信號頻率的中等抑制;圖6顯示根據本發明另選實施例的具有以852Hz為中心的大小為N=276的矩形窗口的濾波器的頻率響應,顯示了鄰近DTMF信號頻率的改進的抑制。
圖1顯示典型的檢音器。前置濾波器1對輸入信號濾波以抑制帶外頻率。包絡檢測器4確定是否有信號存在,並使該信號的信號邊沿與分析濾波器組3的操作同步。分析濾波器組包括多個濾波器,每個濾波器用於一個所關注的MF頻率。這些濾波器計算每個頻率的能量。能量計算器5計算前置濾波後的信號總能量。總能量與分析濾波器組3的結果結合在一起被饋送到判定邏輯塊7,判定邏輯塊7確定是否存在有效的音調。判定邏輯塊7可以執行各種測試,例如最小音調級,扭絞(twist)(如果是雙音調),最大頻率偏移等等。如下面將要更詳細討論的,根據本發明的一個方面,在判定邏輯塊7中實現了一種新方法,通過與背景能量相結合使用濾波器組3中的滾降來確定對額定值的頻率偏移。
分析濾波器3被實現為使用一種修正的Goertzel算法的DFT濾波器,一個分析濾波器3用於一個MF(例如R2)頻率。Goertzel濾波器以R2頻率為中心。
根據優選實施例,選擇一個矩形窗口用於DFT(Goertzel)濾波器。相對於其它濾波器類型,選擇矩形窗口可以降低複雜性。例如,利用升餘弦或凱賽窗口對數據進行前置處理具有顯著的MIPS影響。但是,如上所述,旁瓣中的能量洩漏可能在矩形窗口中非常大(尤其是,如果所要檢測的兩個有效頻率具有相對扭絞)。因此,根據本發明的一個方面,以一定方式選擇濾波器尺寸,使得其它MF頻率落入它的頻譜零點,從而極大降低洩漏效果。
R2是MF通信的一種特殊情況。6個R2信號頻率位於後向方向的540Hz,660Hz,780Hz,900Hz,1020Hz和前向方向的1380Hz,1500Hz,1620Hz,1740Hz,1860Hz,1980Hz。因此,在每個方向上各個頻率間隔120Hz。如圖2所示,大小為N的窗口具有位於頻率間隔Fs/N的多個零點。因此,R2信號的頻譜零點需要120Hz的間隔。
為了將零點定位在120Hz間隔處,並且假設採樣頻率Fs=8kHz,那麼為濾波器選擇200個採樣的窗口大小(零點位於120Hz的最小窗口大小是N=Fs/120Hz,即66.67,因此使得最小整數窗口是N=200)。
例如如果所關注的頻率是900Hz,則濾波器使用200個採樣的窗口以900Hz為中心。因此,頻譜零點位於每一個其它MF頻率處,即540Hz,660Hz,780Hz,1020Hz和1140Hz。圖3顯示900Hz頻率的R2例子。應注意,其它R2頻率正好落在頻譜零點上。
對於非均勻間隔的頻率(例如DTMF),該方法的使用不象均勻間隔頻率的情況那樣直接。但是,可以調整每個頻率檢測器(即濾波器)的窗口的大小,使得最接近的頻率落入零點。另一方面,可以選擇窗口的大小,使得其它頻率的幹擾最小。
例如,如果所關注的頻率是在852Hz的DTMF頻率,最鄰近的頻率是770Hz(即,間隔82Hz)。如圖5所示,選擇N=195的窗口大小使零點間隔為41Hz。其它DTMF頻率(697Hz,941Hz)並不落在頻譜零點上,但是僅分別被抑制了24.8dB和23dB。但是,如圖6所示,如果選擇窗口大小為N=276,那麼沒有一個DTMF頻率落在頻譜零點上。但是,這些頻率分別被抑制了25.3dB,24,8dB和32.6dB,從而改善了總抑制效果。
可以以多種方式實現包括分析濾波器組3的濾波器。如上所述,根據優選實施例實現了Goertzel DFT濾波器。Goertzel濾波器的實現方式在本領域中是已知的(例如,Burrus,C.S.和T.W.Parks.1985.「DFT/FFT和卷積算法」,紐約學徒學院)。本發明的多頻音檢測器中使用的Goertzel濾波器例子以900Hz為中心,其算法如下Fs=8000;%採樣頻率Fc=900;%中心頻率coeff=(2*cos(2*pi*(Fc/Fs)));%Goertzel係數N=200;%為了產生間隔40Hz的零點BEGIN%反饋階段for k=1Ntemp=input(k)+coeff*y(1)-y(2);y(2)=y(1);y(1)=temp;end%前饋階段(計算窗口中的能量)Y11=y(1);Y12=y(2);energy=(Y11*Y11+Y12*Y12-Y11*Y12*coeff)/N/N;return energyEND返回值「energy」是在特定頻率的音調能量,其被饋送到判定邏輯塊7。
邏輯塊7中實現的頻率偏移算法使用濾波器3的滾降與背景能量的估算相結合。圖4顯示矩形窗口(大小為200個採樣,採樣率是Fs=8kHz)的滾降特性。因此,對於對額定值的15Hz的單音頻率偏移,滾降是大約-2dB。換句話說,如果音調相對於它的額定頻率的偏移是15Hz,那麼它在頻率單元條(bin)中的能量將比它的實際能量下降2dB。該能量並沒有「丟失」,而是洩漏到頻率單元條外部,成為背景能量。因此,通過計算背景能量可以確定音調的頻率偏移。
總能量是前置濾波器1的輸出的能量。其由單個頻率能量(E)和背景噪聲(n)構成。
總能量=E+n頻率能量由分析濾波器中的能量(E_bin)和滾降造成的洩漏能量(E_ro)構成。因此,對於一個單音E=E_bin+E_ro如果頻率偏移是零,那麼E=E_bin並且E_ro是零因此總能量是總能量=E_bin+E_ro+n=E_bin+E_back其中E_back是相對於分析濾波器3的輸出的背景能量。因此,通過從總能量中減去分析濾波器中的能量計算出背景能量。分析濾波器能量相對於背景能量的信噪比(SNR)可以如下表示SNR_ro=E_bin/E_back=E_bin/(E_ro+n)因此,SNR_ro與E_ro(由滾降造成的洩漏能量)之間有直接關係,並因此使得SNR_ro與頻率偏移之間有直接關係。
對於矩形窗口滾降=(sin(x)/x)2其中x=π*f*size/Fs對於高達f=13Hz的容許頻率偏移,size=200,Fs=8kHz,x=1.021,滾降是0.6974。假設噪聲(n)相對於洩漏的音調能量E_ro可忽略,那麼E_back=E_ro=(1-滾降)*E並且E_bin=滾降*ESNR_ro=滾降/(1-滾降)=0.6974/(1-0.6974)=2.3SNR_ro提供容許頻率偏移的上閾限。如果E_bin與E_back之間的比率小於SNR_ro,那麼可以接受超過13Hz的頻率偏移。如果閾值被設定為高於SNR_ro,那麼達到13Hz的頻率偏移是不能容許的。
雙音調的情況與上述單音調的情況非常相似。但是,在雙音調的情況下,總能量由兩者的能量構成。
總能量=E1_bin+E1_ro+E2_bin+E2+ro+n=E1_bin+E2_bin+E_back並且E_back=E1_ro+E2_ro+nSNR1_ro=E1_bnin/(E1_ro+E2_ro+n)假設兩個音調之間沒有扭絞(E1=E2)並且噪聲是可忽略的,那麼對於兩個音調的13Hz的頻率偏移,SNR1_ro=E1_bin/E_back=滾降/((1-滾降)+(1-滾降))
=1.15如果兩個音調之間有相對扭絞,情況會有所複雜。假設,f=13Hz時,E2=扭絞*E1,並且 扭絞=6.3096=(8dB)那麼SNR1_ro=E1_bin/E_back=滾降/((1-滾降)+扭絞*(1-滾降))=滾降/((1+扭絞)*(1-滾降))=0.315=-5dB在此情況下,SNR_or提供上閾限,可以注意到,該閾值相對於沒有扭絞情況下的閾值寬鬆很多,以便在存在雙音調和扭絞的情況下容許至少13Hz的頻率偏移。
用於實現使用滾降的典型雙音檢測器的偽代碼如下所示BEGINCalculate Total EnergyCalculate bin energies at each nominal frequencySelect two highest frequency bins,ie.E1_bin and E2_binCalculate E_back=Total_Energy-E1_bin-E2_binIf E1_bin<SNR1_ro*E_backStatus=failedElseif E2_bin<SNR2_ro*E_backStatus=failedEndEND儘管已經描述了本發明的優選實施例,本領域技術人員應理解可以進行各種變型和修改。例如,上述實施例是通過Goertzel DFT濾波器實現的,而濾波器3也可以實現為FIR濾波器或IIR濾波器。這些和所有其它替換和變型都應由所附權利要求中定義的本發明的範圍所涵蓋。
權利要求
1.一種多頻音檢測器,包括分析濾波器,用於檢測輸入信號在所關注的多個音頻的音調能量;判定邏輯塊,用於根據所述檢測的音調能量檢測所關注的所述音頻是否存在,其特徵在於,提供一總能量計算器,用於計算輸入信號的總能量,並且所述判定邏輯塊通過從總能量中減去所述輸入信號在所述的多個所關注音頻的音調能量計算出背景能量,以便檢測所述音頻是否存在,並且對於每個所述音調能量,(i)計算所述分析濾波器的滾降信噪比,(ii)對於所述音調能量小於所述滾降信噪比與所述背景能量之積的所關注的所述多個音頻,捨棄其中任何一個音頻,(iii)否則使所述音頻通過。
2.根據權利要求1的多頻音檢測器,其特徵在於,所述分析濾波器具有的窗口大小被選擇為使得所關注的所述音頻中的各鄰近頻率位於所述濾波器的頻譜零點。
3.根據權利要求2的多頻音檢測器,其特徵在於,所述窗口是矩形窗口。
4.根據權利要求1,2或3的多頻音檢測器,其特徵在於,所述分析濾波器是數字濾波器。
5.一種多頻音檢測器,包括分析濾波器,用於檢測輸入信號在所關注的多個音頻的音調能量;判定邏輯塊,用於根據所述檢測的音調能量檢測所關注的所述音頻是否存在,其特徵在於,所述分析濾波器具有的窗口大小被選擇為使得所關注的所述音頻中的各鄰近頻率位於所述濾波器的頻譜零點。
6.根據權利要求5的多頻音檢測器,其特徵在於,所述窗口是矩形窗口。
7.根據權利要求5或6的多頻音檢測器,其特徵在於,所述分析濾波器是數字濾波器。
8.根據權利要求5的多頻音檢測器,其特徵在於,提供一總能量計算器,用於計算輸入信號的總能量,並且所述判定邏輯塊通過從總能量中減去所述輸入信號在所述的多個所關注音頻的音調能量計算出背景能量,以便檢測所述音頻是否存在,並且對於每個所述音調能量,(i)計算所述分析濾波器的滾降信噪比,(ii)對於所述音調能量小於所述滾降信噪比與所述背景能量之積的所關注的所述多個音頻,捨棄其中任何一個音頻,(iii)否則使所述音頻通過。
全文摘要
一種多頻音檢測器,其分析窗口(即濾波器尺寸)的選擇使得頻譜零點位於所關注的鄰近頻率。檢音器的判定邏輯塊使用濾波器的滾降特性以及背景噪聲來確定任何過分偏離其額定值的音調的閾值通過/失敗。本發明的上述方面導致了與現有技術檢音器相比更簡單的濾波器設計(即,階數降低)。
文檔編號H04Q1/30GK1322081SQ0110918
公開日2001年11月14日 申請日期2001年3月19日 優先權日2000年3月17日
發明者迪特爾·舒爾茨 申請人:米特爾公司