一种基于背景噪声估计自适应高通滤波语音降噪方法与流程

文档序号:12274078研发日期:2016年阅读:555来源:国知局
技术简介:
本发明针对传统高通滤波器固定截止频率无法适应背景噪声波动的问题,提出通过动态估计背景噪声能量并映射滤波器参数地址的自适应方法,实现低频截止频率的自动调节,提升降噪效果。
关键词:自适应高通滤波,背景噪声估计,语音降噪

本发明涉及信息处理技术及传感信号处理领域,特别是涉及到一种基于背景噪声估计自适应高通滤波语音降噪方法。



背景技术:

语音降噪技术已经广泛应用于手机电话,会议电话,麦克风,人工耳蜗语音降噪增强,以及语音识别的前处理等,好的语音降噪能提高语音接收的性噪比,提高人接听的体验感。在语音识别中,更能改善人工智能识别的识别率,以及对环境的适应性, 因此语音降噪技术是语音接收,识别必不可少的环节。

作为语音降噪技术中一个关键基础技术就是高通滤波降噪, 由于大多噪声的能量集中在几百赫兹的低频段,如100到500Hz以内,而人声频带分布广,在50Hz到上万Hz都有分布,能量主要集中在500Hz到6000Hz之间。

传统的高通滤波技术利用这个特点,将含噪声能量成分较多的低频成分过滤掉,而保留高频段人声,该高通滤波器的低频截止频率大小可以通过用户配置滤波器结构参数来实现。

传统的语音接收处理设备或者芯片基本集成该高通滤波功能,其截止频率大多也可以被用户配置,但是一旦用户配置完成后,该设备只能工作在一个固定截止频率滤波模型下,这种固定截止频率工作模式无法适应背景噪声发生波动的情况。

研究和实验表明,当背景噪声能量变强时,其能量分布往往会向更高的频率延伸,对人声也是如此,在安静环境下,如果截止频率设得过高的话,往往会损害人的低频基音部分,这样会影响到语音识别的准确度,因此安静环境下,适合于将截止频率设定低一些,而对于背景噪声较强的环境,为保持辨识度,人的声音音量通常会提高,从而也将人的基音频率提高,因此噪声较强的环境下,合适于将截止频率设定高一些。

为解决上述问题,需要发明一种通过动态估计的背景噪声大小,从而自动调节高通滤波器的结构参数,实现低频端截止频率的自动调节,以达到更好的滤波效果的基于背景噪声估计自适应高通滤波语音降噪方法。



技术实现要素:

本发明的目的在于克服现有技术中所存在的上述不足,提供一种能大幅提高滤波效果的基于背景噪声估计自适应高通滤波语音降噪方法。

为了达到上述目的,本发明提供了如下技术方案。

一种基于背景噪声估计自适应高通滤波语音降噪方法,其包括以下步骤:

步骤一,载入声音数据;

步骤二,按帧处理所述声音数据,所述声音数据为时域内声音数据,所述帧的时间大小根据系统设定,一开始载入的是所述声音数据的当前帧数据,通常所述帧的时间大小在10ms至30ms之间;

步骤三,计算所述声音数据当前帧的能量并将计算结果输入背景噪声估计单元;

步骤四,进行语音检测,检测所述声音数据当前帧是语音还是非语音,是语音则直接输出,是非语音则进入下一步骤;

步骤五,所述背景噪声估计单元将步骤三和步骤四的输入结果进行累加生成背景噪声;

步骤六,将所述背景噪声输入滤波器参数地址映射单元,根据所述背景噪声数值大小选择输出一组滤波器参数地址,不同的所述滤波器参数地址对应一组不同的滤波器参数存储器的首地址。

步骤七,将所述滤波器参数地址输入滤波器参数读取控制单元,所述滤波器参数读取控制单元根据所述滤波器参数地址从所述滤波器参数存储器中读取与所述滤波器参数存储器的首地址对应的滤波器参数。

步骤八,将所述滤波器参数送到高通滤波器进行运算;

步骤九,输出语音结果。

作为本发明的优选方案,在步骤五中,当所述语音检测的结果是非语音时,则将所述声音数据的当前帧能量输入一累加器进行累加,并用计数器将所述非语音的帧的数量加1,当所述非语音的帧的数量累加到系统设定的数目时,将背景噪声能量除以所述帧的数量即可得到所述背景噪声的大小,将累加器和计数器清零,准备下一轮的累加和计数。

