1.本公开一般地涉及计算机技术领域。更具体地,本公开涉及音频降噪方法及装置。
背景技术:2.语音增强是指当语音信号被各种各样的噪声干扰、甚至淹没后,从噪声背景中提取有用的语音信号,抑制、降低噪声干扰的技术。简单来说,就是从含噪语音中提取尽可能纯净的原始语音。
3.目前大多数语音增强是通过传统的数字信号处理方式,用自适应的方法,使得含噪语音与干净语音相差最小化,从而估计干净语音。该方法具有运行速度快的特点,但其降噪效果不佳,其更适用于硬件性能低的多数终端产品。而对于产品线上部署的应用场景,算力条件满足,采用目前现有的技术将无法满足用户追求更佳降噪效果的需求。
4.因此如何获得一种优化的音频降噪方法为现有技术中需要解决的问题。
技术实现要素:5.为了至少部分地解决背景技术中提到的技术问题,本公开的方案提供了一种音频降噪方法及装置。
6.根据本公开的第一方面,本公开提供了一种音频降噪方法,其中,所述方法包括:获取所述音频;对所述音频进行预处理;将所述预处理获得的音频的时域信号转换为频域信号;将所述频域信号输入预训练的第一神经网络模型进行处理,获得频域特征;将所述频域特征转换为时域特征;将所述时域特征输入预训练的第二神经网络模型进行处理,获得降噪后的音频。
7.可选地,所述对所述音频进行预处理包括:对所述音频进行分帧、加窗处理。
8.可选地,所述将所述预处理获得的音频的时域信号转换为频域信号包括:将所述预处理获得的音频的时域信号进行短时傅里叶变换,获得所述频域信号。
9.可选地,所述将所述预处理获得的音频的时域信号转换为频域信号包括:将所述预处理获得的音频的时域信号进行短时傅里叶变换,并采用预设掩码对短时傅里叶变换后的信号进行处理,获得所述频域信号。
10.可选地,所述第一神经网络模型采用轻量级骨干网络框架,每层网络基于时序的长短期记忆结构设计。
11.可选地,所述将所述频域特征转换为时域特征包括:将所述频域特征进行傅里叶逆变换,获得所述时域特征。
12.可选地,所述第二神经网络模型包括:一维卷积层、长短期记忆结构、掩码处理层、全连接层。
13.可选地,所述方法还包括:根据预设采样率对所述降噪后的音频进行转采样处理。
14.根据本公开的第二方面,本公开提供了一种音频降噪装置,其中,所述装置包括:获取模块,其配置为用于获取所述音频;预处理模块,其配置为用于对所述音频进行预处
理;转换模块,其配置为用于将所述预处理获得的音频的时域信号转换为频域信号;特征提取模块,其配置为用于将所述频域信号输入预训练的第一神经网络模型进行处理,获得频域特征;其中,所述转换模块还用于将所述频域特征转换为时域特征;所述特征提取模块还用于将所述时域特征输入预训练的第二神经网络模型进行处理,获得降噪后的音频。
15.可选地,所述预处理模块采取如下方式对所述音频进行预处理:对所述音频进行分帧、加窗处理。
16.可选地,所述转换模块采取如下方式将所述预处理获得的音频的时域信号转换为频域信号:将所述预处理获得的音频的时域信号进行短时傅里叶变换,获得所述频域信号。
17.可选地,所述转换模块采取如下方式将所述预处理获得的音频的时域信号转换为频域信号:将所述预处理获得的音频的时域信号进行短时傅里叶变换,并采用预设掩码对短时傅里叶变换后的信号进行处理,获得所述频域信号。
18.可选地,所述转换模块采取如下方式将所述频域特征转换为时域特征:将所述频域特征进行傅里叶逆变换,获得所述时域特征。
19.可选地,所述装置还包括:转采样模块,其配置为用于根据预设采样率对所述降噪后的音频进行转采样处理。
20.可选地,所述装置还包括:训练模块,其配置为用于训练所述第一神经网络模型和/或所述第二神经网络模型。
21.可选地,所述训练模块采用纯噪声信号和干净语音信号以随机信噪比进行合成获得的音频信号作为初始训练样本。
22.根据本公开的第三方面,本公开提供一种电子装置,其中,所述电子装置包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现上述本公开的第一方面的方法。
23.根据本公开的第四方面,本公开提供一种计算机可读存储介质,其中,所述存储介质存储有计算机程序,所述计算机程序被执行时,实现上述本公开的第一方面的方法。
24.本公开的音频降噪方法和装置,将神经网络模型应用于音频降噪,通过预训练的神经网络模型提取音频的频时特征,提高了音频降噪的效果及效率。此外,本公开的技术方案通过掩码处理提高音频的信噪比,一方面使得频域信号的特征更加突出,进而使得通过神经网络模型处理后的结果的准确性进一步得以提升;另一方面使得降噪后的音频中的干净音频进一步增强,进一步提高了音频降噪效果。
附图说明
25.通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分其中:
26.图1是示出根据本公开的一个实施例的音频降噪方法的流程图;
27.图2是示出根据本公开的一个实施例的音频降噪模型的训练方法的流程图;
28.图3是示出根据本公开的一个实施例的音频降噪装置的示意性框图。
具体实施方式
29.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
30.下面结合附图来详细描述本公开的具体实施方式。
31.本公开提供一种音频降噪方法。参照图1,图1是示出根据本公开的一个实施例的音频降噪方法的流程图。如图1中所示,所述方法包括以下步骤s101-s106。步骤s101:获取所述音频。步骤s102:对所述音频进行预处理。步骤s103:将所述预处理获得的音频的时域信号转换为频域信号。步骤s104:将所述频域信号输入预训练的第一神经网络模型进行处理,获得频域特征。步骤s105:将所述频域特征转换为时域特征。步骤s106:将所述时域特征输入预训练的第二神经网络模型进行处理,获得降噪后的音频。
32.本公开的音频降噪方法,将神经网络模型应用于音频降噪,通过预训练的神经网络模型提取音频的时频特征,提高了音频降噪的效果及效率。
33.在步骤s101中,可以获取所述音频。
34.根据本公开的实施例,为了对音频进行降噪处理,首先应获取待处理的音频。该音频可以是通过任何适当途径获取到的,例如可以来自于多媒体数据库,或者由用户上传,或者从其他音视频中截取等等。
35.在步骤s102中,可以对所述音频进行预处理。
36.根据本公开的实施例,在获取到音频后,可以对所述音频进行分帧、加窗处理,以使预处理后的音频可以更稳定顺畅地进行之后的处理运算。
37.具体地,分帧可以采用连续分段的方法,也可以采用交叠分段的方法,优选交叠分段的方法,以使帧与帧之间可以平滑过渡,保持其连续性。相邻帧之间的交叠部分称为帧移,帧移与帧长的比值一般为0-1:2。分帧可以通过采用可移动的有限长度窗口进行加权的方法来实现,该可移动的有限长度窗口即窗函数。经分帧加窗预处理后,音频信号被分割成一帧一帧的加过窗函数的短时信号。其中,窗函数可以根据音频信号的性质及处理要求进行选择。本实施例优选汉宁窗;预处理后获得的音频的帧长优选为15个数据点。
38.在步骤s103中,可以将所述预处理获得的音频的时域信号转换为频域信号。
39.根据本公开的实施例,为了提取频域特征,可以将预处理获得的音频的时域信号转换为频域信号。
40.具体地,将所述预处理获得的音频的时域信号进行短时傅里叶变换(stft),获得所述频域信号。短时傅里叶变换是一种常用的时频分析方法,计算时采用窗口将信号划分成许多小的时间间隔,在每个窄的时间窗内认为信号是平稳的,所以它通过时间窗内的一段信号来表示某一时刻的信号特征。在短时傅里叶变换过程中,窗的长度决定频谱图的时间分辨率和频率分辨率,窗长越长,截取的信号越长,信号越长,傅里叶变换后频率分辨率越高,时间分辨率越差;相反,窗长越短,截取的信号就越短,频率分辨率越差,时间分辨率越好。窗的长度可根据实际需求选择确定。
41.优选地,将所述预处理获得的音频的时域信号进行短时傅里叶变换之后,采用预设掩码对短时傅里叶变换后的信号进行处理,获得所述频域信号。
42.掩码(mask)通常用于从频域角度将有效信号从带噪信号中分离出来。假设信号能量是稀疏的且为不相交的,即假设大多数时频区域的信号能量为零,且信号的时频区域不重叠或者重叠较少。掩码可以理解为一权重矩阵,其维度取决于短时傅里叶变换的阶数;对于可能属于一个信号源的区域分配掩码为1,其余的分配掩码为0,即构建一个元素为0和1的二值掩码,然后将该二值掩码与短时傅里叶变换后的信号相乘,获得频域信号。掩码可根据实际需要设置,本实施例中,掩码优选为一主对角线元素均为1的对角矩阵。将短时傅里叶变换后的信号采用掩码进行处理,可以加强有效信号输出,抑制无效信号输出,使得获得的频域信号的信噪比得到有效提升。
43.在步骤s104中,可以将所述频域信号输入预训练的第一神经网络模型进行处理,获得频域特征。
44.根据本公开的实施例,采用神经网络模型对频域信号进行处理,以获得频域特征。
45.具体地,本实施例的第一神经网络模型优选采用轻量级骨干网络框架,每层网络基于时序的长短期记忆结构设计,并对每层输出的特征进行标准化。骨干网络是目标检测任务的基本特征提取器,目标检测的主要任务是将频域信号作为输入并输出相应输入频域信号的频域特征。根据精度与效率的不同要求,可以选择更深且连接密集的骨干网络,如resnet、resnext、amoebanet等;或轻量级骨干网络,如mobilenet、shufflenet、squeezenet、xception、mobilenetv2等,以在尽量保持精度的前提下,从体积和速度两方面对网络进行轻量化改造。长短期记忆网络(lstm,long short-term memory)是一种时间循环神经网络,是为了解决一般的rnn(循环神经网络)存在的长期依赖问题而专门设计出来的,所有的rnn都具有一种重复神经网络模块的链式形式。
46.在步骤s105中,可以将所述频域特征转换为时域特征。
47.根据本公开的实施例,为了在下一步获得时域上的降噪后音频,需将经第一神经网络模型处理获得的频域特征转换为时域特征。
48.具体地,将所述频域特征进行傅里叶逆变换,获得所述时域特征。傅里叶逆变换的原理是将频域信号还原为时域信号。本实施例优选采用快速傅里叶逆变换(ifft)将频域特征转换为时域特征。快速傅里叶变换(fft),是离散傅里叶变换的快速算法,它是根据离散傅里叶变换的奇、偶、虚、实等特性,对离散傅里叶变换的算法进行改进获得的。傅里叶逆变换(ifft)则是快速傅里叶变换(fft)的逆运算。
49.在步骤s106中,可以将所述时域特征输入预训练的第二神经网络模型进行处理,获得降噪后的音频。
50.根据本公开的实施例,采用第二神经网络模型,优选采用长短期记忆模型,对时域特征进行处理,以获得降噪后的音频。
51.优选地,第二神经网络模型包括:一维卷积层、长短期记忆结构、掩码处理层、全连接层。其中,一维卷积(1d-conv),即时域卷积,用以在一维输入信号上进行邻域滤波。一维卷积层处理,即将输入信号与卷积核按照单一的时域方向进行卷积,卷积后的特征数量保持不变。本实施例中,时域特征经第二神经网络模型的输入层输入,然后经一维卷积层处理,从而使得时域特征纬度进行耦合,以便后续进入长短期记忆结构进行处理。
52.经长短期记忆结构处理后的结果经掩码处理层进行处理,以进一步加强干净音频的输出;掩码处理后的结果通过全连接层处理,进一步增加干净音频与噪声的分类与分离,
获得的降噪后的音频的降噪效果更佳。其中,掩码处理层的掩码的结构可以是一个元素为0和1的二值掩码;全连接层(fully connected layers,fc)主要起“分类器”的作用,全连接层处理可以通过卷积处理实现,其本质是由一个特征空间变换到另一个特征空间。经第二神经网络模型处理获得的降噪后的音频通过第二神经网络模型的输出层输出。
53.另一种优选实施例,音频降噪方法还包括:根据预设采样率对所述降噪后的音频进行转采样处理。
54.具体地,采用本公开前述实施例获得的降噪后的音频可以以wav/pcm的格式输出,为了配合不同的应用框架,通常需根据不同应用框架的不同采样率对降噪后的音频进行转采样处理,以在不改变音频效果的同时转换音频的采样率。现有技术中音频转采样方法有很多种,可根据实际需要进行选择,在此不做特别限定。
55.本公开还提供了一种音频降噪模型的训练方法,用以获得所述第一神经网络模型和第二神经网络模型。
56.根据本公开的实施例,本公开用于音频降噪的模型包括两个神经网络模型,其中,第一神经网络模型用于对音频的频域信号进行处理,以获得频域特征,其优选采用轻量级骨干网络框架,每层网络基于时序的长短期记忆结构设计,并对每层输出的特征进行标准化;第二神经网络模型用于对音频的时域特征进行处理,以获得降噪后的音频,其优选包括输入层、一维卷积层、长短期记忆结构、掩码处理层、全连接层、输出层。音频通过两个神经网络的配合处理,降噪效果更佳。
57.具体地,如图2所示,本实施例的音频降噪模型的训练方法包括步骤s201-s206:
58.步骤s201,获取初始训练样本。
59.本实施例采用纯噪声信号和干净语音信号以随机信噪比进行合成获得的音频信号作为初始训练样本。其中,纯噪声信号包含嘈杂声音信号(babble)、火车声音信号(train)、工业声音信号(industry)、地铁声音信号(subway)、饭店声音信号(restaurant)、白噪声信号(white noise)等;干净语音信号包含各类无噪声语音信号,例如内容方面可以包括新闻播报、演讲、对话等,性别方面可以包含男声、女声,语言特点方面可以包含带感情的、未带感情的、带混响的等,语种方面可以包括汉语、英语、法语、德语、意大利语等。初始训练样本的数量可根据实际需要设定,可在充分考虑训练效率、成本、及模型准确度的情况下确定。初始训练样本的数量越多,神经网络模型的训练时间越长、准确度越高。本实施例将纯噪声信号与干净语音信号以随机信噪比进行合成作为初始训练样本,有效丰富了初始训练样本的种类,进而有助于提高神经网络模型的准确度。
60.优选地,初始训练样本在训练过程中可以分为三个集合:训练集、测试集、验证集。其中,训练集用于对神经网络模型进行初步训练;测试集用于对经过初步训练的网络模型进行调参完善,并对初步训练的网络模型进行二次训练;验证集用于对二次训练的网络模型使用验证集中的数据进行验证,在验证通过之后则得到所需的神经网络模型。
61.步骤s202,对初始训练样本进行预处理。
62.根据本公开的实施例,在进行训练之前,先对初始训练样本进行预处理。具体地,对初始训练样本进行归一化处理,并分帧加窗,以使模型可以更稳定快速地收敛。本实施例中,采用的窗函数为汉宁窗,第一神经网络模型设计的帧长为15个数据点。
63.步骤s203,对预处理后的初始训练样本进行时频转换。
64.根据本公开的实施例,预处理后的初始训练样本进行短时傅里叶变换,获得与预处理后的初始训练样本相对应的频域信号。
65.步骤s204,对第一神经网络模型进行训练。
66.根据本公开的实施例,采用时频转换获得的频域信号对第一神经网络模型进行训练。频域信号经第一神经网络处理后获得频域特征。
67.具体地,第一神经网络模型优选采用轻量级骨干网络框架,每层网络基于时序的长短期记忆结构设计,并对每层输出的特征进行标准化。本实施例优选采用与预处理后的初始训练样本相对应的频域信号作为第一神经网络模型的训练样本。
68.步骤s205,对频域特征进行频时转换。
69.根据本公开的实施例,对频域特征进行快速傅里叶逆变换,获得与频域特征相对应的时域特征。
70.步骤s206,对第二神经网络模型进行训练。
71.根据本公开的实施例,采用频时转换获得的时域特征对第二神经网络模型进行训练。时域特征经第二神经网络处理后获得降噪后的音频。
72.具体地,第二神经网络模型包括输入层、一维卷积层、长短期记忆结构、掩码处理层、全连接层、输出层,以步骤s205中频时转换获得的时域特征作为其训练样本。
73.可以理解的是,神经网络模型的获得需经过反复训练、测试、调参,直至达到所需的降噪效果。降噪效果的评价标准可根据实际情况设定,例如,可以采用验证集对两个神经网络模型的处理效果进行验证,对比经本公开的两个神经网络模型处理后获得的降噪后的音频与其对应的干净语音,从而评价本公开的音频降噪模型的准确度,若达到预设准确度,则获得所需的音频降噪模型。
74.本公开的实施例采用两个神经网络模型对音频进行降噪处理,有效提高了音频降噪的效率及效果。
75.本公开还提供了一种音频降噪装置。该装置用于执行以上结合图1所描述的音频降噪方法实施例中的步骤。
76.参照图3,图3是示出根据本公开的一个实施例的音频降噪装置100的示意性框图。该装置100包括获取模块101、预处理模块102、转换模块103和特征提取模块104。该获取模块101配置为用于获取所述音频。该预处理模块102配置为用于对所述音频进行预处理。该转换模块103配置为用于将所述预处理获得的音频的时域信号转换为频域信号。该特征提取模块104配置为用于将所述频域信号输入预训练的第一神经网络模型进行处理,获得频域特征。其中,该转换模块103还用于将所述频域特征转换为时域特征;该特征提取模块104还用于将所述时域特征输入预训练的第二神经网络模型进行处理,获得降噪后的音频。
77.根据本公开的实施例,所述预处理模块102采取如下方式对所述音频进行预处理:对所述音频进行分帧、加窗处理。
78.根据本公开的实施例,所述转换模块103采取如下方式将所述预处理获得的音频的时域信号转换为频域信号:将所述预处理获得的音频的时域信号进行短时傅里叶变换,获得所述频域信号。
79.根据本公开的实施例,所述转换模块103采取如下方式将所述预处理获得的音频的时域信号转换为频域信号:将所述预处理获得的音频的时域信号进行短时傅里叶变换,
并采用预设第一掩码对短时傅里叶变换后的信号进行处理,获得所述频域信号。
80.根据本公开的实施例,所述转换模块103采取如下方式将所述频域特征转换为时域特征:将所述频域特征进行傅里叶逆变换,获得所述时域特征。
81.作为一种优选实施例,音频降噪装置还包括:转采样模块,其配置为用于根据预设采样率对所述降噪后的音频或所述干净音频进行转采样处理。
82.另一种优选实施例,音频降噪装置还包括:训练模块,其配置为用于训练所述第一神经网络模型和/或所述第二神经网络模型。
83.根据本优选实施例,所述训练模块采用纯噪声信号和干净语音信号以随机信噪比进行合成获得的音频信号作为初始训练样本。
84.可以理解的是,关于以上参照图3描述的实施例中的音频降噪装置,其中各个模块执行操作的具体方式已经在结合图1所描述的音频降噪方法的实施例中进行了详细描述,此处将不做详细阐述说明。
85.本公开实施例还提供一种电子装置,其中,所述电子装置包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如下步骤:获取所述音频;对所述音频进行预处理;将所述预处理获得的音频的时域信号转换为频域信号;将所述频域信号输入预训练的第一神经网络模型进行处理,获得频域特征;将所述频域特征转换为时域特征;将所述时域特征输入预训练的第二神经网络模型进行处理,获得降噪后的音频。
86.可以理解的是,所述处理器执行所述计算机程序时实现的步骤与上述方法中的各个步骤的实现方式基本一致,具体方式已经在有关音频降噪方法的实施例中进行了详细描述,此处将不做详细阐述说明。
87.在另一方面中,本公开提供一种计算机可读存储介质,其中,所述存储介质存储有计算机程序,所述计算机程序被执行时,实现如下步骤:获取所述音频;对所述音频进行预处理;将所述预处理获得的音频的时域信号转换为频域信号;将所述频域信号输入预训练的第一神经网络模型进行处理,获得频域特征;将所述频域特征转换为时域特征;将所述时域特征输入预训练的第二神经网络模型进行处理,获得降噪后的音频。
88.可以理解的是,所述处理器执行所述计算机程序时实现的步骤与上述方法中的各个步骤的实现方式基本一致,具体方式已经在有关音频降噪方法的实施例中进行了详细描述,此处将不做详细阐述说明。
89.以上对本公开实施例进行了详细介绍,本文中应用了具体个例对本公开的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本公开的方法及其核心思想;同时,对于本领域的一般技术人员,依据本公开的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本公开的限制。
90.应当理解,本公开的权利要求、说明书及附图中的术语“第一”和“第二”、等是用于区别不同对象,而不是用于描述特定顺序。本公开的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
91.还应当理解,在此本公开说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本公开。如在本公开说明书和权利要求书中所使用的那样,除非上下文
清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本公开说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
92.以上对本公开实施例进行了详细介绍,本文中应用了具体个例对本公开的原理及实施方式进行了阐述,以上实施例的说明仅用于帮助理解本公开的方法及其核心思想。同时,本领域技术人员依据本公开的思想,基于本公开的具体实施方式及应用范围上做出的改变或变形之处,都属于本公开保护的范围。综上所述,本说明书内容不应理解为对本公开的限制。