一种语音合成方法及装置与流程

文档序号:16308439发布日期:2018-12-19 05:10阅读:332来源:国知局
一种语音合成方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种语音合成方法及装置。

背景技术

语音合成是通过机械的、电子的方法产生人造语音的技术。tts技术(又称文语转换技术)隶属于语音合成,它是将计算机自己产生的、或外部输入的文字信息转变为可以听得懂的、流利的汉语口语输出的技术。

目前现有技术中的语音合成技术有:方法一,基于规则合成的语音合成技术。这种合成方式通过语音学规则来产生目标语音。规则合成系统存储的是较小的语音单位(如音素、双音素、半音节或音节)的声学参数,以及由音素组成音节,再由音节组成词或句子的各种规则。方法二,基于波形拼接的语音合成技术。这种合成方式以语句、短语、词或音节为合成单元,这些单元被分别录音后直接进行数字编码,经适当的数据压缩,组成一个合成语音库,重放时,根据待输出的信息,在语料库中取出相应单元的波形数据,串接或编辑在一起,经解码还原出语音。方法三,基于参数分析合成的语音合成技术。这种合成方式多以音节、半音节或音素为合成单元。

但是方法一的方法,需要设定非常繁琐的规则,而且需要分析不同的环境和不同的上下文来设置不同的规则。同时合成的语音自然度不高,无法被广泛的应用。方法二以及方法三的方法,需要有足够的高质量发音人录音才能够合成高质量的语音,所使用的语音库文件太大,而且多音节字根本无法解决。无法通过从公开场合获取的声音进行合成。

综上所述,现有技术中不能提供一种规则简单、语音自然度高的语音合成方法。



技术实现要素:

本发明提供一种语音合成方法及装置,用于解决现有技术中不能提供一种规则简单、语音自然度高的语音合成方法的问题。

本发明实施例提供一种语音合成方法,包括:确定待发声的文本信息对应的音素序列;所述音素序列包括多个音素信息,各音素信息的排序与所述文本信息中各文字的排序一致;所述音素信息包括音素信息对应的文字的声母、韵母以及音调;

将所述音素序列输入语音发声模型,确定所述文本信息对应的语音特征向量,所述语音发声模型是对发声样本进行神经网络训练得到的;所述语音特征向量用于通过播放装置进行播放。

本发明实施例中,将待发声的文本信息按照文本信息中文字的声母、韵母、以及音调的排列方式。将待发声的文本信息转换为音素序列,并将音素序列输入到语音发声模型中,得到进行发声的语音特征向量,在本发明实施例中,由于考虑了中文发声的声母、韵母以及音调的关系,模拟出的声音具有更高的真实性,且可以适用于由音素构成的各种方言以及其它语种,具有很高的扩展性。

进一步地,所述将所述音素序列输入语音发声模型,确定所述文本信息对应的语音特征向量,包括:

将语音参数和所述音素序列输入所述语音发声模型,所述语音参数用于指示发声者的标识;所述语音发声模型是对各发声者的发声样本进行神经网络训练得到;

通过所述语音发声模型,确定所述文本信息对应的所述发声者的语音特征向量。

本发明实施例中,将语音参数输入到语音发声模型中,得到的语音特征向量为语音参数对应的发声者的声音对应的语音内容,用发声者的声音进行发音。在本发明实施例中,可以用语音发声模型中训练过的任意发声者的声音进行播报。

进一步地,所述将语音参数和所述音素序列输入所述语音发声模型之前,还包括:

获取随机噪声,所述随机噪声符合正态分布;

所述将语音参数和所述音素序列输入所述语音发声模型,包括:

将所述语音参数、所述随机噪声和所述音素序列输入所述语音发声模型。

本发明实施例中,为了防止语音发声模型输出的语音特征向量过拟合,加入了符合正态分布的随机噪声,使得输出的语音特征向量更加准确。

进一步地,所述语音特征向量包括60维的梅尔广义倒谱向量、1维的非周期性带特征向量、1维的log基频特征向量以及1维的清浊音特征向量。

本发明实施例中,选取的63维向量可以更好的模拟中文发音以及个人发声,能够使语音特征向量更符合中文发音规则,并且更好的用人声进行模拟发声。

进一步地,所述语音发声模型为工作记忆机制的神经网络模型。

本发明实施例中,由于中文发音中对于每个文字的音素与上一个文字没有关联关系,所以使用工作记忆机制的神经网络模型,能够减少神经网络的计算量,简化模型的数据量。

