本公开实施例涉及通信
技术领域:
:,尤其涉及一种回声消除方法、装置、终端设备及介质。
背景技术:
::随着互联网技术的发展,视频电话越来越普及。虽然手机端都有内置的回声消除功能,但是应用层调用底层的硬件回声消除器(acousticechocanceller,aec),通常不稳定,经常会出现残余回声或者由于时延偏差完全消除不了回声。故,如何将单讲的回声彻底消除干净,同时尽量保证双端讲话时近端语音质量是当前亟待解决的技术问题。技术实现要素:本公开提供一种回声消除方法、装置、终端设备及介质,提升了回声消除效率。第一方面,本公开实施例提供了一种回声消除方法,包括:获取远端信号;将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为对所述远端信号进行频域处理的分块的线性自适应滤波器;根据麦克风信号和所述回声信号,确定残差谱信号;将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。第二方面,本公开实施例还提供了一种回声消除装置,包括:获取模块,用于获取远端信号;第一处理模块,用于将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为经过分块频域处理的线性自适应滤波器;确定模块,用于根据麦克风信号和所述回声信号,确定残差谱信号;第二处理模块,用于将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。第三方面,本公开实施例还提供了一种终端设备,包括:一个或多个处理装置;存储装置,用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理装置执行,使得所述一个或多个处理装置实现本公开实施例提供的回声消除方法。第四方面,本公开实施例还提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现本公开实施例提供的回声消除方法。本公开实施例提供了一种回声消除方法、装置、终端设备及介质,首先获取远端信号;其次将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为对所述远端信号进行频域处理的分块的线性自适应滤波器;然后根据麦克风信号和所述回声信号,确定残差谱信号;最后将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。利用上述技术方案,有效的降低了非线性消除的力度,减小近端语音的损伤,提升了回声消除的效率。附图说明图1为本公开实施例一提供的一种回声消除方法的流程示意图;图2为本公开实施例二提供的一种回声消除方法的流程示意图;图2a为本公开实施例二提供的一种回声消除方法的结构示意图;图2b为本公开实施例二提供的一种确定抑制因子的流程示意图;图2c为本公开实施例二提供的一种远端信号的示意图;图2d为本公开实施例二提供的一种近端信号的示意图;图2e为本公开实施例二提供的采用webrtc的aec对近端信号进行回声消除后的示意图;图2f为本公开实施例二提供的采用实施例二所述回声消除方法对近端信号进行回声消除后的效果示意图;图3为本公开实施例三提供的一种回声消除装置的结构示意图;图4为本公开实施例四提供的一种终端设备的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”。需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。此外,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。实施例一图1为本公开实施例一提供的一种回声消除方法的流程示意图,该方法可适用于提升回声消除效率的情况。该方法可以由回声消除装置来执行,其中该装置可由软件和/或硬件实现,并一般集成在终端设备上,在本实施例中终端设备包括但不限于:手机、电脑和个人数字助理等设备。本公开所述的回声消除方法为基于软件算法层面的二次回声消除,该回声消除方法可以封装为终端设备中的应用程序,该回声消除方法可以用于消除该终端设备在通讯过程中的回声,也可以消除其余终端设备通讯过程中的回声。如图1所示,本公开实施例一提供的一种回声消除方法,包括如下步骤:s110、获取远端信号。远端信号可以为远端麦克风采集的信号。此处不对远端信号的获取方式进行限定。获取远端信号后,可以用于估计出回声信号,以对近端麦克风采集的麦克风信号进行去回声处理。当说话人a在本地讲话,这段语音通过音频前后处理、编码打包发送给说话人b,当b端通过扬声器播放出来,a的声音又被回录进去,编码打包发送给说话人a,这样a就听到了自己的回声,它严重干扰了通话交流。回声消除方法可以集成在说话人a所使用的终端设备上。终端设备上的麦克风可以为近端麦克风。说话人b所使用的终端设备上的麦克风可以为远端麦克风。s120、将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号。分块频域线性自适应滤波器为对所述远端信号进行频域处理的分块的线性自适应滤波器。分块频域线性自适应滤波器将分块频域的思想融合到线性自适应滤波中,以实现线性自适应滤波器分块的频域处理。此处不对线性自适应滤波器进行限定,如,维纳滤波器、卡尔曼滤波器、最小均方自适应滤波器(leastmeansquare,lms)等。示例性的,可以将分块频域思想融合到卡尔曼滤波器中,以减少算法的复杂度和时延。回声信号可以认为是基于远端信号估计出的回声信号。在获取远端信号后,本步骤可以将远端信号经过分块频域线性自适应滤波器处理,即经过融合了分块频域思想的线性自适应滤波器处理,以得到回声信号。具体的,分块频域线性自适应滤波器处理远端信号时,可以分为至少两个子滤波器块,在频域上对远端信号进行处理。如,针对分块频域线性自适应滤波器所包括的每个子滤波器分别确定对应的语音信号后,结合对应的子滤波器系数,确定出回声信号。可选的,所述分块频域线性自适应滤波器为分块频域卡尔曼滤波器,所述分块频域卡尔曼滤波器包括至少两个子滤波器块。本公开在进行回声消除时,可以基于卡尔曼滤波器实现分块频域线性自适应滤波器。经典的卡尔曼算法复杂度比较高,延时比较大,为了解决长时回声问题,不得不提高滤波器的阶数,从而使得复杂度非常高,无法真正实用到生产中。为了解决这个问题,将分块频域的思想融合到卡尔曼滤波中,减小复杂度和时延,达到适合实时语音通信,避免时域卷积。在实现卡尔曼滤波器的分块处理时,假设卡尔曼滤波器的总长度为n阶,划分为p个子滤波器块,每个滤波器长度为l,则有l=n/p;相应的,语音帧移为r,帧与帧之间重叠m个样本点,帧长为r+m,此处简化为l=m=r。其中,p为大于或等于2的正整数。其中,n、l、r和m为正数,此处不作限定,本领域技术人员可以根据实际情况设定。s130、根据麦克风信号和所述回声信号,确定残差谱信号。麦克风信号可以认为是近端麦克风采集的信号。麦克风信号可以为近端语音信号、本地噪声信号和实际回声信号的和。残差谱信号可以认为是经过傅里叶变换后的残差信号。残差信号可以认为是去除回声信号后的麦克风信号。在确定出回声信号后,本步骤将频域的去除回声信号的麦克风信号作为残差谱信号。s140、将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。确定出残差谱信号后,为了实现二次回声消除,本步骤可以将残差谱信号进行非线性处理,以得到消除回声后的输出信号。该输出信号可以传输至远端。其中,非线性处理可以为后置非线性滤波,以压制残差谱信号中的非线性噪声。示例性的,可以将残差谱信号进行相关性滤波器,以得到输出信号。本公开实施例一提供的一种回声消除方法,首先获取远端信号;其次将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为对所述远端信号进行频域处理的分块的线性自适应滤波器;然后根据麦克风信号和所述回声信号,确定残差谱信号;最后将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。利用上述方法,有效的降低了非线性消除的力度,减小近端语音的损伤,提升了回声消除的效率。在上述实施例的基础上,所述分块频域线性自适应滤波器为分块频域卡尔曼滤波器,所述分块频域卡尔曼滤波器包括至少两个子滤波器块。实施例二图2为本公开实施例二提供的一种回声消除方法的流程示意图,本实施例二在实施例一中各个可选方案为基础进行具体化。在本实施例中,将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,具体包括:根据所述远端信号,确定每个子滤波器块的语音信号;将各所述语音信号进行傅里叶变换,得到对应的频域信号;将每个子滤波器的频域信号乘以滤波器系数后累加并进行傅里叶反变换,得到回声信号。本实施例尚未详尽的内容请参考实施例一。如图2所示,本公开实施例二提供的一种回声消除方法,包括如下步骤:s210、获取远端信号。s220、根据所述远端信号,确定每个子滤波器块的语音信号。分块频域线性自适应滤波器在对远端信号进行处理时,可以首先确定每个子滤波器对应的语音信号。示例性的,第p个子滤波器块第n帧语音表示为:xp(n)=[x(nr-pl-m+1),…x(nr-pl)]t。其中,p=0,1,2,…,(p-1),n为正数,p为整数,x(n)表示远端信号。s230、将各所述语音信号进行傅里叶变换,得到对应的频域信号。频域信号可以表示为xp(n,k)=fft(xp(n))。其中,xp(n,k)可以为第n帧第k个频点的频域信号。s240、将每个子滤波器的频域信号乘以滤波器系数后累加并进行傅里叶反变换,得到回声信号。确定完每个子滤波器的频域信号后,可以将每个子滤波器乘以对应的滤波器系数后累加进行傅里叶反变换得到回声信号。如,将经过傅里叶反变换后所得信号的最后l个元素作为回声信号。回声信号可以为:的最后l个元素。其中,为回声信号,wp(n,k)为第p个子滤波器块的滤波器系数,xp(n,k)为第p个子滤波器块对应的语音信号的频域信号。s250、根据麦克风信号和所述回声信号,确定残差谱信号。s260、将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。以下对本公开提供的回声消除方法进行示例性的描述:图2a为本公开实施例二提供的一种回声消除方法的结构示意图,参见图2a,本公开提供的回声消除方法在进行回声消除时,主要包括两部分:频域分块的简化卡尔曼滤波模块,降低非线性消除的力度,减小近端语音的损伤;非线性部分包含相关性算子、自适应子带能量比算子,彻底消除残余回声。远端信号x(n),通过自适应滤波器h(n)(即分块分频域线性自适应滤波器,也即分块频域线性自适应滤波器),估计出回声信号麦克风信号d(n)=y(n)+s(n)+v(n),其中,s(n)为近端语音、v(n)为本地噪声、y(n)为实际回声。残差信号残差信号通过非线性处理模块,得到输出信号out(n),其中,非线性处理模块包括相关性滤波子模块以及自适应子带能量比抑制子模块。分块频域线性自适应滤波器的滤波器系数更新时,可以通过如下公式确定:近端谱的协方差近似为:其中,β为常量,接近1,此处设为0.999。real(.)表示取实部。conj(.)表示矩阵的共轭操作。残差谱的协方差近似为:每个子滤波器块的都一样,以实现卡尔曼滤波器的简化。将协方差扩展成p个块时对应的协方差为:其中,t表示矩阵的转置操作。ones(p,1)为生成元素为1的矩阵,矩阵大小为p与1的乘积。学习率(即学习因子)可以表示为:计算出卡尔曼增益因子:kp(n,k)=μp(n,k)conj(xp(n,k))。权重增量fph_p(n,k)的方差近似表示为:预测协方差矩阵为:其中,i为单位矩阵。回声路径关联的权重变化(即权重增量)为:fphp(n+1,k)=e(n,k)ones(1,p)kp(n,k)。下一步权重更新:wp(n+1,k)=wp(n,k)+fphp(n,k)。基于滤波器系数确定出残差谱信号,并基于相关性滤波器得到目标信号后,可以进行子带能量比抑制,即实现自适应残余回声消除。在基于子带能量比抑制时,可以首先确定自适应子带能量比抑制因子,即抑制因子。从而将目标信号乘以抑制因子以实现子带能量比抑制。图2b为本公开实施例二提供的一种确定抑制因子的流程示意图,参见图2b,如果近端出现语音,则残差子带能量远远大于噪声低频子带能量en(n),如果没有,就是回声或者近端的噪声。因此估计出近端的噪声低频子带能量en(n),与残差低频子带能量e1_low(n),得到子带能量统计量,ratio(n)=e1_low(n)/en(n)。当近端只是噪声或者回声时,ratio(n)<=1,而当近端出现语音时,ratio(n)>>1,最后,将此统计量转换成抑制因子,原则上,ratio(n)越大,抑制越小,ratio(n)越小,抑制越大,这样,可以在保证近端语音质量的基础上,将残余回声和噪声消除干净。噪声低频子带能量en(n),初始值可以是前500ms的低频(0~1000hz)的子带能量平均值,之后可以根据最小值跟踪等相关算法,跟踪噪声变化,例如可以是最小值算法、中位数估计算法、mcra、imcra、连续最小值跟踪等,得到en(n)的瞬时能量值。残差低频子带能量e1_low(n),可以直接由以下公式计算得出:其中,alpha=0.98,nlow为1000hz对应的频点这样,可以得到e1_low(n)与en(n)的统计量,这里以比值作为统计量为例,也可以是其它相关的统计量,ratio(n)=e1_low(n)/en(n)。最后,将统计量经过函数变换,得到抑制因子gain(n)=f(ratio(n)),f(*)表示一个非线性函数:其中,γ为常量,此处设为10。threshold为常量,此处设为800。输出信号out(n)=ifft(gain(n)e1(n,k)),ifft为傅里叶反变换。图2c为本公开实施例二提供的一种远端信号的示意图,图2d为本公开实施例二提供的一种近端信号的示意图,图2e为本公开实施例二提供的采用webrtc的aec对近端信号进行回声消除后的示意图,图2f为本公开实施例二提供的采用实施例二所述回声消除方法对近端信号进行回声消除后的效果示意图。参见图2c-图2f,各图中横坐标可以表示样本点数,纵坐标可以表示幅度。本公开提供的回声消除方法回声消除效果更加彻底。本公开实施例二提供的一种回声消除方法,具体化了得到回声信号的操作。利用该方法,能够基于分块频域线性自适应滤波器较快的确定出回声信号;然后基于回声信号和麦克风信号得到消除回声后的输出信号,利用该方法采用分块频域线性自适应滤波器进行回声消除,减少了回声消除的计算量,提升了回声消除的准确率。在上述各实施例的基础上,提出了上述实施例的变型实施例,在此需要说明的是,为了使描述简要,在变型实施例中仅描述与上述实施例的不同之处。在一个实施例中,当前帧的语音信号对应的滤波器系数为上一帧语音信号对应的滤波器系数与上一帧语音信号对应的权重增量的和。需要注意的是,子滤波器块处理每帧远端信号时的滤波器系数可以不同。权重增量可以认为是滤波器系数的增量。每帧语音信号对应的权重增量可以不同。示例性的,当前帧的语音信号可以表示为:wp(n+1,k)=wp(n,k)+fphp(n,k);其中,wp(n+1,k)可以为第p个子滤波器块当前帧语音信号对应的滤波器系数,wp(n,k)可以为第p个子滤波器块上一帧语音信号对应的滤波器系数,fphp(n,k)可以为第p个子滤波器块上一帧语音信号对应的权重增量。在一个实施例中,当前帧的语音信号对应的权重增量根据子滤波器块的个数和上一帧语音信号对应的残差谱信号和卡尔曼增益因子确定,所述卡尔曼增益因子根据上一帧语音信号的频域信号和上一帧语音信号的学习因子确定,每个子滤波器块确定所述学习因子的协方差相同。当前帧的语音信号对应的权重增量可以表示为:fphp(n+1,k)=e(n,k)ones(1,p)kp(n,k);其中,fphp(n+1,k)为当前帧的语音信号对应的权重增量,e(n,k)为上一帧语音信号对应的残差谱信号,kp(n,k)为卡尔曼增益因子。p为子滤波器的个数。上一帧语音信号的卡尔曼增益因子可以为上一帧语音信号的频域信号的共轭与上一帧语音信号的学习因子的乘积。在一个实施例中,将根据麦克风信号和所述回声信号,确定残差谱信号,具体包括:从麦克风信号中去除回声信号,得到残差信号;将所述残差信号进行傅里叶变换,得到残差谱信号。在确定残差谱信号时,本实施例可以首先确定残差信号。本步骤可以将麦克风信号与回声信号的差值确定为残差信号。如,残差信号表示为:其中,e(n)为残差信号,d(n)为麦克风信号,为回声信号。残差谱信号可以表示为:其中,e(n,k)为残差谱信号。本步骤可以将残差信号和m行1列的0向量形成的向量进行傅里叶变换以得到残差谱信号。在一个实施例中,将所述残差谱信号进行非线性处理,得到输出信号,具体包括:将所述残差谱信号进行相关性滤波处理后,得到目标信号;将所述目标信号进行子带能量比抑制处理,得到输出信号。确定残差谱信号后,可以对残差谱信号进行相关性滤波器处理,并将处理后的信号确定为目标信号。因为回声与远端播放的信号有很强的相关性,因此利用经典的相关性完成初步的滤波处理。远端信号的功率密度谱近似表示为:sx(n,k)=αsx(n-1,k)+(1-α)real(x0(n,k)conj(x0(n,k)));其中,α为常量,一般设为0.95。近端信号的功率谱密度近似表示为:sd(n,k)=αsd(n-1,k)+(1-α)real(d(n,k)conj(d(n,k)));其中,d(n,k)=fft(d(n))。线性残差的功率谱密度近似表示为:se(n,k)=αse(n-1,k)+(1-α)real(e(n,k)conj(e(n,k)));远端信号与近端信号的相关性因子表示为:cohxd(n,k)=real(sxd(n,k)conj(sxd(n,k)))/(sx(n,k)sd(n,k)+1e-6);其中,sxd(n,k)=αsxd(n-1,k)+(1-α)x0(n,k)conj(d(n,k))。线性残差信号与近端信号的相关性因子表示为:cohed(n,k)=real(sed(n,k)conj(sed(n,k)))/(se(n,k)sd(n,k)+1e-6)。综合的非一致性因子表示为:noned(n,k)=min(1-cohxd(n,k),cohed(n,k))。相关滤波因子表示为:h(n,k)=noned(n,k)level;其中,level为常量,一般设定为2。则残差信号通过h(k)后,e1(n,k)=e(n,k)h(n,k)。在进行相关性滤波处理的基础上,为了解决相关性滤波处理后的残余回声,可以进行子带能量比抑制处理,以进一步消除回声。残余回声通常体现在1000~3000hz中频子带部分,这部分主要是由于线性滤波部分失调等原因造成的,因此,通过低频子带0~1000hz能量,可以找到这些残余回声,彻底将回声消除干净,同时也不损伤近端语音,从而实现子带能量比抑制。在一个实施例中,所述将所述目标信号进行子带能量比抑制处理,得到输出信号,包括:根据残差低频子带能量,确定抑制因子;将所述目标信号与所述抑制因子的乘积进行傅里叶反变换,得到输出信号。对目标信号进行子带能量比抑制处理时,可以首先基于残差低频子带能量确定抑制因子,如,基于残差低频子带能量确定能量阈值,然后将能量阈值进行函数变换得到抑制因子;又如,基于残差低频子带能量和噪声低频子带能量确定子带能量统计量,然后将子带能量统计量进行函数变换,得到抑制因子。在一个实施例中,所述根据残差低频子带能量,确定抑制因子,包括:将残差低频子带能量与噪声低频子带能量的比值,确定为子带能量统计量;将所述子带能量统计量进行函数变换,得到抑制因子。在得到抑制因子时,可以对子带能量统计量进行非线性函数变换,此处不限定进行非线性函数的具体形式。子带能量统计量可以基于残差低频子带能量和噪声低频子带能量确定,此处不对确定噪声低频子带能量和所述残差低频子带能量的手段进行限定。在一个实施例中,所述噪声低频子带能量和所述残差低频子带能量根据所述目标信号确定。本公开可以基于预设时长内的目标信号确定噪声低频子带能量,基于预设长后的目标信号确定残差低频子带能量。预设时长可以基于实际环境确定。在预设时长内容目标信号可以认为是噪声信号。在一个实施例中,所述将所述子带能量统计量进行函数变换,得到抑制因子,包括:将所述子带能量统计量经过如下函数变换,得到抑制因子:其中,gain(n)为抑制因子,γ为常量,threshold为常量,ratio(n)为抑制因子。实施例三图3为本公开实施例三提供的一种回声消除装置的结构示意图,该装置可适用于提升回声消除效率的情况,其中该装置可由软件和/或硬件实现,并一般集成在终端设备上。如图3所示,该装置包括:获取模块31、第一处理模块32、确定模块33和第二处理模块34;其中,获取模块31,用于获取远端信号;第一处理模块32,用于将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为经过分块频域处理的线性自适应滤波器;确定模块33,用于根据麦克风信号和所述回声信号,确定残差谱信号;第二处理模块34,用于将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。在本实施例中,该装置首先通过获取模块31,用于获取远端信号;其次通过第一处理模块32将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为经过分块频域处理的线性自适应滤波器;然后通过确定模块33根据麦克风信号和所述回声信号,确定残差谱信号;最后通过第二处理模块34将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。本实施例提供了一种回声消除装置,能够有效的降低了非线性消除的力度,减小近端语音的损伤,提升了回声消除的效率。进一步地,所述分块频域线性自适应滤波器为分块频域卡尔曼滤波器,所述分块频域卡尔曼滤波器包括至少两个子滤波器块。进一步地,第一处理模块32,具体用于:根据所述远端信号,确定每个子滤波器块的语音信号;将各所述语音信号进行傅里叶变换,得到对应的频域信号;将每个子滤波器的频域信号乘以滤波器系数后累加并进行傅里叶反变换,得到回声信号。进一步地,当前帧的语音信号对应的滤波器系数为上一帧语音信号对应的滤波器系数与上一帧语音信号对应的权重增量的和。进一步地,当前帧的语音信号对应的权重增量根据子滤波器块的个数和上一帧语音信号对应的残差谱信号和卡尔曼增益因子确定,所述卡尔曼增益因子根据上一帧语音信号的频域信号和上一帧语音信号的学习因子确定,每个子滤波器块确定所述学习因子的协方差相同。进一步地,确定模块33具体用于:从麦克风信号中去除回声信号,得到残差信号;将所述残差信号进行傅里叶变换,得到残差谱信号。进一步地,第二处理模块34具体用于:将所述残差谱信号进行相关性滤波处理后,得到目标信号;将所述目标信号进行子带能量比抑制处理,得到输出信号。进一步地,第二处理模块34将所述目标信号进行子带能量比抑制处理,得到输出信号,包括:根据残差低频子带能量,确定抑制因子;将所述目标信号与所述抑制因子的乘积进行傅里叶反变换,得到输出信号。进一步地,第二处理模块34根据残差低频子带能量,确定抑制因子,包括:将残差低频子带能量与噪声低频子带能量的比值,确定为子带能量统计量;将所述子带能量统计量进行函数变换,得到抑制因子。进一步地,所述噪声低频子带能量和所述残差低频子带能量根据所述目标信号确定。进一步地,第二处理模块34将所述子带能量统计量进行函数变换,得到抑制因子,包括:将所述子带能量统计量经过如下函数变换,得到抑制因子:其中,gain(n)为抑制因子,γ为常量,threshold为常量,ratio(n)为抑制因子。上述回声消除装置可执行本公开任意实施例所提供的回声消除方法,具备执行方法相应的功能模块和有益效果。实施例四图4为本公开实施例四提供的一种终端设备的结构示意图。图4示出了适于用来实现本公开实施例的终端设备400的结构示意图。本公开实施例中的终端设备400可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(personaldigitalassistant,pda)、平板电脑(portableandroiddevice,pad)、便携式多媒体播放器(portablemediaplayer,pmp)、车载终端(例如车载导航终端)等等的移动终端以及诸如台式计算机等等的固定终端。图4示出的终端设备400仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。如图4所示,终端设备400可以包括一个或多个处理装置(例如中央处理器、图形处理器等)401,其可以根据存储在只读存储器(rom)402中的程序或者从存储装置408加载到随机访问存储器(ram)403中的程序而执行各种适当的动作和处理。一个或多个处理装置401实现如本公开提供的方法。在ram403中,还存储有终端设备400操作所需的各种程序和数据。处理装置401、rom402以及ram403通过总线404彼此相连。输入/输出(i/o)接口405也连接至总线404。通常,以下装置可以连接至i/o接口405:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置406;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置407;包括例如磁带、硬盘等的存储装置408,存储装置408用于存储一个或多个程序;以及通信装置409。通信装置409可以允许终端设备400与其他设备进行无线或有线通信以交换数据。虽然图4示出了具有各种装置的终端设备400,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置409从网络上被下载和安装,或者从存储装置408被安装,或者从rom402被安装。在该计算机程序被处理装置401执行时,执行本公开实施例的方法中限定的上述功能。需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。上述计算机可读介质可以是上述终端设备400中所包含的;也可以是单独存在,而未装配入该终端设备400中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该终端设备执行时,使得该终端设备400:获取远端信号;将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为对所述远端信号进行频域处理的分块的线性自适应滤波器;根据麦克风信号和所述回声信号,确定残差谱信号;将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定。本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。根据本公开的一个或多个实施例,示例1提供了一种回声消除方法,包括:获取远端信号;将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为对所述远端信号进行频域处理的分块的线性自适应滤波器;根据麦克风信号和所述回声信号,确定残差谱信号;将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。根据本公开的一个或多个实施例,示例2根据示例1所述的方法,所述分块频域线性自适应滤波器为分块频域卡尔曼滤波器,所述分块频域卡尔曼滤波器包括至少两个子滤波器块。根据本公开的一个或多个实施例,示例3根据示例2所述的方法,所述将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,包括:根据所述远端信号,确定每个子滤波器块的语音信号;将各所述语音信号进行傅里叶变换,得到对应的频域信号;将每个子滤波器的频域信号乘以滤波器系数后累加并进行傅里叶反变换,得到回声信号。根据本公开的一个或多个实施例,示例4根据示例3所述的方法,当前帧的语音信号对应的滤波器系数为上一帧语音信号对应的滤波器系数与上一帧语音信号对应的权重增量的和。根据本公开的一个或多个实施例,示例5根据示例4所述的方法,当前帧的语音信号对应的权重增量根据子滤波器块的个数和上一帧语音信号对应的残差谱信号和卡尔曼增益因子确定,所述卡尔曼增益因子根据上一帧语音信号的频域信号和上一帧语音信号的学习因子确定,每个子滤波器块确定所述学习因子的协方差相同。根据本公开的一个或多个实施例,示例6根据示例1所述的方法,所述根据麦克风信号和所述回声信号,确定残差谱信号,包括:从麦克风信号中去除回声信号,得到残差信号;将所述残差信号进行傅里叶变换,得到残差谱信号。根据本公开的一个或多个实施例,示例7根据示例1所述的方法,包括:所述将所述残差谱信号进行非线性处理,得到输出信号,包括:将所述残差谱信号进行相关性滤波处理后,得到目标信号;将所述目标信号进行子带能量比抑制处理,得到输出信号。根据本公开的一个或多个实施例,示例8根据示例7所述的方法,包括:所述将所述目标信号进行子带能量比抑制处理,得到输出信号,包括:根据残差低频子带能量,确定抑制因子;将所述目标信号与所述抑制因子的乘积进行傅里叶反变换,得到输出信号。根据本公开的一个或多个实施例,示例9根据示例8所述的方法,包括:所述根据残差低频子带能量,确定抑制因子,包括:将残差低频子带能量与噪声低频子带能量的比值,确定为子带能量统计量;将所述子带能量统计量进行函数变换,得到抑制因子。根据本公开的一个或多个实施例,示例10根据示例9所述的方法,包括:所述噪声低频子带能量和所述残差低频子带能量根据所述目标信号确定。根据本公开的一个或多个实施例,示例11根据示例9所述的方法,包括:所述将所述子带能量统计量进行函数变换,得到抑制因子,包括:将所述子带能量统计量经过如下函数变换,得到抑制因子:其中,gain(n)为抑制因子,γ为常量,threshold为常量,ratio(n)为抑制因子。根据本公开的一个或多个实施例,示例12提供了一种回声消除装置,包括:获取模块,用于获取远端信号;第一处理模块,用于将所述远端信号经过分块频域线性自适应滤波器处理后,得到回声信号,其中,所述分块频域线性自适应滤波器为经过分块频域处理的线性自适应滤波器;确定模块,用于根据麦克风信号和所述回声信号,确定残差谱信号;第二处理模块,用于将所述残差谱信号进行非线性处理,得到输出信号,以完成回声消除。根据本公开的一个或多个实施例,示例13提供了一种终端设备,包括:一个或多个处理装置;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理装置执行,使得所述一个或多个处理装置实现如示例1-11中任一所述的方法。根据本公开的一个或多个实施例,示例14提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现如示例1-11中任一所述的方法。以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。当前第1页12当前第1页12