音频降噪方法和装置与流程

文档序号:11325174阅读:557来源:国知局
音频降噪方法和装置与流程

本发明涉及音频信号处理技术领域,尤其涉及一种音频降噪方法和装置。



背景技术:

音频降噪技术,是指利用信号处理和模式识别的方法,从含有噪声的音频中将噪声去除,使去除噪声后的音频有较高的信噪比和较好的质量。音频降噪是音频信号处理领域需要解决的关键技术之一。

实际应用中,可以采用自适应滤波技术滤除音频信号中的噪声,其中,最小均方(leastmeansquare,简称lms)自适应滤波技术是一种常用的音频降噪方法。

传统的lms音频降噪算法中会涉及收敛因子的选择问题,其中,收敛因子是选自一定的预设取值区间的,不是一个自适应的变量,从而存在一个矛盾的选择:若收敛因子选择较大,收敛速度快,即运算时间短,但是收敛效果差,即降噪效果不佳,而若补偿因子选择较小,收敛效果好,但是收敛较慢。而在实际场景中,比如在使用耳机进行通话的场景中,往往需要既保证较高的运算速度,同时保证较佳的降噪效果,因此,收敛因子的选择问题至关重要。



技术实现要素:

有鉴于此,本发明提供一种音频降噪方法和装置,基于对lms算法输出端的均方误差是否处于收敛敏感区的判断结果来动态调整收敛因子,从而在远离收敛敏感区时,采用较大收敛因子保证收敛速度,而在收敛敏感区时,采用较小的收敛因子保证收敛效果。

第一方面,本发明实施例提供一种音频降噪方法,包括:

接收输入的音频信号;

采用最小均方算法对所述音频信号进行降噪处理,以获取当前一次迭代对应的均方误差梯度;

根据最近m次迭代对应的均方误差梯度的震荡情况,确定是否已经达到均方误差收敛敏感区,所述最近m次迭代中包括所述当前一次迭代;

根据确定结果,更新下一次迭代时所述最小均方算法所采用的收敛因子,以基于所述收敛因子输出降噪后的音频信号。

可选地,所述根据最近m次迭代对应的均方误差梯度的震荡情况,确定是否已经达到均方误差收敛敏感区,包括:

若所述最近m次迭代对应的均方误差梯度满足如下公式的次数大于或等于预设数值,则确定已经达到均方误差收敛敏感区,否则,确定未达到均方误差敏感区:

[e(i)x(i)]·[e(i-1)x(i-1)]<0;

其中,e(i)为所述最近m次迭代中的第i次迭代对应的误差信号,x(i)为所述第i次迭代对应的音频信号;e(i-1)为所述最近m次迭代中的第i-1次迭代对应的误差信号,x(i-1)为所述第i-1次迭代对应的音频信号。

可选地,所述根据确定结果,更新下一次迭代时所述最小均方算法所采用的收敛因子,包括:

若确定已经达到均方误差收敛敏感区,则更新下一次迭代时所述最小均方算法所采用的收敛因子为预设收敛因子初值μ0;

若确定未达到均方误差收敛敏感区,则更新下一次迭代时所述最小均方算法所采用的收敛因子为aμ(n);

其中,μ(n)为所述当前一次迭代对应的收敛因子,a大于1。

可选地,所述音频信号中包括通过双麦克风阵列接收到的主音频信号和辅音频信号,x为辅音频信号。

可选地,所述计算当前一次迭代对应的均方误差梯度之后,还包括:

判断是否满足迭代截止条件;

若未满足,则执行所述根据最近m次迭代对应的均方误差梯度的震荡情况确定是否已经达到均方误差收敛敏感区的步骤;

其中,所述迭代截止条件包括:迭代次数达到预设次数,或者,当前的均方误差最小值小于或等于预设阈值。

第二方面,本发明实施例提供一种音频降噪装置,包括:

接收模块,用于接收输入的音频信号;

