一种立体声回声消除方法与流程
本发明涉及声学回声消除技术领域,具体涉及一种立体声回声消除方法。
背景技术:
随着电子科学技术的快速进步,多媒体通信技术的发展促进了视频会议系统、电话会议系统等免提系统的广泛应用。在这个过程中,用户对语音信号的质量提出了更高的要求。目前,免提系统的使用者越来越追求能够体验到身临其境之感,于是这也催生了电话会议系统等领域的立体声回声消除问题的研究。
在会议电话系统中,声学回声的存在轻则会影响双方通话的质量,严重时甚至会出现啸叫,因此,早在上个世纪八十年代,声学回声消除的方法研究就已经兴起。到目前为止,声学回声消除方法主要还是采用自适应滤波技术,它的基本思想是用估计的回波路径的特征参数产生一个估计的回波信号,再从接收信号中减去该信号,得到残差信号,然后用残差信号去更新滤波器的特征参数。目前,单通路的声学回声消除方法已经十分成熟,并且在很多实践领域得到应用。但是,对于多通路的回声消除方法的研究才刚刚起步没有多久,还有很多理论问题、研究方法、实现手段需要研究人员共同努力去完善。
当前多路声学回声消除方法,普遍还是采用自适应滤波技术,与单路回声消除方法的区别和难点在于多路输入信号之间的强相关性使得自适应滤波方法收敛慢、路径解不唯一、失配大等问题,最终导致回声消除的效果降低。为了解决输入信号之间的相关性问题,研究人员想了很多对策,比较常见的想法是增加一个预处理方法,利用去相关方法降低多路输入信号之间的相关性,但是,这样虽然提高了回声消除的效果,却或多或少降低了立体声信号的音质,与我们想得到身临其境的效果的想法相悖。
因此,通过上述的描述,如何实现多路声学回声消除,提高立体声信号的音质,以便达到身临其境的效果,是当前需要解决的问题。
技术实现要素:
本发明的目的是克服现有技术的多路声学回声消除存在的问题。本发明的立体声回声消除方法,能够在有效地消除回声信号的基础上确保不对立体声的音质造成任何损失,使得近端用户能够体验到身临其境之感,具有良好的应用前景。
为了达到上述目的,本发明所采用的技术方案是:
一种立体声回声消除方法,包括以下步骤,
步骤(a),将原始的远端双通道时域信号通过傅里叶变换转化为双通道频域信号;
步骤(b),将原始的远端双通道时域信号通过去相关处理,得到去相关处理后的远端双通道时域信号,并通过傅里叶变换转化为去相关处理双通道频域信号,其中去相关处理过程采用心理声学掩蔽噪声模型,即根据输入信号的频谱计算其心理声学掩蔽阈值,根据掩蔽阈值得到心理声学掩蔽噪声量时域信号,去相关处理后的远端双通道时域信号是原始的远端双通道时域信号与双通道心理声学掩蔽噪声量时域信号之和;
步骤(c),将步骤(a)得到的不通过去相关处理的双通道频域信号与第一自适应滤波器系数进行频域相乘,并将两个通道相加,做逆傅里叶变换,得到第一自适应滤波器的时域输出;
步骤(d),基于近端麦克风的一个通道,将该近端麦克风通道获取的时域信号与步骤(c)得到的第一自适应滤波器时域输出相减,得到第一时域误差信号,这个第一时域误差信号就是消回声后的近端信号,用该第一时域误差信号再做傅里叶变换得到第一频域误差信号,并通过该第一频域误差信号和远端频域信号更新步骤(c)使用的第一自适应滤波器频域系数;步骤(e),步骤(b)得到的去相关处理双通道频域信号与第二自适应滤波器系数进行频域相乘,并将两个通道相加,做逆傅里叶变换,得到第二自适应滤波器的时域输出;
步骤(f),将步骤(b)得到的心理声学掩蔽噪声量进行傅里叶变换,再与第一自适应滤波器系数进行频域相乘,然后通过逆傅里叶变换得到时域噪声卷积量;
步骤(g),将步骤(f)得到的时域噪声卷积量与步骤(d)所述基于近端麦克风的一个通道的时域信号相加,得到第二自适应滤波器的近端时域信号;
步骤(h),将步骤(g)得到的第二自适应滤波器的近端时域信号与步骤(e)得到的第二自适应滤波器的时域输出相减,得到第二时域误差信号,即消回声后送到远端的信号,用该第二时域误差信号通过傅里叶变换得到第二频域误差信号,并通过该第二频域误差信号和远端频域信号更新步骤(e)使用的第二自适应滤波器频域系数;步骤(i),步骤(a)~步骤(h),进行基于近端麦克风的另一个通道的回声消除。
前述的立体声回声消除方法,步骤(a),将原始的远端双通道时域信号通过傅里叶变换转化为双通道频域信号,是对双通道对应的参考信号进行分段并做傅里叶变换,其中任一个通道的参考信号做分段傅里叶变换的运算过程,如公式(1)所示:
其中,f是指m阶傅立叶变换矩阵,n是迭代序号,l是每次迭代时新添加的输入信号的长度,p是段序号,n/p是段的个数,p是每段的系数个数,m是滤波器的阶数,xp(n)为一个通道的频域信号。
前述的立体声回声消除方法,步骤(c),将步骤(a)得到的不通过去相关处理的双通道频域信号与第一自适应滤波器系数进行频域相乘,并将两个通道相加,做逆傅里叶变换,得到第一自适应滤波器的时域输出,具体过程为,
分别对各段数据做频域滤波,累加后做逆傅里叶变换,并只取后l点为有效的线性卷积结果,得到第一自适应滤波器的时域输出,其变换过程如公式(2)所示,
其中,
wp(n)是段数为p处的该段的自适应滤波器时域系数,长度为p;wp(n)是段数为p处的自适应滤波器时域系数wp(n)后面补(m-p)个零,然后做傅里叶变换得到的段数为p处的自适应滤波器频域系数,长度为m。
前述的立体声回声消除方法,步骤(d),基于近端麦克风的一个通道,将该近端麦克风通道获取的时域信号与步骤(c)得到的第一自适应滤波器时域输出相减,得到第一时域误差信号,这个第一时域误差信号就是消回声后的近端信号,用该第一时域误差信号再做傅里叶变换得到第一频域误差信号,并通过该第一频域误差信号和远端频域信号更新步骤(c)使用的第一自适应滤波器频域系数,具体过程为,
利用参考信号的功率谱求出子带步长,根据利用子带步长、参考信号的频谱、频域残差信号来更新第一自适应滤波器系数,其第一时域误差e1(n)的公式,如公式(3)所示;子带步长π(n)的更新公式,如公式(4)所示;第一自适应滤波器系数的更新公式如公式(5)所示,
e1(n)=d(n)-y1(n)(3)
其中,μ是全局步长,γ是防止数据溢出系数,作用是求导数时防止数据溢出,
前述的立体声回声消除方法,步骤(f),将步骤(b)得到的心理声学掩蔽噪声量进行傅里叶变换,再与第一自适应滤波器系数进行频域相乘,然后通过逆傅里叶变换得到时域噪声卷积量n(n),如公式(6)所示:
其中,npp(n)是心理声学掩蔽噪声频域量,包含两个通道的噪声量,其结构同参考一个通道的频域信号xp(n)。
前述的立体声回声消除方法,步骤(g),将步骤(f)得到的时域噪声卷积量与步骤(d)所述基于近端麦克风的一个通道的时域信号相加,得到第二自适应滤波器的近端时域信号dpn(n),如公式(7)所示:
dpn(n)=d(n)+n(n)(7)。
本发明的有益效果是:本发明的立体声回声消除方法,区别于一般的双通道回声消除算法,优势在于它能够在对双通道回声做出很好抑制的基础上进一步确保远端信号的音质不会受损,达到我们所需要的声临其境的效果,采用两个自适应滤波器,第一自适应滤波器的参考信号为不加去相关处理的原始远端双通道频域信号,第二自适应滤波器的参考信号为加了去相关处理的远端双通道频域信号,去相关算法采用心理声学掩蔽噪声模型,第一自适应滤波器构成一个独立的回声消除系统,只是由于参考信号之间的相关性,所以路径估计不是很准确;第二自适应滤波器由于做误差处理时的两个参考信号之间不匹配,所以近端麦克风缺少的部分参考信号由去相关得到的噪声频域信号与第一自适应滤波器的系数频域相乘补偿,因此,第二自适应滤波器也构成了一个独立的回声消除系统,能够在有效地消除回声信号的基础上确保不对立体声的音质造成任何损失,适用于多通道的立体声回声消除,具有良好的应用前景。
附图说明
图1是本发明的立体声回声消除方法的流程图;
图2是本发明的立体声回声消除系统的框架图;
图3是本发明的立体声回声消除方法实施例的仿真所用的双声道远端信号波形图;
图4是本发明的立体声回声消除方法实施例的回波消除后的残差信号波形图。
具体实施方式
下面将结合说明书附图,对本发明作进一步的说明。
如图1-图2所示,本发明的立体声回声消除方法,包括以下步骤,
步骤(a),将原始的远端双通道时域信号通过傅里叶变换转化为双通道频域信号,是对双通道对应的参考信号进行分段并做傅里叶变换,其中任一个通道的参考信号做分段傅里叶变换的运算过程,如公式(1)所示:
其中,f是指m阶傅立叶变换矩阵,n是迭代序号,l是每次迭代时新添加的输入信号的长度,p是段序号,n/p是段的个数,p是每段的系数个数,m是滤波器的阶数,xp(n)为一个通道的频域信号;
步骤(b),将原始的远端双通道时域信号通过去相关处理,得到去相关处理后的远端双通道时域信号,并通过傅里叶变换转化为去相关处理双通道频域信号,去相关处理过程采用心理声学掩蔽噪声模型,即根据输入信号的频谱计算其心理声学掩蔽阈值,根据掩蔽阈值得到心理声学掩蔽噪声量时域信号,去相关处理后的远端双通道时域信号是原始的远端双通道时域信号与双通道心理声学掩蔽噪声量时域信号之和;
步骤(c),将步骤(a)得到的不通过去相关处理的双通道频域信号与第一自适应滤波器系数进行频域相乘,并将两个通道相加,做逆傅里叶变换,得到第一自适应滤波器的时域输出,具体过程为,
分别对各段数据做频域滤波,累加后做逆傅里叶变换,并只取后l点为有效的线性卷积结果,得到第一自适应滤波器的时域输出,其变换过程如公式(2)所示,
其中,
wp(n)是段数为p处的该段的自适应滤波器时域系数,长度为p;wp(n)是段数为p处的自适应滤波器时域系数wp(n)后面补(m-p)个零,然后做傅里叶变换得到的段数为p处的自适应滤波器频域系数,长度为m;
步骤(d),基于近端麦克风的一个通道,将该近端麦克风通道获取的时域信号与步骤(c)得到的第一自适应滤波器时域输出相减,得到第一时域误差信号,这个第一时域误差信号就是消回声后的近端信号,用该第一时域误差信号再做傅里叶变换得到第一频域误差信号,并通过该第一频域误差信号和远端频域信号更新步骤(c)使用的第一自适应滤波器频域系数,目的是让第一自适应滤波器频域系数逐渐收敛到与房间路径一致,使得滤波器能够模拟房间的环境,消除远端的回声,其更新公式采用分段块频域自适应滤波器算法,具体过程为,
利用参考信号的功率谱求出子带步长,根据利用子带步长、参考信号的频谱、频域残差信号来更新第一自适应滤波器系数,其第一时域误差e1(n)的公式,如公式(3)所示;子带步长π(n)的更新公式,如公式(4)所示;第一自适应滤波器系数的更新公式如公式(5)所示,
e1(n)=d(n)-y1(n)(3)
其中,μ是全局步长,γ是防止数据溢出系数,作用是求导数时防止数据溢出,
步骤(e),步骤(b)得到的去相关处理双通道频域信号与第二自适应滤波器系数进行频域相乘,并将两个通道相加,做逆傅里叶变换,得到第二自适应滤波器的时域输出,该步骤与步骤(d)的方法一致;
步骤(f),将步骤(b)得到的心理声学掩蔽噪声量进行傅里叶变换,再与第一自适应滤波器系数进行频域相乘,然后通过逆傅里叶变换得到时域噪声卷积量n(n),如公式(6)所示:
其中,npp(n)是心理声学掩蔽噪声频域量,包含两个通道的噪声量,其结构同参考一个通道的频域信号xp(n);
步骤(g),将步骤(f)得到的时域噪声卷积量与步骤(d)所述基于近端麦克风的一个通道的时域信号相加,得到第二自适应滤波器的近端时域信号dpn(n),如公式(7)所示:
dpn(n)=d(n)+n(n)(7);
步骤(h),将步骤(g)得到的第二自适应滤波器的近端时域信号与步骤(e)得到的第二自适应滤波器的时域输出相减,得到第二时域误差信号,也即消回声后送到远端的信号,不过它不送往远端,用该第二时域误差信号通过傅里叶变换得到第二频域误差信号,并通过该第二频域误差信号和远端频域信号更新步骤(e)使用的第二自适应滤波器频域系数,目的是让第二自适应滤波器频域系数逐渐收敛到与房间路径一致,使得滤波器能够模拟房间的环境,消除远端来的回声,其更新公式采用分段块频域自适应滤波器算法,该步骤的方法与步骤(d)的一致;
步骤(i),步骤(a)-步骤(h),进行基于近端麦克风的另一个通道的回声消除。
立体声回声消除方法根据本发明的立体声回声消除方法实施例,如图3所示,双通道远端信号波形图;图4为回波消除后的残差信号波形图,其仿真环境是,房间的大小为[5m,4m,3m],左麦克风和右麦克风的坐标分别为[2.2m,2m,0.9m],[2.8m,2m,0.9m],左扬声器和右扬声器的坐标分别为[0m,4m,2.8m],[5m,4m,2.8m],冲激响应的长度为3072个点,反射率r设置为0.6。
综上所述,本发明的立体声回声消除方法,区别于一般的双通道回声消除算法,优势在于它能够在对双通道回声做出很好抑制的基础上进一步确保远端信号的音质不会受损,达到声临其境的效果,采用两个自适应滤波器,第一自适应滤波器的参考信号为不加去相关处理的原始远端双通道频域信号,第二自适应滤波器的参考信号为加了去相关处理的远端双通道频域信号,去相关算法采用心理声学掩蔽噪声模型,第一自适应滤波器构成一个独立的回声消除系统,只是由于参考信号之间的相关性,所以路径估计不是很准确;第二自适应滤波器由于做误差处理时的两个参考信号之间不匹配,所以近端麦克风缺少的部分参考信号由去相关得到的噪声频域信号与第一自适应滤波器的系数频域相乘补偿,因此,第二自适应滤波器也构成了一个独立的回声消除系统,能够在有效地消除回声信号的基础上确保不对立体声的音质造成任何损失,适用于多通道的立体声回声消除,具有良好的应用前景。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除