CN116524942B - 一种语音增强方法、装置、终端设备以及存储介质 - Google Patents
一种语音增强方法、装置、终端设备以及存储介质Info
- Publication number
- CN116524942B CN116524942B CN202310601600.2A CN202310601600A CN116524942B CN 116524942 B CN116524942 B CN 116524942B CN 202310601600 A CN202310601600 A CN 202310601600A CN 116524942 B CN116524942 B CN 116524942B
- Authority
- CN
- China
- Prior art keywords
- voice data
- layer
- convolution
- input
- generate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Computational Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Pure & Applied Mathematics (AREA)
- Acoustics & Sound (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开了一种语音增强方法、装置、终端设备以及存储介质,所述方法包括:获取若干待增强语音数据,对各待增强语音数据进行加窗处理以及短时傅里叶变换,生成若干第一语音数据;各所述第一语音数据通过预设的正向卷积网络进行复数编码,生成若干第二语音数据;各所述第二语音数据通过长短期记忆网络进行预测,生成若干第三语音数据;各所述第三语音数据通过预设的转置卷积网络进行复数解码,生成若干第四语音数据;依次对各所述第四语音数据进行掩码处理、短时逆傅里叶变换以及去窗处理,生成若干增强处理后的语音数据;通过实施本发明,能够实现对语音数据进行增强的效果。
Description
技术领域
本发明涉及语音增强领域,尤其涉及一种语音增强方法、装置、终端设备以及存储介质。
背景技术
语音通信是通过语音并借助传输媒介的沟通方式,是人类最便捷和自然的交流方式之一,如今人们经常会借助一些通信设备进行语音交流,语音可以通过通讯设备转化成语音数据并进行传输,但是语音数据在传输过程中通常会受到环境中的噪声干扰,因此研究有效的语音增强技术就显得尤为重要。
发明内容
本发明提供了一种语音增强方法、装置、终端设备以及存储介质,能够实现对语音数据进行增强的效果。
本发明提供了一种语音增强方法、装置、终端设备以及存储介质,包括:获取若干待增强语音数据,对各所述待增强语音数据进行加窗处理,并将加窗处理后的各待增强语音数据进行短时傅里叶变换,生成若干第一语音数据;
将各所述第一语音数据输入至预设的正向卷积网络中,以使所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据;
将各所述第二语音数据输入至长短期记忆网络中,所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据;
将各所述第三语音数据输入至预设的转置卷积网络中,以使所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据;
对各所述第四语音数据进行掩码处理,并将经过掩码处理后的各所述第四语音数据进行短时逆傅里叶变换以及去窗处理,生成若干增强处理后的语音数据。
进一步的,所述预设的正向卷积网络包括:4个层级的正向卷积层;每一所述正向卷积层包括:二维正向卷积层、归一化层以及激活函数层;
所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据,包括:
通过每一层级的正向卷积层对各所述第一语音数据进行二维正向卷积处理,生成若干第二语音数据;
其中,在生成第二语音数据的过程中,前一正向卷积层的输出作为后一正向卷积层的输入;每一正向卷积层在对各所述第一语音数据进行二维正向卷积处理时,对于第一层级的正向卷积层,二维正向卷积层的输入为经过傅里叶变换后输出的两帧第一语音数据;对于第二层级到第四层级的正向卷积层,二维正向卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据,输出为一帧语音数据,每一正向卷积层内的二维正向卷积层输出的语音数据依次经过第一归一化层以及第一激活函数层;所述第一归一化层用于对所述语音数据进行归一化处理,所述第一激活函数层用于对归一化后的语音数据进行激活函数处理。
进一步的,4个层级的转置卷积层;每一所述转置卷积层包括:二维转置卷积层、归一化层以及激活函数层;
所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据,包括:
其中,在生成第四语音数据的过程中,前一转置卷积层的输出作为后一转置卷积层的输入;每一二维卷积层在对各所述第三语音数据进行二维转置卷积处理时,对于第一层级的转置卷积层,二维转置卷积层的输入为经过傅里叶变换后输出的两帧第三语音数据;对于第二层级到第四层级的转置卷积层,二维转置卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据,输出为一帧语音数据;每一转置卷积层内的二维转卷积层输出的语音数据依次经过第二归一化层以及第二激活函数层;所述第二归一化层用于对所述语音数据进行归一化处理,所述第二激活函数层用于对归一化后的语音数据进行激活函数处理。
进一步的,当每一所述二维正向卷积层获取输入的语音数据时,对所述输入的语音数据进行深度卷积或逐点卷积;
当进行深度卷积时,根据预设的卷积核高度层以及卷积核宽度层进行循环展开计算,并根据展开循环计算后的结果,对预设的分组数层以及输出高度层进行循环计算;当进行逐点卷积时,对预设的输出通道层、输出高度层以及输入通道层进行循环计算。
进一步的,每一所述二维转置卷积层获取输入的语音数据时,对所述输入的语音数据进行深度转置卷积或者逐点转置卷积;
当进行深度转置卷积时,对预设的输入宽度层、卷积核高度层以及卷积核宽度层进行循环展开计算,并根据展开循环计算后的结果,对预设的分组数层和输入高度层进行循环计算;当进行逐点转置卷积时,对预设的所述输入高度层、输入通道层以及输出通道层进行循环计算。
进一步的,所述长短期记忆网络包括:第一长短期记忆层、第二长短期记忆层以及全连接层;
将各所述第二语音数据输入至长短期记忆网络中,以使所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据,包括:
将各所述第二语音数据输入至所述第一长短期记忆层中,所述第一长短期记忆层根据历史语音数据对各所述第二语音数据进行第一次预测;
将经过第一次预测后的各第二语音数据输入至所述第二长短期记忆层中,通过所述第二长短期记忆层进行第二次预测;
将各经过两次预测后的第二语音数据输入至全连接层中,通过所述全连接层对各经过两次预测后的第二语音数据进行信息汇聚,生成若干第三语音数据。
进一步的,所述若干待增强语音数据的生成包括:对输入的语音按照预设的频率进行分帧采样,生成若干待增强语音数据。
在上述方法项实施例的基础上,本发明对应提供了装置项实施例;
本发明提供了一种语音增强装置,包括:短时傅里叶变换模块、复数编码模块、长短期记忆模块、复数解码模块、增强语音数据生成模块。
所述短时傅里叶变换模块,用于获取若干待增强语音数据,对各所述待增强语音数据进行加窗处理,并将加窗处理后的各待增强语音数据进行短时傅里叶变换,生成若干第一语音数据;
所述复数编码模块,用于将各所述第一语音数据输入至预设的正向卷积网络中,以使所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据;
所述长短期记忆模块,用于将各所述第二语音数据输入至长短期记忆网络中,所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据;
所述复数解码模块,用于将各所述第三语音数据输入至预设的转置卷积网络中,以使所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据;
所述增强语音数据生成模块,用于对各所述第四语音数据进行掩码处理,并将经过掩码处理后的各所述第四语音数据进行短时逆傅里叶变换以及去窗处理,生成若干增强处理后的语音数据。
在上述方法项实施例的基础上,本发明对应提供了一终端设备项实施例;
本发明提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现本发明任意一项所述的语音增强方法。
在上述方法项实施例的基础上,本发明对应提供了一存储介质项实施例;
本发明提供了一种存储介质,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行本发明任意一项所述的语音增强方法。
本发明的实施例,具有如下有益效果:
本发明提供了一种语音增强方法、装置、终端设备以及存储介质;所述方法,在获取若干待增强语音数据后,进行加窗处理以及短时傅里叶变换,生成若干第一语音数据;各第一语音数据通过正向卷积网络进行编码处理后,生成若干第二语音数据;对各第二语音数据进行长短期记忆处理,生成若干第三语音数据;对各第三语音数据通过转置卷积网络进行解码处理,生成若干第四语音数据;对各第四语音数据依次进行掩码处理、短时逆傅里叶变换以及去窗处理后生成若干增强处理后的语音数据。通过实施本发明,能够实现对语音数据进行增强的效果。
附图说明
图1是本发明一实施例提供的一种语音方法流程示意图;
图2是本发明一实施例提供的一种正向卷积网络结构示意图;
图3是本发明一实施例提供的一种长短期记忆网络结构示意图;
图4是本发明一实施例提供的一种转置卷积网络结构示意图;
图5是本发明一实施例提供的一种语音增强方法总体示意图;
图6是本发明一实施例提供的一种语音增强装置的结构示意图。
具体实施方式
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一实施例提供的一种语音增强方法,包括:
步骤S101:获取若干待增强语音数据,对各所述待增强语音数据进行加窗处理,并将加窗处理后的各待增强语音数据进行短时傅里叶变换,生成若干第一语音数据;
步骤S102:将各所述第一语音数据输入至预设的正向卷积网络中,以使所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据;
步骤S103:将各所述第二语音数据输入至长短期记忆网络中,所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据;
步骤S104:将各所述第三语音数据输入至预设的转置卷积网络中,以使所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据;
步骤S105:对各所述第四语音数据进行掩码处理,并将经过掩码处理后的各所述第四语音数据进行短时逆傅里叶变换以及去窗处理,生成若干增强处理后的语音数据。
对于步骤S101,在一个优选的实施例中,获取若干待增强语音数据之后,对各待增强语音数据加汉宁窗,能够防止频谱泄露,加窗后进行512点的傅里叶变换,将语音数据从时域转换到频域,最终生成若干第一语音数据;其中,频域信号是复数,包括实部的幅度与虚部的相位;
在一个可选的实施例中,所述若干待增强语音数据的生成包括:对输入的语音按照预设的频率进行分帧采样,生成若干待增强语音数据;
具体的,在获取输入的语音后,先对输入的语音进行初始化,主要包括对语音语进行分帧,每帧的长度为128采样点,对于16k采样率的语音,对应8ms;通过采样后,最终生成若干第一语音数据。
对于步骤S102,在一个优选的实施例中,将各第一语音数据输入至预设的正向卷积网络中,也就是各第一语音数据的幅度与相位同时经过一个正向卷积网络,通过所述正向卷积网络对各所述第一语音数据进行编码,生成若干第二语音数据;
在一个可选的实施例中,所述预设的正向卷积网络包括:4个层级的正向卷积层;每一所述正向卷积层包括:二维正向卷积层、归一化层以及激活函数层;
所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据,包括:
通过每一层级的正向卷积层对各所述第一语音数据进行二维正向卷积处理,生成若干第二语音数据;
其中,在生成第二语音数据的过程中,前一正向卷积层的输出作为后一正向卷积层的输入;每一正向卷积层在对各所述第一语音数据进行二维正向卷积处理时,对于第一层级的正向卷积层,二维正向卷积层的输入为经过傅里叶变换后输出的两帧第一语音数据;对于第二层级到第四层级的正向卷积层,二维正向卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据,输出为一帧语音数据,每一正向卷积层内的二维正向卷积层输出的语音数据依次经过第一归一化层以及第一激活函数层;所述第一归一化层用于对所述语音数据进行归一化处理,所述第一激活函数层用于对归一化后的语音数据进行激活函数处理。
具体的,如图2所示,包括4个层级的正向卷积层,对于每一正向卷积层中的二维正向卷积层,卷积核为5*2,为了降低数据的处理时延,要求每一帧的输入输出帧数达到最少,可以有效减少缓冲区的内存占用;而对于大小为5*2的卷积核,卷积核的宽度为2,所以输入最小为两帧;对于第一层级的正向卷积层,二维正向卷积层的输入为经过傅里叶变换后输出的两帧第一语音数据;对于第二层级到第四层级的正向卷积层,二维正向卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据;
对于每一正向卷积层,在二维正向卷积层中对语音数据进行正向卷积后,接着通过归一化层对语音数据进行归一化处理,提高算法精度,加快收敛速度;归一化后,最后再通过激活函数层进行pRelu激活函数处理,生成每一正向卷积层输出的语音数据。
在一个可选的实施例中,每一所述二维转置卷积层获取输入的语音数据时,对所述输入的语音数据进行深度转置卷积或者逐点转置卷积;
当进行深度转置卷积时,对预设的输入宽度层、卷积核高度层以及卷积核宽度层进行循环展开计算,并根据展开循环计算后的结果,对预设的分组数层和输入高度层进行循环计算;当进行逐点转置卷积时,对预设的所述输入高度层、输入通道层以及输出通道层进行循环计算。
具体的,一般的正向卷积(可分离卷积是一种特殊的正向卷积)包括8层循环,每层循环的大小分别是batch(份数或者批数)、group(分组数)、output_channel(输出通道数)、output_height(输出高度)、output_weight(输出宽度)、input_channel(输入通道数)、kernel_height(卷积核高度)、kernel_weight(卷积核宽度);其中,batch一般是1,只有在不能将数据一次性通过神经网络的时候,才需要将数据集分成几个batch;
对于深度卷积,由于batch(份数或者批数)、output_channel(输出通道数)、output_weight(输出宽度)以及input_channel(输入通道数)的大小为1,因此对应的第一层,第三层,第五层以及第六层可以去掉,而kernel_height(卷积核高度)和kernel_weight(卷积核宽度)的大小分别是5和2,数值不大,可以直接展开循环计算,最终只有group(分组数)和output_height(输出高度)分别对应的分组数层和输入高度层两层循环;需要说明的是,大小为1的层数可以去掉是因为这一层只有一个元素,不需要循环遍历各个元素;
对于逐点卷积,由于batch(份数或者批数)、group(分组数)、output_weight(输出宽度)、kernel_height(卷积核高度)以及kernel_weight(卷积核宽度)的大小为1,因此对应的第一层、第二层、第五层、第七层以及第八层可以去掉,只有output_channel(输出通道数)、output_height(输出高度)以及input_channel(输入通道数)分别对应的输出通道层、输出高度层以及输入通道层三层循环。
对于步骤S103,在一个优选的实施例中,将各第二语音数据输入至长短期记忆网络中,因为语音是一个序列化数据,长短期记忆网络可以根据历史数据预测当前帧数据,生成若干第三语音数据;
在一个可选的实施例中,所述长短期记忆网络包括:第一长短期记忆层、第二长短期记忆层以及全连接层;
将各所述第二语音数据输入至长短期记忆网络中,以使所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据,包括:
将各所述第二语音数据输入至所述第一长短期记忆层中,所述第一长短期记忆层根据历史语音数据对各所述第二语音数据进行第一次预测;
将经过第一次预测后的各第二语音数据输入至所述第二长短期记忆层中,通过所述第二长短期记忆层进行第二次预测;
将各经过两次预测后的第二语音数据输入至全连接层中,通过所述全连接层对各经过两次预测后的第二语音数据进行信息汇聚,生成若干第三语音数据。
示意性的如图3所示,LSTM(长短期记忆网络)第一层的输入是编码的输出,数据长度是1024,权重大小是128*4*1024,以及上一帧LSTM_L1(第一长短期记忆层)的输出,长度是128。 LSTM第一层的输出是类似传统LSTM的输出,是复数的形式,其输出长度是128。LSTM第二层的输入是LSTM第一层的输出,数据长度是128,权重大小是128*4*128,以及上一帧LSTM_L2(第二长短期记忆层)的输出,长度是128。LSTM第二层的输出是类似传统LSTM的输出,是复数的形式,输出长度是128。全连接层的输入是LSTM_L2的输出,每一个输出数据通过权值网络与每一个输入数据产生联系,即与每一个输入数据都连接起来, 一般全连接主要用于分类或者回归,LSTM后的全连接主要是回归,让模型拟合得更好;完整的公式如下表示:
其中,表示输入门(Input gate);表示Sigmoid激活函数;表示权重参数(weight);表示偏置参数(bias);表示隐层状态(hidden state);表示更新后的细胞状态(cell state);表示遗忘门(Forget gate);表示细胞状态(cell state);表示用于计算c的中间变量,用于计算当前时刻信息;表示更新后的隐层状态(hidden state);表示输出门(output gate);Tanh表示Tanh激活函数;
LSTM的作用是确保当前状态能够有效的从上一状态中学习到有效信息并将其有效的传递下去。LSTM是一种特殊的RNN,相比普通RNN,解决了长序列的梯度消失和梯度爆炸问题。目前的语音增强模型都有LSTM,没有LSTM效果不会好,其在语音增强上的作用主要是在时序上建模,如果不用LSTM,也可以使用类似的模块,比如GRU或者TCN来实现时序上建模。
对于步骤S104,在一个优选的实施例中,将各第三语音数据输入至预设的转置卷积网络中,以使所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据。
在一个可选的实施例中,所述预设的转置卷积网络包括:4个层级的转置卷积层;每一所述转置卷积层包括:二维转置卷积层、归一化层以及激活函数层。
所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据,包括:
其中,在生成第四语音数据的过程中,前一转置卷积层的输出作为后一转置卷积层的输入;每一二维卷积层在对各所述第三语音数据进行二维转置卷积处理时,对于第一层级的转置卷积层,二维转置卷积层的输入为经过傅里叶变换后输出的两帧第三语音数据;对于第二层级到第四层级的转置卷积层,二维转置卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据,输出为一帧语音数据;每一转置卷积层内的二维转卷积层输出的语音数据依次经过第二归一化层以及第二激活函数层;所述第二归一化层用于对所述语音数据进行归一化处理,所述第二激活函数层用于对归一化后的语音数据进行激活函数处理。
具体的,如图4所示,包括4个层级的转置卷积层,对于每一转置卷积层中的二维转置卷积层,卷积核为5*2,为了降低数据的处理时延,要求每一帧的输入输出帧数达到最少,可以有效减少缓冲区的内存占用;而对于大小为5*2的卷积核,卷积核的宽度为2,所以输入最小为两帧;输出为三帧语音数据,由于输出的三帧语音数据是一样的,实际有用的只有其中一帧,因此其余两帧不需要进一步处理可以直接去除;对于第一层级的转置卷积层,二维转置卷积层的输入为经过傅里叶变换后输出的两帧第三语音数据;对于第二层级到第四层级的转置卷积层,二维转置卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据。
对于每一转置卷积层,在二维转置卷积层中对语音数据进行转置卷积后,接着通过归一化层对语音数据进行归一化处理,提高算法精度,加快收敛速度;归一化后,最后再通过激活函数层进行pRelu激活函数处理,引入非线性特性,对网络去线性化,提高神经网络对模型的表达能力,解决线性模型所不能解决的问题,最终生成的语音数据作为对应转置卷积层输出的语音数据。
在一个可选的实施例中,每一所述二维转置卷积层获取输入的语音数据时,对所述输入的语音数据进行深度转置卷积或者逐点转置卷积;
当进行深度转置卷积时,对预设的输入宽度层、卷积核高度层以及卷积核宽度层进行循环展开计算,并根据展开循环计算后的结果,对预设的分组数层和输入高度层进行循环计算;当进行逐点转置卷积时,对预设的所述输入高度层、输入通道层以及输出通道层进行循环计算。
具体的,一般的转置卷积(可分离转置卷积是一种特殊的转置卷积)也包括8层循环,每层循环的大小分别是batch(份数或者批数)、group(分组数)、input_height(输入高度)、input_weight(输入宽度)、input_channel(输入通道数)、output_channel(输出通道数)、kernel_height(卷积核高度)以及kernel_weight(卷积核宽度)。
对于深度转置卷积,由于batch(份数或者批数)、input_channel(输入通道数)和output_channel(输出通道数)的大小为1,故对应的第一层、第五层以及第六层可以去掉,由于input_weight(输入宽度)的大小为2,则对应的输入宽度层可以直接展开,而kernel_height(卷积核高度)和kernel_weight(卷积核宽度)分别是5和2,那么分别对应的卷积核高度层以及卷积核宽度层直接展开循环计算。最终只有group(分组数)和input_height(输入高度)对应的分组数层以及输入高度层两层循环。另外output_weight(输出宽度)虽然是3帧,但由于实际有用的只有1帧,故计算输出的时候,另外2帧可以不需要计算,减少计算量。
对于逐点转置卷积,由于batch(份数或者批数)、group(分组数)、input_weight(输入宽度)、kernel_height(卷积核高度)、kernel_weight(卷积核宽度)的大小为1,因此分别对应的第一层、第二层、第四层、第七层以及第八层可以去掉,只有input_height(输入高度)、input_channel(输入通道数)、output_channel(输出通道数)分别对应的,输入高度层、输入通道层以及输出通道层三层循环;对于步骤S105,对各第四语音数据进行掩码处理,并将经过掩码处理后的各所述第四语音数据进行短时逆傅里叶变换以及去窗处理(加合成窗),生成若干增强处理后的语音数据。
具体的,通过以下公式,对各第四语音数据进行掩码处理:
其中,表示相位掩码(phase mask);表示虚部掩码(imaginary mask);表示实部掩码(real mask);表示降噪后输出的干净语音;表示降噪前的语音的幅度(magnitude);表示幅度掩码(magnitude mask);表示降噪前的语音的相位(phase)。
示意性的,上述各项实施例的综合流程如图5所示。
在上述方法项实施例的基础上,本发明对应提供了装置项实施例。
如图6所示,本发明一实施例提供了一种语音增强装置,包括:短时傅里叶变换模块、复数编码模块、长短期记忆模块、复数解码模块、增强语音数据生成模块。
所述短时傅里叶变换模块,用于获取若干待增强语音数据,对各所述待增强语音数据进行加窗处理,并将加窗处理后的各待增强语音数据进行短时傅里叶变换,生成若干第一语音数据;
所述复数编码模块,用于将各所述第一语音数据输入至预设的正向卷积网络中,以使所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据;
所述长短期记忆模块,用于将各所述第二语音数据输入至长短期记忆网络中,所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据;
所述复数解码模块,用于将各所述第三语音数据输入至预设的转置卷积网络中,以使所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据;
所述增强语音数据生成模块,用于对各所述第四语音数据进行掩码处理,并将经过掩码处理后的各所述第四语音数据进行短时逆傅里叶变换以及去窗处理,生成若干增强处理后的语音数据。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
所述领域的技术人员可以清楚地了解到,为的方便和简洁,上述描述的装置的具体工作过程,可参考前述方法实施例中对应的过程,在此不再赘述。
在上述方法项实施例的基础上,本发明对应提供了终端设备项实施例。
本发明另一实施例提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序;所述处理器执行所述计算机程序时,实现本发明任意一实施例的语音增强方法。
示例性的,在这一实施例中所述计算机程序可以被分割成一个或多个模块,所述一个或者多个模块被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述设备中的执行过程;
所述设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述设备可包括,但不仅限于,处理器、存储器;
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述设备的控制中心,利用各种接口和线路连接整个设备的各个部分;
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart MediaCard, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
在上述方法项实施例的基础上,本发明对应提供了存储介质项实施例。
本发明另一实施例提供了一种存储介质,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在的设备执行本发明任意一实施例的语音增强方法。
在这一实施例中,上述存储介质为计算机可读存储介质,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
通过实施本发明上述各个实施例,可以能够实现对语音数据进行增强的效果。
上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护。
Claims (9)
1.一种语音增强方法,其特征在于,包括:
获取若干待增强语音数据,对各所述待增强语音数据进行加窗处理,并将加窗处理后的各待增强语音数据进行短时傅里叶变换,生成若干第一语音数据;
将各所述第一语音数据输入至预设的正向卷积网络中,以使所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据;
将各所述第二语音数据输入至长短期记忆网络中,所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据;
将各所述第三语音数据输入至预设的转置卷积网络中,以使所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据;
对各所述第四语音数据进行掩码处理,并将经过掩码处理后的各所述第四语音数据进行短时逆傅里叶变换以及去窗处理,生成若干增强处理后的语音数据;
所述预设的正向卷积网络包括:4个层级的正向卷积层;每一所述正向卷积层包括:二维正向卷积层、归一化层以及激活函数层;
所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据,包括:
通过每一层级的正向卷积层对各所述第一语音数据进行二维正向卷积处理,生成若干第二语音数据;
其中,在生成第二语音数据的过程中,前一正向卷积层的输出作为后一正向卷积层的输入;每一正向卷积层在对各所述第一语音数据进行二维正向卷积处理时,对于第一层级的正向卷积层,二维正向卷积层的输入为经过傅里叶变换后输出的两帧第一语音数据;对于第二层级到第四层级的正向卷积层,二维正向卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据,输出为一帧语音数据,每一正向卷积层内的二维正向卷积层输出的语音数据依次经过第一归一化层以及第一激活函数层;所述第一归一化层用于对所述语音数据进行归一化处理,所述第一激活函数层用于对归一化后的语音数据进行激活函数处理。
2.根据权利要求1所述的一种语音增强方法,其特征在于,所述预设的转置卷积网络包括:4个层级的转置卷积层;每一所述转置卷积层包括:二维转置卷积层、归一化层以及激活函数层;
所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据,包括:
其中,在生成第四语音数据的过程中,前一转置卷积层的输出作为后一转置卷积层的输入;每一二维卷积层在对各所述第三语音数据进行二维转置卷积处理时,对于第一层级的转置卷积层,二维转置卷积层的输入为经过傅里叶变换后输出的两帧第三语音数据;对于第二层级到第四层级的转置卷积层,二维转置卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据,输出为一帧语音数据;每一转置卷积层内的二维转卷积层输出的语音数据依次经过第二归一化层以及第二激活函数层;所述第二归一化层用于对所述语音数据进行归一化处理,所述第二激活函数层用于对归一化后的语音数据进行激活函数处理。
3.根据权利要求1所述的一种语音增强方法,其特征在于,当每一所述二维正向卷积层获取输入的语音数据时,对所述输入的语音数据进行深度卷积或逐点卷积;
当进行深度卷积时,根据预设的卷积核高度层以及卷积核宽度层进行循环展开计算,并根据展开循环计算后的结果,对预设的分组数层以及输出高度层进行循环计算;当进行逐点卷积时,对预设的输出通道层、输出高度层以及输入通道层进行循环计算。
4.根据权利要求2所述的一种语音增强方法,其特征在于,每一所述二维转置卷积层获取输入的语音数据时,对所述输入的语音数据进行深度转置卷积或者逐点转置卷积;
当进行深度转置卷积时,对预设的输入宽度层、卷积核高度层以及卷积核宽度层进行循环展开计算,并根据展开循环计算后的结果,对预设的分组数层和输入高度层进行循环计算;当进行逐点转置卷积时,对预设的所述输入高度层、输入通道层以及输出通道层进行循环计算。
5.根据权利要求1所述的一种语音增强方法,其特征在于,所述长短期记忆网络包括:第一长短期记忆层、第二长短期记忆层以及全连接层;
将各所述第二语音数据输入至长短期记忆网络中,以使所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据,包括:
将各所述第二语音数据输入至所述第一长短期记忆层中,所述第一长短期记忆层根据历史语音数据对各所述第二语音数据进行第一次预测;
将经过第一次预测后的各第二语音数据输入至所述第二长短期记忆层中,通过所述第二长短期记忆层进行第二次预测;
将各经过两次预测后的第二语音数据输入至全连接层中,通过所述全连接层对各经过两次预测后的第二语音数据进行信息汇聚,生成若干第三语音数据。
6.根据权利要求1所述的一种语音增强方法,其特征在于,所述若干待增强语音数据的生成包括:对输入的语音按照预设的频率进行分帧采样,生成若干待增强语音数据。
7.一种语音增强装置,其特征在于,包括:短时傅里叶变换模块、复数编码模块、长短期记忆模块、复数解码模块、增强语音数据生成模块;
所述短时傅里叶变换模块,用于获取若干待增强语音数据,对各所述待增强语音数据进行加窗处理,并将加窗处理后的各待增强语音数据进行短时傅里叶变换,生成若干第一语音数据;
所述复数编码模块,用于将各所述第一语音数据输入至预设的正向卷积网络中,以使所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据;所述预设的正向卷积网络包括:4个层级的正向卷积层;每一所述正向卷积层包括:二维正向卷积层、归一化层以及激活函数层;所述正向卷积网络对各所述第一语音数据进行复数编码,生成若干第二语音数据,包括:通过每一层级的正向卷积层对各所述第一语音数据进行二维正向卷积处理,生成若干第二语音数据;其中,在生成第二语音数据的过程中,前一正向卷积层的输出作为后一正向卷积层的输入;每一正向卷积层在对各所述第一语音数据进行二维正向卷积处理时,对于第一层级的正向卷积层,二维正向卷积层的输入为经过傅里叶变换后输出的两帧第一语音数据;对于第二层级到第四层级的正向卷积层,二维正向卷积层的输入为上一层级当前输出的一帧语音数据,以及上一层级前一次输出的一帧语音数据,输出为一帧语音数据,每一正向卷积层内的二维正向卷积层输出的语音数据依次经过第一归一化层以及第一激活函数层;所述第一归一化层用于对所述语音数据进行归一化处理,所述第一激活函数层用于对归一化后的语音数据进行激活函数处理;
所述长短期记忆模块,用于将各所述第二语音数据输入至长短期记忆网络中,所述长短期记忆网络根据历史语音数据对当前语音数据进行预测,生成若干第三语音数据;
所述复数解码模块,用于将各所述第三语音数据输入至预设的转置卷积网络中,以使所述转置卷积网络对各所述第三语音数据进行复数解码,生成若干第四语音数据;
所述增强语音数据生成模块,用于对各所述第四语音数据进行掩码处理,并将经过掩码处理后的各所述第四语音数据进行短时逆傅里叶变换以及去窗处理,生成若干增强处理后的语音数据。
8.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任意一项所述的语音增强方法。
9.一种存储介质,其特征在于,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行如权利要求1至6中任意一项所述的语音增强方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310601600.2A CN116524942B (zh) | 2023-05-25 | 2023-05-25 | 一种语音增强方法、装置、终端设备以及存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310601600.2A CN116524942B (zh) | 2023-05-25 | 2023-05-25 | 一种语音增强方法、装置、终端设备以及存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN116524942A CN116524942A (zh) | 2023-08-01 |
| CN116524942B true CN116524942B (zh) | 2026-04-21 |
Family
ID=87403024
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202310601600.2A Active CN116524942B (zh) | 2023-05-25 | 2023-05-25 | 一种语音增强方法、装置、终端设备以及存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN116524942B (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119673187B (zh) * | 2024-12-20 | 2025-12-05 | 南京大学 | 基于网络架构搜索的超轻量级语音增强神经网络及方法 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114566180A (zh) * | 2020-11-27 | 2022-05-31 | 北京搜狗科技发展有限公司 | 一种语音处理方法、装置和用于处理语音的装置 |
| CN115424627A (zh) * | 2021-06-01 | 2022-12-02 | 南京大学 | 基于卷积循环网络和wpe算法的语音增强混合处理方法 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113516990B (zh) * | 2020-04-10 | 2024-08-13 | 华为技术有限公司 | 一种语音增强方法、训练神经网络的方法以及相关设备 |
| CN113571080B (zh) * | 2021-02-08 | 2024-11-08 | 腾讯科技(深圳)有限公司 | 语音增强方法、装置、设备及存储介质 |
| CN115602188A (zh) * | 2022-10-19 | 2023-01-13 | 东南大学(Cn) | 一种基于卷积和循环融合网络的语音增强方法 |
-
2023
- 2023-05-25 CN CN202310601600.2A patent/CN116524942B/zh active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114566180A (zh) * | 2020-11-27 | 2022-05-31 | 北京搜狗科技发展有限公司 | 一种语音处理方法、装置和用于处理语音的装置 |
| CN115424627A (zh) * | 2021-06-01 | 2022-12-02 | 南京大学 | 基于卷积循环网络和wpe算法的语音增强混合处理方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN116524942A (zh) | 2023-08-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6959308B2 (ja) | スパース性制約及び知識の蒸留に基づくスパースかつ圧縮されたニューラルネットワーク | |
| CN113611323B (zh) | 一种基于双通道卷积注意力网络的语音增强方法及系统 | |
| Liang et al. | An iterative BP-CNN architecture for channel decoding | |
| CN111357051B (zh) | 语音情感识别方法、智能装置和计算机可读存储介质 | |
| CN115577790B (zh) | 哈密顿量模拟方法、装置、设备及存储介质 | |
| EP4401012A1 (en) | Quantum circuit optimization method and apparatus, and electronic device, computer-readable storage medium and computer program product | |
| JP2021512387A (ja) | 量子コンピューティング・デバイス設計 | |
| Xiao et al. | Multi-scale attention based channel estimation for RIS-aided massive MIMO systems | |
| CN113098802A (zh) | 量子噪声信道的逆映射分解方法及装置、电子设备和介质 | |
| CN117894306B (zh) | 一种语音处理方法、装置、计算机设备及存储介质 | |
| CN115860100A (zh) | 一种神经网络模型训练方法、装置及计算设备 | |
| CN116524942B (zh) | 一种语音增强方法、装置、终端设备以及存储介质 | |
| CN116302551A (zh) | 模型数据处理方法、可读介质和电子设备 | |
| JP2023035941A (ja) | 量子デバイスでのサンプリングのための誤り軽減 | |
| CN117951200A (zh) | 空间时间序列数据补全方法、设备及介质 | |
| CN115113855B (zh) | 音频数据处理方法、装置、电子设备、存储介质和产品 | |
| Heine et al. | Parallelizing particle filters with butterfly interactions | |
| EP4273758A1 (en) | Quantum preprocessing method and apparatus, storage medium, and electronic apparatus | |
| CN114021697A (zh) | 基于强化学习的端云框架神经网络生成方法和系统 | |
| Hajivassiliou | Testing game-theoretic models of price-fixing behaviour | |
| CN111090740A (zh) | 一种用于对话系统的知识图谱生成方法 | |
| CN119005177A (zh) | 序列处理方法、电子设备和存储介质 | |
| CN117291259A (zh) | 算子优化方法、装置、电子设备及存储介质 | |
| CN117853580A (zh) | 位姿确定方法、装置、电子设备和存储介质 | |
| CN113870887A (zh) | 单通道语音增强方法、装置、计算机设备及存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant |