一种合成语音与文本对齐的方法、装置及计算机储存介质

文档序号:909795 发布日期:2021-02-26 浏览:1次 >En<

阅读说明:本技术 一种合成语音与文本对齐的方法、装置及计算机储存介质 (Method and device for aligning synthesized voice and text and computer storage medium ) 是由 王昆 朱海 周琳岷 刘书君 于 2020-11-20 设计创作,主要内容包括:本发明公开了一种合成语音与文本对齐的方法、装置及计算机储存介质,其中方法包括:在待合成文本的每个字后面加入位置标签;对带位置标签的文本进行文本预处理及音素转换得到音素序列;将音素序列输入语音合成模型,预测音素的时长信息和声学特征;将声学特征通过声码器转换为合成语音;累加位于每个位置标签前面音素的时长信息,得到每个位置标签在合成语音中的时间信息。本发明通过在待合成文本中加入位置标签,在文本处理中保持位置标签的相对位置,利用语音合成模型的中间输出结果以极小的成本,实现了合成音频与待合成文本之间的字符级别的对齐。(The invention discloses a method, a device and a computer storage medium for aligning synthesized voice and text, wherein the method comprises the following steps: adding a position label behind each character of the text to be synthesized; carrying out text preprocessing and phoneme conversion on the text with the position label to obtain a phoneme sequence; inputting the phoneme sequence into a speech synthesis model, and predicting duration information and acoustic characteristics of phonemes; converting the acoustic features into synthesized speech through a vocoder; and accumulating the duration information of the phonemes positioned in front of each position label to obtain the time information of each position label in the synthesized speech. The invention realizes the alignment of the character level between the synthesized audio and the text to be synthesized by adding the position label into the text to be synthesized, keeping the relative position of the position label in the text processing and utilizing the intermediate output result of the speech synthesis model with extremely low cost.)

一种合成语音与文本对齐的方法、装置及计算机储存介质

技术领域

本发明涉及语音合成技术领域,尤其涉及一种合成语音与文本对齐的方法、装置及计算机储存介质。

背景技术

语音交互是一种自然的人机交互技术,该技术涉及语音识别(ASR)、自然语言理解(NLP)、语音合成(TTS)等众多技术,语音合成直接影响用户的听觉体验,其效果好坏直接影响用户的“第一印象”,一直是学术研究和产业应用的研究重点。语音合成发展过程中,经历了拼接法、参数合成法及端到端为主的语音合成方法。端到端方法能获得更高的合成语音质量,但合成语音的过程难以精确控制。

语音和文本的对齐,是指为每个字的发音在音频中标注起止时间信息。这些信息一般是通过人工标注,或者半自动标注,先通过强制对齐算法预标注,再由人工调整的方法获得,通常用于语音合成模型的训练。语音和文本的对齐有很多应用,如音乐播放过程中,音乐播放和歌词同步,点读系统等。

在语音合成系统中,长句子通常通过拆分成短句进行合成,拼接得到最终的音频,这种方式可以句子级别的对齐信息,如哪句文本对应哪段语音,但没有词语、字级别的更细力度的对齐信息。要获得更小粒度的对齐信息,可以通过强制对齐技术进行训练,但时间成本较高,且存在对齐失败的情况。另一方面,语音合成中,待合成文本通常需要规范化,替换掉一些书写和发音不一致的情况,如特殊符号、特殊字符、数字等。原始文本与规范化后的文本通常不存在简单一致的对应关系,在音素转换中,转换前后的文本序列和音素序列也不存在一致的对应关系,故难以获取字级别的语音和文本对齐信息。

发明内容

本发明提供了一种合成语音与文本对齐的方法、装置及计算机储存介质,以解决上述现有技术中存在的问题。

本发明采用的技术方案是:提供一种合成语音与文本对齐的方法,包括:

在待合成文本的每个字后面加入位置标签;

对带位置标签的文本进行文本预处理及音素转换得到音素序列;

将音素序列输入语音合成模型,预测音素的时长信息和声学特征;

将声学特征通过声码器转换为合成语音;

累加位于每个位置标签前面音素的时长信息,得到每个位置标签在合成语音中的时间信息。

优选地,所述对带位置标签的文本进行文本预处理的方法,包括:对带位置标签的文本中的非法字符进行剔除、文本规则化以及韵律预测,在进行文本预处理过程中,保持位置标签在序列中的相对位置。

优选地,所述对带位置标签的文本进行音素转换方法,包括:采用汉字转拼音,拼音拆分成声韵母音素的转换方法,在进行音素转换过程中,保持位置标签在序列中的相对位置。

优选地,所述将音素序列输入语音合成模型,预测音素的时长信息和声学特征的方法,包括:将所述音素序列中的位置标签剔除,并将音素序列编码为数字序列,输入语音合成模型;语音合成模型进行前向运算,输出时长信息序列和声学特征序列。

优选地,所述将音素序列输入语音合成模型,预测音素的时长信息和声学特征之前,还包括:对所述语音合成模型的制作。

