回声消除方法及装置与流程

文档序号:20268292发布日期:2020-04-03 18:40阅读:380来源:国知局
回声消除方法及装置与流程

本发明实施例涉及信号处理技术领域,尤其涉及一种回声消除方法及装置。



背景技术:

在音频系统中,因为扬声器和麦克风的耦合,不可避免的产生声学回声。声学回声经过信道延迟后传回给对端说话者,影响音频通话质量。尤其是在免提通话的情况下,能量过大的回声会给远端的通话者造成严重干扰。

免提通话时,对端的语音到达本端后,被本端的扬声器播放,进而被本端的麦克风拾取到并发送给对端,该声音称之为回声。本端扬声器播放对端发送的语音时,若本端的通话者没有说话,则本端的麦克风采集到的声音为纯回声,该阶段称之为纯回声阶段;若扬声器播放对端的语音的同时,本端的通话者也在讲话,则本端的麦克风采集的声音包括扬声器播放的声音以及本端的通话者的声音,本端的声音称之为近端语音,该阶段称之为双讲阶段。目前普遍的回声消除算法包含自适应滤波和非线性处理两个模块,通过自适应滤波除掉线性回声,剩余的非线性回声由非线性处理模块进行抑制。非线性处理过程中,为了保证纯回声阶段回声得到干净的消除,通常将非线性抑制的参数设置的比较大。但是,双讲阶段,若继续将非线性抑制的参数设置的比较大,则由于非线性处理模块难以区分出回声和近端语音,导致非线性处理模块很容易把近端语音当做回声抑制掉,进而导致对端收到的语音不清楚,对端通话者无法理解本端说话者的意图。

因此,双讲阶段,如何降低非线性回声,从而提升通话质量,实为急待解决的问题。



技术实现要素:

本发明实施例提供一种回声消除方法及装置,通过两个麦克风相互做自适应滤波,去除一个麦克风拾取到的声音信号中的语音信号,得到纯回声信号,利用该纯回声信号消除任意一个麦克风拾取到的声音信号中的非线性回声,提高消除非线性回声的目的。

第一方面,本申请实施例提供一种回声消除方法,应用于具备第一拾音装置和第二拾音装置的电子设备,该方法包括:

利用第一近端信号d1(k)对延时后的第二近端信号d2(k)进行自适应滤波,以得到第一滤波信号e2(k),所述第一近端信号d1(k)是所述第一拾音装置拾取的信号,所述第二近端信号d2(k)是所述第二拾音装置拾取的信号;

根据第一滤波信号e2(k)对目标信号进行非线性回声信号消除处理,以得到待传输信号ee1(k),其中,所述目标信号为所述第一近端信号d1(k)或所述第二近端信号d2(k);

发送所述待传输信号ee1(k)。

一种可行的设计中,所述目标信号为所述第一近端信号d1(k)时,所述根据第一滤波信号e2(k)对目标信号进行非线性回声信号消除处理,以得到待传输信号ee1(k),包括:

根据所述第一滤波信号e2(k)、所述第一近端信号d1(k)构建非线性抑制参数para;

根据所述非线性抑制参数para对所述第一近端信号d1(k)进行非线性回声信号消除处理,以得到待传输信号ee1(k)。

一种可行的设计中,所述根据所述非线性抑制参数para对所述第一近端信号d1(k)进行非线性回声信号消除处理,以得到待传输信号ee1(k),包括:

根据所述第一滤波信号e2(k)确定第一中间信号e2(k),所述第一中间信号其中,所述e2(k-1)是所述e2(k)的前一帧信号;

根据所述第二近端信号d2(k)确定第二中间信号d2(k),所述第二中间信号其中,所述d2(k-1)是所述d2(k)的前一帧信号;

根据所述第一中间信号e2(k)确定第一频域信号yy(k),所述第一频域信号yy(k)=e2(k)的前m+1个元素;

根据所述第二中间信号d2(k)确定第二频域信号xx(k),所述第二频域信号xx(k)=d2(k)的前m+1个元素;

根据所述第一频域信号yy(k)和所述第二频域信号xx(k),构建所述非线性抑制参数para,para=[abs(xx(k))-abs(yy(k))]/abs(xx(k));其中,fft表示快速傅里叶变换,abs表示对复数取模。

一种可行的设计中,所述根据所述非线性抑制参数para对所述第一近端信号d1(k)进行非线性回声信号消除处理,以得到待传输信号ee1(k),包括:

利用下行信号x(k)对所述第一近端信号d1(k)进行自适应滤波,以得到第二滤波信号e1(k),所述其中,x(k)是所述扬声器播放的下行信号,h1t是从所述扬声器到所述第一拾音装置的回声路径,所述是从所述扬声器到所述第一拾音装置的回声路径估计,所述v1(k)是所述第一拾音装置拾取的语音信号;

根据所述第二滤波信号e1(k)确定第三中间信号e1(k),所述第三中间信号其中,所述e1(k-1)是所述e1(k)的前一帧信号;

根据所述第三中间信号e1(k)确定第三频域信号zz(k),所述第三频域信号zz(k)=e1(k)的前m+1个元素;

根据所述非线性抑制参数para和所述第三频域信号zz(k)确定所述待传输信号ee1(k)。

一种可行的设计中,上述的方法还包括:

判断所述第一近端信号d1(k)的语音类型,所述语音类型包括纯回声类型、双讲语音类型;

根据所述语音类型,确定参数n,其中,所述纯回声类型对应的参数n大于所述双讲语音类型对应的参数n,所述参数n用于指示对非线性回声的抑制强度。

一种可行的设计中,所述根据所述非线性抑制参数para和所述第三频域信号zz(k)确定所述待传输信号ee1(k),包括:

确定所述非线性抑制参数para的n次方;

根据所述非线性抑制参数para的n次方和所述第三频域信号zz(k)确定所述待传输信号ee1(k),所述ee1(k)=zz(k)·para^n,其中,·表示点乘。

一种可行的设计中,对于所述第二频域信号xx(k)中的回声频点,所述非线性抑制参数para与0的差值小于第一阈值,对于所述第二频域信号xx(k)中的语音频点,所述非线性抑制参数para与1的差值小于第二阈值。

一种可行的设计中,所述目标信号为所述第一近端信号d1(k)时,所述根据所述第一滤波信号e2(k)确定目标信号,包括:

利用所述第一滤波信号e2(k)对所述第一近端信号d2(k)进行第一维纳滤波,以得到第一维纳结果;

根据所述第一维纳结果,确定所述第一近端信号d2(k)的语音类型,所述语音类型包括纯回声类型、双讲语音类型;

根据所述语音类型,确定维纳滤波强度,其中,所述纯回声类型对应的维纳滤波强度大于所述双讲语音类型对应的维纳滤波强度;

根据所述维纳滤波强度,对所述第一近端信号d2(k)进行第二维纳滤波,以得到第二维纳结果,根据所述第二维纳结果,得到所述待传输信号ee1(k)。

第二方面,本申请实施例提供一种回声消除装置,应用于具备第一拾音装置和第二拾音装置的电子设备,该回声消除装置包括:

滤波模块,用于利用第一近端信号d1(k)对延时后的第二近端信号d2(k)进行自适应滤波,以得到第一滤波信号e2(k),所述第一近端信号d1(k)是所述第一拾音装置拾取的信号,所述第二近端信号d2(k)是所述第二拾音装置拾取的信号;

回声消除模块,用于根据第一滤波信号e2(k)对目标信号进行非线性回声信号消除处理,以得到待传输信号ee1(k),其中,所述目标信号为所述第一近端信号d1(k)或所述第二近端信号d2(k);

发送模块,用于发送所述待传输信号ee1(k)。

一种可行的设计中,所述目标信号为所述第一近端信号d1(k)时,所述回声消除模块,具体用于根据所述第一滤波信号e2(k)、所述第一近端信号d1(k)构建非线性抑制参数para;根据所述非线性抑制参数para对所述第一近端信号d1(k)进行非线性回声信号消除处理,以得到待传输信号ee1(k)。

一种可行的设计中,所述回声消除模块,具体用于根据所述第一滤波信号e2(k)确定第一中间信号e2(k),所述第一中间信号其中,所述e2(k-1)是所述e2(k)的前一帧信号;根据所述第二近端信号d2(k)确定第二中间信号d2(k),所述第二中间信号其中,所述d2(k-1)是所述d2(k)的前一帧信号;根据所述第一中间信号e2(k)确定第一频域信号yy(k),所述第一频域信号yy(k)=e2(k)的前m+1个元素;根据所述第二中间信号d2(k)确定第二频域信号xx(k),所述第二频域信号xx(k)=d2(k)的前m+1个元素;根据所述第一频域信号yy(k)和所述第二频域信号xx(k),构建所述非线性抑制参数para,para=[abs(xx(k))-abs(yy(k))]/abs(xx(k));其中,fft表示快速傅里叶变换,abs表示对复数取模。

一种可行的设计中,所述回声消除模块,用于利用下行信号x(k)对所述第一近端信号d1(k)进行自适应滤波,以得到第二滤波信号e1(k),所述其中,x(k)是所述扬声器播放的下行信号,h1t是从所述扬声器到所述第一拾音装置的回声路径,所述是从所述扬声器到所述第一拾音装置的回声路径估计,所述v1(k)是所述第一拾音装置拾取的语音信号;根据所述第二滤波信号e1(k)确定第三中间信号e1(k),所述第三中间信号其中,所述e1(k-1)是所述e1(k)的前一帧信号;根据所述第三中间信号e1(k)确定第三频域信号zz(k),所述第三频域信号zz(k)=e1(k)的前m+1个元素;根据所述非线性抑制参数para和所述第三频域信号zz(k)确定所述待传输信号ee1(k)。

一种可行的设计中,上述的装置还包括:

双讲判断模块,用于判断所述第一近端信号d1(k)的语音类型,所述语音类型包括纯回声类型、双讲语音类型;根据所述语音类型,确定参数n,其中,所述纯回声类型对应的参数n大于所述双讲语音类型对应的参数n,所述参数n用于指示对非线性回声的抑制强度。