本发明实施例还提供一种语音合成装置,包括:

音素序列确定单元,用于确定待发声的文本信息对应的音素序列;所述音素序列包括多个音素信息,各音素信息的排序与所述文本信息中各文字的排序一致;所述音素信息包括音素信息对应的文字的声母、韵母以及音调;

语音特征向量确定单元,用于将所述音素序列输入语音发声模型,确定所述文本信息对应的语音特征向量,所述语音发声模型是对发声样本进行神经网络训练得到的;所述语音特征向量用于通过播放装置进行播放。

本发明实施例中,将待发声的文本信息按照文本信息中文字的声母、韵母、以及音调的排列方式。将待发声的文本信息转换为音素序列,并将音素序列输入到语音发声模型中,得到进行发声的语音特征向量,在本发明实施例中,由于考虑了中文发声的声母、韵母以及音调的关系,模拟出的声音具有更高的真实性,且可以适用于由音素构成的各种方言以及其它语种,具有很高的扩展性。

进一步地,所述语音特征向量确定单元,具体用于:

将语音参数和所述音素序列输入所述语音发声模型,所述语音参数用于指示发声者的标识;所述语音发声模型是对各发声者的发声样本进行神经网络训练得到;

通过所述语音发声模型,确定所述文本信息对应的所述发声者的语音特征向量。

进一步地,所述音素序列确定单元还用于:

获取随机噪声,所述随机噪声符合正态分布;

所述语音特征向量确定单元,具体用于:

将所述语音参数、所述随机噪声和所述音素序列输入所述语音发声模型。

进一步地,所述语音特征向量包括60维的梅尔广义倒谱向量、1维的非周期性带特征向量、1维的log基频特征向量以及1维的清浊音特征向量。

进一步地,所述语音发声模型为工作记忆机制的神经网络模型。

本发明实施例还提供一种电子设备,包括:

至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述实施例中任一所述的方法。

本发明实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述实施例中任一所述方法。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种语音合成方法的流程示意图;

图2为本发明实施例提供的一种训练语音发声模型的流程示意图;

图3为本发明实施例提供的一种人类语音发声模型的示意图;

图4为本发明实施例提供的一种神经网络训练过程的示意图;

图5为本发明实施例提供的一种神经网络训练过程的流程示意图;

图6为本发明实施例提供的一种语音合成的流程示意图;

图7为本发明实施例提供的一种语音合成装置的结构示意图;

图8为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明提供一种语音合成方法,如图1所述,包括:

步骤101,确定待发声的文本信息对应的音素序列;所述音素序列包括多个音素信息,各音素信息的排序与所述文本信息中各文字的排序一致;所述音素信息包括音素信息对应的文字的声母、韵母以及音调;

步骤102,将所述音素序列输入语音发声模型,确定所述文本信息对应的语音特征向量,所述语音发声模型是对发声样本进行神经网络训练得到的;所述语音特征向量用于通过播放装置进行播放。

在步骤101中,待发声的文本信息就是需要进行语音合成的文本信息,在本发明实施例中,文本信息中的每文字的声母、韵母以及音调都与音素序列进行一一对应,则根据两者的对应关系,将文本信息转换为音素序列,音素序列中的排序方式与各文字的排列方式一致。

例如在本发明实施例中,每个汉字可以拆分为声母、韵母以及音调,声母对应音素序列表中的某个标识,韵母以及音调对应音素序列表中的某个标识,然后将标识按序排列,形成音素序列。

例如,“你好”为待发声的文本信息,“你”的拼音为“ni3”,其中“n”为声母,“i”为韵母,3表示声调,为了更加符合中文的发音,将韵母和声调组合在一起,为“i3”。可选的,在本发明实施例中,存在音素对照表,例如如表1所示:

表1:音素对照表

通过音素对照表,可以将每个待发声的文本信息的声母、韵母以及音调转换为一个音素序列,且音素序列的排列方式和每个汉字的声母、韵母排列方式相同,与每个词语的先后排列方式相同。

在步骤102中,当确定了音素序列后,将音素序列输入到语音发声模型中,并确定输出结果。在本发明实施例中,语音发声模型是根据发声样本来进行神经网络训练得到的。

可选的,在本发明实施例中,语音发声模型是根据发声样本来进行训练的,发声样本可以是可以获取到的任何声音,包括互联网上的声音、演讲声音、视频声音等。

可选的,在本发明实施例中,播放装置可以为world声码器,world声码器根据确定的语音特征向量就可以进行发音,发音的内容为待发声的文本信息。