获取模块,用于采用最小均方算法对所述音频信号进行降噪处理,以获取当前一次迭代对应的均方误差梯度;

确定模块,用于根据最近m次迭代对应的均方误差梯度的震荡情况,确定是否已经达到均方误差收敛敏感区,所述最近m次迭代中包括所述当前一次迭代;

更新模块,用于根据确定结果,更新下一次迭代时所述最小均方算法所采用的收敛因子;

输出模块,用于输出基于所述收敛因子降噪后的音频信号。

本发明提供的音频降噪方法和装置,当接收到含有噪声的音频信号后,采用lms算法对该音频信号进行降噪处理。在降噪处理过程中,基于lms算法的原理,会通过多次迭代来寻求误差信号的最小均方误差,以输出与最小均方误差对应的降噪后的音频信号。而在相邻两次迭代过程中,会涉及到加权因子w(n)的更新,下一次迭代时使用的w(n+1)除了与当前一次迭代时使用的w(n)有关外,还会与收敛因子有关。而本发明中,收敛因子不是固定不变的,而是可以动态更新的。具体地,更新的依据是:在当前一次迭代过程中,先基于输入的音频信号和当前一次迭代使用的加权因子计算获得当前一次迭代对应的均方误差梯度,进而根据最近m次迭代对应的均方误差梯度的震荡情况,确定是否已经达到均方误差收敛敏感区,以便根据均方误差是否处于收敛敏感区的判断结果动态更新下一次迭代时采用的收敛因子,使得在远离收敛敏感区时,采用较大收敛因子保证收敛速度,而在收敛敏感区时,采用较小的收敛因子保证收敛效果。

附图说明

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

图1为本发明实施例提供的音频降噪方法实施例一的流程图;

图2为本发明实施例提供的一种可选场景下lms算法的流程图;

图3为本发明实施例提供的音频降噪方法实施例二的流程图;

图4为本发明实施例提供的音频降噪装置的结构示意图。

具体实施方式

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

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述xxx,但这些xxx不应限于这些术语。这些术语仅用来将xxx区分开。例如,在不脱离本发明实施例范围的情况下,第一xxx也可以被称为第二xxx,类似地,第二xxx也可以被称为第一xxx。

取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。

进一步值得说明的是,本发明各实施例中各步骤之间的顺序是可以调整的,不是必须按照以下举例的顺序执行。

图1为本发明实施例提供的音频降噪方法实施例一的流程图,本实施例提供的该音频降噪方法可以由一音频降噪装置来执行,该音频降噪装置可以实现为软件,或者实现为软件和硬件的组合,该音频降噪装置可以集成设置在音频收发设备中,比如耳机中、移动手机中等。如图1所示,该方法包括如下步骤:

101、接收输入的音频信号。

102、采用lms算法对接收到的音频信号进行降噪处理,以获取当前一次迭代对应的均方误差梯度。

103、根据最近m次迭代对应的均方误差梯度的震荡情况,确定是否已经达到均方误差收敛敏感区,最近m次迭代中包括当前一次迭代。

104、根据确定结果,更新下一次迭代时lms算法所采用的收敛因子,以基于所述收敛因子输出降噪后的音频信号。

虽然本发明实施例主要强调的一点是:在使用lms算法对接收到的音频信号进行降噪处理的过程中,每次迭代所使用的收敛因子是动态变化的,具体地是基于均方误差是否达到收敛敏感区而动态变化。但是,为了便于整体来理解lms算法在音频降噪处理过程中的具体实现,结合图2所示实施例对lms算法的执行过程进行简要说明。