作为本发明的优选方案,在步骤六中,所述背景噪声按照一定范围进行分段,每段设定一个阈值,当所述背景噪声处于两个阈值范围内时,则所述背景噪声映射到一组滤波器参数的存储地址并输出,当所述背景噪声低于最小的阈值参数时则不进行滤波。

作为本发明的优选方案,在步骤三中,所述声音数据当前帧的能量是将该帧每一个声音数据取绝对值后求平方,然后求和得到,进入步骤五。

与现有技术相比,本发明的有益效果:

本发明采用了背景噪声动态估计、根据噪声大小映射滤波器参数地址、滤波器参数读取控制和语音高通滤波器等功能单元,实现了一种自动适应环境噪声,高性能的语音高通滤波技术,达到了更好的噪声消除的效果。

附图说明

图1为本发明流程图。

具体实施方式

下面结合实施例及具体实施方式对本发明作进一步的详细描述,但不应将此理解为本发明上述主体的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。

如图1所示,一种基于动态噪声估计时频域自适应语音检测方法,其包括以下步骤:

一种基于背景噪声估计自适应高通滤波语音降噪方法,其包括以下步骤:

步骤一,载入声音数据;

步骤二,按帧处理所述声音数据,所述声音数据为时域内声音数据,所述帧的时间大小根据系统设定,一开始载入的是所述声音数据的当前帧数据,通常所述帧的时间大小在10ms至30ms之间;

步骤三,计算所述声音数据当前帧的能量并将计算结果输入背景噪声估计单元,即进入步骤五;

步骤四,进行语音检测,检测所述声音数据当前帧是语音还是非语音,是语音则直接输出,是非语音则进入下一步骤;

步骤五,所述背景噪声估计单元将步骤三和步骤四的输入结果进行累加生成背景噪声;

步骤六,将所述背景噪声输入滤波器参数地址映射单元,根据所述背景噪声数值大小选择输出一组滤波器参数地址,不同的所述滤波器参数地址对应一组不同的滤波器参数存储器的首地址。

步骤七,将所述滤波器参数地址输入滤波器参数读取控制单元,所述滤波器参数读取控制单元根据所述滤波器参数地址从所述滤波器参数存储器中读取与所述滤波器参数存储器的首地址对应的滤波器参数。

步骤八,将所述滤波器参数送到高通滤波器进行运算,本实施例中高通滤波器采用FIR滤波结构,在其他实施例中高通滤波器还可以采用IIR滤波结构等其他的滤波结构;

步骤九,输出语音结果。

在本实施例中步骤三和步骤四同时进行,并同时将结果输入步骤五中运行,当所述语音检测的结果是非语音时,则将所述声音数据的当前帧能量输入一累加器进行累加,并用计数器将所述非语音的帧的数量加1,当所述非语音的帧的数量累加到系统设定的数目时,将背景噪声能量除以所述帧的数量即可得到所述背景噪声的大小,将累加器和计数器清零,准备下一轮的累加和计数,背景噪声按照一定范围进行分段,每段设定一个阈值,当所述背景噪声处于两个阈值范围内时,则所述背景噪声映射到一组滤波器参数的存储地址并输出,当所述背景噪声低于最小的阈值参数时则不进行滤波,所述声音数据当前帧的能量是将该帧每一个声音数据取绝对值后求平方,然后求和得到。

在本实施例中,高通滤波器是一个数字 iir filter(递归滤波器),在其他实施例中高通滤波器还可以是一个数字 FIR filter(有限冲激滤波器)。数字 iir filter的计算公式为:,其中,x[n-k]为当前语音采样点即第n采样点往前追溯k个点的原始采样值,当k为0时,x[n-k]表示当前采样点,y[n]为当前语音采样点滤波后的样点值。y[n-k]为当前语音采样点往前追溯k个点的滤波后采样值。 coef_a[k], coef_b[k]分别为往前追溯第k个采样点的滤波参数, 即步骤七中从滤波参数存储器中读取出来的所述滤波器参数,M为往前追溯的采样点的数目,在本实施例中M = 8。

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