一种回波消除方法和装置与流程

文档序号:24157170发布日期:2021-03-05 12:35阅读:215来源:国知局
一种回波消除方法和装置与流程

[0001]
本申请涉及音频处理领域,特别是涉及一种回波消除方法和装置。


背景技术:

[0002]
很多涉及音频处理的场景例如电视会议系统、免提电话、移动通信、智能音箱中,智能设备需要对获取的音频信号进行回波消除。回波消除是一个在语音通话中消除回波以提高通话质量的过程。例如,智能设备的扬声器与麦克风相距较近,麦克风除了接收到外界指令外,同样也会接收到扬声器所发出的声音(即回波),故需要对其进行消除,避免回波影响获取的外界指令的质量。
[0003]
目前的回波消除方法采用的是自适应滤波的方法,通过参考信号和麦克风接收的信号确定扬声器到麦克风的传递函数,从而将扬声器的信号从麦克风接收的信号中消除。
[0004]
然而,对于旋转智能设备例如扬声器可以旋转的智能设备来说,扬声器和麦克风的位置会发生相对变化,那么为了保证回波消除的效果,回波消除所使用的滤波器就需要根据位置的变化而重新收敛,由于重新收敛需要一定的时间,使得滤波器收敛时间内,可能出现麦克风接收信号中扬声器残留信号变大的问题。


技术实现要素:

[0005]
为了解决上述技术问题,本申请提供了一种回波消除方法和装置,回波消除所使用的自适应滤波器可以直接读取滤波系数,无需重新收敛,节约了自适应滤波器收敛所需的时间,避免在收敛时间内,出现麦克风接收信号中扬声器残留信号变大的情况。
[0006]
本申请实施例公开了如下技术方案:
[0007]
第一方面,本申请实施例提供一种回波消除方法,所述方法包括:
[0008]
获取麦克风与扬声器在目标时刻的目标相对位置信息;
[0009]
从预存对应关系中获取与所述目标相对位置信息对应的目标滤波系数,所述预存对应关系为预先存储的相对位置信息与滤波系数的对应关系;
[0010]
根据所述目标滤波系数和所述扬声器发出的信号确定回波信号,从待回波消除信号中消除所述回波信号,所述回波信号为麦克风所接收到的扬声器发出的信号,所述待回波消除信号为麦克风所接收到的信号。
[0011]
可选的,所述方法还包括:
[0012]
在对n时刻下所述扬声器所接收到的信号进行回波消除过程中,通过回波消除所使用的自适应滤波器执行收敛算法确定所述自适应滤波器收敛时的滤波系数;
[0013]
存储n时刻下所述扬声器和所述麦克风的相对位置信息与n时刻下滤波系数之间的对应关系。
[0014]
可选的,若所述扬声器在预设角度范围内旋转,所述目标相对位置信息为所述扬声器旋转的角度信息。
[0015]
可选的,所述预设角度范围划分成多个角度区间,所述预存对应关系为角度区间
与滤波系数的对应关系。
[0016]
可选的,所述从预存对应关系中获取与所述目标相对位置信息对应的目标滤波系数,包括:
[0017]
确定所述目标相对位置信息所位于的目标角度区间;
[0018]
获取与所述目标角度区间对应的所述目标滤波系数。
[0019]
可选的,所述从待回波消除信号中消除所述回波信号,包括:
[0020]
将待回波消除信号与所述回波信号作差得到残余信号。
[0021]
可选的,所述滤波器在收敛过程中更新滤波系数的步长是根据所述扬声器发出的信号的功率进行调整的。
[0022]
第二方面,本申请实施例提供一种回波消除装置,所述装置包括:
[0023]
第一获取单元,用于获取麦克风与扬声器在目标时刻的目标相对位置信息;
[0024]
第二获取单元,用于从预存对应关系中获取与所述目标相对位置信息对应的目标滤波系数,所述预存对应关系为预先存储的相对位置信息与滤波系数的对应关系;
[0025]
消除单元,用于根据所述目标滤波系数和所述扬声器发出的信号确定回波信号,从待回波消除信号中消除所述回波信号,所述回波信号为麦克风所接收到的扬声器发出的信号,所述待回波消除信号为麦克风所接收到的信号。
[0026]
可选的,所述装置还包括:
[0027]
确定单元,用于在对n时刻下所述扬声器所接收到的信号进行回波消除过程中,通过回波消除所使用的自适应滤波器执行收敛算法确定所述自适应滤波器收敛时的滤波系数;
[0028]
存储单元,用于存储n时刻下所述扬声器和所述麦克风的相对位置信息与n时刻下滤波系数之间的对应关系。
[0029]
可选的,若所述扬声器在预设角度范围内旋转,所述目标相对位置信息为所述扬声器旋转的角度信息。
[0030]
可选的,所述预设角度范围划分成多个角度区间,所述预存对应关系为角度区间与滤波系数的对应关系。
[0031]
可选的,所述第二获取单元用于:
[0032]
确定所述目标相对位置信息所位于的目标角度区间;
[0033]
获取与所述目标角度区间对应的所述目标滤波系数。
[0034]
可选的,所述消除单元用于:
[0035]
将待回波消除信号与所述回波信号作差得到残余信号。
[0036]
可选的,所述滤波器在收敛过程中更新滤波系数的步长是根据所述扬声器发出的信号的功率进行调整的。
[0037]
第三方面,本申请实施例提供一种智能设备,所述设备包括处理器以及存储器:
[0038]
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
[0039]
所述处理器用于根据所述程序代码中的指令执行第一方面任一项所述的回波消除方法。
[0040]
由上述技术方案可以看出,旋转智能设备中麦克风与扬声器之间的相对位置关系会发生变化,为了避免由于二者之间相对位置关系的变化而使得滤波器重新收敛,得到回
波消除所使用的滤波系数,在任一相对位置关系下得到滤波系数后,可以存储相对位置信息与滤波系数的对应关系,该相对位置信息反映了相对位置关系。这样,当某一时刻例如目标时刻,麦克风与扬声器达到某个相对位置关系例如目标相对位置关系,则可以直接根据获取的目标相对位置信息,从预存对应关系中获取与所述目标相对位置信息对应的目标滤波系数,以便根据该目标滤波系数和扬声器发出的信号确定回波信号,从待回波消除信号中消除所述回波信号。可见,由于预先存储了相对位置信息与滤波系数的对应关系,故,在麦克风与扬声器间相对位置关系发生改变时,回波消除所使用的自适应滤波器可以直接读取滤波系数,无需重新收敛,节约了自适应滤波器收敛所需的时间,避免在收敛时间内,出现麦克风接收信号中扬声器残留信号变大的情况。
附图说明
[0041]
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0042]
图1为本申请实施例提供的一种回波消除方法的流程图;
[0043]
图2a为本申请实施例提供的一种回波消除的效果图;
[0044]
图2b为通过传统方式进行回波消除的效果图;
[0045]
图3为本申请实施例提供的一种回波消除装置的结构图。
具体实施方式
[0046]
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0047]
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
[0048]
在传统的回波消除方法中,对于旋转智能设备,例如麦克风在底座上,但是扬声器在上面是可以旋转的智能设备来说,扬声器和麦克风的位置会发生相对变化,那么为了保证回波消除的效果,回波消除所使用的滤波器就需要根据位置的变化而重新收敛,由于重新收敛需要一定的时间,使得滤波器收敛时间内,可能出现麦克风接收信号中扬声器残留信号变大的问题。另外,若通过调节滤波器的步长的方法加快收敛速度,缩短收敛时间,如果步长太大,滤波器有可能发散,即使收敛,那么误差也会增大。
[0049]
为此,本申请实施例提供一种回波消除方法和装置,在旋转智能设备中麦克风与
扬声器之间的相对位置关系发生变化时,为了避免由于二者之间相对位置关系的变化而使得滤波器重新收敛,得到回波消除所使用的滤波系数,在任一相对位置关系下得到滤波系数后,可以存储相对位置信息与滤波系数的对应关系。这样,当之后需要对某一时刻例如目标时刻下麦克风接收到的信号进行回波消除时,则可以获取目标时刻下麦克风与扬声器的目标相对位置信心,直接从预存对应关系中获取与目标相对位置信息对应的目标滤波系数,以便根据该目标滤波系数和扬声器发出的信号确定回波信号,从待回波消除信号中消除所述回波信号,无需重新收敛,节约了自适应滤波器收敛所需的时间,避免在收敛时间内,出现麦克风接收信号中扬声器残留信号变大的情况。
[0050]
本申请实施例提供的回波消除方法可以应用到智能设备中,智能设备是任一种扬声器和麦克风间的相对位置关系可以发生变化的设备,智能设备根据音频处理的场景确定,例如,在智能音箱的场景中,智能设备为智能音箱,即由智能音箱执行回波消除方法,从而避免扬声器发出的语音对用户发出的语音指令的干扰,使得智能音箱可以识别出用户发出的语音指令,实现对智能音箱的控制。
[0051]
基于上述思想,为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请的具体实施方式做详细的说明。
[0052]
参见图1,该图为本申请实施例提供的一种回波消除方法的流程示意图。
[0053]
该回波消除方法包括:
[0054]
s101、获取麦克风与扬声器在目标时刻的目标相对位置信息。
[0055]
智能设备的扬声器和麦克风具有相对位置关系,该相对位置关系可以通过相对位置信息来表示。但是由于一些原因,例如智能设备的扬声器或麦克风发生旋转,从而导致扬声器与麦克风之间的相对位置关系发生变化。而相对位置关系的改变可能会使得回波消除时自适应滤波器收敛所对应的滤波系数发生改变,即不同的相对位置关系具有对应的滤波系数。因此,在某一时刻例如目标时刻下,为了获取目标时刻下回波消除过程中所使用的滤波系数,首先可以获取目标时刻下麦克风与扬声器的目标相对位置信息。
[0056]
需要说明的是,在一种实现方式中,扬声器与麦克风之间的相对位置关系发生变化是由于扬声器旋转导致的,若扬声器在预设角度范围内旋转,所述目标相对位置信息为所述扬声器旋转的角度信息。例如,扬声器从初始位置起在0-360
°
范围内旋转,若扬声器位于初始位置,即扬声器旋转的角度为0,则目标相对位置信息为0;若扬声器旋转的角度10
°
,那么,目标相对位置信息可以为10
°
。其中,0-360
°
为预设角度范围,10
°
为扬声器旋转的角度信息。
[0057]
s102、从预存对应关系中获取与所述目标相对位置信息对应的目标滤波系数。
[0058]
其中,预存对应关系为预先存储的相对位置信息与滤波系数的对应关系。可以理解的是,在本实施例中,在麦克风与扬声器的相对位置关系发生变化的情况下,为了避免回波消除使用的自适应滤波器因为相对位置关系发生变化而重新收敛,可以将每个相对位置信息下所对应的滤波系数存储起来,以便在麦克风和扬声器达到该相对位置信息时将该滤波系数取出来作为自适应滤波器的初值进行迭代更新。
[0059]
在一种实现方式中,本申请实施例提供的回波消除方法还包括:在对n时刻下所述扬声器所接收到的信号进行回波消除过程中,通过回波消除所使用的自适应滤波器执行收敛算法确定所述自适应滤波器收敛时的滤波系数。然后,存储n时刻下扬声器和所述麦克风
的相对位置信息与n时刻下滤波系数之间的对应关系。
[0060]
对n时刻下所述扬声器所接收到的信号进行回波消除过程如下所示:
[0061]
假定扬声器发出的信号为x(n)=[x(n),x(n-1),

,x(n-n+1)]
t
,其中n为冲击响应的阶数。
[0062]
利用冲击响应和扬声器发出的信号得到回波信号y(n)=w
t
(n)x(n)。
[0063]
计算残余信号:e(n)=d(n)-y(n),其中d(n)为麦克风在n时刻接收的信号。
[0064]
回波消除所使用的自适应滤波器执行收敛算法确定自适应滤波器收敛时的滤波系数,在自适应滤波器收敛过程中,自适应滤波器按照步长更新滤波系数,直到自适应滤波器收敛,得到收敛时的滤波系数,并存储该滤波系数。在存储该滤波系数时记录该滤波系数所对应的扬声器和麦克风的相对位置信息。
[0065]
在一种可能的实现方式中,所述滤波器在收敛过程中更新滤波系数的步长是根据所述扬声器发出的信号的功率进行调整的,其中,扬声器发出的信号的功率可以通过如下公式计算:
[0066]
p
xx
(n)=x
t
(n)x(n)
[0067]
其中,p
xx
(n)为扬声器发出的信号的功率,x(n)为扬声器发出的信号。
[0068]
更新滤波器系数的公式如下:
[0069][0070]
其中,w(n+1)为更新后的滤波系数,w(n)为更新前的滤波系数,p
xx
(n)为扬声器发出的信号的功率,e(n)为残余信号,x(n)为扬声器发出的信号,μ为步长,为常数,表示利用功率调整后的步长。
[0071]
需要说明的是,在一些情况下,若扬声器和麦克风之间的相对位置关系改变不大,即使相对位置关系不同,使用相同的滤波系数同样可以达到较好的回波消除效果。例如,扬声器与麦克风之间的相对位置关系发生变化是由于扬声器旋转导致的,且扬声器在预设角度范围内旋转,若扬声器从0
°
旋转到10
°
,在该角度区间扬声器与麦克风之间的相对位置关系变化不大,即扬声器从0
°
旋转到10
°
可以使用相同的滤波系数进行回波消除。
[0072]
因此,在一种实现方式中,若扬声器在预设角度范围内旋转,预设角度范围划分成多个角度区间,所述预存对应关系为角度区间与滤波系数的对应关系。其中,多个角度区间可以是均匀划分,也可以为非均匀划分。
[0073]
例如,扬声器在0-360
°
角度范围内旋转,0-360
°
为预设角度范围,将该预设角度范围均匀划分成36份,得到36个角度区间,分别是0-10
°
、10
°-
20
°

……
、350
°-
360
°
。则针对每一个角度区间对应存储一个滤波系数,即预存对应关系为角度区间与滤波系数的对应关系。
[0074]
存储的滤波系数表示为h
k
(n)=[ω0(n),ω1(n),


n-1
(n)]
t
,其中,h
k
(n)表示n时刻第k个角度区间的滤波系数,n为滤波器的长度,ω
n-1
(n)为滤波器中第n个滤波系数。以上述划分的多个角度区间为例,h
k
(n)中的k=1、2、
……
、36,存储的角度区间0-10
°
所对应的滤波系数为h1(n)、存储的角度区间10
°-
20
°
所对应的滤波系数为h2(n)、
……
、存储的角度区间350
°-
360
°
所对应的滤波系数为h
36
(n)。
[0075]
可以理解的是,在预设角度范围划分成多个角度区间,预存对应关系为角度区间与滤波系数的对应关系的情况下,s102的实现方式可以是确定所述目标相对位置信息所位于的目标角度分段;获取与所述目标角度分段对应的所述目标滤波系数。
[0076]
例如,扬声器在0-360
°
角度范围内旋转,0-360
°
为预设角度范围,将该预设角度范围按照上述划分方式划分成36个角度区间,针对每个角度区间存储的滤波系数依次为h1(n)、h2(n)、
……
、h
36
(n)。若目标时刻下扬声器旋转到100
°
,即确定目标相对位置信息为扬声器旋转100
°
,根据上述角度划分区间,100
°
位于第10个角度区间(目标角度区间),则将第10个角度区间对应的滤波系数h
10
(n)作为目标滤波系数用于回波消除。
[0077]
s103、根据所述目标滤波系数和所述扬声器发出的信号确定回波信号,从待回波消除信号中消除所述回波信号。
[0078]
其中,所述回波信号为麦克风所接收到的扬声器发出的信号,所述待回波消除信号为麦克风所接收到的信号。
[0079]
需要说明的是,所述从待回波消除信号中消除所述回波信号的方式可以是将待回波消除信号与所述回波信号作差得到残余信号,从而滤除待回波消除信号中的回波信号。
[0080]
假定一个玩偶类智能设备麦克风在底座处,扬声器在玩偶的耳朵处,初始时智能设备的扬声器在0
°
方向上,在16s时扬声器旋转到180
°
方向,通过本申请实施例提供的回波消除方法,当扬声器旋转到180
°
方向时,直接从预存对应关系中获取180
°
所表示的相对位置信息(目标相对位置信息)对应的滤波器系数作为目标滤波系数,从而节约自适应滤波器重新收敛所需的时间,避免在收敛时间内,出现麦克风接收信号中扬声器残留信号变大的情况。通过本申请实施例提供的方法进行回波消除的效果图可以参见图2a所示,其中,横轴表示时间,纵轴表示麦克风接收到信号的大小(通过信号幅度表示),可见,麦克风接收信号并未出现变大的情况。
[0081]
而传统的回波消除方法的效果图参见图2b所示,当扬声器在16s时旋转到180
°
方向时,由于自适应滤波器需要重新收敛,在重新收敛时间内,由于回波消除效果不好,故,在16s时麦克风接收到的信号突然变大。
[0082]
由上述技术方案可以看出,旋转智能设备中麦克风与扬声器之间的相对位置关系会发生变化,为了避免由于二者之间相对位置关系的变化而使得滤波器重新收敛,得到回波消除所使用的滤波系数,在任一相对位置关系下得到滤波系数后,可以存储相对位置信息与滤波系数的对应关系,该相对位置信息反映了相对位置关系。这样,当某一时刻例如目标时刻,麦克风与扬声器达到某个相对位置关系例如目标相对位置关系,则可以直接根据获取的目标相对位置信息,从预存对应关系中获取与所述目标相对位置信息对应的目标滤波系数,以便根据该目标滤波系数和扬声器发出的信号确定回波信号,从待回波消除信号中消除所述回波信号。可见,由于预先存储了相对位置信息与滤波系数的对应关系,故,在麦克风与扬声器间相对位置关系发生改变时,回波消除所使用的自适应滤波器可以直接读取滤波系数,无需重新收敛,节约了自适应滤波器收敛所需的时间,避免在收敛时间内,出现麦克风接收信号中扬声器残留信号变大的情况。
[0083]
基于图1所对应实施例提供的回波消除方法,本实施例提供一种回波消除装置,参见图3,所述装置包括:
[0084]
第一获取单元301,用于获取麦克风与扬声器在目标时刻的目标相对位置信息;
[0085]
第二获取单元302,用于从预存对应关系中获取与所述目标相对位置信息对应的目标滤波系数,所述预存对应关系为预先存储的相对位置信息与滤波系数的对应关系;
[0086]
消除单元303,用于根据所述目标滤波系数和所述扬声器发出的信号确定回波信号,从待回波消除信号中消除所述回波信号,所述回波信号为麦克风所接收到的扬声器发出的信号,所述待回波消除信号为麦克风所接收到的信号。
[0087]
可选的,所述装置还包括:
[0088]
确定单元,用于在对n时刻下所述扬声器所接收到的信号进行回波消除过程中,通过回波消除所使用的自适应滤波器执行收敛算法确定所述自适应滤波器收敛时的滤波系数;
[0089]
存储单元,用于存储n时刻下所述扬声器和所述麦克风的相对位置信息与n时刻下滤波系数之间的对应关系。
[0090]
可选的,若所述扬声器在预设角度范围内旋转,所述目标相对位置信息为所述扬声器旋转的角度信息。
[0091]
可选的,所述预设角度范围划分成多个角度区间,所述预存对应关系为角度区间与滤波系数的对应关系。
[0092]
可选的,所述第二获取单元用于:
[0093]
确定所述目标相对位置信息所位于的目标角度区间;
[0094]
获取与所述目标角度区间对应的所述目标滤波系数。
[0095]
可选的,所述消除单元用于:
[0096]
将待回波消除信号与所述回波信号作差得到残余信号。
[0097]
可选的,所述滤波器在收敛过程中更新滤波系数的步长是根据所述扬声器发出的信号的功率进行调整的。
[0098]
本申请实施例还提供一种智能设备,所述设备包括处理器以及存储器:
[0099]
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
[0100]
所述处理器用于根据所述程序代码中的指令执行前述实施例任一项所述的回波消除方法。
[0101]
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述比较简单,相关之处参见方法部分说明即可。
[0102]
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0103]
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存
储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
[0104]
以上所述,仅是本申请的较佳实施例而已,并非对本申请作任何形式上的限制。虽然本申请已以较佳实施例揭露如上,然而并非用以限定本申请。任何熟悉本领域的技术人员,在不脱离本申请技术方案范围情况下,都可利用上述揭示的方法和技术内容对本申请技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本申请技术方案的内容,依据本申请的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本申请技术方案保护的范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1