图2为本发明实施例提供的一种可选场景下lms算法的流程图,可选地,该场景可以是某用户a在使用包含双麦克风阵列的耳机与对方用户b进行语音通话的场景,该场景下,双麦克风阵列中的主麦克和辅麦克拾取用户a的音频信号,一般认为,主麦克拾取的音频信号为有用信号,辅麦克拾取的音频信号为噪声信号或者说为干扰信号。如图2所示,假设主麦克拾取的音频信号表示为d,辅麦克拾取的音频信号表示为x,其中,d和x表示一段时间的音频信号序列或者说连续音频信号,n表示迭代次数,取值可以取值[1,n],n为大于1的预设整数,则第n次迭代对应的主音频信号为d(n),第n次迭代对应的辅音频信号为x(n)。

如图2所示,通过对干扰信号x(n)进行加权因子w(n)的加权,可以得到加权信号y(n)=x(n)w(n),w(n)表示第n次迭代使用的加权因子,每次迭代时使用的加权因子也是动态变化的。在lms算法初始时,可以将加权因子设置为0,或者某个较小的初始值,随着迭代过程的不断进行,后续迭代过程的加权因子会自适应更新。

基于此,误差信号e(n)=d(n)-y(n)=d(n)-x(n)w(n),误差信号的均方误差为:e(e2(n))=e[d2(n)-2d(n)y(n)+y2(n)]=e[d2(n)]+w(n)rw(n)-2pw(n),其中,r为x(n)的自相关矩阵,p为x(n)和d(n)的互相关矩阵。该均方误差公式的两边对w(n)取导数,则得到此时对应的均方误差梯度通过对该梯度简化,可以简化为假设当前一次迭代过程即为第n次迭代过程,则此时对应的均方误差梯度即为该式。

接下来,可以判断是否满足迭代截止条件,比如,通过比较当前一次迭代过程得到的均方误差梯度计算得到的均方误差最小值是否小于或等于预设阈值来判断是否满足迭代截止条件,如果是,则满足,否则,不满足;或者,通过比较当前的迭代次数n是否已经达到预设最大迭代次数n,如果是,则满足,否则,不满足。

若当前一次的迭代满足迭代截止条件,则输出基于当前的均方误差梯度得到的均方误差所对应的降噪后音频信号,此时,均方误差梯度是受当前一次迭代所采用的收敛因子影响的。

若当前一次的迭代不满足迭代截止条件,则需要更新下一次迭代即n+1次迭代所用的加权因子w(n+1)。该加权因子w(n+1)与收敛因子有关,即是收敛因子的函数。不同于现有技术中,收敛因子在一定范围内取值后,一经选定就固定不变,本实施例中,每次迭代过程中所采用的收敛因子是动态变化的。

收敛因子动态变化的核心思想是:若远离均方误差收敛敏感区,则采用较大的收敛因子,以加速收敛速度,若达到均方误差收敛敏感区,则采用较小的收敛因子,以保证收敛效果。而均方误差收敛敏感区可以通过最近m次迭代对应的均方误差梯度的震荡情况来反映。即可以根据包含当前一次迭代在内的最近m次迭代对应的均方误差梯度的震荡情况,确定是否已经达到均方误差收敛敏感区,以便根据确定结果,更新下一次迭代时lms算法所采用的收敛因子μ(n+1)。

其中,均方误差梯度的震荡情况主要是指相邻两次迭代对应的均方误差梯度的正负属性的改变情况,即反复过零点的情况。从而,如果一段时间内均方误差梯度不断围绕零点上下震荡,则说明达到均方误差收敛敏感区,反之,未达到均方误差收敛敏感区。

在更新完下一次迭代时采用的收敛因子μ(n+1)后,相应地,下一次迭代时所使用的加权因子w(n+1)也随之更新,从而,基于该加权因子w(n+1)以及输入的音频信号,可以得到下一次迭代对应的均方误差梯度,如此迭代下去,直到满足迭代截止条件时,结合满足迭代截止条件时所采用的收敛因子,最终完成对输入的音频信号的降噪处理,输出降噪后的音频信号。

综上,本实施例中,当接收到含有噪声的音频信号后,采用lms算法对该音频信号进行降噪处理。在降噪处理过程中,基于lms算法的原理,会通过多次迭代来寻求误差信号的最小均方误差。而在相邻两次迭代过程中,会涉及到加权因子w(n)的更新,下一次迭代时使用的w(n+1)除了与当前一次迭代时使用的w(n)有关外,还会与收敛因子有关。而本发明中,收敛因子不是固定不变的,而是可以动态更新的。具体地,更新的依据是:在当前一次迭代过程中,先计算当前一次迭代对应的均方误差梯度,进而根据最近m次迭代对应的均方误差梯度的震荡情况,确定是否已经达到均方误差收敛敏感区,以便根据均方误差是否处于收敛敏感区的判断结果来动态更新下一次迭代时采用的收敛因子μ(n+1),使得在远离收敛敏感区时,采用较大收敛因子保证收敛速度,而在收敛敏感区时,采用较小的收敛因子保证收敛效果。

图3为本发明实施例提供的音频降噪方法实施例二的流程图,如图3所示,可以包括如下步骤:

201、接收输入的音频信号。

202、采用lms算法对接收到的音频信号进行降噪处理,以获取当前一次迭代对应的均方误差梯度。

203、判断是否满足迭代截止条件:迭代次数达到预设次数,或者当前的均方误差最小值小于或等于预设阈值,若未满足,则执行步骤204,否则,输出降噪后的音频信号。

仍以前述实施例中举例的实际场景为例,在对双麦克风阵列拾取的主音频信号和辅音频信号进行音频降噪处理的过程中,若当前迭代次数为n,假设当前的迭代次数已经达到预设次数n,则满足迭代截止条件,此时,将基于当前使用的收敛因子、加权因子得到的降噪结果输出,即将降噪后的主音频信号和辅音频信号合并为一路音频信号,发送给通话对方用户。同样的,若基于当前迭代次数n所对应均方误差梯度得到的均方误差最小值小于或等于预设阈值,则迭代结束,输出降噪结果。

相反地,如果不满足迭代截止条件,则需要更新下一次迭代所使用的收敛因子μ(n+1),从而更新下一次迭代所用的加权因子w(n+1)。

204、判断最近m次迭代对应的均方误差梯度满足如下公式:[e(i)x(i)]·[e(i-1)x(i-1)]<0的次数是否大于或等于预设数值,若大于或等于,则执行步骤205,否则,执行步骤206。

205、确定已经达到均方误差收敛敏感区,更新下一次迭代时lms算法所采用的收敛因子为预设收敛因子初值μ0。

206、确定未达到均方误差敏感区,更新下一次迭代时lms算法所采用的收敛因子为aμ(n)。

步骤205或步骤206之后,继续执行步骤202,此时,上述下一次迭代已经更新作为当前一次迭代。

具体来说,若最近m次迭代对应的均方误差梯度满足如下公式的次数大于或等于预设数值,则确定已经达到均方误差收敛敏感区,否则,确定未达到均方误差敏感区:

[e(i)x(i)]·[e(i-1)x(i-1)]<0;

其中,e(i)为最近m次迭代中的第i次迭代对应的误差信号,x(i)为第i次迭代对应的音频信号;e(i-1)为最近m次迭代中的第i-1次迭代对应的误差信号,x(i-1)为第i-1次迭代对应的音频信号。在上述双麦克风阵列的举例中,x(i)为第i次迭代对应的辅音频信号。

当已经达到均方误差收敛敏感区时,下一次迭代对应的收敛因子μ(n+1)=μ0,μ0为预设收敛因子初值。而当未达到均方误差收敛敏感区时,下一次迭代对应的收敛因子μ(n+1)=aμ(n),μ(n)为当前一次迭代对应的收敛因子,a大于1,可选地,a可以取2的整数倍数,倍数可以选自合理的取值范围内,比如1倍至5倍之内。

从而,相应地,若已经达到均方误差敏感区时,则根据如下公式更新下一次迭代时所采用的加权因子w(n+1):w(n+1)=w(n)+2μ0e(n)x(n),其中,e(n)为当前一次迭代对应的误差信号,x(n)为当前一次迭代对应的音频信号,w(n)为当前一次迭代对应的加权因子,μ0为预设收敛因子。

若未达到均方误差敏感区时,则根据如下公式更新下一次迭代时所采用的加权因子w(n+1):w(n+1)=w(n)+[aμ(n)]e(n)x(n)。

综上,本实施例中,在采用lms算法对接收到的音频信号进行降噪处理的过程中,在当前一次迭代过程中,先计算当前一次迭代对应的均方误差梯度,进而根据最近m次迭代对应的均方误差梯度的震荡情况确定是否已经达到均方误差收敛敏感区,以便在处于收敛敏感区时,以预设的较小的初始收敛因子更新下一次迭代时使用的收敛因子μ(n+1),以保证收敛效果;而如果不在收敛敏感区时,在当前使用的收敛因子的基础上,以比如2的整数倍数更新下一次迭代所使用的收敛因子μ(n+1),以加速收敛,从而,实现在降噪处理速度与降噪效果两个方面的性能提升。

图4为本发明实施例提供的音频降噪装置的结构示意图,如图4所示,该装置包括:接收模块11、获取模块12、确定模块13、更新模块14、输出模块15。

接收模块11,用于接收输入的音频信号。

获取模块12,用于采用最小均方算法对接收到的音频信号进行降噪处理,以获取当前一次迭代对应的均方误差梯度。

确定模块13,用于根据最近m次迭代对应的均方误差梯度的震荡情况,确定是否已经达到均方误差收敛敏感区,所述最近m次迭代中包括所述当前一次迭代。

更新模块14,用于根据确定结果,更新下一次迭代时所述最小均方算法所采用的收敛因子。

输出模块15,用于输出基于所述收敛因子降噪后的音频信号。

可选地,所述确定模块13用于:

若所述最近m次迭代对应的均方误差梯度满足如下公式的次数大于或等于预设数值,则确定已经达到均方误差收敛敏感区,否则,确定未达到均方误差收敛敏感区:

[e(i)x(i)]·[e(i-1)x(i-1)]<0;

其中,e(i)为所述最近m次迭代中的第i次迭代对应的误差信号,x(i)为所述第i次迭代对应的音频信号;e(i-1)为所述最近m次迭代中的第i-1次迭代对应的误差信号,x(i-1)为所述第i-1次迭代对应的音频信号。

可选地,所述更新模块14包括:第一更新单元141、第二更新单元142。

第一更新单元141,用于若确定已经达到均方误差收敛敏感区,则更新下一次迭代时所述最小均方算法所采用的收敛因子为预设收敛因子初值μ0。

第二更新单元142,用于若确定未达到均方误差收敛敏感区,则更新下一次迭代时所述最小均方算法所采用的收敛因子为aμ(n);其中,μ(n)为所述当前一次迭代对应的收敛因子,a大于1。

可选地,所述音频信号中包括通过双麦克风阵列接收到的主音频信号和辅音频信号,x为辅音频信号。

可选地,该装置还包括:判断模块16。

判断模块16,用于在所述获取模块12获取当前一次迭代对应的均方误差梯度后,判断是否满足迭代截止条件。

所述确定模块13具体用于,若判断模块16判断不满足迭代截止条件,则执行所述根据最近m次迭代对应的均方误差梯度的震荡情况确定是否已经达到均方误差收敛敏感区的步骤。其中,所述迭代截止条件包括:迭代次数达到预设次数,或者,当前的均方误差最小值小于或等于预设阈值。

图4所示装置可以执行图1、图2、图3所示实施例的方法,本实施例未详细描述的部分,可参考对图1、图2、图3所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1、图2、图3所示实施例中的描述,在此不再赘述。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

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

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