可选的,在步骤102中,所述将所述音素序列输入语音发声模型,确定所述文本信息对应的语音特征向量,包括:

将语音参数和所述音素序列输入所述语音发声模型,所述语音参数用于指示发声者的标识;所述语音发声模型是对各发声者的训练发声样本进行神经网络训练得到;

通过所述语音发声模型,确定所述文本信息对应的所述发声者的语音特征向量。

也就是说,除了将音素序列输入语音发声模型,还将获取到的语音参数输入到语音发声模型,也就是说,在本发明实施例中,语音发声模型不仅仅是通过发声样本进行训练的,还需要加入发声样本对应的发声者的声音信息进行训练,得到的发声模型既能够准确的进行发音,又可以通过任意已经训练过的发声者的声音发声。

可选的,在本发明实施例中,输入的语音参数为发声者的标识信息,该标识信息对应的发声者的声音是在进行发声模型训练时用到的训练样本中存在的。

可选的,在本发明实施例中,如图2所示,可以通过图2中的方法训练语音发声模型。

可选的,在本发明实施例中,训练样本为一切音频,包括视频中的音频信息、演讲以及音频节目等音频内容,都可以作为训练样本。

在获取到音频样本后,还需要获取发声者的声音信息进行模型训练,使得训练的语音发声模型能够学习各个发声者的发音方法。

可选的,在本发明实施例中,训练样本分为训练数据以及测试数据,训练模型否达到预期目标,是根据训练样本的音频特征来确定的。

通常在处理语音信号时,不会直接使用声音的时域波形,而需要对音频进行一些处理。将训练样本进行预处理,提取训练样本中音频部分的声学特征,一个63×n的向量。其中n的大小与音频的长度成正比,63维的特征主要包括60维的梅尔广义倒谱(mel-generalizedcepstral,mgc)参数:mgc特征是降维之后的梅尔频率倒谱系数(mel-frequencycepstralcoefficients,mfcc)特征。因为mfcc特征纬度太高,并不适合直接训练,因此对其降维处理,得到mgc特征。

1维的非周期性带(bandaperiodicity,bap)特征:非周期性的激励信号;1维的log基频lf0:表征个人发声的基频,一个周期性的脉冲序列。1维的清浊音特征v/uv:用来表示清音和浊音。

在本发明实施例中,选取上述63维向量作为训练样本的声学特征是由于63维向量与人类发声模型相似。

人类发声模型如图3所示,图3中源激励部分对应于肺部的气流和声带共同作用形成的激励,声道谐振部分对应于声道的调音运动。源激励分为浊音和清音两类:浊音是气流经过声带,对声带进行冲击产生振动,在声门处产生准周期型的脉冲,因此可以用周期脉冲激励来表示浊音;同理,清音声带不产生振动,气流直接进入声道,因此简化为白噪声。一个人的声道谐振(发声方式)对应一个线性时不变系统,这个系统对输入信号的响应(卷积),就是人发出的语音。在上述段落中,f0对应了周期脉冲激励,bap对应了非周期激励,而通过mgc,也可以得出声道谐振h(n)。

在本发明实施例中,将训练样本输入到初级训练模型,得到初级训练结果,初级训练结果与63维训练样本的音频特征相比,调整初级训练模型,直到训练完成,得到语音发声模型。

可选的,在本发明实施例中,训练语音发声模型可以为工作记忆机制的神经网络模型,由于中文发音中,每个文字的发音只与每个文字对应的音素相关,与之前和之后的文字无关,所以在本发明实施例中,采用工作记忆机制的神经网络模型能够减少训练时长和难度。

如图4所示,训练样本为“我是中国人”这句话,确定出的声母韵母以及声调的序列为“w,o3,shi4,zh,o1ng,g,u,o2,r,e2n”;speakerid为“我是中国人”的发声者的标识信息,可以为发声者的身份标识码,身份标识码为存储在语音发声模型中发声者的标识,可以为序列号,也可以为发声者的身份证号,该标识码作为发声者的唯一标识。

将上述内容输入到工作记忆机制的神经网络模型,更新工作记忆单元,确定哪些工作记忆单元要被记忆,哪些工作记忆要删除。

例如,在本发明实施例中,系统输出的是n个迭代的63维向量,每个向量称为一个输出单元。整个工作记忆模型由k个工作记忆单元组成,t时刻的输出单元由当前的bt决定。b的更新方法如图5所示:

步骤501,基于注意力机制,获取当前迭代的文本内容;

步骤502,获取发声者的speakerid,上一个迭代的输出单元以及当前的工作记忆bt;

步骤503,通过以上四个量计算出更新的工作记忆单元u(图中加粗的框);

步骤504,去除b中b[k],其余单元向右平移,并令b[1]=u,得到新的b。

可选的,在本发明实施例中,当确定了语音发声模型后,就可以根据待发声文本、需要发声的发声者的标识信息以及语音发声模型,可以得到语音特征向量,将语音特征向量输入到播放装置,例如world声码器,则可以用发声者的声音播放该待发声文本。

可选的,在本发明实施例中,为了防止语音发声模型过拟合,可以在确定语音特征向量时,加入服从标准正态分布的随机噪声,以增加语音发声模型样本的多样性,使得语音发声模型不会过拟合,得到的语音特征向量也更加准确。

例如,如图6所示,进行语音合成包括几个步骤,分别为:

步骤601,将想要生成的一串中文文本,通过声母韵母以及音调与音素表的对应关系,转成一系列相对应的音素序列;

步骤602,生成一段服从标准正态分布的随机噪声;

步骤603,将随机噪声、欲模仿的说话者的id、音素序列输入到已经训练好的神经网络模块中,训练好的神经网络模块输出一串接近指定说话者的音频声学特征;

步骤604,将音频声学特征输入world声码器中,声码器输出一段音频,该音频的内容为输入的一串中文文本,发音为指定说话者的发音。

基于同样的构思,本发明实施例还提供一种语音合成装置,如图7所示,包括:

音素序列确定单元701,用于确定待发声的文本信息对应的音素序列;所述音素序列包括多个音素信息,各音素信息的排序与所述文本信息中各文字的排序一致;所述音素信息包括音素信息对应的文字的声母、韵母以及音调;

语音特征向量确定单元702,用于将所述音素序列输入语音发声模型,确定所述文本信息对应的语音特征向量,所述语音发声模型是对发声样本进行神经网络训练得到的;所述语音特征向量用于通过播放装置进行播放。

进一步地,所述语音特征向量确定单元702,具体用于:

将语音参数和所述音素序列输入所述语音发声模型,所述语音参数用于指示发声者的标识;所述语音发声模型是对各发声者的训练发声样本进行神经网络训练得到;

通过所述语音发声模型,确定所述文本信息对应的所述发声者的语音特征向量。

进一步地,所述音素序列确定单元701还用于:

获取随机噪声,所述随机噪声符合正态分布;

所述语音特征向量确定单元,具体用于:

将所述语音参数、所述随机噪声和所述音素序列输入所述语音发声模型。

进一步地,所述语音特征向量包括60维的梅尔广义倒谱向量、1维的非周期性带特征向量、1维的log基频特征向量以及1维的清浊音特征向量。

进一步地,所述语音发声模型为工作记忆机制的神经网络模型。

基于相同的原理,本发明还提供一种电子设备,如图8所示,包括:

包括处理器801、存储器802、收发机803、总线接口804,其中处理器801、存储器802与收发机803之间通过总线接口804连接;

所述处理器801,用于读取所述存储器802中的程序,执行下列方法:

确定待发声的文本信息对应的音素序列;所述音素序列包括多个音素信息,各音素信息的排序与所述文本信息中各文字的排序一致;所述音素信息包括音素信息对应的文字的声母、韵母以及音调;

将所述音素序列输入语音发声模型,确定所述文本信息对应的语音特征向量,所述语音发声模型是对发声样本进行神经网络训练得到的;所述语音特征向量用于通过播放装置进行播放。

进一步地,所述处理器801具体用于:

将语音参数和所述音素序列输入所述语音发声模型,所述语音参数用于指示发声者的标识;所述语音发声模型是对各发声者的训练发声样本进行神经网络训练得到;

通过所述语音发声模型,确定所述文本信息对应的所述发声者的语音特征向量。

进一步地,所述处理器801通过收发机803获取随机噪声,所述随机噪声符合正态分布;

所述处理器801具体用于:

将所述语音参数、所述随机噪声和所述音素序列输入所述语音发声模型。

进一步地,所述语音特征向量包括60维的梅尔广义倒谱向量、1维的非周期性带特征向量、1维的log基频特征向量以及1维的清浊音特征向量。

进一步地,所述语音发声模型为工作记忆机制的神经网络模型。

本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一一项数据查询方法。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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