CN111917926B - 一种通信终端中的回声消除方法、装置及终端设备 - Google Patents
一种通信终端中的回声消除方法、装置及终端设备 Download PDFInfo
- Publication number
- CN111917926B CN111917926B CN202010388784.5A CN202010388784A CN111917926B CN 111917926 B CN111917926 B CN 111917926B CN 202010388784 A CN202010388784 A CN 202010388784A CN 111917926 B CN111917926 B CN 111917926B
- Authority
- CN
- China
- Prior art keywords
- signal
- output signal
- low
- energy
- frequency
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004891 communication Methods 0.000 title claims abstract description 20
- 230000001629 suppression Effects 0.000 claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 36
- 238000013459 approach Methods 0.000 claims abstract description 17
- 238000001914 filtration Methods 0.000 claims description 48
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 230000003044 adaptive effect Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 238000002592 echocardiography Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000009499 grossing Methods 0.000 description 3
- 230000005764 inhibitory process Effects 0.000 description 3
- 101001120757 Streptococcus pyogenes serotype M49 (strain NZ131) Oleate hydratase Proteins 0.000 description 2
- 229940083712 aldosterone antagonist Drugs 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 101150012579 ADSL gene Proteins 0.000 description 1
- 102100020775 Adenylosuccinate lyase Human genes 0.000 description 1
- 108700040193 Adenylosuccinate lyases Proteins 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000003112 inhibitor Substances 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M9/00—Arrangements for interconnection not involving centralised switching
- H04M9/08—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0232—Processing in the frequency domain
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L2021/02082—Noise filtering the noise being echo, reverberation of the speech
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Telephone Function (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
Abstract
一种通信终端中的回声消除方法、装置及终端设备,其中,该方法包括:对麦克风信号进行回声抑制处理,获得第一输出信号,分别计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量,其中,根据所述第一输出信号中残余回声信号的频率分布规律确定第一预设频率范围,使得所述残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值;根据第一输出信号和噪声信号的低频子带能量计算抑制因子,并根据所述抑制因子对所述第一输出信号进一步抑制,获得第二输出信号;输出所述第二输出信号。相较于现有技术,本发明各实施例可以有效解决残余回声问题,彻底消除单讲时的残余回声,并尽量保证双讲时的近端语音质量。
Description
技术领域
本发明实施例涉及信号处理技术,尤其涉及一种通信终端中的回声消除方法、装置及终端设备。
背景技术
随着互联网技术的发展,VOIP电话越来越普及。在语音通话时常常用户常常会听到自己的回声,举例来说,如图1所示,A、B两个用户通过通信终端进行语音通话,A用户通过麦克风将语音信号a传输B用户,B用户的扬声器将语音信号a播放出来,与B用户讲话产生的语音信号b一起录入B用户的麦克风中,并回传给A用户的扬声器,这样A用户就听到了自己的回声,回声的存在严重干扰了通话交流。
目前,对于回声的处理都是通过移动终端中内置的回声消除功能来抑制回声,但是应用层调用底层的硬件AEC通常不稳定,经常会因为延时偏差而无法完全消除回声,出现残余回声,从而影响用户的正常通话。因此,有必要提出一种方案来更加彻底地消除近端语音通话中的回声。
发明内容
本发明实施例提供通信终端中的回声消除方法、装置及终端设备,以对近端语音通话中的回声进行二次消除,提高通话质量。
根据本发明的一个方面,提供一种通信终端中的回声消除方法,该方法包括:
对麦克风信号进行回声抑制处理,获得第一输出信号;
分别计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量,其中,根据所述第一输出信号中残余回声信号的频率分布规律确定第一预设频率范围,使得所述残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值;
根据第一输出信号和噪声信号的低频子带能量计算抑制因子,并根据所述抑制因子对所述第一输出信号进一步抑制,获得第二输出信号;
输出所述第二输出信号。
根据本发明的另一个方面,还提供一种回声消除装置,该装置包括:
信号获取设备,适于获取麦克风信号;
处理器,适于对麦克风信号进行回声抑制处理,获得第一输出信号,并分别计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量,其中,根据所述第一输出信号中残余回声信号的频率分布规律确定第一预设频率范围,使得所述残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值,根据第一输出信号和噪声信号的低频子带能量计算抑制因子,并根据所述抑制因子对所述第一输出信号进一步抑制,获得第二输出信号;
播放设备,适于输出第二输出信号。
根据本发明的另一个方面,还提供一种终端设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,该处理器执行的程序包括本申请所公开的任一种方法。
通过本发明的各种实施方式,对麦克风信号进行回声抑制处理,获得第一输出信号,从而对麦克风信号中的回声信号进行初步抑制,针对残余的回声信号,进一步根据该残余回声信号的频率分布规律确定出第一预设频率范围,使得残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值,如此在第一预设频率范围内,当用户讲话时,第一输出信号的低频子带能量远大于噪声信号的低频子带能量,而当用户不讲话时,第一输出信号的低频子带能量小于或者近似于噪声信号的低频子带能量,通过计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量,确定出抑制因子,以对第一输出信号进行进一步回声抑制,从而彻底消除单讲(即用户不讲话,仅有残余回声)时的残余回声,并尽量保证双讲(即用户讲话和残余回声同时存在)时的近端语音质量,解决了目前残余回声干扰用户通话交流的问题,有效提高了用户通话质量。
附图说明
图1为本发明提供的回声产生原理的示意图;
图2为本发明某实施例提供的回声消除装置的框图;
图3为本发明某实施例提供的回声消除装置中各模块工作原理示意图;
图4为本发明某实施例提供的比值Rat i o与抑制因子ga i n的关系示意图;
图5为本发明某实施例提供的一种通信终端中的回声消除方法流程示意图。
图6为本发明某实施例提供的针对图5中步骤S1的方法流程示意图;
图7为本发明某实施例提供的针对图6中步骤S13的方法流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
附图中的流程图和框图,图示了按照本发明各种实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现预定的逻辑功能的可执行指令。也应当注意,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在本文中,诸如左和右,上和下,前和后,第一和第二之类的关系术语仅仅用来区分一个实体或动作与另一个实体或动作,而不一定要求或暗示这种实体或动作之间的任何实际的这种关系或顺序。术语“包括”、“包含”或任何其他变体旨在涵盖非排他性的包含,由此使得包括一系列要素的过程、方法、物品或者设备不仅包含这些要素,而且还包含没有明确列出的其他要素,或者为这种过程、方法、物品或者设备所固有的要素。
图2示出示例性的回声消除装置的框图。根据某些实施例,回声消除装置可以是具有通信功能的移动终端,例如移动手机、智能手机、PDA或平板电脑,也可以是其他可与互联网进行交互的电子设备,例如穿戴电子设备、车载导航设备等。
回声消除装置可通过宽带,例如ADSL、VDSL、光纤、无线、有线电视、卫星等方式接入网络,也可通过窄带,例如电话拨号接入、GPRS、2G、3G等方式接入互联网,或者也可通过CDMA、2G、3G、4G等技术接入电信网络。
根据某些实施例,回声消除装置可被配置为接收麦克风信号,并对麦克风信号进行回声抑制处理,获得第一输出信号,针对第一输出信号中残余的回声信号,进一步根据该残余回声信号的频率分布规律确定出第一预设频率范围,使得残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值,通过计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量,确定出抑制因子,根据抑制因子对第一输出信号进一步抑制,获得并输出第二输出信号,使得第二输出信号在单讲时可趋近于0,从而对残余回声进行彻底抑制,在双讲时第二输出信号可趋近于第一输出信号,保证双端讲话时的近端语音质量,有效提高了用户通话质量。
继续参考图2,回声消除装置可以包括信号获取设备1、处理器2以及播放设备3。信号获取设备1可以是麦克风,适于获取麦克风信号,其中,麦克风信号可以包括用户讲话产生的近端语音信号、实际回声信号以及本地噪声信号。播放设备3可以是扬声器,适于输出第二输出信号。
处理器2可以是中央处理单元(“CPU”)或图形处理单元(“GPU”),具体来说处理器2可以包括一个或者多个印刷电路板或微处理模块芯片,执行计算机程序指令序列以执行将在下文中更详细解释的各种方法。
在某些实施例中,处理器2可配置为接收信号获取设备1传输的麦克风信号,对麦克风信号进行回声抑制处理,获得第一输出信号,计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量,确定出抑制因子,根据抑制因子对第一输出信号进一步抑制,获得并输出第二输出信号,然后通过播放设备3输出第二输出信号。
根据本发明的某些实施例,处理器2进一步包括线性滤波模块21和非线性滤波模块22。线性滤波模块21可以通过线性自适应滤波器对信号获取设备1传输的麦克风信号进行线性滤波,获得第一残差信号。非线性滤波模块22可以进一步包括相关性滤波单元221、维纳滤波单元222以及自适应子带能量比抑制单元223。其中,相关性滤波单元221适于对第一残差信号进行相关性滤波,获得第二残差信号;维纳滤波单元222适于对第二残差信号222进行维纳滤波,获得第一输出信号;自适应子带能量比抑制单元223适于根据第一输出信号和噪声信号的低频子带能量计算抑制因子,并根据抑制因子对第一输出信号进一步抑制,获得第二输出信号,然后通过播放设备3输出第二输出信号。
下面结合附图3对各模块的具体工作过程进行解释。
·线性滤波模块
线性滤波模块的基本工作原理是针对扬声器输出的远端信号x(n),通过自适应线性滤波器建立远端信号模型,模拟回声路径,通过自适应算法估算出回声信号然后用麦克风信号d(n)减去估算出的回声信号得到残余信号e(n),经傅里叶变换得到第一残差信号eF(n),即可实现初步的回声抑制处理。
考虑到线性滤波模块对近端语音信号几乎没有损伤,在某些实施例中,可以根据手机的运算量对线性滤波过程进行多次迭代处理,运算量越大,迭代的次数可以越多,通过多次迭代的方式,可以尽可能多的过滤掉麦克风信号中的回声信号,减小残余信号e(n),同时避免损伤近端语音信号,具体实现过程如下:
自适应线性滤波器可采用PBFDAF线性滤波器,即基于分段块频域自适应滤波器,令滤波器的总长度为N阶,划分为P个子滤波器块,每个滤波器长度为L,则L=N/P,相应地,语音块长设置为L,帧长为L+M,帧与帧之间重叠M个样本点,以便在帧与帧之间进行平滑处理,迭代式如下:
for i=1:t rap
对应的频域FFT变换表示为:xF,0(m-l) l=0,1,2,…,(P-1)
自适应滤波器系数表示为:wF,l(m)
自适应滤波估计出的回声信号表示为:
权重更新如下:
wF,l(m+1)=wF,l(m)+2μ*x* F,0(m-lp)*eF(m)
end
其中,t表示多次迭代处理的次数。
·非线性滤波模块
1)相关性滤波单元
对于线性滤波模块21输出的第一残差信号eF(m),其残余回声还是非常明显,因此还需进一步进行非线性滤波。非线性滤波的第一级处理可以是根据从麦克风中收集的近端语音信号和扬声器播放的远端回声信号的相关性来消除残留回声,相关性越大,说明回声越多,需要对回声进一步消除的程度就越大,相关性越小,说明回声越少,需要对回声进一步消除的程序就越小,用频域表示该算法为H(k),相应地,第一残差信号eF(m)用eF(k)表示,则第一残差信号eF(k)通过H(k)后,得到第二残差信号
E1(k)=eF(k)*H(k)
在其他实施例中,第一级处理也可以是中心削波方法,或者是基于残余回声估计的抑制方法等。
2)维纳滤波单元
经过第一级处理,第二残差信号E1(k)中的残余回声被进一步抑制,考虑到还存在噪声的干扰,相关性滤波的效果并不能完消除残余回声,因此在第二级处理中还需要进一步对回声进行抑制,此时可以将第二残差信号E1(k)中残存的回声信号和噪声信号统一都看作噪声来进行处理,通过维纳滤波来进一步抑制。
具体过程如下:
首先,可以将第二残差信号E1(k)近似看作纯净语音,将eF(k)-E1(k)近似看作噪声,然后计算纯净语音和噪声的能量比,即先验信噪比ε(k),ε(k)可以用来衡量声音的纯净度,其计算公式如下:
再根据先验信噪比ε(k)计算维纳滤波因子w(k):
然后根据维纳滤波因子w(k)对第二残差信E1(k)进一步进行回声抑制,得到第一输出信号E2(k):
E2(k)=E1(k)*w(k)
3)自适应子带能量比抑制单元
经过前两级的处理,第一输出信号E2(k)中的残余回声信号其实已经非常小了,但是也有可能存在少量较大的残余回声,这部分主要是由于线性滤波部分失调等原因造成的。通过研究发现,这部分残余回声通常体现在中频子带部分,一般为1000~3000Hz,而在特定频率范围的低频子带部分,一般为0~1000Hz,几乎是没有残余回声的,近端语音信号则在0~3000Hz都有分布,因此,为了进一步提高语音通话质量,本发明充分利用残余回声的频率分布规律来找到这些残余回声,并确定是否出现近端语音,当没有近端语音时,彻底将这些残余回声消除干净以保证通话质量,而当近端语音出现时尽可能地保证近端语音的通话质量。
具体来说,首先根据第一输出信号中残余回声信号的频率分布规律确定第一预设频率范围,使得残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值,通常第一预设频率范围选取0~1000Hz或者0~800Hz低频子带部分。当用户讲话时,第一预设频率范围内的信号包括近端语音信号+噪声信号和/或极少的残余回声信号;当用户不讲话时,第一预设频率范围内的信号仅包括噪声信号和/或极少的残余回声信号。
接下来,分别计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量E2_low和Enoise。
在某一实施例中,计算第一输出信号的低频子带能量E2_low可以包括:对第一输出信号进行分帧处理,并根据第一输出信号在第一预设频率范围内各个频点的能量以及上一帧第一输出信号的低频子带能量计算下一帧第一输出信号的低频子带能量,以便进行平滑处理,则
其中,m表示帧数,k表示频点,Nlow表示第一预设频率范围的边界值对应的频点,例如,第一预设频率范围取[0,800],则Nlow表示800Hz对应的频点,alpha表示常数系数,比如alpha取0.98。
根据某一实施例,当m取1时,可将第一输出信号在第一预设频率范围内各个频点的能量平均值作为第一帧第一输出信号的低频子带能量。在其他实施例中,第一帧第一输出信号的低频子带能量也可以取固定值,比如直接取0。
其中,噪声信号可以从扬声器中采集,当扬声器中包含有回声信号时,采集的噪声信号也可以包括少量的回声信号。在某一实施例中,计算噪声信号的低频子带能量Enoise可以包括:确定预设时长内噪声信号在第一预设频率范围内的子带能量平均值,比如,将初始值设置为噪声信号前500ms在第一预设频率范围内的低频子带能量的平均值,然后利用最小值跟踪算法跟踪噪声变化,不断更新噪声信号的能量普,获得噪声信号的瞬时能量值。其中,最小值跟踪算法可以是最小值算法、中位数估计算法、MCRA、IMCRA、连续最小值跟踪算法等。
然后,计算第一输出信号的低频子带能量E2_low和噪声信号的低频子带能量Enoise的比值Ratio:
Ratio=E2_low/Enoise
当出现近端语音时,E2_low远远大于Enoise,此时Ratio>>1,当没有近端语音时,近端只是噪声和/或极少的残余回声信号,E2_low由于经过了线性滤波处理和两级非线性滤波处理,因此E2_low通常<=1,此时Ratio<=1,通过计算Ratio的值,从而可以确定是否出现了近端语音。
在得到比值Ratio后,将该比值转换为抑制因子gain:
gain=f(Ratio)
其中,f(*)表示一个函数,可以是sigma函数,如图4所示,gain的值随着ratio增大而增大,当ratio趋向于+∞时,gain趋向于1。
最后,根据抑制因子gain对第一输出信号E2(k)进一步进行回声抑制,得到第二输出信号out(m):
out(m)=ifft(gain*E2(k))
其中,ifft(*)为傅里叶反变换。
可以看出,当所述抑制因子越小时,out(m)的信号输出越小,此时对所述第一输出信号的抑制越大;当所述抑制因子越大时,out(m)的信号输出越趋近于第一输出信号E2(k),此时对所述第一输出信号的抑制越小。
具体来说,当用户在近端讲话时,Ratio>>1,抑制因子gain趋向于1,第二输出信号out(m)近似于第一输出信号E2(k),即抑制因子gain对第一输出信号E2(k)的抑制很小,如此可在双端讲话时避免损伤近端语音,保证近端语音的通话质量,而E2(k)由于经过了线性滤波、相关性滤波以及维纳滤波的处理,其残余的回声信号本来就比较少,且此时存在信号较强的近端语音,因此E2(k)中残余的回声信号并不会影响当前通话质量;当没有近端语音时,Ratio<=1,抑制因子gain趋向于0,此时out(m)的信号输出趋近于0,即抑制因子gain对第一输出信号E2(k)的抑制很大,如此可在单端讲话时将回声信号和噪声信号一并彻底消除,避免远端用户听到自己的回声,提高通话质量。
在某些实施例中,回声消除装置还包括通信接口4,通信接口4可提供通信连接,使得回声消除装置可通过网络接口4接入网络与其他通信设备进行通话。
图5示出一种通信终端中的回声消除方法流程示意图,该方法适用于对语音通话中产生的回声信号进行多重抑制,在将回声信号充分抑制的基础上得到第一输出信号,并根据残余回声信号的频率分布规律找到残余回声信号的分布量趋近于0或者小于预设值的第一预设频率范围,通过计算第一输出信号和噪声信号在该频率范围内的能量比值,以确定第一输出信号中是否出现了近端语音信号,从而在未出现近端语音信号时,对第一输出信号充分抑制以彻底消除回声信号,当出现近端语音信号时,减弱对第一输出信号的抑制或者不进行抑制,以保证近端语音的质量。具体来说,该方法包括:
S1、对麦克风信号进行回声抑制处理,获得第一输出信号。
参见图6,步骤S1具体包括:
S11、对所述麦克风信号进行线性滤波,获得第一残差信号。
具体来说,可通过自适应线性滤波器对扬声器输出的远端信建立远端信号模型,模拟回声路径,通过自适应算法估算出回声信号,然后用麦克风信号减去估算出的回声信号得到残余信号,经傅里叶变换得到第一残差信号。
在某一实施例中,还可通过线性滤波器对所述麦克风信号进行迭代滤波处理,获得第一残差信号,通过多次迭代的方式,可以尽可能多的过滤掉麦克风信号中的回声信号,减小残余信号,同时避免损伤近端语音信号。
在某一实施例中,线性滤波器可以是PBFDAF线性滤波器(即基于分段块频域自适应滤波器)或者NLMS(即归一化最小均方自适应滤波器)。
S12、对所述第一残差信号进行相关性滤波,获得第二残差信号。
经过线性滤波处理后,第一残差信号中的残余回声还是非常明显,可进一步根据从麦克风中收集的近端语音信号和扬声器播放的远端回声信号的相关性来消除残留回声,相关性越大,说明回声越多,需要对回声进一步消除的程度就越大,相关性越小,说明回声越少,需要对回声进一步消除的程序就越小。
S13、对所述第二残差信号进行维纳滤波,获得第一输出信号。
经过第一级处理,第二残差信号中的残余回声被进一步抑制,考虑到还存在噪声的干扰,相关性滤波的效果并不能完消除残余回声,因此在第二级处理中还需要进一步对回声进行抑制,此时可以将第二残差信号中残存的回声信号和噪声信号统一都看作噪声来进行处理,通过维纳滤波来进一步抑制。参见图7,步骤S13进一步包括:
S131、根据所述第一残差信号和所述第二残差信号计算先验信噪比。
其中,根据去噪思想,可以将第二残差信号近似看作纯净语音,将第一残差信号与第二残差信号的差值近似看作噪声,然后计算纯净语音和噪声的能量比,即先验信噪比,以衡量声音的纯净度。
S132、根据所述先验信噪比计算维纳滤波因子。
维纳滤波因子可以看作是一种抑制因子,以对第二残差信号进行抑制。
S133、通过所述维纳滤波因子对所述第二残差信号进行回声抑制,获得第一输出信号。
S2、分别计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量。
在某一实施例中,针对第一输出信号中残余的回声信号,可根据残余回声的频率分布规律来确定第一预设频率范围,使得所述残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值。而近端语音在整个频谱都有分布,由此可通过计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量比来确定是否出现近端语音,从而在单讲,即没有出现近端语音时,彻底将这些残余回声消除干净以保证通话质量,在双讲,即近端语音和回声同时出现时,尽可能地保证近端语音的通话质量。
具体来说,计算第一输出信号的低频子带能量包括:对第一输出信号进行分帧处理,并根据第一输出信号在第一预设频率范围内各个频点的能量以及上一帧第一输出信号的低频子带能量计算下一帧第一输出信号的低频子带能量。其中,第一输出信号在第一预设频率范围内各个频点的能量可以是取各频点能量的平均值,然后对该能量平均值和上一帧第一输出信号的低频子带能量进行求和,进而得到下一帧第一输出信号的低频子带能量。
根据某一实施例,当m取1时,可将第一输出信号在第一预设频率范围内各个频点的能量平均值作为第一帧第一输出信号的低频子带能量。在其他实施例中,第一帧第一输出信号的低频子带能量也可以取固定值,比如直接取0。
计算噪声信号的低频子带能量包括:确定预设时长内噪声信号在第一预设频率范围内的子带能量平均值;利用最小值跟踪算法跟踪噪声变化,获得噪声信号的瞬时能量值。其中,最小值跟踪算法可以是最小值算法、中位数估计算法、MCRA、IMCRA、连续最小值跟踪算法等。
S3、根据第一输出信号和噪声信号的低频子带能量计算抑制因子,并根据所述抑制因子对所述第一输出信号进一步抑制,获得第二输出信号。
其中,当麦克风信号中出现近端语音信号时,第一输出信号在第一预设频率范围内的低频子带能量远大于噪声信号的低频子带能量,当麦克风信号中没有近端语音信号时,第一输出信号在第一预设频率范围内的低频子带能量小于或者近似于噪声信号的低频子带能量,因此可根据第一输出信号的低频子带能量与噪声信号的低频子带能量的比值来确定是否出现近端语音信号,从而根据是否出现近端语音信号对第一输出信号进行不同程度的抑制。
具体来说,可计算第一输出信号的低频子带能量与噪声信号的低频子带能量的比值,然后将该比值转换为抑制因子,根据抑制因子对第一输出信号进一步抑制,获得第二输出信号。
其中,抑制因子随比值的增大而增大,并随比值的逐渐增大而趋近于1。具体来说,参见如图4所示的比值Ratio与抑制因子gain的关系示意图,gain的值随着ratio增大而增大,当ratio趋向于+∞时,gain趋向于1。
当用户在近端讲话时,Ratio>>1,抑制因子gain趋向于1,第二输出信号近似于第一输出信号,即抑制因子对第一输出信号的抑制很小,如此可在双端讲话时避免损伤近端语音,保证近端语音的通话质量,而第一输出信号由于经过了线性滤波、相关性滤波以及维纳滤波的处理,其残余的回声信号本来就比较少,且此时存在信号较强的近端语音,因此第一输出信号中残余的回声信号并不会影响用户当前通话质量;当没有近端语音时,Ratio<=1,抑制因子gain趋向于0,此时第二输出信号趋近于0,即抑制因子gain对第一输出信号的抑制很大,如此可在单端讲话时将回声信号和噪声信号一并彻底消除,避免远端用户听到自己的回声,提高通话质量。
S4、输出所述第二输出信号。
在其他实施例中,还提供一种终端设备,还设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行的程序可以是上述提及的任一种回声消除方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (17)
1.一种通信终端中的回声消除方法,其特征在于,所述方法包括:
对麦克风信号进行回声抑制处理,获得第一输出信号;
分别计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量,其中,根据所述第一输出信号中残余回声信号的频率分布规律确定第一预设频率范围,使得所述残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值;
根据第一输出信号和噪声信号的低频子带能量计算抑制因子,并根据所述抑制因子对所述第一输出信号进一步抑制,获得第二输出信号;
输出所述第二输出信号;
其中,所述根据第一输出信号和噪声信号的低频子带能量计算抑制因子,包括:
计算第一输出信号的低频子带能量与噪声信号的低频子带能量的比值,根据所述比值获得抑制因子,所述抑制因子随比值的增大而增大,并随比值的逐渐增大而趋近于1。
2.根据权利要求1所述的方法,其特征在于,还包括:
当所述麦克风信号中出现近端语音信号时,第一输出信号在第一预设频率范围内的低频子带能量远大于噪声信号的低频子带能量,当所述麦克风信号中没有近端语音信号时,第一输出信号在第一预设频率范围内的低频子带能量小于或者近似于噪声信号的低频子带能量。
3.根据权利要求1所述的方法,其特征在于,还包括:
当所述抑制因子越小时,对所述第一输出信号的抑制越大;
当所述抑制因子越大时,对所述第一输出信号的抑制越小。
4.根据权利要求1所述的方法,其特征在于,计算第一输出信号的低频子带能量包括:
对第一输出信号进行分帧处理,并根据第一输出信号在第一预设频率范围内各个频点的能量以及上一帧第一输出信号的低频子带能量计算下一帧第一输出信号的低频子带能量。
5.根据权利要求4所述的方法,其特征在于,还包括:
将第一输出信号在第一预设频率范围内各个频点的能量平均值作为第一帧第一输出信号的低频子带能量。
6.根据权利要求1所述的方法,其特征在于,计算噪声信号的低频子带能量包括:
确定预设时长内噪声信号在第一预设频率范围内的子带能量平均值;
利用最小值跟踪算法跟踪噪声变化,获得噪声信号的瞬时能量值。
7.根据权利要求1所述的方法,其特征在于,对麦克风信号进行回声抑制处理,获得第一输出信号包括:
对所述麦克风信号进行线性滤波,获得第一残差信号;
对所述第一残差信号进行相关性滤波,获得第二残差信号;
对所述第二残差信号进行维纳滤波,获得第一输出信号。
8.根据权利要求7所述的方法,其特征在于,线性滤波包括:
通过线性滤波器对所述麦克风信号进行迭代滤波处理,获得第一残差信号。
9.根据权利要求7所述的方法,其特征在于,相关性滤波包括:
根据近端语音信号和远端回声信号的相关性对所述第一残差信号进行相关性滤波,获得第二残差信号。
10.根据权利要求7所述的方法,其特征在于,维纳滤波包括:
根据所述第一残差信号和所述第二残差信号计算先验信噪比;
根据所述先验信噪比计算维纳滤波因子;
通过所述维纳滤波因子对所述第二残差信号进行回声抑制,获得第一输出信号。
11.一种回声消除装置,其特征在于,所述装置包括:
信号获取设备,适于获取麦克风信号;
处理器,适于对麦克风信号进行回声抑制处理,获得第一输出信号,并分别计算第一输出信号和噪声信号在第一预设频率范围内的低频子带能量,其中,根据所述第一输出信号中残余回声信号的频率分布规律确定第一预设频率范围,使得所述残余回声信号在第一预设频率范围内的分布量趋近于0或者小于预设值,根据第一输出信号和噪声信号的低频子带能量计算抑制因子,并根据所述抑制因子对所述第一输出信号进一步抑制,获得第二输出信号;
播放设备,适于输出第二输出信号;
其中,所述根据第一输出信号和噪声信号的低频子带能量计算抑制因子,包括:
计算第一输出信号的低频子带能量与噪声信号的低频子带能量的比值,根据所述比值获得抑制因子,所述抑制因子随比值的增大而增大,并随比值的逐渐增大而趋近于1。
12.根据权利要求11所述的装置,其特征在于,还包括:
当所述麦克风信号中出现近端语音信号时,第一输出信号在第一预设频率范围内的低频子带能量远大于噪声信号的低频子带能量,当所述麦克风信号中没有近端语音信号时,第一输出信号在第一预设频率范围内的低频子带能量小于或者近似于噪声信号的低频子带能量。
13.根据权利要求11所述的装置,其特征在于,还包括:
当所述抑制因子越小时,对所述第一输出信号的抑制越大;
当所述抑制因子越大时,对所述第一输出信号的抑制越小。
14.根据权利要求11所述的装置,其特征在于,计算第一输出信号的低频子带能量包括:
对第一输出信号进行分帧处理,并根据第一输出信号在第一预设频率范围内各个频点的能量以及上一帧第一输出信号的低频子带能量计算下一帧第一输出信号的低频子带能量。
15.根据权利要求14所述的装置,其特征在于,还包括:
将第一输出信号在第一预设频率范围内各个频点的能量平均值作为第一帧第一输出信号的低频子带能量。
16.根据权利要求11所述的装置,其特征在于,计算噪声信号的低频子带能量包括:
确定预设时长内噪声信号在第一预设频率范围内的子带能量平均值;
利用最小值跟踪算法跟踪噪声变化,获得噪声信号的瞬时能量值。
17.一种终端设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行的程序包括如权利要求1-10任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910384777 | 2019-05-09 | ||
CN2019103847775 | 2019-05-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111917926A CN111917926A (zh) | 2020-11-10 |
CN111917926B true CN111917926B (zh) | 2021-08-06 |
Family
ID=73237581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010388784.5A Active CN111917926B (zh) | 2019-05-09 | 2020-05-09 | 一种通信终端中的回声消除方法、装置及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111917926B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113327625A (zh) * | 2021-05-13 | 2021-08-31 | 瑞芯微电子股份有限公司 | 一种回声抑制方法、判定方法、介质及信号收发设备 |
CN113707170A (zh) * | 2021-08-30 | 2021-11-26 | 展讯通信(上海)有限公司 | 风噪声抑制方法、电子设备和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1294814A (zh) * | 1998-01-09 | 2001-05-09 | 艾利森公司 | 在通信系统中控制回声抑制的方法和设备 |
CN1310840A (zh) * | 1998-05-27 | 2001-08-29 | 艾利森电话股份有限公司 | 通过使用与频谱有关的指数增益函数平均进行的频谱相减而减小信号噪声 |
CN101719969A (zh) * | 2009-11-26 | 2010-06-02 | 美商威睿电通公司 | 判断双端对话的方法、系统以及消除回声的方法和系统 |
CN101778183A (zh) * | 2009-01-13 | 2010-07-14 | 华为终端有限公司 | 一种残留回声抑制方法及设备 |
US8249862B1 (en) * | 2009-04-15 | 2012-08-21 | Mediatek Inc. | Audio processing apparatuses |
CN104050971A (zh) * | 2013-03-15 | 2014-09-17 | 杜比实验室特许公司 | 声学回声减轻装置和方法、音频处理装置和语音通信终端 |
CN105338450A (zh) * | 2015-09-23 | 2016-02-17 | 苏州科达科技股份有限公司 | 一种残留回波抑制方法及装置 |
CN105791611A (zh) * | 2016-02-22 | 2016-07-20 | 腾讯科技(深圳)有限公司 | 回声消除方法及装置 |
CN108696648A (zh) * | 2018-05-16 | 2018-10-23 | 北京小鱼在家科技有限公司 | 一种短时语音信号处理的方法、装置、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SG71035A1 (en) * | 1997-08-01 | 2000-03-21 | Bitwave Pte Ltd | Acoustic echo canceller |
US10115411B1 (en) * | 2017-11-27 | 2018-10-30 | Amazon Technologies, Inc. | Methods for suppressing residual echo |
CN109509482B (zh) * | 2018-12-12 | 2022-03-25 | 北京达佳互联信息技术有限公司 | 回声消除方法、回声消除装置、电子设备和可读介质 |
-
2020
- 2020-05-09 CN CN202010388784.5A patent/CN111917926B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1294814A (zh) * | 1998-01-09 | 2001-05-09 | 艾利森公司 | 在通信系统中控制回声抑制的方法和设备 |
CN1310840A (zh) * | 1998-05-27 | 2001-08-29 | 艾利森电话股份有限公司 | 通过使用与频谱有关的指数增益函数平均进行的频谱相减而减小信号噪声 |
CN101778183A (zh) * | 2009-01-13 | 2010-07-14 | 华为终端有限公司 | 一种残留回声抑制方法及设备 |
US8249862B1 (en) * | 2009-04-15 | 2012-08-21 | Mediatek Inc. | Audio processing apparatuses |
CN101719969A (zh) * | 2009-11-26 | 2010-06-02 | 美商威睿电通公司 | 判断双端对话的方法、系统以及消除回声的方法和系统 |
CN104050971A (zh) * | 2013-03-15 | 2014-09-17 | 杜比实验室特许公司 | 声学回声减轻装置和方法、音频处理装置和语音通信终端 |
CN105338450A (zh) * | 2015-09-23 | 2016-02-17 | 苏州科达科技股份有限公司 | 一种残留回波抑制方法及装置 |
CN105791611A (zh) * | 2016-02-22 | 2016-07-20 | 腾讯科技(深圳)有限公司 | 回声消除方法及装置 |
CN108696648A (zh) * | 2018-05-16 | 2018-10-23 | 北京小鱼在家科技有限公司 | 一种短时语音信号处理的方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111917926A (zh) | 2020-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111341336B (zh) | 一种回声消除方法、装置、终端设备及介质 | |
JP5450567B2 (ja) | クリアな信号の取得のための方法及びシステム | |
JP4161628B2 (ja) | エコー抑圧方法及び装置 | |
KR101017766B1 (ko) | 핸드 프리 장치에서의 스펙트럼 도메인 비선형 반향 제거방법 | |
JP4377952B1 (ja) | 適応フィルタ及びこれを有するエコーキャンセラ | |
KR100595799B1 (ko) | 스펙트럼 종속 지수 이득 함수 평균화를 이용한 스펙트럼공제에 의한 신호 잡음 저감 | |
US8396206B2 (en) | Multi-channel communication device and methods for reducing echoes by inserting a training sequence under a spectral mask | |
Schwarz et al. | Spectral feature-based nonlinear residual echo suppression | |
WO2005125168A1 (en) | Echo canceling apparatus, telephone set using the same, and echo canceling method | |
CN109273019B (zh) | 用于回声抑制的双重通话检测的方法及回声抑制 | |
JP2002528995A (ja) | 周波数ドメインの非線形プロセッシングを使用したエコー・サプレッションを提供するための方法および装置 | |
CN110176244A (zh) | 回声消除方法、装置、存储介质和计算机设备 | |
US20100086122A1 (en) | Echo canceller and echo cancelling method and program | |
CN111917926B (zh) | 一种通信终端中的回声消除方法、装置及终端设备 | |
US8964967B2 (en) | Subband domain echo masking for improved duplexity of spectral domain echo suppressors | |
CN110956975A (zh) | 回声消除方法及装置 | |
US20080152156A1 (en) | Robust Method of Echo Suppressor | |
CN111355855A (zh) | 回声处理方法、装置、设备及存储介质 | |
JP2002503910A (ja) | 雑音環境におけるフィルタ適応化の制御方法および装置 | |
JP4903843B2 (ja) | 適応フィルタ及びこれを有するエコーキャンセラ | |
JP4964267B2 (ja) | 適応フィルタ及びこれを有するエコーキャンセラ | |
JP6180689B1 (ja) | エコーキャンセラ装置、エコー消去方法、及びエコー消去プログラム | |
CN114650340B (zh) | 一种回声消除方法、装置及电子设备 | |
Lu et al. | A centralized acoustic echo canceller exploiting masking properties of the human ear | |
KR20130005805A (ko) | 음성 잔여 반향 억제 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |