700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 语音降噪的方法 装置 电子设备及可读存储介质与流程

语音降噪的方法 装置 电子设备及可读存储介质与流程

时间:2021-12-03 20:32:28

相关推荐

语音降噪的方法 装置 电子设备及可读存储介质与流程

本申请涉及语音降噪技术领域,具体而言,涉及一种语音降噪的方法、装置、电子设备及可读存储介质。

背景技术:

随着近几年物联网的大发展,对高质量的语音采集需求很迫切。现有的语音降噪基本都是通过多个麦克风采集到信号进行降噪抵消处理,基本原理是将两个麦克风按严格的声学原理装配在同一个助听器里,使不同角度到达的声音信号得到不同的放大,从而达到增强有用的信号,相对减弱背景噪音。

在进行语音降噪的过程中,一般可以利用噪声阈值来对原始语音信号进行降噪,而噪声阈值是根据人为经验预设设定的,这种方式无法灵活适用于多种环境,如声音较小时,如果噪声阈值设置得过大,则可能也会将有效语音信号也认为是噪声,从而过滤掉,降噪效果较差。

技术实现要素:

本申请实施例的目的在于提供一种语音降噪的方法、装置、电子设备及可读存储介质,用以改善现有技术中通过人为经验设定的噪声阈值来进行降噪使得降噪效果不理想的问题。

第一方面,本申请实施例提供了一种语音降噪的方法,包括:根据第n语音信号确定第n噪声阈值,n为大于或等于1的整数;根据所述第n噪声阈值对第n+1语音信号进行降噪处理,其中,所述第n+1语音信号为所述第n语音信号之后的下一个语音信号。

在上述实现过程中,通过直接从语音信号中获得噪声阈值,然后利用该噪声阈值对下一个语音信号进行降噪处理,从而可以在降噪过程中,实时获得更新的噪声阈值,该噪声阈值可以随着环境变化而变化,使得获得的噪声阈值更贴近当前环境中的噪声阈值,进而利用其对语音信号进行降噪可以获得较好的降噪效果。

可选地,在n=1的情况下,所述第n语音信号表示包含有效语音信号的第一个语音信号,所述方法还包括:获取所述第n语音信号之前的不包括有效语音信号的初始信号;根据所述初始信号确定初始噪声阈值;根据所述初始噪声阈值对所述第n语音信号进行降噪处理。

在上述实现过程中,在对第一个语音信号进行降噪时,可以获取第一个语音信号之前的初始信号,该初始信号可认为是噪声信号,直接根据噪声信号来确定噪声阈值,以对第一个语音信号进行降噪,降噪效果更好。

可选地,所述第n语音信号和所述第n+1语音信号均为预设固定时长内的语音信号。对预设固定时长的语音信号进行处理,可以确保语音信号的时长不会太长,降噪效果更好。

可选地,所述初始信号包括多帧信号,所述根据所述初始信号确定初始噪声阈值,包括:获取所述初始信号中每帧信号对应的噪声强度值,共获得多个噪声强度值;根据所述多个噪声强度值确定所述初始噪声阈值。

在上述实现过程中,从每帧信号对应的噪声强度值中获得初始噪声阈值,可以更加准确的确定初始噪声阈值。

可选地,所述获取所述初始信号中每帧信号对应的噪声强度值,共获得多个噪声强度值,包括:对所述初始信号进行分帧,获得多帧初始信号;计算并获得每帧初始信号对应的噪声强度值,共获得多个噪声强度值。

在上述实现过程中,对初始信号进行分帧后处理,可以便于确定每帧信号对应的噪声强度值。

可选地,所述根据所述多个噪声强度值确定所述初始噪声阈值,包括:确定所述多个噪声强度值中的最大噪声强度值,所述最大噪声强度值为所述初始噪声阈值。

在上述实现过程中,将最大噪声强度值作为初始噪声阈值,使得可以更好地对噪声进行滤除。

可选地,所述根据第n语音信号确定第n噪声阈值,包括:采用预设语音端点检测方法对所述第n语音信号进行端点切分,获得至少一个噪声信号段;根据所述至少一个噪声信号段确定第n噪声阈值。

在上述实现过程中,通过对语音信号进行端点检测,便于可以从语音信号中识别出噪声段,进而获得噪声阈值。

可选地,所述根据所述至少一个噪声信号段确定第n噪声阈值,包括:获取每个噪声信号段对应的最大噪声值,共获得至少一个最大噪声值;根据所述至少一个最大噪声值确定所述第n噪声阈值。

在上述实现过程中,由于噪声段可能有多个,还可以先获得每个噪声段对应的最大噪声值,然后根据最大噪声值来确定噪声阈值,从而可以更加准确地确定出噪声阈值。

可选地,所述至少一个最大噪声值包括多个最大噪声值,所述根据所述至少一个最大噪声值确定所述第n噪声阈值,包括:计算并获得所述多个最大噪声值的平均值,所述平均值为所述第n噪声阈值。

在上述实现过程中,将多个最大噪声值的平均值作为噪声阈值,可以更好地滤除语音信号中的噪声。

可选地,所述根据所述第n噪声阈值对第n+1语音信号进行降噪处理,包括:根据所述第n噪声阈值对所述第n+1语音信号进行初始降噪处理,获得初始降噪完成的第n+1语音信号;采用预设语音端点检测方法对所述初始降噪完成的第n+1语音信号进行端点切分,获得多个有效语音信号段。

在上述实现过程中,在对语音信号进行初始降噪后,还可以对其进行端点切分,然后过得有效语音信号段即可作为降噪后的语音信号,采用两次降噪可以使得降噪效果更好。

可选地,所述根据所述第n噪声阈值对所述第n+1语音信号进行初始降噪处理,获得初始降噪完成的第n+1语音信号,包括:获得所述第n+1语音信号中每帧语音信号对应的音频信号强度值;将所述第n噪声阈值与所述音频信号强度值进行比较,保留音频信号强度值大于所述第n噪声阈值的语音信号,获得初始降噪完成的第n+1语音信号。

在上述实现过程中,将音频信号强度值大于噪声阈值的信号保留作为有效语音信号,完成对语音信号的初始降噪。

可选地,所述获得所述第n+1语音信号中每帧语音信号对应的音频信号强度值,包括:对所述第n+1语音信号进行分帧,获得多帧语音信号;计算并获得每帧语音信号对应的音频信号强度值。

在上述实现过程中,对语音信号进行分帧后处理,可以便于确定每帧语音信号对应的音频信号强度值。

可选地,所述预设语音端点检测方法为短时能量法、短时过零率法或短时能量与短时过零率结合法。

可选地,所述采用预设语音端点检测方法对所述第n+1语音信号进行端点切分,获得多个有效语音信号段之后,所述方法还包括:利用谱减法,对所述多个有效语音信号段进行再次降噪处理,获得降噪完成的多个目标语音信号段。

在上述实现过程中,在获得有效语音信号段后再利用谱减法降噪,即实现对语音信号的多次降噪,达到较好的降噪效果。

第二方面,本申请实施例提供了一种语音降噪的装置,包括:

噪声阈值获取模块,用于根据第n语音信号确定第n噪声阈值,n为大于或等于1的整数;

降噪处理模块,用于根据所述第n噪声阈值对第n+1语音信号进行降噪处理,其中,所述第n+1语音信号为所述第n语音信号之后的下一个语音信号。

可选地,在n=1的情况下,所述第n语音信号表示包含有效语音信号的第一个语音信号,所述降噪处理模块,还用于获取所述第n语音信号之前的不包括有效语音信号的初始信号;根据所述初始信号确定初始噪声阈值;根据所述初始噪声阈值对所述第n语音信号进行降噪处理。

可选地,所述第n语音信号和所述第n+1语音信号均为预设固定时长内的语音信号。

可选地,所述初始信号包括多帧信号,所述降噪处理模块,还用于获取所述初始信号中每帧信号对应的噪声强度值,共获得多个噪声强度值;根据所述多个噪声强度值确定所述初始噪声阈值。

可选地,所述降噪处理模块,还用于对所述初始信号进行分帧,获得多帧初始信号;计算并获得每帧初始信号对应的噪声强度值,共获得多个噪声强度值。

可选地,所述降噪处理模块,还用于确定所述多个噪声强度值中的最大噪声强度值,所述最大噪声强度值为所述初始噪声阈值。

可选地,所述噪声阈值获取模块,用于采用预设语音端点检测方法对所述第n语音信号进行端点切分,获得至少一个噪声信号段;根据所述至少一个噪声信号段确定第n噪声阈值。

可选地,所述噪声阈值获取模块,用于获取每个噪声信号段对应的最大噪声值,共获得至少一个最大噪声值;根据所述至少一个最大噪声值确定所述第n噪声阈值。

可选地,所述至少一个最大噪声值包括多个最大噪声值,所述噪声阈值获取模块,用于计算并获得所述多个最大噪声值的平均值,所述平均值为所述第n噪声阈值。

可选地,所述降噪处理模块,还用于根据所述第n噪声阈值对所述第n+1语音信号进行初始降噪处理,获得初始降噪完成的第n+1语音信号;采用预设语音端点检测方法对所述初始降噪完成的第n+1语音信号进行端点切分,获得多个有效语音信号段。

可选地,所述降噪处理模块,还用于获得所述第n+1语音信号中每帧语音信号对应的音频信号强度值;将所述第n噪声阈值与所述音频信号强度值进行比较,保留音频信号强度值大于所述第n噪声阈值的语音信号,获得初始降噪完成的第n+1语音信号。

可选地,所述降噪处理模块,还用于对所述第n+1语音信号进行分帧,获得多帧语音信号;计算并获得每帧语音信号对应的音频信号强度值。

可选地,所述预设语音端点检测方法为短时能量法、短时过零率法或短时能量与短时过零率结合法。

可选地,所述降噪处理模块,还用于利用谱减法,对所述多个有效语音信号段进行再次降噪处理,获得降噪完成的多个目标语音信号段。