优选地,所述语音合成模型的制作包括训练数据获取、输入输出特征提取、模型设计及模型训练;

训练数据包括音频和标注信息,标注信息包括音素、韵律标记及每个音素的时长信息;

输入特征为音素序列数值化后的序列,输出特征包括每个音素的时长信息,以及基于音频提取的Mel频谱特征;

模型结构设计采用编码器解码器结构,输入特征经嵌入编码后,加上位置编码的信息,送入编码器,预测每个音素的时长信息,并通过解码器输出声学特征,模型的损失函数设置为音素的预测时长信息与真实时长信息距离以及预测Mel频谱与真实Mel频谱距离的加权和;

模型的训练通过梯度下降算法,最小化模型的损失函数,直至模型的损失函数收敛。

优选地,所述将声学特征通过声码器转换为合成语音的方法,包括:基于纯数字信号处理的声码器;或基于人工神经网络的声码器。

优选地,所述累加位于每个位置标签前面音素的时长信息,得到每个位置标签在合成语音中的时间信息的方法,包括:参考未剔除位置标签的音素序列,计算每个位置标签前面包含的音素,并累加这些音素的时长信息;每个字符在合成音频中对应的起止点,分别为其前后位置标签的时间信息。

本发明还提供一种合成语音与文本对齐的装置,包括:

标签添加模块,用于在待合成文本的每个字后面加入位置标签;

音素转换模块,用于对带位置标签的文本进行文本预处理及音素转换得到音素序列;

预测模块,用于将音素序列输入语音合成模型,预测音素的时长信息和声学特征;

语音合成模块,将声学特征通过声码器转换为合成语音;

标签对齐模块,用于累加位于每个位置标签前面音素的时长信息,得到每个位置标签在合成语音中的时间信息。

本发明还提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求上述合成语音与文本对齐方法的步骤。

本发明的有益效果是:

(1)本发明通过在文本添加标签并在文本预处理及语音转换中保持标签的相对位置,在同一个序列同时存储了合成所需要的音素序列信息和对齐所需要的位置标签,既不影响语音合成的流程,又提供了语音和文本对齐所需的位置信息。

(2)本发明通过在待合成文本中加入位置标签,在文本处理中保持位置标签的相对位置,利用语音合成模型的中间输出结果以极小的成本,实现了合成音频与待合成文本之间的字符级别的对齐。

附图说明

图1为本发明公开的一种合成语音与文本对齐的方法流程示意图。

图2为本发明公开的一种合成语音与文本对齐的装置结构框图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步详细描述,但本发明的实施方式不限于此。

应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。

实施例1:

参见图1,一种合成语音与文本对齐的方法,包括:

S1、在待合成文本的每个字后面加入位置标签。

需要在每个字后加入位置标签的字符为需要发音的字符,所述的每个字包括数字和中文字符,不包含标点符号等不发音字符。

位置标签可采用一个不常用的特殊字符表示,或采用特殊括号标记表示。

具体实施例中,可采用[pos:idx]的方式表示,idx为序号,从0开始增加,如“语音合成。”在加入位置标签后为“语[pos:0]音[pos:1]合[pos:2]成[pos:3]。”。

S2、对带位置标签的文本进行文本预处理及音素转换得到音素序列。

所述对带位置标签的文本进行文本预处理的方法,包括:对带位置标签的文本中的非法字符进行剔除、文本规则化、韵律预测。

具体实施例中,将文本字符进行Unicode转换,标点符号统一转换为英文状态下的标点;仅保留中文字符、数字和,:、“”。;!?'.%<[]标点,剔除其余字符。文本规则化采用规则匹配,将数字替换成中文字符,如“一[pos:0]共[pos:1]3[pos:2]5[pos:3]元[pos:4]。”替换成“一[pos:0]共[pos:1]三十[pos:2]五[pos:3]元[pos:4]。”,保持位置标记的相对位置。韵律预测用于在文本序列中加入韵律停顿标记,如#1表示韵律词、#2表示韵律短语、#3表示语调短语、#4表示句子结束,同时去掉标点符号。如“一[pos:0]共[pos:1]三十[pos:2]五[pos:3]元[pos:4]。”可能变换为“一[pos:0]共[pos:1]#2三十[pos:2]五[pos:3]元[pos:4]#4”,其中韵律模型可采用Seq2Seq模型离线训练。

所述对带位置标签的文本进行音素转换方法,还包括:采用汉字转拼音,拼音拆分成声韵母音素的转换方法。

具体实施例中,可以使用pypinyin工具进行汉字转拼音,拼音基于发音字典,拆分成声韵母音素,不同声调的韵母为不同的音素,零声母的拼音,声母用#5表示。如“一[pos:0]共[pos:1]#2三十[pos:2]五[pos:3]元[pos:4]#4”音素转换后得到“#5i1[pos:0]g ong4[pos:1]#2s an1[pos:2]sh iii2[pos:3]#5u3[pos:4]#5van2[pos:5]#4”,音素、韵律标记和位置标签以空格分隔。

所述对带位置标签的文本进行文本预处理及音素转换的方法,包括:在文本预处理和音素转换步骤中,保持位置标签在序列中的相对位置。

S3、将音素序列输入语音合成模型,预测音素的时长信息和声学特征。

所述将音素序列输入语音合成模型,预测音素的时长信息和声学特征的方法,包括:将所述音素序列中的位置标签剔除,并将音素序列编码为数字序列,输入语音合成模型;语音合成模型进行前向运算,输出时长信息序列和声学特征序列。

具体实施例中,将输入序列按空格分割,并剔除位置标签,如“#5i1[pos:0]g ong4[pos:1]#2s an1[pos:2]sh iii2[pos:3]#5u3[pos:4]#5van2[pos:5]#4”转换为“['#5','i1','g','ong4','#2','s','an1','sh','iii2','#5','u3','#5','van2','#4']”。对所有的音素和韵律符号进行统计,每个音素或韵律符号对应一个数字,据此将音素序列数值化,将数值序列输入语音合成模型,该模型将输入序列进行嵌入编码,添加位置编码,并输入编码器,预测每个音素的时长信息,并通过解码器输出声学特征序列,声学特征一般为Mel频谱。

所述将音素序列输入语音合成模型,预测音素的时长信息和声学特征之前,还包括:对所述语音合成模型的制作。语音合成模型的制作包括训练数据获取、输入输出特征提取、模型设计及模型训练。

训练数据包括音频和标注信息,标注信息包括音素、韵律标记及每个音素的时长信息;输入特征为音素序列数值化后的序列,输出特征包括每个音素的时长信息,以及基于音频提取的Mel频谱特征;模型结构设计采用编码器解码器结构,输入特征经嵌入编码后,加上位置编码的信息,送入编码器,预测每个音素的时长信息,并通过解码器输出声学特征,模型的损失函数设置为音素的预测时长信息与真实时长信息的L2距离以及预测Mel频谱与真实Mel频谱的L1距离的加权和;模型的训练通过梯度下降算法,最小化模型的损失函数,直至模型的损失函数收敛。

具体实施例中,可采用的语音合成模型包括但不限于Tacotron、Fastspeech。

S4、将声学特征通过声码器转换为合成语音。

所述将声学特征通过声码器转换为合成语音的方法,包括:基于纯数字信号处理的声码器,可采用的声码器包括但不限于Griffin Lim。

所述将声学特征通过声码器转换为合成语音的方法,还包括:基于人工神经网络的声码器,声码器通过对输入声学特征固定倍数的上采样,并通过人工神经网络模型前向运算进行预测,输出合成语音。

具体实施例中,可采用的声码器包括但不限于WaveRNN、MelGAN。

S5、累加位于每个位置标签前面音素的时长信息,得到每个位置标签在合成语音中的时间信息。

所述累加位于每个位置标签前面音素的时长信息,得到每个位置标签在合成语音中的时间信息的方法,包括:参考未剔除位置标签的音素序列,计算每个位置标签前面包含哪些音素,并累加他们的时长信息;每个字符在合成音频中对应的起止点,分别为其前后位置标签的时间信息。

具体实施例中,获取音素的时长信息,如“['#5','i1','g','ong4','#2','s','an1','sh','iii2','#5','u3','#5','van2','#4']”输入音素序列的预测时长信息可能为“[0,15,6,17,0,9,11,8,6,0,19,0,28,30]”。参考未剔除位置标签的音素序列“#5i1[pos:0]g ong4[pos:1]#2s an1[pos:2]sh iii2[pos:3]#5u3[pos:4]#5van2[pos:5]#4”,可知[pos:0]前面的音素时长为0,15,累加和为15,单位为帧,余类推。对应的时间为帧数乘以声码器上采样率,除以音频采样率。

根据本发明提供的方法,通过在待合成文本中加入位置标签,在文本处理中保持位置标签的相对位置,利用语音合成模型的中间输出结果以极小的成本,实现了合成音频与待合成文本之间的字符级别的对齐。

实施例2:

参见图2,一种合成语音与文本对齐的装置,包括:

标签添加模块10,用于在待合成文本的每个字后面加入位置标签。

音素转换模块20,用于对带位置标签的文本进行文本预处理及音素转换得到音素序列。

预测模块30,用于将音素序列输入语音合成模型,预测音素的时长信息和声学特征。

语音合成模块40,将声学特征通过声码器转换为合成语音。

标签对齐模块50,用于累加位于每个位置标签前面音素的时长信息,得到每个位置标签在合成语音中的时间信息。

需要说明的是,本实施例中的各个单元是逻辑意义上的,在具体实施过程中,一个单元可拆分成多个单元,多个单元也可以合并成一个单元。

根据本发明实施例二提供的一种合成语音与文本对齐的装置,该装置能够通过在待合成文本中加入位置标签,在文本处理中保持位置标签的相对位置,利用语音合成模型的中间输出结果以极小的成本,实现了合成音频与待合成文本之间的字符级别的对齐。

实施例3

本申请实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现实施例1中的合成语音与文本对齐的方法。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

9页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:语音合成方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!