一种可行的设计中,所述回声消除模块,用于确定所述非线性抑制参数para的n次方;根据所述非线性抑制参数para的n次方和所述第三频域信号zz(k)确定所述待传输信号ee1(k),所述ee1(k)=zz(k)·para^n,其中,·表示点乘。

一种可行的设计中,对于所述第二频域信号xx(k)中的回声频点,所述非线性抑制参数para与0的差值小于第一阈值,对于所述第二频域信号xx(k)中的语音频点,所述非线性抑制参数para与1的差值小于第二阈值。

一种可行的设计中,所述回声消除模块,用于利用所述第一滤波信号e2(k)对所述第一近端信号d2(k)进行第一维纳滤波,以得到第一维纳结果;根据所述第一维纳结果,确定所述第一近端信号d2(k)的语音类型,所述语音类型包括纯回声类型、双讲语音类型;根据所述语音类型,确定维纳滤波强度,其中,所述纯回声类型对应的维纳滤波强度大于所述双讲语音类型对应的维纳滤波强度;根据所述维纳滤波强度,对所述第一近端信号d2(k)进行第二维纳滤波,以得到第二维纳结果,根据所述第二维纳结果,得到所述待传输信号ee1(k)。

第三方面,本发明实施例提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上第一方面或第一方面的各种可行的实现方式所述的方法。

第四方面,本发明实施例提供一种可读存储介质,所述可读存储介质中存储有指令,当其在电子设备上运行时,使得电子设备执行如上第一方面或第一方面的各种可行的实现方式所述的方法。

第五方面,本发明实施例提供一种计算机程序产品,所述计算机程序产品在电子设备上运行时,使得电子设备执行如上第一方面或第一方面的各种可行的实现方式所述的方法。

本申请实施例提供的回声消除方法及装置,应用于具备第一拾音装置和第二拾音装置的电子设备,语音通信过程中,通过利用第一近端信号d1(k)对延时后的第二近端信号d2(k)进行自适应滤波,以得到第一滤波信号e2(k),然后根据该滤波信号e2(k)为过滤掉语音只保留回声的回声信号。然后,利用过滤信号e2(k)确e2(k)定出待传输信号ee1(k)并发送给对端电子设备。该过程中,通过两个麦克风相互做自适应滤波,去除一个麦克风拾取到的声音信号中的语音信号,得到纯回声信号,利用该纯回声信号消除任意一个麦克风拾取到的声音信号中的非线性回声,提高消除非线性回声的目的。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是现有技术中自适应消除线性回声的原理图;

图2是现有技术中消除非线性回声的原理图;

图3是本申请示例提供的回声消除方法的网络架构示意图;

图4是本申请实施例提供的回声消除方法的流程图;

图5是本申请实施例提供的回声消除方法的原理图;

图6是本申请实施例提供的回声消除方法中第一近端信号和第二近端信号的示意图;

图7是图6中mic2的近端信号滤波前后的语谱图;

图8是对图6中的mic1和mic2进行回声消除后的发送结果的示意图;

图9是本申请实施例提供的回声消除方法的另一个原理图;

图10为本发明实施例提供的一种回声消除装置的结构示意图;

图11是本申请实施例提供的另一种回声消除装置的示意图;

图12为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前,本端(也称之为受话端)电子设备在播放对端的语音时,本端的扬声器拾取该语音并发送给对端,该声音称之为声学回声。声学回声包括线直接回声和间接回声,直接回声也称之为线性回声,是指电子设备的扬声器播放对端的语音时,被电子设备的麦克风拾取到的声音;间接回声也称之为非线性回声,是指电子设备的扬声器播放对端语音时,经过不同路径的依次或多次反射后进入麦克风的回声集合。一般而言,免提模式下,扬声器由于材质或者结构性不好等原因,很容易产生非线性的传输路径,进而产生非线性回声。声学回声通过信道延迟后传输给对端,影响语音通信的质量。特别是在免提模式下,能力过大的回声会给对端的通话者造成语义理解的干扰,极大的影响了通信体验。随着通信技术的革新,人们对语音通信的质量要求不断的提高,消除回声成为语音通信的重点。

常见的回声消除算法至少包括自适应滤波模块和非线性处理模块,自适应滤波模块用于去除线性回声,剩余的非线性回声由非线性模块进行抑制。示例性的,可参见图1和图2。

图1是现有技术中自适应消除线性回声的原理图。请参照图1,为了消除回声对语音通信的音箱,贝尔实验室提出了采用自适应滤波(adaptivedigitalfilter,adf)的方法实现声学回声消除(acousticechocancellation,aec)。该方法中,电子设备具备扬声器和麦克风,本端的扬声器播放的下行信号x(k)通过回声信道h产生回声信号y(k),麦克风采集的近端信号d(k)包括近端语音v(k)和回声信号y(k)。通过使用m抽头的自适应滤波器(finiteimpulseresponse,fir)来模拟回声信道h,可以使得自适应模拟的回声信号逼近真实的回声信号y(k)。然后,从近端信号d(k)中减去模拟的回声信号进而达到消除回声的目的。该过程涉及的公式如下:

y(k)=ht*x(k)(1)

d(k)=y(k)+v(k)(3)

其中,*表示卷积,ht=[h0,h1,h2,...hm-1]t表示真实的回声信道,表示自适应滤波器模拟的回声信道。根据上述公式可知:当自适应滤波模拟的回声信道和真实的回声信道相等时,自适应滤波器能够完全的消除回声,只留下近端语音。

上述图1中,最理想的情况下自适应滤波器能消除20db左右的线性回声,无法消除非线性回声。

图2是现有技术中消除非线性回声的原理图。请参照图2,为了实现对图1中残余回声进行非线性处理(non-linearprogramming,nlp),线性处理后的e(k)信号需要继续进行npl处理。nlp处理过程中,为了保证纯回声阶段的回声得到干净的消除,非线性抑制参数设置的比较大,但是,双讲阶段,若继续将非线性抑制的参数设置的比较大,则由于非线性处理模块难以区分出回声和近端语音,导致非线性处理模块很容易把近端语音当做回声抑制掉,进而导致对端收到的语音不清楚,对端通话者无法理解本端说话者的意图。

为了能够在回声消除彻底的同时保证语音尽量的保留,会要非线性处理和双讲检测(doubletalkdetection,dtd)器一起工作。在纯回声阶段,增大非线性参数的抑制系数,而在双讲阶段减小非线性参数的抑制系数以保护语音。然而,双讲检测的正确率很难保证,随之而来的是nlp也很有可能消除不了纯回声或者在双讲阶段对语音造成大的损伤。即便双讲检测的准确率能够达到100%,在纯回声节点可以有效抑制回声,在双讲节点可以更多的保护语音,但是因为保护语音的原因,由于非线性处理时无法准确区分出混合在一起的回声和语音,使得双讲阶段的回声不能得到更好的抑制。

有鉴于此,本申请实施例提供一种回声消除方法及装置,通过两个麦克风相互做自适应滤波,去除一个麦克风采集到的声音信号中的语音信号,得到纯回声信号,利用该纯回声信号消除非线性回声,到达消除非线性回声的目的。

图3是本申请示例提供的回声消除方法的网络架构示意图。请参照图3,电子设备1为具备双拾音装置的电子设备,即电子设备1具备两个拾音装置,分别为第一拾音装置和第二拾音装置,拾音装置可以是麦克风、麦克风阵列等。电子设备1和电子设备2正在通话,如语音通话、视频通话等。通话过程中,本端的电子设备(如电子设备1)处于免提模式,使得本端的电子设备的两个麦克风均能够拾取到回声,即本端电子设备的扬声器播放的对端电子设备的语音。为了电子设备1发送给电子设备2的语音尽可能的清楚,需要电子设备1尽量消除回声,并尽可能多的保留语音。

需要说明的是,图3中,电子设备1处于免提模式,可以是电子设备1接收到用户的指令后,进入免提模式,如打电话的过程中,用户1触摸电子设备1的用户界面上的扬声器图标,使得电子设备1处于免提模式;再如,利用社交聊天工具视频的过程中,电子设备1处于免提模式。

另外,还需要说明的是,虽然上述图3所述架构中仅示意图了电子设备1和电子设备2,然而,可以理解的是,实际中,该网络架构还包括基站等设备。下面,基于图3所示架构,对本申请实施例所述的回声消除方法进行详细说明。

图4是本申请实施例提供的回声消除方法的流程图,本实施例应用于双拾音装置的电子设备,即电子设备具备两个拾音装置,分别为第一拾音装置和第二拾音装置,本实施例包括:

101、利用第一近端信号d1(k)对延时后的第二近端信号d2(k)进行自适应滤波,以得到第一滤波信号e2(k)。

其中,所述第一近端信号d1(k)是所述第一拾音装置拾取的信号,所述第二近端信号d2(k)是所述第二拾音装置拾取的信号。

示例性的,本端的电子设备上具备两个麦克风(mic)。语音通话的过程中,该两个麦克风都拾取声音,第一拾音装置拾取到声音称之为第一近端信号d1(k),第二拾音装置拾取到的声音称之为第二近端信号d2(k)。之后,将第二拾音装置的第二近端信号d2(k)进行适当的时延,并利用第一近端信号d1(k)对延时后的第二近端信号d2(k)进行自适应滤波,以将第二近端信号d2(k)中的语音过滤掉,从而得到仅保留纯回声的第一滤波信号e2(k)。

可选的,当电子设备处于免提通话模式时,执行本实施例所述的方法。

102、根据第一滤波信号e2(k)对经过线性回声消除的目标信号进行非线性回声信号消除处理,以得到待传输信号ee1(k)。

其中,所述目标信号为经过线性回声消除的所述第一近端信号d1(k)或所述第二近端信号d2(k)。

示例性的,电子设备可根据第一滤波信号e2(k)对第一近端信号d1(k)进行回声消除处理,以得到所述待传输信号ee1(k);或者,利用所述第一滤波信号e2(k)对所述第二近端信号d2(k)进行回声消除处理,以得到所述待传输信号ee1(k);或者,电子设备将第一滤波信号e2(k)作为回声估计对第一近端信号d1(k)进行两级维纳滤波,从而得到待传输信号ee1(k);或者,电子设备将第一滤波信号e2(k)作为回声估计对第二近端信号d2(k)进行两级维纳滤波,从而得到待传输信号ee1(k)。

