1.本发明涉及语音转换技术领域,尤其涉及一种语音转换方法、系统、计算机设备及存储介质。
背景技术:2.变声器是通过改变输入音频的音色、音调,并将变声后的音频输出的工具,其中包括变声器硬件和变声器软件。现有技术中变声器软件一般采用stargan模型对输入音频进行训练,得到目标语音,但是该类变声器软件应用过程中,每次输入新语音时,均需要重新训练stargan模型,从而得到目标语音。
技术实现要素:3.本发明实施例提供了一种语音转换方法、系统、计算机设备及存储介质,旨在解决现有技术中对于新输入的语音需要对模型进行重新训练的问题。
4.第一方面,本发明实施例提供了一种语音转换方法,包括以下步骤:
5.利用语音合成系统提取语音样本中的基频特征和音频mcep特征;
6.将所述音频mcep特征输入至预训练的语音转换网络中进行音频转换,得到平均声音,并利用音色转换网络将所述平均声音转换为目标声音;
7.将所述基频特征进行音调转换,并将目标声音、非周期分量特征以及转换后的基频特征进行音频合成处理,得到音频时域特征;
8.利用语音信号处理函数将所述音频时域特征进行语音还原处理,得到目标语音。
9.第二方面,本发明实施例提供了一种语音转换系统,其包括:
10.特征提取单元,用于利用语音合成系统提取语音样本中的基频特征和音频mcep特征;
11.目标声音获取单元,用于将所述音频mcep特征输入至预训练的语音转换网络中进行音频转换,得到平均声音,并利用音色转换网络将所述平均声音转换为目标声音;
12.音频时域特征获取单元,用于将所述基频特征进行音调转换,并将目标声音、非周期分量特征以及转换后的基频特征进行音频合成处理,得到音频时域特征;
13.目标语音获取单元,用于利用语音信号处理函数将所述音频时域特征进行语音还原处理,得到目标语音。
14.第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的语音转换方法。
15.第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的语音转换方法。
16.本发明实施例提供了一种语音转换方法、系统、计算机设备及存储介质。该方法包
括:利用语音合成系统提取语音样本中的基频特征和音频mcep特征;将所述音频mcep特征输入至预训练的语音转换网络中进行音频转换,得到平均声音,并利用音色转换网络将所述平均声音转换为目标声音;将所述基频特征进行音调转换,并将目标声音、非周期分量特征以及转换后的基频特征进行音频合成处理,得到音频时域特征;利用语音信号处理函数将所述音频时域特征进行语音还原处理,得到目标语音。本发明实施例先利用语音转换网络对音频mcep特征进行音频转换,再利用音色转换网络对平均声音进行音色转换,从而得到目标声音,再将目标声音和其余特征进行合成得到目标语音,整个转换过程更加准确,通过预训练的语音转换网络和音色转换网络可以适用于不同声音的转换,无需重新进行训练,提高了转换效率。
附图说明
17.为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
18.图1为本发明实施例提供的语音转换方法的流程示意图;
19.图2为本发明实施例提供的语音转换系统的示意性框图。
具体实施方式
20.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
22.还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
23.还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
24.请参阅图1,图1为本发明实施例提供的一种语音转换方法的流程示意图,该方法包括步骤s101~s104。
25.s101、利用语音合成系统提取语音样本中的基频特征和音频mcep特征;
26.s102、将所述音频mcep特征输入至预训练的语音转换网络中进行音频转换,得到平均声音,并利用音色转换网络将所述平均声音转换为目标声音;
27.s103、将所述基频特征进行音调转换,并将目标声音、非周期分量特征以及转换后的基频特征进行音频合成处理,得到音频时域特征;
28.s104、利用语音信号处理函数将所述音频时域特征进行语音还原处理,得到目标语音。
29.在本实施例中,先利用语音合成系统提取语音样本中的基频特征和音频mcep特征;然后将基频特征进行音调转换,将音频mcep特征输入至训练好的语音转换网络中进行训练,得到平均声音,再将平均声音输入至音色转换网络进行训练,得到目标声音;将目标声音、非周期分量特征以及转换后的基频特征合成为音频时域特征;最后在利用语音信号处理函数将音频时域特征还原成目标语音。
30.本实施例采用pyworld作为语音合成系统,利用pyworld中的pyworld.harvest文件提取基频特征,利用pyworld中的pyworld.code_spectral_envelope提取音频mcep特征。在提取到基频特征和音频mcep特征后,利用预先训练好的normalvoice gan网络将音频mcep特征转换成平均声音,再利用预先训练好的stargan
‑
vc网络将平均声音转换成目标声音;然后利用以下公式将所述基频特征进行音调转换:
[0031][0032]
其中,f
0_conversion
代表转换后的基频特征,f0代表原始的基频特征,f
0_target
代表目标音频音色,f
0_mean
代表原始的基频特征平均值,f
0_target_mean
代表目标音频基频平均值,f
0_std
代表原始的基频特征方差,f
0_target_std
代表目标音频基频方差。通过上述公式对基频特征进行音调转换,从而得到转换后的基频特征,再利用声码器将目标声音非周期分量特征以及转换后的基频特征通过pyworld.synthesize转换为音频时域特征;最后利用librosa.output.write_wav函数将音频时域特征还原为目标语音。
[0033]
在一实施例中,所述将所述语音转换网络的训练过程如下:
[0034]
提取声音样本集中的基频特征,并将最接近指定频率的基频特征作为目标样本,并将其余基频特征作为原始输入样本;
[0035]
将所述原始输入样本输入至第一生成器中进行卷积,得到生成值,并将所述目标样本和生成值输入至第一鉴别器中进行卷积,得到所述生成值为所述目标样本的概率;若所述生成值不为所述目标样本,则计算所述第一生成器和第一鉴别器的损失误差,并将所述损失误差反向传播更新所述语音转换网络的参数;
[0036]
将所述生成值输入至第二生成器中进行卷积,得到生成输入样本,并将所述目标样本和生成输入样本输入至第二鉴别器中进行卷积,得到所述生成输入样本为所述目标样本的概率;若所述生成输入样本不为所述目标样本,则计算所述第二生成器和第二鉴别器的损失误差,并将所述损失误差反向传播更新所述语音转换网络的参数。
[0037]
在本实施例中,先提取出声音样本集中的基频特征,并找出其中最接近指定频率的基频特征作为的目标样本,其余的基频特征则作为原始输入样本;利用所述第一生成器对所述原始输入样本进行卷积处理,得到生成值,再利用第一鉴别器计算得到生成值为目标样本的概率;若所述生成值被判定为非所述目标样本,则计算所述第一生成器和第一鉴别器的损失误差,并将所述损失误差反向传播更新所述语音转换网络的参数,若所述生成值被判定为所述目标样本,则说明所述语音转换网络参数正确,可通过现有语音转换网络进行语音转换;利用第二生成器对所述生成值进行卷积得到生成输入样本,利用第二鉴别器计算得到生成输入样本为目标样本的概率;若所述生成输入样本被判定为非所述目标样本,则计算所述第二生成器和第二鉴别器的损失误差,并将所述损失误差反向传播更新所述语音转换网络的参数,若所述生成输入样本被判定为所述目标样本,则说明所述语音转换网络参数正确,可通过现有语音转换网络进行语音转换。其中,所述原始输入样本与生成
输入样本实质相同,通过第二生成器将所述生成值进行还原,得到与所述初始输入样本相同特征的生成输入样本。
[0038]
所述语音转换网络包括第一迭代模块和第二迭代模块,所述第一迭代模块包括第一生成器和第一鉴别器,所述第一生成器的输入为初始输入样本,输出为生成值,所述第一鉴别器的输入为所述第一生成器输出的生成值,输出为第一概率值,所述第一概率值用于对所述生成值进行真伪判断;所述第二迭代模块包括第二生成器和第二鉴别器,所述第二生成器的输入为所述第一生成器输出的生成值,输出为生成输入样本,所述第一鉴别器的输入为所述第二生成器输出的生成输入样本,输出为第二概率值,所述第二概率值用于对所述生成输入样本进行真伪判断。所述语音转换网络通过所述第一迭代模块和第二迭代模块不断进行迭代、从而使整个所述语音转换网络不断进行收敛,直至所述语音转换网络得到最佳参数。所述第一迭代模块和第二迭代模块均包含有一生成器和鉴别器,其中生成器的目的是让输出的生成值越来越接近目标样本,而鉴别器的目的是使得生成值与目标样本的分布越来越远,通过两者之间对抗生成让所述鉴别器的鉴别能力越来越强,同时生成器生成平均声音的能力也越来越强。所述第二生成器将所述第一生成器输出的生成值还原为生成输入样本的操作,可以使得生成值与目标样本越来越接近的同时保留有输入样本的特征。
[0039]
在一实施例中,所述提取声音样本集中的基频特征,并将最接近指定频率的基频特征作为目标样本,并将其余基频特征作为原始输入样本,包括:
[0040]
建立声音样本集,利用语音合成系统提取声音样本集中的基频特征,并计算所述基频特征的平均值;
[0041]
依次计算每个所述基频特征与所述平均值之间的差值并筛选出最小差值;
[0042]
将所述最小差值对应的基频特征作为目标样本,其余基频特征作为原始输入样本。
[0043]
在本实施例中,利用语音合成系统从预先建立的声音样本集中提取基频特征,然后计算所有基频特征的平均值,通过计算每个基频特征与平均值之间的差值,筛选出与平均值的差值最小的基频特征作为目标样本,其余基频特征作为输入样本。
[0044]
本实施例中,预先建立声音样本集,并提取所述声音样本集中的基频特征,记为:x[1],x[2],
……
,x[n],计算所有基频特征的平均值,x[n],计算所有基频特征的平均值,x[n],计算所有基频特征的平均值先计算第一个基频特征与平均值之间的差值,并作为初始最小差值min,此时依次计算每个基频特征与平均值之间的差值并判断是否小于初始最小差值,可表示为若存在小于初始最小差值的差值,则将该差值替换成初始最小差值,此时在所有基频特征与平均值之间的差值均进行比较后,将最终的最小差值所对应的基频特征作为目标样本输出。具体提取流程如下:
[0045][0046][0047]
for i in rang(n):
[0048]
[0049][0050]
return i
[0051]
k=i
[0052]
normal_voice=x[k]
[0053]
其中,x[k]为目标样本,x[i](i!=k)为输入样本。
[0054]
在一实施例中,所述将所述音频mcep特征输入至预训练的语音转换网络中进行音频转换,得到平均声音,包括:
[0055]
将所述音频mcep特征输入至第一降采样模块进行卷积处理,得到第一降采样卷积结果,并将所述第一降采样卷积结果输入至多个连续的残差模块进行卷积处理,得到残差卷积结果,并将所述残差卷积结果输入至第一上采样模块进行卷积,得到第一卷积结果;
[0056]
将所述第一卷积结果输入至第二降采样模块进行卷积处理,得到第二降采样卷积结果,并将第二降采样卷积结果输入至全连接层进行卷积得到第二卷积结果,利用sigmoid激活函数计算所述第二卷积结果为目标样本的概率;
[0057]
若所述第二卷积结果为目标样本,则将所述第一卷积结果作为平均声音进行输出,若所述第二卷积结果不为目标样本,则重新进行音频转换。
[0058]
在本实施例中,先将音频mcep特征输入至第一降采样模块进行降采样,然后再经由多个连续的残差模块进行卷积,最后再输入至第一上采样模块进行上采样,得到第一卷积结果;将第一卷积结果输入至第二降采样模块进行降采样,然后输入至全连接层内进行卷积,得到第二卷积结果,最后利用sigmoid激活函数计算第二卷积结果为目标样本的概率;若第二卷积结果为目标样本,则将第一卷积结果作为平均声音输出,否则重新进行音频转换。本实施例中,将所述音频mcep特征输入至预训练的语音转换网络中进行音频转换,具体是将所述音频mcep特征输入至所述语音转换网络的第一生成器中生成平均声音,再根据第一鉴别器判断所述第一生成器生成的平均声音的真伪,若为真,则将平均声音进行输出,若为假则重新进行语音转换。本实施例生成第一卷积结果的过程实质上即为第一生成器生成平均声音的过程,计算第二卷积结果为目标样本的概率的过程实际上即为第一鉴别器的判定真伪过程。
[0059]
在一实施例中,所述利用音色转换网络将所述平均声音转换为目标声音,包括:
[0060]
将所述平均声音输入至第三降采样模块进行卷积处理,得到第三降采样卷积结果,并将所述第三降采样卷积结果输入至降维模块进行降维处理,得到降维后的第三降采样卷积结果;
[0061]
将所述降维后的第三降采样卷积结果输入至多个连续的卷积模块进行卷积,并将卷积结果输入至升维模块进行升维处理,并将升维结果输入至第二上采样模块进行卷积处理,得到初始目标声音;
[0062]
将所述初始目标声音输入至第四降采样模块进行卷积处理,得到所述初始目标声音为需求声音的概率,若所述初始目标声音为需求声音,则将所述初始目标声音作为最终的目标声音。
[0063]
在本实施例中,将所述平均声音输入至第三降采样模块进行降采样处理,再输入至降维模块进行降维处理,得到降维后的第三降采样卷积结果,并将降维后的第三降采样卷积结果输入至多个连续的卷积模块进行卷积处理,再输入至升维模块进行升维处理,恢
复原有维度,最后将升维结果输入至第二上采样模块进行上采样,得到初始目标声音;随后将所述初始目标声音输入至第四降采样模块进行降采样处理,并输出所述初始目标声音为需求声音的概率,若所述初始目标声音为需求声音,则将所述初始目标声音作为最终的目标声音进行输出,否则重新进行转换。
[0064]
所述音色转换网络包括一生成器和鉴别器,所述生成器的输入为平均声音,输出为目标声音,所述鉴别器的输入为目标声音,输出为第三概率,所述第三概率用于鉴别所述目标声音的真伪。其中所述生成器生成目标声音的过程为:先对平均声音进行降采样处理,在将维度由2d降维至1d,在进行多次卷积处理,然后将维度由1d升维至2d,最后进行上采样处理,最终输出目标声音。
[0065]
请参阅图2,图2为本发明实施例提供的一种语音转换系统的示意性框图,该语音转换系统200包括:
[0066]
特征提取单元201,用于利用语音合成系统提取语音样本中的基频特征和音频mcep特征;
[0067]
目标声音获取单元202,用于将所述音频mcep特征输入至预训练的语音转换网络中进行音频转换,得到平均声音,并利用音色转换网络将所述平均声音转换为目标声音;
[0068]
音频时域特征获取单元203,用于将所述基频特征进行音调转换,并将目标声音、非周期分量特征以及转换后的基频特征进行音频合成处理,得到音频时域特征;
[0069]
目标语音获取单元204,用于利用语音信号处理函数将所述音频时域特征进行语音还原处理,得到目标语音。
[0070]
在一实施例中,语音转换网络训练单元如下:
[0071]
样本分类单元,用于提取声音样本集中的基频特征,并将最接近指定频率的基频特征作为目标样本,并将其余基频特征作为原始输入样本;
[0072]
第一生成对抗单元,用于将所述原始输入样本输入至第一生成器中进行卷积,得到生成值,并将所述目标样本和生成值输入至第一鉴别器中进行卷积,得到所述生成值为所述目标样本的概率;若所述生成值不为所述目标样本,则计算所述第一生成器和第一鉴别器的损失误差,并将所述损失误差反向传播更新所述语音转换网络的参数;
[0073]
第二生成对抗单元,用于将所述生成值输入至第二生成器中进行卷积,得到生成输入样本,并将所述目标样本和生成输入样本输入至第二鉴别器中进行卷积,得到所述生成输入样本为所述目标样本的概率;若所述生成输入样本不为所述目标样本,则计算所述第二生成器和第二鉴别器的损失误差,并将所述损失误差反向传播更新所述语音转换网络的参数。
[0074]
在一实施例中,所述样本分类单元包括:
[0075]
基频特征平均值计算单元,用于建立声音样本集,利用语音合成系统提取声音样本集中的基频特征,并计算所述基频特征的平均值;
[0076]
最小差值筛选单元,用于依次计算每个所述基频特征与所述平均值之间的差值并筛选出最小差值;
[0077]
目标样本确认单元,用于将所述最小差值对应的基频特征作为目标样本,其余基频特征作为原始输入样本。
[0078]
在一实施例中,所述目标声音获取单元202包括:
[0079]
第一卷积结果获取单元,用于将所述音频mcep特征输入至第一降采样模块进行卷积处理,得到第一降采样卷积结果,并将所述第一降采样卷积结果输入至多个连续的残差模块进行卷积处理,得到残差卷积结果,并将所述残差卷积结果输入至第一上采样模块进行卷积,得到第一卷积结果;
[0080]
第二卷积结果获取单元,用于将所述第一卷积结果输入至第二降采样模块进行卷积处理,得到第二降采样卷积结果,并将第二降采样卷积结果输入至全连接层进行卷积得到第二卷积结果,利用sigmoid激活函数计算所述第二卷积结果为目标样本的概率;
[0081]
第二卷积结果判断单元,用于若所述第二卷积结果为目标样本,则将所述第一卷积结果作为平均声音进行输出,若所述第二卷积结果不为目标样本,则重新进行音频转换。
[0082]
在一实施例中,所述目标声音获取单元202包括:
[0083]
第三降采样卷积结果获取单元,用于将所述平均声音输入至第三降采样模块进行卷积处理,得到第三降采样卷积结果,并将所述第三降采样卷积结果输入至降维模块进行降维处理,得到降维后的第三降采样卷积结果;
[0084]
初始目标声音获取单元,用于将所述降维后的第三降采样卷积结果输入至多个连续的卷积模块进行卷积,并将卷积结果输入至升维模块进行升维处理,并将升维结果输入至第二上采样模块进行卷积处理,得到初始目标声音;
[0085]
目标声音输出单元,用于将所述初始目标声音输入至第四降采样模块进行卷积处理,得到所述初始目标声音为需求声音的概率,若所述初始目标声音为需求声音,则将所述初始目标声音作为最终的目标声音。
[0086]
在一实施例中,所述音频时域特征获取单元203包括:
[0087]
公式计算单元,用于利用以下公式将所述基频特征进行音调转换:
[0088][0089]
其中,f
0_conversion
代表转换后的基频特征,f0代表原始的基频特征,f
0_target
代表目标音频音色,f
0_mean
代表原始的基频特征平均值,f
0_target_mean
代表目标音频基频平均值,f
0_std
代表原始的基频特征方差,f
0_target_std
代表目标音频基频方差。本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的语音转换方法。
[0090]
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的语音转换方法。
[0091]
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的语音转换方法。
[0092]
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
[0093]
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将
一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。