第三方面,本申请实施例提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。

第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。

本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种电子设备的结构示意图;

图2为本申请实施例提供的一种语音降噪的方法的流程图;

图3为本申请实施例提供的一种英文单词的短时能量的示意图;

图4为本申请实施例提供的一种英文单词的短时过零率的示意图;

图5为本申请实施例提供的一种短时能量和短时过零率结合方法对语音信号进行端点检测的示意图;

图6为本申请实施例提供的一种语音降噪的装置的结构框图。

具体实施方式

下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

为了便于对本申请实施例的理解,下面描述本申请实施例可应用的其中一个应用场景。该应用场景可以为无人机的控制场景,无人机的飞行一般通过远程手持终端进行控制,如工作人员可通过手持终端输入语音控制信号,手持终端在获得语音控制信号后,对语音控制信号进行语音识别,从而可获得正确的控制指令,然后再根据控制指令控制无人机的飞行。其中,由于无人机在飞行过程中可能会产生飞行声音或者周围环境也存在其他声音,那么,手持终端上的麦克风在采集工作人员的语音控制信号时,还可能采集有无人机的飞行声音和/或周围环境中的其他声音,则无人机的飞行声音和/或周围环境中的其他声音作为噪声信号一并随着工作人员的语音信号输入手持终端,所以,为了正确识别语音控制信号,在对语音控制信号进行语音识别之前,还可以对输入的语音控制信号进行降噪处理,即滤除语音控制信号中的噪声信号(如无人机的飞行声音信号和/或周围环境中的其他声音),从而可获得实际的控制信号。

当然,上述应用场景仅是为了便于对本申请实施例的理解所描述的一个应用场景,本申请实施例可以应用于在任何涉及语音降噪的场景中,在此不再一一进行举例。

另外需要说明的是,本申请实施例中的语音降噪方法可应用在双麦克风降噪或者单麦克风降噪,但是由于双麦克风降噪技术对设备结构设计要求比较高,对物料的一致性要求高,成本也比较高,且双麦克风降噪技术如果运用不好,则会导致在安静的环境下,正常的语音输出也会被当作噪声滤除,从而出现声音小的情况,即如果麦克风一致性不好,会导致拾音效果受影响。所以,可采用单麦克风进行降噪,即手持终端上只需设置一个麦克风即可,从而可以最低的成本和最简单的结构实现降噪。

由于提取的原始语音信号一般不能满足实际的需要,处理起来很复杂或者根本无法处理,所以还需要对原始语音信号进行降噪处理,本申请实施例中提供一种语音降噪的方法,该方法中通过根据获得的前一语音信号获得噪声阈值,根据该噪声阈值对获得的后一语音信号进行降噪处理,由此可利用实时获得的噪声阈值对后续的语音信号进行降噪处理,使得降噪效果更好。

请参照图1,图1为本申请实施例提供的一种电子设备的结构示意图,该电子设备可以为上述的手持终端,所述电子设备可以包括:至少一个处理器110,例如cpu,至少一个通信接口120,至少一个存储器130和至少一个通信总线140。其中,通信总线140用于实现这些组件直接的连接通信。其中,本申请实施例中设备的通信接口120用于与其他节点设备进行信令或数据的通信。存储器130可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器130可选的还可以是至少一个位于远离前述处理器的存储装置。存储器130中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器110执行时,电子设备执行下述图2所示方法过程。

请参照图2,图2为本申请实施例提供的一种语音降噪的方法的流程图,该方法包括如下步骤:

步骤s110:根据第n语音信号确定第n噪声阈值。

本申请实施例中所指的语音信号是指由麦克风采集获得的可能参杂有噪声信号的原始语音信号。为了获得更清晰的语音信号,需要从语音信号中识别出噪音信号,即利用噪声阈值来对语音信号进行降噪。

第n语音信号可以理解为第n个语音信号,其中n为大于或等于1的整数。一个语音信号可以指一段时间段内的语音信号,如40ms时间段内的语音信号,或者将预设帧数的语音信号作为一个语音信号,如每帧语音信号为10ms,预设帧数为5,则5帧语音信号可以作为一个语音信号。当然,为了使得降噪效果更好,一帧语音信号也可作为一个语音信号。

根据第n语音信号确定第n噪声阈值,需要对第n语音信号进行识别,获得第n语音信号中参杂的噪声信号,噪声阈值可以是噪声信号的最大幅度值,也可以是噪声信号的平均幅度值,从而可获得对应的噪声阈值。

步骤s120:根据所述第n噪声阈值对第n+1语音信号进行降噪处理。

第n+1语音信号为第n语音信号之后的下一个语音信号。可以理解地,由于噪声信号的幅度值一般比正常的语音信号的幅度值要更低,所以,可以根据噪声阈值将语音信号中的噪声信号进行滤除,如将大于噪声阈值的信号保留,作为有效语音信号,将小于或等于噪声阈值的信号作为噪声信号滤除,或者可将大于或等于噪声阈值的信号保留,作为有效语音信号,将小于噪声阈值的信号作为噪声信号滤除,从而可实现对语音信号进行降噪处理,获得有效语音信号。

为了便于对语音信号进行处理,确保语音信号的时长不会太长影响降噪效果,则上述的第n语音信号和第n+1语音信号可以均为预设固定时长内的语音信号,如第n语音信号和第n+1语音信号均为50ms内的语音信号。

在上述实现过程中,通过直接从语音信号中获得噪声阈值,然后利用该噪声阈值对下一个语音信号进行降噪处理,从而可以在降噪过程中,实时获得更新的噪声阈值,该噪声阈值可以随着环境变化而变化,使得获得的噪声阈值更贴近当前环境中的噪声阈值,进而利用其对语音信号进行降噪可以获得较好的降噪效果。

作为一种示例,由于语音信号一般在10khz以内,为了对便于对原始语音信号进行处理,还可以对原始语音信号进行预滤波,预滤波的目的是为了抑制输入信号各频域分量中频率超出fs/2的所有分量(fs为采样频率),以防止混叠干扰,并且可以抑制50hz的电源工频干扰,所以,预滤波器可以是一个上下截止频率分别是fh和fl的带通滤波器,其中,fs、fh和fl可以根据实际情况设置对应的值。当然,预滤波器也可以采用低通滤波器对原始语音信号进行滤波,从而可以初步滤除语音信号中的噪声信号。

而由于原始的语音信号是一系列的模拟信号,所以处理器在处理之前需要将其转换为处理器能识别的数字信号,即对原始语音信号进行数字化处理,数字化处理包括采样和量化,采样是把模拟信号在时间域上进行间隔区域,其中两个取样点之间的间隔称为采样周期,其倒数为采样频率,量化的目的是将信号波形的幅度值离散化。

作为一种示例,为了对第一语音信号进行降噪处理,需要获得初始噪声阈值,初始噪声阈值可以是根据用户经验人为设定的,也可以是根据采集的噪声获得的。可以理解地,由于麦克风在采集语音信号的过程中,一般工作人员需要打开手持终端上的麦克风,工作人员在打开之时不会立即说话,而是可能有稍微延时,所以麦克风采集的语音信号的初始一段时间内的信号可能并不是真正有效的语音信号,此时间段内的信号可作为初始噪声信号。也就是说,在n=1的情况下,第n语音信号表示包含有效语音信号的第一个语音信号,所以,还可以获取第n语音信号之前的不包括有效语音信号的初始信号,然后根据初始信号确定初始噪声阈值,再根据初始噪声阈值对第一语音信号进行降噪处理。

其中,有效语音信号可以理解为包含真正声音信号的信号,即区分有效语音信号和噪声信号的方式可以以信号幅度值来判断,如初始时间段内的信号的幅度一般小于有效语音信号的幅度。所以可以从获得的语音信号中删选出初始时间段内的不包括有效语音信号的初始信号,即噪声信号,例如当前获得100ms的语音信号,将语音信号进行划分,每个语音信号的时长为40ms,则其包括两个语音信号,在0-20ms内的信号可以作为初始信号,20ms-60ms内的信号为第一个语音信号,60ms-100ms内的信号为第二个语音信号,当然,还可以根据实际情况来划分,如0-10ms内的信号的幅度明显低于10-20ms内的信号的幅度,则可将0-10ms内的信号作为初始信号,后续的10ms-100ms内的信号再进行语音信号划分,如10-40ms内的信号为第一个语音信号,40ms-100ms内的信号为第二个语音信号,当然这种情况下,每个语音信号的时长可以不固定,而是可以根据实际情况灵活设定。

当然,还可以直接将初始的预设数量帧数的信号作为初始信号,即噪声信号,如初始10帧信号作为初始噪声信号。可以理解为,初始信号为n=1时的第一语音信号,也可以将第一语音信号作为初始噪声信号,然后对第一语音信号进行识别,获得其第一语音信号中包含的噪声信号,进而确定出初始噪声阈值后,利用初始噪声阈值对第一语音信号进行降噪处理。当然,此种情况下,第一噪声阈值即为该初始噪声阈值,还利用该初始噪声阈值对第二语音信号进行降噪处理,为了描述的方便,下面实施例中均以初始信号为第一语音信号之间的不包括有效语音信号的初始信号为例进行说明。

在获得初始信号后,可根据初始信号确定初始噪声阈值,然后采用初始噪声阈值对第一个语音信号进行降噪处理,由此可根据实际采集的噪声来确定噪声阈值,使得降噪效果更好。

作为一种示例,根据初始信号确定初始噪声阈值的方式可以为:可以从初始信号中识别出噪声信号,即噪声信号的幅度一般小于语音信号的幅度,所以,可以直接获得噪声信号的幅度值,进而根据其幅度值确定初始噪声阈值。

或者,由于初始信号一般可以包括多帧信号,所以可以获取初始信号中每帧信号对应的噪声强度值,共获得多个噪声强度值,然后根据多个噪声强度值确定初始噪声阈值。

可以理解地,可以对初始信号进行分帧,获得多帧初始信号,然后计算并获得每帧初始信号对应的噪声强度值,从而获得多个噪声强度值,然后根据多个噪声强度值确定初始噪声阈值。

在上述实现过程中,对初始信号进行分帧后处理,可以便于确定每帧信号对应的噪声强度值。

其中,由于语音信号在处理过程中均是离散的,所以可以获得每帧初始信号中每个采样点的幅度值,然后将这些采样点的平均幅度值可作为每帧初始信号对应的噪声强度值。

当然,还可以获得每帧初始信号中所有采样点的幅度值的最大幅度值,将该最大幅度值作为每帧初始信号对应的噪声强度值,从而可获得多个噪声强度值。

在上述实现过程中,从每帧信号对应的噪声强度值中获得初始噪声阈值,可以更加准确的确定初始噪声阈值。

在获得多个噪声强度值后,可以将多个噪声强度值进行比较,确定出多个噪声强度值中的最大噪声强度值,最大噪声强度值即可作为初始噪声阈值。将最大噪声强度值作为初始噪声阈值,使得可以更好地对噪声进行滤除。

当然,还可以计算多个噪声强度值的平均噪声强度值,将平均噪声强度值作为初始噪声阈值。

需要说明的是,当初始信号只有一帧信号时,其该帧信号对应噪声强度值即为该帧初始信号对应的初始噪声阈值。

利用初始噪声阈值对第一个语音信号进行降噪处理的过程可以为:将第一个语音信号中信号幅度大于初始噪声阈值的信号作为有效语音信号进行保留,将第一个语音信号中信号幅度小于或等于初始噪声阈值的信号作为噪声信号进行滤除。

当然,还可以将第一个语音信号划分为预设时长的多个语音信号,如第一个语音信号的时长为30ms,则可将第一个语音信号划分为每段时长为10ms的共3段的语音信号,然后获取每段语音信号中每个采样点的信号强度值,然后获得所有采样点的信号强度值中的最大信号强度值或者获得所有采样点的信号强度值的平均信号强度值,该最大信号强度值或者平均信号强度值可以作为每段语音信号的信号强度值,然后利用初始噪声阈值对每段语音信号进行降噪处理,即将每段语音信号的信号强度值与初始噪声阈值进行比较,将信号强度值大于初始噪声阈值的信号段保留,将信号强度值小于或等于初始噪声阈值的信号段滤除,则保留的信号则作为降噪后获得的有效语音信号。

另外,在初始信号包括多帧信号时,可以对上述的初始信号进行分帧后处理,获得多帧初始信号的方式可以采用窗函数进行分帧,由于语音信号的时变形决定了其不能可能在整个时间域上被处理,但是在短时间内其特性认为是基本不变的,这就是语音信号的短时平稳性,利用这个特征,截取具有短时平稳性的一端语音信号来对其进行处理分析,就是对语音信号进行分帧,分帧是通过对语音信号加入窗函数来实现的,即sw(n)=s(n)*w(n),其中,s(n)为加窗前的语音信号,sw(n)为加窗后的信号,w(n)为窗函数。

窗函数一般有矩形窗、汉明窗、汉宁窗,本申请实施例可以采用汉明窗来对初始信号进行分帧,因为矩形窗具有谱平滑性较好的优点,但波形细节丢失和常常产生遗漏现象对其应用造成了局限性,而汉明窗可以有效地客服频谱泄露现象。

作为一种示例,根据第n语音信号确定第n噪声阈值的方式可以如下:采用预设语音端点检测方法对第n语言信号进行端点切分,获得至少一个噪声信号段,根据至少一个噪声信号段确定第n噪声阈值。

其中,语音端点检测的方法有短时能量、短时过零率和短时平均幅度,短时能量是基于在信噪比较高的情况下,一般无语音信号的噪声能量很小,而有语音信号的能量则显著增大,因此,定义为一帧样点的加权平方和,短时过零率则以一帧语音信号波形穿过横轴(零电平)的次数作为检测的基础,本申请实施例中的预设语音端点检测法可以为短时能量法、短时过零率法或短时能量与短时过滤率结合法。

具体地,语音一般分为无声段、清音端和浊音端,一般把浊音认为是一个以基音周期为周期的斜三角脉冲串,把清音模拟成随机白噪声。而由于语音信号是一个非平稳态过程,不能用户处理平稳信号的信号处理技术对其进行分析处理。但由于语音信号本身的特点,在10-30ms的短时间范围内,其特性可以看作是一个准稳态过程,即具有短时性,因此采用短时能量和短时过零率来对语音信号进行端点检测。

信号的短时能量定义为:设语音波形时域信号为x(l),加窗分帧处理后得到第n帧语音信号为xn(m),则xn(m)满足下式:

其中,n=0,1t,2t,...,,并且n为帧长,t为帧移长度。

设第n帧语音信号xn(m)的短时能量谱用en表示,则其计算公式如下:

如图3所示为英文单词“cat”的短时能量。

语音和噪声的区别可以体现在它们的能量上,语音段的能量比噪声段的能量大,如果环境噪声和系统输入的噪声比较小,只要计算输入信号的短时能量就能够把语音段和噪声段区分开。

短时过零率表示一帧语音中语音信号波形穿过横轴(零电平)的次数,它可以用来区分清音和浊音,这是因为语音信号中的高频端有高的过零率,低频段过零率较低。

定义语音信号xn(m)的短时过零率zn为:

其中,sgn[]是符合函数,即:

如图4所示为英文单词“eat”的短时过零率。

从图3和图4可以看出,短时能量可以近似为互补的情况,短时能量大的地方过零率小,短时能量小的地方过零率较大。

无声段的短时能量为零,清音段的短时能量又比浊音段的短时能量大,而在过零率方面,理想的情况是无声段的过零率为零,浊音段的过零率比清音段的过零率要大很多,因此,假设有一段语音,如果某部分的短时能量和过零率都为零或者为很小的值,就可以认为这部分为无声段,如果该部分短时能量很大但是过零率很小,则认为该部分语音为浊音段,如果该部分短时能量很小但是过零率很大,则认为该部分语音为清音段。由于语音信号具有短时性,因此在对语音信号进行分析时,需要将语音信号以30ms为一段分为若干帧来进行分析,则两帧起始点之间的间隔为10ms。

为防止误判以及无声段过零率太大,设tmp1和tmp2为相邻两个采样点,则同时满足tmp1*tmp2<0和tmp1-tmp2的绝对值大于预设值时才算一次过零,除此之外,短时能量和过零率分别确定两个门限,一个是较低的门限tel和tzl,其数值较小,对信号的变化比较敏感,很容易会被超过。另一个是较高的门限teh和tzh,数值较大,信号必须达到一定的强度,该门限才能被超过。低门限被超过有可能是时间很短的噪声引起的,高门限被超过则可以击败确定是由语音信号引起的,如图5所示。

在上述通过对第n语音信号进行端点切分,可从中获得切分后的至少一个噪声信号段,则可根据至少一个噪声信号段确定第n噪声阈值。

例如,可获取每个噪声信号段对应的最大噪声值,获得至少一个最大噪声值,然后根据至少一个最大噪声值确定第n噪声阈值。

可以理解地,可以获得每个噪声信号段中采样点的最大幅度值或者平均幅度值作为每个噪声信号段对应的最大噪声值。

在噪声信号段为一个时,最大噪声值即为一个,则该最大噪声值即可为第n噪声阈值。在噪声信号段为多个时,最大噪声值即为多个,则可将这多个最大噪声阈值进行比较,获得阈值最大的噪声阈值作为第n噪声阈值。或者,还可以计算获得多个最大噪声阈值的平均值,该平均值即为第n噪声阈值。

在获得第n噪声阈值后,可以先根据第n噪声阈值对第n+1语音信号进行初始降噪处理,获得降噪完成的第n+1语音信号,然后采用预设语音端点检测方法对初始降噪完成的第n+1语音信号进行端点切分,获得多个有效语音信号段。获得的有效语音信号段可作为降噪完成的语音信号。

其中,初始降噪处理过程为:获得第n+1语音信号中每帧语音信号对应的音频信号强度值,然后将第n噪声阈值与音频信号强度值进行比较,保留音频信号强度值大于第n噪声阈值的语音信号,获得初始降噪完成的第n+1语音信号。

其中,也可以采用加窗方法对第n+1语音信号进行分帧,获得多帧语音信号,然后计算并获得每帧语音信号对应的音频信号强度值。

由于语音信号为数字信号,所以对于每帧信号,其包括多个采样点,所以可以获取每帧语音信号中每个采样点的幅度值,然后可以将每帧信号中的采样点的最大幅度值作为音频信号强度值,或者可以将每帧语音信号中的所有采样点的幅度值求平均,获得的平均值作为每帧语音信号的音频信号强度值。

需要说明的是,当每个语音信号只有一帧信号时,其该帧信号的音频信号强度值即为该语音信号对应的音频信号强度值。

然后可将每帧语音信号的音频信号强度值与第n噪声阈值进行比较,保留音频信号强度值大于第n噪声阈值的语音信号作为初始降噪完成的第n+1语音信号。

由于用户在说话过程中,每个字之间会有短暂停顿,所以初始降噪完成的语音信号中还可能包含有噪声信号,所以还可以对初始降噪完成的第n+1语音信号采样上述的端点检测方法获得多个有效语音信号段,进一步实现噪声滤除,即采用两次降噪可以使得降噪效果更好。

当然,为了获得更好的降噪效果,还可以在上述获得多个有效语音信号段之后,再利用谱减法,对多个有效语音信号段进行再次降噪处理,获得降噪完成的多个目标语音信号段。

谱减法是利用语音信号的短时平稳性,从带噪声的语音信号短时谱中减去噪声的短时谱,从而得到纯净语音的频谱。谱减法的具体实现过程在此不详细描述。

可以理解地,除了第一个语音信号采用初始噪声阈值进行降噪外,其他的语音信号均可先采用噪声阈值进行初始降噪,然后再采用端点检测方法获得有效语音信号段,然后再采用谱减法对有效语音信号段进行再次降噪,所以,本申请实施例中可以对语音信号实现多次降噪,使得降噪效果更好。

当然,在获得的语音信号小于预设帧数时,还可以直接将语音信号进行端点检测,从中获得有效语音信号段后再利用谱减法进行降噪即可。

请参照图6,图6为本申请实施例提供的一种语音降噪的装置200的结构框图,该装置200可以是电子设备上的模块、程序段或代码。应理解,该装置200与上述图2方法实施例对应,能够执行图2方法实施例涉及的各个步骤,该装置200具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。

可选地,所述装置200包括:

噪声阈值获取模块210,用于根据第n语音信号确定第n噪声阈值,n为大于或等于1的整数;

降噪处理模块220,用于根据所述第n噪声阈值对第n+1语音信号进行降噪处理,其中,所述第n+1语音信号为所述第n语音信号之后的下一个语音信号。

可选地,在n=1的情况下,所述第n语音信号表示包含有效语音信号的第一个语音信号,所述降噪处理模块220,还用于获取所述第n语音信号之前的不包括有效语音信号的初始信号;根据所述初始信号确定初始噪声阈值;根据所述初始噪声阈值对所述第n语音信号进行降噪处理。

可选地,所述第n语音信号和所述第n+1语音信号均为预设固定时长内的语音信号。

可选地,所述初始信号包括多帧信号,所述降噪处理模块220,还用于获取所述初始信号中每帧信号对应的噪声强度值,共获得多个噪声强度值;根据所述多个噪声强度值确定所述初始噪声阈值。

可选地,所述降噪处理模块220,还用于对所述初始信号进行分帧,获得多帧初始信号;计算并获得每帧初始信号对应的噪声强度值,共获得多个噪声强度值。

可选地,所述降噪处理模块220,还用于确定所述多个噪声强度值中的最大噪声强度值,所述最大噪声强度值为所述初始噪声阈值。

可选地,所述噪声阈值获取模块210,用于采用预设语音端点检测方法对所述第n语音信号进行端点切分,获得至少一个噪声信号段;根据所述至少一个噪声信号段确定第n噪声阈值。

可选地,所述噪声阈值获取模块210,用于获取每个噪声信号段对应的最大噪声值,共获得至少一个最大噪声值;根据所述至少一个最大噪声值确定所述第n噪声阈值。

可选地,所述至少一个最大噪声值包括多个最大噪声值,所述噪声阈值获取模块210,用于计算并获得所述多个最大噪声值的平均值,所述平均值为所述第n噪声阈值。

可选地,所述降噪处理模块220,还用于根据所述第n噪声阈值对所述第n+1语音信号进行初始降噪处理,获得初始降噪完成的第n+1语音信号;采用预设语音端点检测方法对所述初始降噪完成的第n+1语音信号进行端点切分,获得多个有效语音信号段。

可选地,所述降噪处理模块220,还用于获得所述第n+1语音信号中每帧语音信号对应的音频信号强度值;将所述第n噪声阈值与所述音频信号强度值进行比较,保留音频信号强度值大于所述第n噪声阈值的语音信号,获得初始降噪完成的第n+1语音信号。

可选地,所述降噪处理模块220,还用于对所述第n+1语音信号进行分帧,获得多帧语音信号;计算并获得每帧语音信号对应的音频信号强度值。

可选地,所述预设语音端点检测方法为短时能量法、短时过零率法或短时能量与短时过零率结合法。

可选地,所述降噪处理模块220,还用于利用谱减法,对所述多个有效语音信号段进行再次降噪处理,获得降噪完成的多个目标语音信号段。

本申请实施例提供一种可读存储介质,所述计算机程序被处理器执行时,执行如图2所示方法实施例中电子设备所执行的方法过程。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如,包括:根据第n语音信号确定第n噪声阈值,n为大于或等于1的整数;根据所述第n噪声阈值对第n+1语音信号进行降噪处理,其中,所述第n+1语音信号为所述第n语音信号之后的下一个语音信号。

综上所述,本申请实施例提供一种语音降噪的方法、装置、电子设备及可读存储介质,该方法通过直接从语音信号中获得噪声阈值,然后利用该噪声阈值对下一个语音信号进行降噪处理,从而可以在降噪过程中,实时获得更新的噪声阈值,该噪声阈值可以随着环境变化而变化,使得获得的噪声阈值更贴近当前环境中的噪声阈值,进而利用其对语音信号进行降噪可以获得较好的降噪效果。

在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

技术特征:

1.一种语音降噪的方法,其特征在于,包括:

根据第n语音信号确定第n噪声阈值,n为大于或等于1的整数;

根据所述第n噪声阈值对第n+1语音信号进行降噪处理,其中,所述第n+1语音信号为所述第n语音信号之后的下一个语音信号。

2.根据权利要求1所述的方法,其特征在于,在n=1的情况下,所述第n语音信号表示包含有效语音信号的第一个语音信号,所述方法还包括:

获取所述第n语音信号之前的不包括有效语音信号的初始信号;

根据所述初始信号确定初始噪声阈值;

根据所述初始噪声阈值对所述第n语音信号进行降噪处理。

3.根据权利要求1或2所述的方法,其特征在于,所述第n语音信号和所述第n+1语音信号均为预设固定时长内的语音信号。

4.根据权利要求2所述的方法,其特征在于,所述初始信号包括多帧信号,所述根据所述初始信号确定初始噪声阈值,包括:

获取所述初始信号中每帧信号对应的噪声强度值,共获得多个噪声强度值;

根据所述多个噪声强度值确定所述初始噪声阈值。

5.根据权利要求4所述的方法,其特征在于,所述获取所述初始信号中每帧信号对应的噪声强度值,共获得多个噪声强度值,包括:

对所述初始信号进行分帧,获得多帧初始信号;

计算并获得每帧初始信号对应的噪声强度值,共获得多个噪声强度值。

6.根据权利要求4或5所述的方法,其特征在于,所述根据所述多个噪声强度值确定所述初始噪声阈值,包括:

确定所述多个噪声强度值中的最大噪声强度值,所述最大噪声强度值为所述初始噪声阈值。

7.根据权利要求1所述的方法,其特征在于,所述根据第n语音信号确定第n噪声阈值,包括:

采用预设语音端点检测方法对所述第n语音信号进行端点切分,获得至少一个噪声信号段;

根据所述至少一个噪声信号段确定第n噪声阈值。

8.根据权利要求7所述的方法,其特征在于,所述根据所述至少一个噪声信号段确定第n噪声阈值,包括:

获取每个噪声信号段对应的最大噪声值,共获得至少一个最大噪声值;

根据所述至少一个最大噪声值确定所述第n噪声阈值。

9.根据权利要求8所述的方法,其特征在于,所述至少一个最大噪声值包括多个最大噪声值,所述根据所述至少一个最大噪声值确定所述第n噪声阈值,包括:

计算并获得所述多个最大噪声值的平均值,所述平均值为所述第n噪声阈值。

10.根据权利要求1所述的方法,其特征在于,所述根据所述第n噪声阈值对第n+1语音信号进行降噪处理,包括:

根据所述第n噪声阈值对所述第n+1语音信号进行初始降噪处理,获得初始降噪完成的第n+1语音信号;

采用预设语音端点检测方法对所述初始降噪完成的第n+1语音信号进行端点切分,获得多个有效语音信号段。

11.根据权利要求10所述的方法,其特征在于,所述根据所述第n噪声阈值对所述第n+1语音信号进行初始降噪处理,获得初始降噪完成的第n+1语音信号,包括:

获得所述第n+1语音信号中每帧语音信号对应的音频信号强度值;

将所述第n噪声阈值与所述音频信号强度值进行比较,保留音频信号强度值大于所述第n噪声阈值的语音信号,获得初始降噪完成的第n+1语音信号。

12.根据权利要求11所述的方法,其特征在于,所述获得所述第n+1语音信号中每帧语音信号对应的音频信号强度值,包括:

对所述第n+1语音信号进行分帧,获得多帧语音信号;

计算并获得每帧语音信号对应的音频信号强度值。

13.根据权利要求10所述的方法,其特征在于,所述预设语音端点检测方法为短时能量法、短时过零率法或短时能量与短时过零率结合法。

14.根据权利要求10所述的方法,其特征在于,所述采用预设语音端点检测方法对所述第n+1语音信号进行端点切分,获得多个有效语音信号段之后,所述方法还包括:

利用谱减法,对所述多个有效语音信号段进行再次降噪处理,获得降噪完成的多个目标语音信号段。

15.一种语音降噪的装置,其特征在于,包括:

噪声阈值获取模块,用于根据第n语音信号确定第n噪声阈值,n为大于或等于1的整数;

降噪处理模块,用于根据所述第n噪声阈值对第n+1语音信号进行降噪处理,其中,所述第n+1语音信号为所述第n语音信号之后的下一个语音信号。

16.一种电子设备,其特征在于,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如权利要求1-14任一所述方法中的步骤。

17.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时运行如权利要求1-14任一所述方法中的步骤。

技术总结

本申请实施例提供一种语音降噪的方法、装置、电子设备及可读存储介质,涉及语音降噪技术领域。该方法包括:根据第n语音信号确定第n噪声阈值,n为大于或等于1的整数;根据所述第n噪声阈值对第n+1语音信号进行降噪处理。本方案通过直接从语音信号中获得噪声阈值,然后利用该噪声阈值对下一个语音信号进行降噪处理,从而可以在降噪过程中,实时获得更新的噪声阈值,该噪声阈值可以随着环境变化而变化,使得获得的噪声阈值更贴近当前环境中的噪声阈值,进而利用其对语音信号进行降噪可以获得较好的降噪效果。

技术研发人员:不公告发明人

受保护的技术使用者:苏州臻迪智能科技有限公司

技术研发日:.09.09

技术公布日:.01.14

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。