103、发送所述待传输信号ee1(k)。

示例性的,电子设备将该待传输信号ee1(k)发送给对端的电子设备,使得对端的电子设备播放。

本申请实施例提供的回声消除方法,应用于具备第一拾音装置和第二拾音装置的电子设备,语音通信过程中,通过利用第一近端信号d1(k)对延时后的第二近端信号d2(k)进行自适应滤波,以得到第一滤波信号e2(k),然后根据该滤波信号e2(k)为过滤掉语音只保留回声的回声信号。然后,利用过滤信号e2(k)确e2(k)定出待传输信号ee1(k)并发送给对端电子设备。该过程中,通过两个麦克风相互做自适应滤波,去除一个麦克风拾取到的声音信号中的语音信号,得到纯回声信号,利用该纯回声信号消除任意一个麦克风拾取到的声音信号中的非线性回声,提高消除非线性回声的目的。

图5是本申请实施例提供的回声消除方法的原理图。请参照图5,本实施例中,将第一拾音装置(mic1)拾取的第一近端信号d1(k)作为参考信号,对第二拾音装置(mic2)拾取的第二近端信号d2(k)进行适当时延后,利用第一近端信号d1(k)对延时后的第二近端信号d2(k)进行自适应滤波,此目的是为了去除第二近端信号d2(k)中的语音信号而保留回声信号,得到第一滤波信号e2(k)。然后,利用自适应滤波前和自适应滤波后的第二近端信号d2(k)构造一个非线性抑制参数para,及利用第二近端信号d2(k)和第一滤波信号e2(k)构建非线性抑制参数para,并利用该非线性抑制参数对第一近端信号d1(k)或第二近端信号d2(k)进行非线性回声消除处理。

图5中,电子设备可以对第二拾音装置拾取的第二近端信号d2(k)进行延时处理,再利用第一近端信号d1(k)对延时后的第二近端信号d2(k)做自适应滤波得到第一滤波信号e2(k),然后利用该第一滤波信号e2(k)对第一近端信号d1(k)或第二近端信号d2(k)进行非线性回声消除处理,以得到待传输信号ee1(k)。另外,上述实施例中,电子设备也可以对第一拾音装置拾取的第一近端信号d1(k)进行延时处理,再利用第二近端信号d2(k)对延时后的第一近端信号d1(k)做自适应滤波得到滤波信号,然后利用该滤波信号对第一近端信号d1(k)或第二近端信号d2(k)进行非线性回声消除处理,以得到待传输信号ee1(k)。

下面,以电子设备对第二拾音装置拾取的第二近端信号d2(k)进行延时处理,再利用第一近端信号d1(k)对延时后的第二近端信号d2(k)做自适应滤波得到第一滤波信号e2(k),然后利用该第一滤波信号e2(k)对第一近端信号d1(k)进行非线性回声消除处理,以得到待传输信号ee1(k)进行详细说明。

首先,自适应滤波。

请参照图5,第一拾音装置拾取的由回声和近端语音组成的第一近端信号分帧为d1(k),第二拾音装置拾取的由回声和近端语音组成的第二近端信号分帧为d2(k)。电子设备的扬声器播放的下行信号为x(k),采用的滤波器是m抽头数的频域自适应滤波器。当下行信号x(k)的幅值小于预设阈值时,对第二近端信号d2(k)进行自适应滤波,当下行信号x(k)的幅值大于或等于预设阈值时,停止自适应参数更新,并且设置自适应滤波器系数的上下区间。该过程中,通过自适应滤波器滤除掉第二近端信号d2(k)中的语音信号并且尽可能的保留回声信号,从而得到第一滤波信号e2(k)。

其中,k表示第k帧信号,当采样率为8000hz时,每帧信号为m=160个采样点,第一近端信号d1(k)表示第一拾音装置拾取的第k帧信号,第二近端信号d2(k)表示第二拾音装置拾取的第k帧信号,表示从第一拾音装置到第二拾音装置的模拟回声信号,表示从第一拾音装置到第二拾音装置的路径。由于对于近端语音信号而言该路径可以认为是线性的,于是通过自适应滤波能够将第二近端信号d2(k)中的语音信号消除干净,仅保留回声信号。其中,自适应滤波器可以是频域归一化最小均方差算法(frequencydomainnormalizedleastmeansquare,fdnlms)的自适应滤波器。

其次,构建非线性抑制参数para。

示例性的,电子设备利用快速傅里叶(fastfouriertransform,fft)变换将自适应滤波前的第二近端信号d2(k)变换到频域。变换过程中,电子设备根据所述第一滤波信号e2(k)确定第一中间信号e2(k)。并且,电子设备利用fft变换将自适应滤波后的时域信号,即第一滤波信号e2(k)变换到频域。变换过程中,根据所述第二近端信号d2(k)确定第二中间信号d2(k)。之后,电子设备根据所述第一中间信号e2(k)确定第一频域信号yy(k)。之后,电子设备根据所述第二中间信号d2(k)确定第二频域信号xx(k)。最后,电子设备根据所述第一频域信号yy(k)和所述第二频域信号xx(k),构建所述非线性抑制参数para。

上述实施例中,第一中间信号表示如下:

其中,所述e2(k-1)是所述e2(k)的前一帧信号;

第二中间信号表示如下:

其中,所述d2(k-1)是所述d2(k)的前一帧信号;

第一频域信号yy(k)表示如下:

yy(k)=e2(k)的前m+1个元素(8)

其中,元素可以理解为频点,也可以理解为短时傅里叶变换(short-timefouriertransform,stft)后在频域的采样点。

第二频域信号xx(k)表示如下:

xx(k)=d2(k)的前m+1个元素(9)

非线性抑制参数para表示如下:

para=[abs(xx(k))-abs(yy(k))]/abs(xx(k))(10);

其中,fft表示快速傅里叶变换,abs表示对复数取模。

根据上述可知:第一频域信号yy(k)和第二频域信号xx(k)的差别在于前者滤除掉了语音信号,只剩下回声信号。这是因为第一拾音装置拾取的声音中的语音频点和第二拾音装置拾取的声音中的语音频点的相关性很高,因此,经过自适应滤波后,可以很好的去除语音信号的同时保留回声信号,该回声信号包含非线性回声。

上述实施例中,对于所述第二频域信号xx(k)中的回声频点,所述非线性抑制参数para与0的差值小于第一阈值,对于所述第二频域信号xx(k)中的语音频点,所述非线性抑制参数para与1的差值小于第二阈值。

示例性的,根据公式(10)可知:对于回声频点,第一频域信号yy(k)的向量中的值,和第二频域信号xx(k)的向量中对应的值大小几乎相等,从而使得该回声频点的非线性抑制参数para与0的差值小于第一阈值,即回声频点的非线性抑制参数para接近于0;对于语音频点,由于第一频域信号yy(k)中的语音成分已经被滤除了,所以语音频点的非线性抑制参数para与1的差值小于第二阈值,即语音频点的非线性抑制参数para接近于1。

最后,自适应滤波和非线性处理。

根据上述确定非线性抑制参数para的过程可知:非线性抑制参数para在回声频点的值接近0而在语音频点的值接近1,此时,如果用该非线性抑制参数para直接和麦克风信号在频域相乘,则将有效抑制回声频点并且尽量不伤害语音频点。为了使得回声消除效果更佳,在根据所述非线性抑制参数para和所述第三频域信号zz(k)确定所述待传输信号ee1(k)之前,即在非线性滤波之前需要进行自适应滤波。

以对第一近端信号d1(k)进行回声消除为例,电子设备需要先对第一近端信号d1(k)进行自适应滤波,该自适应滤波以下行信号x(k)为参考信号,利用下行信号x(k)对所述第一近端信号d1(k)进行自适应滤波,以得到第二滤波信号e1(k)。该第二滤波信号e1(k)表示如下:

其中,第一近端信号d1(k)包含语音信号v1(k)和回声信号y1(k),是模拟y1(k)得到的模拟回声信号,x(k)是所述扬声器播放的下行信号,h1t是从所述扬声器到所述第一拾音装置的回声路径,所述是从所述扬声器到所述第一拾音装置的回声路径的回声估计,所述v1(k)是所述第一拾音装置拾取的语音信号。

根据公式(11)可以消除掉第一近端信号d1(k)中的线性回声,从而得到第二滤波信号e1(k),该第二滤波信号e1(k)仍然包含很多非线性回声。为了消除非线性回声,电子设备根据所述第二滤波信号e1(k)确定第三中间信号e1(k),该第三中间信号表示如下:

其中,所述e1(k-1)是所述e1(k)的前一帧信号。

电子设备将第二滤波信号e1(k)变换到频域后,根据所述第三中间信号e1(k)确定第三频域信号zz(k),该第三频域信号表示如下:

zz(k)=e1(k)的前m+1个元素。

之后,电子设备根据所述非线性抑制参数para和所述第三频域信号zz(k)确定所述待传输信号ee1(k),该待传输信号ee1(k)表示如下:

ee1(k)=zz(k)·para(13)

另外,电子设备在根据所述非线性抑制参数para和所述第三频域信号zz(k)确定所述待传输信号ee1(k)时,还可以考虑语音类型,根据语音类型对非线性抑制参数para进行运算。该过程中,电子设备判断所述第一近端信号d1(k)的语音类型,所述语音类型包括纯回声类型、双讲语音类型;根据所述语音类型,确定参数n,其中,所述纯回声类型对应的参数n大于所述双讲语音类型对应的参数n,所述参数n用于指示对非线性回声的抑制强度。最终,待传输信号ee1(k)表示如下:

ee1(k)=zz(k)·para^n(14)

公式(14)中,n是由双讲检测器决定的。如果第一近端信号d1(k)为纯回声,则n的取值比较大,抑制增强,如果判断结果指示第一近端信号d1(k)为双讲语音,即回声家语音,则n的取值为1或其他较小的值,如果判断结果指示没有下行信号x(k),则不进行抑制,即不进行非线性回声消除。

上述实施例中,元素可以理解为频点,也可以理解为短时傅里叶变换(short-timefouriertransform,stft)后在频域的采样点。

下面,以拾音装置具体为麦克风、测试信号来自于3gpp标准数据库,包含纯语音段、纯回声段和双讲段,通过模拟基站和人工嘴模仿通话场景,在消声室内测试为例,对本申请实施例所述方法进行验证。

图6是本申请实施例提供的回声消除方法中第一近端信号和第二近端信号的示意图。请参照图6,横坐标表示时间,纵坐标表示能量。第一近端信号包含语音信号和回声信号,第二近端信号也包含语音信号和回声信号,其中,回声信号是对端的下行信号到达本端扬声器,通过数模转换由扬声器播放,再有mic1和mic2拾取到的信号。根据图6可知:语音信号的幅值比较小,而回声信号的幅值比较大,即回声信号的能量明显大于语音信号的能量,信会比,即语音信号的能量与回声信号的能量的比值取对数很小,非线性回声比较大,给回声消除带来了较大的困难,需要一个效果较好的非线性回声处理。本申请实施例中,通过两个麦克风自适应滤波,把mic2中的语音信号滤除掉,只剩下回声信号,示例性的,可参见图7。

图7是图6中mic2的近端信号滤波前后的语谱图。请参照图7,纯语音阶段,语音已经被完全滤除了。而双讲阶段,只剩下回声。本申请实施例中,根据图7中自适应滤波前后的两个信号构建一个非线性抑制参数para,然后通过双讲判断和非线性抑制,得到回声消除的最终结果,即待传输信号ee1(k),示例性的,可参见图8。

图8是对图6中的mic1和mic2进行回声消除后的发送结果的示意图。请参照图8,前8个尖峰可以视为语音阶段,后8个尖峰可以视为双讲阶段,经过本申请中提供的回声消除方法后,双讲阶段的回声被抑制,使得双讲阶段的波形和语音阶段的信号波形很相似,从而说明:在回声信号的能量明显大于语音信号的能量的情况下,纯回声节点的回声能够消除的比较干净,双讲情况下的语音能够得到比较好的保留。这是因为本申请的nlp抑制参数,即非线性抑制参数para能够区分开回声频点和语音频点。由此可见,本申请构建出的非线性抑制参数para是有效的。此外,本申请实施例中对第一麦克风和第二麦克风的摆放位置不做限制,本申请实施例提供的方法具有一定的鲁棒性。

需要说明的是,虽然上述实施例中是以构建出一个非线性抑制参数para对本申请实施例提供的回声消除方法进行详细说明的。但是,在其他可行的实现方式中,还可以构建出两个非线性抑制参数,例如,电子设备利用滤波前后的第一近端信号构建出一个非线性抑制参数,利用滤波前后的第二近端信号构建出另一个非线性抑制参数。之后,利用该两个非线性抑制参数对第一近端信号或第二近端信号进行非线性回声消除。

另外,除了自适应滤波外,本申请实施例还可以利用维纳滤波的方式进行非线性回声的消除。该种方式中,目标信号为所述第一近端信号d1(k)时,电子设备根据所述第一滤波信号e2(k)确定待传输信号ee1(k)时,利用所述第一滤波信号e2(k)对所述第一近端信号d2(k)进行第一维纳滤波,以得到第一维纳结果;根据所述第一维纳结果,确定所述第一近端信号d2(k)的语音类型,所述语音类型包括纯回声类型、双讲语音类型;根据所述语音类型,确定维纳滤波强度,其中,所述纯回声类型对应的维纳滤波强度大于所述双讲语音类型对应的维纳滤波强度;根据所述维纳滤波强度,对所述第一近端信号d2(k)进行第二维纳滤波,以得到第二维纳结果,根据所述第二维纳结果,得到所述待传输信号ee1(k)。

示例性的,可参见图9,图9是本申请实施例提供的回声消除方法的另一个原理图。请参照图9,wf1为第一次维纳滤波,wf2为第二次维纳滤波。电子设备在得到纯回声信号,即第一滤波信号后,用该第一滤波信号作为回声估计对自适应前的麦克风信号进行两级维纳滤波。图中所示为用第一滤波信号作为回声估计对自适应前的第二拾音装置的信号进行两级维纳滤波。两级维纳滤波过程中,第一次为难滤波可以稍微强一些,通过第一维纳滤波结果进行双讲判断,然后进行第二次维纳滤波。第二次维纳滤波也是对自适应滤波前的麦克风信号,如第二拾音装置的信号进行的,并用纯回声信号作为回声估计。与第一次维纳滤波不同,第二次维纳滤波基于双讲判断,在纯回声阶段为纳滤波强度比较大,回声抑制增强,而在双讲阶段可以控制滤波器系数是指保留更多的语音信号。由于该方法的回声估计是通过自适应滤波得到的,比较准确,因此采用本方案也可以有效的除掉非线性回声。

下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。

图10为本发明实施例提供的一种回声消除装置的结构示意图。该回声消除装置100可以通过软件和/或硬件的方式实现。如图10所示,该回声消除装置100包括:

滤波模块11,用于利用第一近端信号d1(k)对延时后的第二近端信号d2(k)进行自适应滤波,以得到第一滤波信号e2(k),所述第一近端信号d1(k)是所述第一拾音装置拾取的信号,所述第二近端信号d2(k)是所述第二拾音装置拾取的信号;

回声消除模块12,用于根据第一滤波信号e2(k)对目标信号进行非线性回声信号消除处理,以得到待传输信号ee1(k),其中,所述目标信号为所述第一近端信号d1(k)或所述第二近端信号d2(k);

发送模块13,用于发送所述待传输信号ee1(k)。

一种可行的设计中,所述目标信号为所述第一近端信号d1(k)时,所述回声消除模块12,具体用于根据所述第一滤波信号e2(k)、所述第一近端信号d1(k)构建非线性抑制参数para;根据所述非线性抑制参数para对所述第一近端信号d1(k)进行非线性回声信号消除处理,以得到待传输信号ee1(k)。

一种可行的设计中,所述回声消除模块12,具体用于根据所述第一滤波信号e2(k)确定第一中间信号e2(k),所述第一中间信号其中,所述e2(k-1)是所述e2(k)的前一帧信号;根据所述第二近端信号d2(k)确定第二中间信号d2(k),所述第二中间信号其中,所述d2(k-1)是所述d2(k)的前一帧信号;根据所述第一中间信号e2(k)确定第一频域信号yy(k),所述第一频域信号yy(k)=e2(k)的前m+1个元素;根据所述第二中间信号d2(k)确定第二频域信号xx(k),所述第二频域信号xx(k)=d2(k)的前m+1个元素;根据所述第一频域信号yy(k)和所述第二频域信号xx(k),构建所述非线性抑制参数para,para=[abs(xx(k))-abs(yy(k))]/abs(xx(k));其中,fft表示快速傅里叶变换,abs表示对复数取模。

一种可行的设计中,所述回声消除模块12,用于利用下行信号x(k)对所述第一近端信号d1(k)进行自适应滤波,以得到第二滤波信号e1(k),所述其中,x(k)是所述扬声器播放的下行信号,h1t是从所述扬声器到所述第一拾音装置的回声路径,所述是从所述扬声器到所述第一拾音装置的回声路径的回声估计,所述v1(k)是所述第一拾音装置拾取的语音信号;根据所述第二滤波信号e1(k)确定第三中间信号e1(k),所述第三中间信号其中,所述e1(k-1)是所述e1(k)的前一帧信号;根据所述第三中间信号e1(k)确定第三频域信号zz(k),所述第三频域信号zz(k)=e1(k)的前m+1个元素;根据所述非线性抑制参数para和所述第三频域信号zz(k)确定所述待传输信号ee1(k)。

图11是本申请实施例提供的另一种回声消除装置的示意图。请参照图11,本实施例提供的回声消除装置100在上述图10的基础上,还包括:

双讲判断模块14,用于判断所述第一近端信号d1(k)的语音类型,所述语音类型包括纯回声类型、双讲语音类型;根据所述语音类型,确定参数n,其中,所述纯回声类型对应的参数n大于所述双讲语音类型对应的参数n,所述参数n用于指示对非线性回声的抑制强度。

一种可行的设计中,所述回声消除模块12,用于确定所述非线性抑制参数para的n次方;根据所述非线性抑制参数para的n次方和所述第三频域信号zz(k)确定所述待传输信号ee1(k),所述ee1(k)=zz(k)·para^n,其中,·表示点乘。

一种可行的设计中,对于所述第二频域信号xx(k)中的回声频点,所述非线性抑制参数para与0的差值小于第一阈值,对于所述第二频域信号xx(k)中的语音频点,所述非线性抑制参数para与1的差值小于第二阈值。

一种可行的设计中,所述回声消除模块12,用于利用所述第一滤波信号e2(k)对所述第一近端信号d2(k)进行第一维纳滤波,以得到第一维纳结果;根据所述第一维纳结果,确定所述第一近端信号d2(k)的语音类型,所述语音类型包括纯回声类型、双讲语音类型;根据所述语音类型,确定维纳滤波强度,其中,所述纯回声类型对应的维纳滤波强度大于所述双讲语音类型对应的维纳滤波强度;根据所述维纳滤波强度,对所述第一近端信号d2(k)进行第二维纳滤波,以得到第二维纳结果,根据所述第二维纳结果,得到所述待传输信号ee1(k)。

图12为本发明实施例提供的一种电子设备的结构示意图。如图12所示,该电子设备200包括:

至少一个处理器21和存储器22;

所述存储器22存储计算机执行指令;

所述至少一个处理器21执行所述存储器22存储的计算机执行指令,使得所述至少一个处理器21执行如上所述的回声消除方法。

可选地,该电子设备200还包括通信部件23。其中,处理器21、存储器22以及通信部件23可以通过总线24连接。

本发明实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上所述的回声消除方法。

本发明实施例还提供一种计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得电子设备执行如上述回声消除方法。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的可读存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1