一种语音合成方法和语音合成系统转让专利

申请号 : CN201210575160.X

文献号 : CN103065619B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 孙见青凌震华何婷婷胡国平胡郁刘庆峰

申请人 : 安徽科大讯飞信息科技股份有限公司

摘要 :

本发明实施例公开了一种语音合成方法和语音合成系统,用于提高语音的合成音质和自然度。该方法包括:将获取的合成文本划分为固定成分文本和可变成分文本;对固定成分文本进行分析,确定固定成分文本中各基本合成单元的合成时长参数,得到固定成分文本的合成时长参数序列;对可变成分文本进行分析,确定可变成分文本中各基本合成单元的合成时长参数,得到可变成分文本的合成时长参数序列;根据固定成分文本及可变成分文本的合成时长参数序列,确定合成文本的合成基频参数序列及确定合成文本的合成频谱参数序列;根据固定成分文本及可变成分文本的合成时长参数序列、合成基频参数序列和合成频谱参数序列,生成连续语音信号。

权利要求 :

1.一种语音合成方法,其特征在于,包括:

获取合成文本;

将所述合成文本划分为固定成分文本和可变成分文本;

对所述固定成分文本进行分析,确定所述固定成分文本中各基本合成单元的合成时长参数,得到所述固定成分文本的合成时长参数序列;以及对所述可变成分文本进行分析,确定所述可变成分文本中各基本合成单元的合成时长参数,得到所述可变成分文本的合成时长参数序列;

根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成基频参数序列;以及根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成频谱参数序列;

根据所述固定成分文本的合成时长参数序列、所述可变成分文本的合成时长参数序列、所述合成基频参数序列和所述合成频谱参数序列,生成连续语音信号。

2.根据权利要求1所述的方法,其特征在于,所述将所述合成文本划分为固定成分文本和可变成分文本具体包括:采用前后向最大分词算法对所述合成文本进行字词划分并得到分词或分词组合;

将所述分词或分词组合与预置模板库中的韵律词标注信息进行比较,若所述分词或分词组合与所述韵律词标注信息一致,则确定出所述分词或分词组合为固定成分文本,若否,则确定出所述分词或分词组合为可变成分文本。

3.根据权利要求2所述的方法,其特征在于,所述对所述固定成分文本进行分析,确定所述固定成分文本中各基本合成单元的合成时长参数,得到所述固定成分文本的合成时长参数序列,包括:从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元的时长参数Ti;

从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列 ;

基于公式 ,S.T: ,生成所述固定成分

文本的各基本语音单元的基本合成单元序列的合成时长参数序列;

其中, 为所述合成时长参数序列,Li为所述时长参数的似然值统计,S.T: 为第i个基本语音单元所对应的基本合成单元序列的时长约束条件, 为所述基本语音单元所对应的第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元总数。

4.根据权利要求2或3所述的方法,其特征在于,所述对所述可变成分文本进行分析,确定所述可变成分文本的各基本合成单元的合成时长参数,得到所述可变成分文本的合成时长参数序列,包括:从所述预置模板库中获取所述可变成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列 ;

基于公式

生成所述可变成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;

其中, 为第i个基本语音单元中第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元的总数。

5.根据权利要求4所述的方法,其特征在于,根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成基频参数序列,包括:从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的基频模型 ;

对所述各基本合成单元的基频模型 ,根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的基频模型序列;

根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的基频模型序列,获取所述合成文本的基频模型序列;

从所述预置模板库中获取所述固定成分文本所对应的自然语音段的基频参数序列Ygf;

基于公式

,获取所述合成文本的合成

基频参数序列;

其中, 是所述合成文本的合成基频参数序列,

是合成文本对应的基频模型

序列的似然度总和,其中,λ是概率模型的模型参数,包括计算动态参数的窗函数矩阵W,基频模型序列的均值Mf和协方差矩阵Uf;Cf为待生成的语音合成基频参数矩阵,包括固定成分的合成基频参数矩阵Cgf以及可变成分的合成基频参数矩阵Cuf;

T -1

α(Cgf-Ygf)(Cgf-Ygf)ugf 用于描述生成的合成基频参数序列和自然语音段的基频参数-1序列的差值,其中,Ygf为固定成分文本的自然基频参数,ugf 为自然基频参数的全局方差,α是系统第一预设域值。

6.根据权利要求4所述的方法,其特征在于,根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成频谱参数序列,包括:从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的频谱模型 ;

对所述各基本合成单元的频谱模型 ,根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的频谱模型序列;

根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的频谱模型序列,获取所述合成文本的频谱模型序列;

从所述预置模板库中获取所述固定成分文本所对应的自然语音段的频谱参数序列Ygs;

基于公式

,获取所述合成文本的合成

频谱参数序列;

其中, 是所述合成文本的合成频谱参数序列,Cgs是固定成分的合成频谱参数矩阵,是合成文本对应的频谱模型序列的似然度总和,λ是概率模型的模型参数,包括计算动态参数的窗函数矩阵W,频谱模型序列的均值Ms和协方差矩阵Us;Cs为待生成的语音合成频谱参数;

β(Cgs-Ygs)T(Cgs-Ygs)ugs-1用于描述生成的合成频谱参数序列和自然语音段的频谱参数序列的差值,其中,Ygs为固定成分文本的自然频谱参数,ugs-1为自然频谱参数的全局方差,β是系统第二预设域值。

7.一种语音合成系统,其特征在于,包括:

获取模块,用于获取合成文本;

文本划分模块,用于将所述合成文本划分为固定成分文本和可变成分文本;

时长参数获取模块,用于对所述固定成分文本进行分析,确定所述固定成分文本中各基本合成单元的合成时长参数,得到所述固定成分文本的合成时长参数序列;以及对所述可变成分文本进行分析,确定所述可变成分文本中各基本合成单元的合成时长参数,得到所述可变成分文本的合成时长参数序列;

基频参数获取模块,用于根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成基频参数序列;

频谱参数获取模块,用于根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成频谱参数序列;

语音信号生成模块,用于根据所述固定成分文本的合成时长参数序列、所述可变成分文本的合成时长参数序列、所述合成基频参数序列和所述合成频谱参数序列,生成连续语音信号。

8.根据权利要求7所述的系统,其特征在于,所述文本划分模块,具体用于采用前后向最大分词算法对所述合成文本进行字词划分并得到分词或分词组合;将所述分词或分词组合与预置模板库中的韵律词标注信息进行比较,若所述分词或分词组合与所述韵律词标注信息一致,则确定出所述分词或分词组合为固定成分文本,若否,则确定出所述分词或分词组合为可变成分文本。

9.根据权利要求8所述的系统,其特征在于,所述时长参数获取模块具体用于:从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元的时长参数Ti;

从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列 ;

基于公式 S.T: ,生成所述固定成

分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;

其中, 为所述合成时长参数序列,Li为所述时长参数的似然值统计,S.T: 为第i个基本语音单元所对应的基本合成单元序列的时长约束条件, 为所述基本语音单元所对应的第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元总数。

10.根据权利要求8或9所述的系统,其特征在于,所述时长参数获取模块还用于:从所述预置模板库中获取所述可变成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列 ;

基于公式

生成所述可变成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;

其中, 为第i个基本语音单元中第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元的总数。

11.根据权利要求10所述的系统,其特征在于,所述基频参数获取模块具体用于:从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的基频模型 ;

对所述各基本合成单元的基频模型 ,根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的基频模型序列;

根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的基频模型序列,获取所述合成文本的基频模型序列;

从所述预置模板库中获取所述固定成分文本所对应的自然语音段的基频参数序列Ygf;

基于公式

,获取所述合成文本的合成基

频参数序列;

其 中, 是 所 述 合 成 文 本 的 合 成 基 频 参 数 序 列,是合成文本对应的基频模型序列

的似然度总和,其中,λ是概率模型的模型参数,包括计算动态参数的窗函数矩阵W,基频模型序列的均值Mf和协方差矩阵Uf;Cf为待生成的语音合成基频参数矩阵,包括固定成分的合成基频参数矩阵Cgf以及可变成分的合成基频参数矩阵Cuf;

T -1

α(Cgf-Ygf)(Cgf-Ygf)ugf 用于描述生成的合成基频参数序列和自然语音段的基频参数-1序列的差值,其中,Ygf为固定成分文本的自然基频参数,ugf 为自然基频参数的全局方差,α是系统第一预设域值。

12.根据权利要求10所述的系统,其特征在于,所述频谱参数获取模块具体用于:从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的频谱模型 ;

对所述各基本合成单元的频谱模型 ,根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的频谱模型序列;

根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的频谱模型序列,获取所述合成文本的频谱模型序列;

从所述预置模板库中获取所述固定成分文本所对应的自然语音段的频谱参数序列Ygs;

基于公式

,获取所述合成文本的合成

频谱参数序列;

其中, 是所述合成文本的合成频谱参数序列,Cgs是固定成分的合成频谱参数矩阵,是合成文本对应的频谱模型序列的似然度总和,λ是概率模型的模型参数,包括计算动态参数的窗函数矩阵W,频谱模型序列的均值Ms和协方差矩阵Us;Cs为待生成的语音合成频谱参数;

T -1

β(Cgs-Ygs)(Cgs-Ygs)ugs 用于描述生成的合成频谱参数序列和自然语音段的频谱参数-1序列的差值,其中,Ygs为固定成分文本的自然频谱参数,ugs 为自然频谱参数的全局方差,β是系统第二预设域值。

说明书 :

一种语音合成方法和语音合成系统

技术领域

[0001] 本发明涉及语音信号处理及语音合成技术领域,尤其是涉及一种语音合成方法和语音合成系统。

背景技术

[0002] 目前,在文本受限领域(如银行的电话客服系统,机场航班播报等)中,合成文本往往具有相对固定模式,合成文本通常由固定不变成分(即固定成分文本)及可变参数成分(即可变成分文本)构成。对此在现有技术中,系统可以将固定成分文本通过预先录制自然语音的方式获取部分语音片断,对可变成分文本执行语音合成得到另一语音片断,并将所述两段语音片断信号拼接获取到最后的连续语音信号。这样的方法虽然实现简单且保持了自然语音部分的自然流畅性,然而在实际应用中依然存在以下问题:自然语音段和基于文本合成的语音段之间的衔接自然度难以保证;另外,由于获取方式的不同,自然语音的语音段和基于文本合成的语音段在音质上也难以保持一致。

发明内容

[0003] 本发明实施例提供了一种语音合成方法和语音合成系统,用于提高语音的合成音质和自然度。
[0004] 有鉴于此,本发明第一方面提供一种语音合成方法,可包括:
[0005] 获取合成文本;
[0006] 将所述合成文本划分为固定成分文本和可变成分文本;
[0007] 对所述固定成分文本进行分析,确定所述固定成分文本中各基本合成单元的合成时长参数,得到所述固定成分文本的合成时长参数序列;以及
[0008] 对所述可变成分文本进行分析,确定所述可变成分文本中各基本合成单元的合成时长参数,得到所述可变成分文本的合成时长参数序列;
[0009] 根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成基频参数序列;以及
[0010] 根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成频谱参数序列;
[0011] 根据所述固定成分文本的合成时长参数序列、所述可变成分文本的合成时长参数序列、所述合成基频参数序列和所述合成频谱参数序列,生成连续语音信号。
[0012] 在某些实施方式中,所述将所述合成文本划分为固定成分文本和可变成分文本具体包括:
[0013] 采用前后向最大分词算法对所述合成文本进行字词划分并得到分词或分词组合;
[0014] 将所述分词或分词组合与预置模板库中的韵律词标注信息进行比较,若所述分词或分词组合与所述韵律词标注信息一致,则确定出所述分词或分词组合为固定成分文本,若否,则确定出所述分词或分词组合为可变成分文本。
[0015] 在某些实施方式中,所述对所述固定成分文本进行分析,确定所述固定成分文本中各基本合成单元的合成时长参数,得到所述固定成分文本的合成时长参数序列,包括:
[0016] 从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元的时长参数Ti;
[0017] 从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列
[0018] 基于公式 S.T: 生成所述固定成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;
[0019] 其中,S.T: 为第i个基本语音单元所对应的基本合成单元序列的时长约束条件,为所述基本语音单元所对应的第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元总数。
[0020] 在某些实施方式中,所述对所述可变成分文本进行分析,确定所述可变成分文本的各基本合成单元的合成时长参数,得到所述可变成分文本的合成时长参数序列,包括:
[0021] 从所述预置模板库中获取所述可变成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列
[0022] 基于公式
[0023] 生成所述可变成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;
[0024] 其中,为第i个基本语音单元中第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元的总数。
[0025] 在某些实施方式中,根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成基频参数序列,包括:
[0026] 从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的基频模型
[0027] 对所述各基本合成单元的基频模型 根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的基频模型序列;
[0028] 根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的基频模型序列,获取所述合成文本的基频模型序列;
[0029] 从所述预置模板库中获取所述固定成分文本所对应的自然语音段的基频参数序列Ygf;
[0030] 基于公式
[0031] 获取所述合成文本的合成基频参数序列;
[0032] 其中, 是合成文本对应的基频模型序列的似然度总和,其中,λ是所述概率模型的模型参数,包括计算动态参数的窗函数矩阵W,基频模型序列的均值Mf和协方差矩阵Uf;Cf为待生成的语音合成基频参数矩阵,包括固定成分的合成基频参数矩阵Cgf以及可变成分的合成基频参数矩阵Cuf;
[0033] α(Cgf-Ygf)T(Cgf-Ygf)ugf-1用于描述生成的合成基频参数序列和自然语音段的基频-1参数序列的差值,其中,Ygf为固定成分文本的自然基频参数,ugf 为自然基频参数的全局方差,α是系统第一预设域值。
[0034] 在某些实施方式中,根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成频谱参数序列,包括:
[0035] 从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的频谱模型
[0036] 对所述各基本合成单元的频谱模型 根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的频谱模型序列;
[0037] 根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的频谱模型序列,获取所述合成文本的频谱模型序列;
[0038] 从所述预置模板库中获取所述固定成分文本所对应的自然语音段的频谱参数序列Ygs;
[0039] 基于公式
[0040] 获取所述合成文本的合成频谱参数序列;
[0041] 其中, 是合成文本对应的频谱模型序列的似然度总和,λ是所述概率模型的模型参数,包括计算动态参数的窗函数矩阵W,频谱模型序列的均值Ms和协方差矩阵Us;Cs为待生成的语音合成频谱参数;
[0042] β(Cgs-Ygs)T(Cgs-Ygs)ugs-1用于描述生成的合成频谱参数序列和自然语音段的频谱-1参数序列的差值,其中,Ygs为固定成分文本的自然频谱参数,ugs 为自然频谱参数的全局方差,β是系统第二预设域值。
[0043] 本发明第二方面提供一种语音合成系统,可包括:
[0044] 获取模块,用于获取合成文本;
[0045] 文本划分模块,用于将所述合成文本划分为固定成分文本和可变成分文本;
[0046] 时长参数获取模块,用于对所述固定成分文本进行分析,确定所述固定成分文本中各基本合成单元的合成时长参数,得到所述固定成分文本的合成时长参数序列;以及对所述可变成分文本进行分析,确定所述可变成分文本中各基本合成单元的合成时长参数,得到所述可变成分文本的合成时长参数序列;
[0047] 基频参数获取模块,用于根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成基频参数序列;
[0048] 频谱参数获取模块,用于根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成频谱参数序列;
[0049] 语音信号生成模块,用于根据所述固定成分文本的合成时长参数序列、所述可变成分文本的合成时长参数序列、所述合成基频参数序列和所述合成频谱参数序列,生成连续语音信号。
[0050] 在某些实施方式中,所述文本划分模块,具体用于采用前后向最大分词算法对所述合成文本进行字词划分并得到分词或分词组合;将所述分词或分词组合与预置模板库中的韵律词标注信息进行比较,若所述分词或分词组合与所述韵律词标注信息一致,则确定出所述分词或分词组合为固定成分文本,若否,则确定出所述分词或分词组合为可变成分文本。
[0051] 在某些实施方式中,所述时长参数获取模块具体用于:
[0052] 从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元的时长参数Ti;
[0053] 从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列
[0054] 基于公式 S.T: 生成所述固定成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;
[0055] 其中,S.T: 为第i个基本语音单元所对应的基本合成单元序列的时长约束条件,为所述基本语音单元所对应的第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元总数。
[0056] 在某些实施方式中,所述时长参数获取模块还用于:
[0057] 从所述预置模板库中获取所述可变成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列
[0058] 基于公式
[0059] 生成所述可变成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;
[0060] 其中,为第i个基本语音单元中第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元的总数。
[0061] 在某些实施方式中,所述基频参数获取模块具体用于:
[0062] 从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的基频模型
[0063] 对所述各基本合成单元的基频模型 根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的基频模型序列;
[0064] 根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的基频模型序列,获取所述合成文本的基频模型序列;
[0065] 从所述预置模板库中获取所述固定成分文本所对应的自然语音段的基频参数序列Ygf;
[0066] 基于公式
[0067] 获取所述合成文本的合成基频参数序列;
[0068] 其中, 是合成文本对应的基频模型序列的似然度总和,其中,λ是所述概率模型的模型参数,包括计算动态参数的窗函数矩阵W,基频模型序列的均值Mf和协方差矩阵Uf;Cf为待生成的语音合成基频参数矩阵,包括固定成分的合成基频参数矩阵Cgf以及可变成分的合成基频参数矩阵Cuf;
[0069] α(Cgf-Ygf)T(Cgf-Ygf)ugf-1用于描述生成的合成基频参数序列和自然语音段的基频-1参数序列的差值,其中,Ygf为固定成分文本的自然基频参数,ugf 为自然基频参数的全局方差,α是系统第一预设域值。
[0070] 在某些实施方式中,所述频谱参数获取模块具体用于:
[0071] 从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的频谱模型
[0072] 对所述各基本合成单元的频谱模型 根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的频谱模型序列;
[0073] 根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的频谱模型序列,获取所述合成文本的频谱模型序列;
[0074] 从所述预置模板库中获取所述固定成分文本所对应的自然语音段的频谱参数序列Ygs;
[0075] 基于公式
[0076] 获取所述合成文本的合成频谱参数序列;
[0077] 其中, 是合成文本对应的频谱模型序列的似然度总和,λ是所述概率模型的模型参数,包括计算动态参数的窗函数矩阵W,频谱模型序列的均值Ms和协方差矩阵Us;Cs为待生成的语音合成频谱参数;
[0078] β(Cgs-Ygs)T(Cgs-Ygs)ugs-1用于描述生成的合成频谱参数序列和自然语音段的频谱-1参数序列的差值,其中,Ygs为固定成分文本的自然频谱参数,ugs 为自然频谱参数的全局方差,β是系统第二预设域值。
[0079] 从以上技术方案可以看出,本发明实施例提供的一种语音合成方法和语音合成系统,先确定固定成分文本的合成时长参数和可变成分文本的合成时长参数,然后据此,再确定合成文本的合成基频参数序列和合成频谱参数序列,最后根据固定成分文本及可变成分文本的合成时长参数、合成基频参数序列和合成频谱参数序列生成连续语音信号,即固定成分文本和可变成分文本采用同样的方式生成语音信号,保持了一致性,同时也提高语音的合成音质和自然度。

附图说明

[0080] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0081] 图1为本发明实施例提供的一种语音合成方法的流程示意图;
[0082] 图2为本发明实施例提供的一种语音合成系统的结构示意图。

具体实施方式

[0083] 本发明实施例提供了一种语音合成方法和语音合成系统,用于提高语音的合成音质和自然度。
[0084] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0085] 以下分别进行详细说明。
[0086] 请参考图1,图1为本发明实施例提供的一种语音合成方法的流程示意图;其中,所述方法包括:
[0087] 步骤101、获取合成文本;
[0088] 步骤102、将所述合成文本划分为固定成分文本和可变成分文本;
[0089] 在某些实施方式中,语音合成系统获取用户输入的合成文本,并将其进行划分,其中,固定成分文本是指可以从系统音库中找到对应模板的文本字串,可变成分文本是指无法直接获取对应模板的文本字串。
[0090] 步骤103、对所述固定成分文本进行分析,确定所述固定成分文本中各基本合成单元的合成时长参数,得到所述固定成分文本的合成时长参数序列;
[0091] 步骤104、对所述可变成分文本进行分析,确定所述可变成分文本中各基本合成单元的合成时长参数,得到所述可变成分文本的合成时长参数序列;
[0092] 可以理解的是,每一个基本合成单元对应一个合成时长参数,文本中各基本合成单元的合成时长参数形成该文本的合成时长参数序列;另外,由于合成文本可以认为是由固定成分文本和可变成分文本组成,因此步骤103中得到的固定成分文本的合成时长参数序列和步骤104中得到的可变成分文本的合成时长参数序列可以认为是合成文本的合成时长参数序列。
[0093] 步骤105、根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成基频参数序列;
[0094] 步骤106、根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成频谱参数序列;
[0095] 步骤107、根据所述固定成分文本的合成时长参数序列、所述可变成分文本的合成时长参数序列、所述合成基频参数序列和所述合成频谱参数序列,生成连续语音信号。
[0096] 由上述步骤101至步骤107可知,本发明实施例提供的一种语音合成方法,先确定固定成分文本的合成时长参数和可变成分文本的合成时长参数,然后据此,再确定合成文本的合成基频参数序列和合成频谱参数序列,最后根据固定成分文本及可变成分文本的合成时长参数、合成基频参数序列和合成频谱参数序列生成连续语音信号,即固定成分文本和可变成分文本采用同样的方式生成语音信号,保持了一致性,同时也提高语音的合成音质和自然度。
[0097] 本发明以下实施例中,分别就如何划分合成文本(步骤102),如何得到合成文本的合成时长参数序列(步骤103和步骤104),如何确定合成文本的合成基频参数序列(步骤105)以及合成频谱参数序列(步骤106),对所述语音合成方法进行具体分析:
[0098] 可以理解的是,在语音合成方法执行前,可以预先在语音合成系统中进行预置模板库的构建,具体地,语音合成系统中可以预先设置有决策树模型以及语音单元合成参数模型的模型库,以及固定成分文本模板库,包括模板标注信息及对应语音信号声学参数特征。这些合成参数模型通常可以是数学统计模型,一般由模型参数(如高斯模型的均值方差等)确定;预置模板库中决策树模型及语音单元合成参数模型可以采用传统模型训练方式获得:首先,根据当前应用环境设计常用语句语料。比如针对银行客服相关业务,系统可以根据客服数据中常见的交互信息,设计银行业务相关的语句语料;第二,由特定发音人根据所述语料录制连续语音信号;第三,根据字词间连贯性的自然发音的韵律对所述连续语音信号进行切分,并对韵律词或韵律短语单元执行相关信息标注。考虑到不同自然发音人具有不同的发音特点,为提高模型的自然度,本实施例中可以采用人工测听的方式确定各韵律词单元;第四,根据基本语音单元(如音素)对所述各韵律词单元的语音段信号进行语音切分,获取各基本语音单元的语音片断。该语音片断的切分可以采取基于声学模型对齐的自动切分方法,也可以通过人工切分方法以提高准确率;最后,步五:统计第i个基本语音单元片断对应语音片断的时长特征,并提取所述语音片断的基频特征矢量以及频谱特征矢量。
[0099] 在某些实施方式中,所述步骤102可以具体为:
[0100] 采用前后向最大分词算法对所述合成文本进行字词划分并得到分词或分词组合;将所述分词或分词组合与预置模板库中的韵律词标注信息进行比较,若所述分词或分词组合与所述韵律词标注信息一致,则确定出所述分词或分词组合为固定成分文本,若否,则确定出所述分词或分词组合为可变成分文本。
[0101] 可以理解的是,在将所述分词或分词组合与预置模板库中的韵律词标注信息进行匹配比较的过程中,考虑到系统分词算法切分所得的分词单元往往较小,而固定成分文本的匹配需要完整匹配,对此系统还可以考虑分词及分词前后相邻单元的组合和预设韵律词标注信息的一致性。比如对“感谢/您/使用/工商/银行”的切分结果输入,系统将确认“感谢/您”的分词组合和预设的韵律词“感谢您”匹配一致。同样地,对“使用”和“银行”韵律词可以从预置模板库中匹配到,所以标注这三个韵律词为固定成分文本,而对于“工商”,则定义为可变成分文本。
[0102] 在某些实施方式中,所述得到所述固定成分文本的合成时长参数序列(步骤103)可以具体为:
[0103] 从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元的时长参数Ti;
[0104] 从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列
[0105] 基于公式 S.T: 生成所述固定成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;
[0106] 其中,S.T: 为第i个基本语音单元所对应的基本合成单元序列的时长约束条件,为所述基本语音单元所对应的第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元总数。
[0107] 可以理解的是,本发明实施例考虑到数据量大小和模拟准确性,采用了高斯模型满足 即该模型由参数均值 以及方差 确定。通过引入自然语音段的时长特征约束,使得生成的语音段的合成参数更好的体现了自然语音的效果,改善了时长的预测效果。
[0108] 在某些实施方式中,所述得到所述可变成分文本的合成时长参数序列(步骤104)可以具体为:
[0109] 从所述预置模板库中获取所述可变成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列
[0110] 基于公式 生成所述可变成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;
[0111] 其中,为第i个基本语音单元中第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元的总数。
[0112] 可以理解的是,本发明实施例中可变成分文本的合成时长参数序列是采用传统的方法获取,即选择模型最大化的变量作为最优时长特征,具体地,满足公式[0113] 另外,本发明实施例中是根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,分别确定合成文本的合成基频参数序列和合成频谱参数序列:
[0114] 所述确定合成文本的合成基频参数序列(步骤106)可以具体为:
[0115] 从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的基频模型
[0116] 对所述各基本合成单元的基频模型 根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的基频模型序列;
[0117] 根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的基频模型序列,获取所述合成文本的基频模型序列;
[0118] 从所述预置模板库中获取所述固定成分文本所对应的自然语音段的基频参数序列Ygf;
[0119] 基于公式
[0120] 获取所述合成文本的合成基频参数序列;
[0121] 其中, 是合成文本对应的基频模型序列的似然度总和,其中,λ是所述概率模型的模型参数,包括计算动态参数的窗函数矩阵W,基频模型序列的均值Mf和协方差矩阵Uf;Cf为待生成的语音合成基频参数矩阵,包括固定成分的合成基频参数矩阵Cgf以及可变成分的合成基频参数矩阵Cuf;
[0122] α(Cgf-Ygf)T(Cgf-Ygf)ugf-1用于描述生成的合成基频参数序列和自然语音段的基频-1参数序列的差值,其中,Ygf为固定成分文本的自然基频参数,ugf 为自然基频参数的全局方差,α是系统第一预设域值。
[0123] 可以理解的是,α用于调整合成基频参数序列的倾向度,α的值越大则合成基频参数序列越接近于所述固定成分文本对应的自然语音段的基频参数序列,则越符合通用模型分布特征。在具体实现中,选择权重a为[0,100]间的数值。
[0124] 另外,通过加权目标函数生成的合成基频参数序列具有如下特征:对可变成分文本其基频参数满足通用基频模型分布,而对于固定成分文本其基频参数在满足基频模型分布的同时还更接近自然语音的特点,具有连贯性。通过自然语音段的基频参数序列的约束生成的合成基频参数序列将比较靠近自然语音段的基频参数序列,改变了传统基于最大似然准则生成的基频参数序列比较平滑,动态起伏感不强、声音沉闷的问题。
[0125] 在某些实施方式中,所述确定合成文本的合成频谱参数序列(步骤107)可以具体为:
[0126] 从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的频谱模型
[0127] 对所述各基本合成单元的频谱模型 根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的频谱模型序列;
[0128] 根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的频谱模型序列,获取所述合成文本的频谱模型序列;
[0129] 从所述预置模板库中获取所述固定成分文本所对应的自然语音段的频谱参数序列Ygs;
[0130] 基于公式
[0131] 获取所述合成文本的合成频谱参数序列;
[0132] 其中, 是合成文本对应的频谱模型序列的似然度总和,λ是所述概率模型的模型参数,包括计算动态参数的窗函数矩阵W,频谱模型序列的均值Ms和协方差矩阵Us;Cs为待生成的语音合成频谱参数;
[0133] β(Cgs-Ygs)T(Cgs-Ygs)ugs-1用于描述生成的合成频谱参数序列和自然语音段的频谱-1参数序列的差值,其中,Ygs为固定成分文本的自然频谱参数,ugs 为自然频谱参数的全局方差,β是系统第二预设域值。
[0134] 可以理解的是,β用于调整合成频谱参数序列的倾向度,β的值越大则优化的合成频谱参数序列越接近于所述固定成分文本对应的自然语音段的频谱参数序列,反之则越符合通用模型分布特征。在具体实现中,选择权重β为[0,100]间的数值。
[0135] 另外,通过加权目标函数生成的合成频谱参数序列具有如下特征,对可变成分文本其频谱参数满足通用频谱模型分布,而对于固定成分文本其频谱参数在满足频谱分布的同时还更接近自然语音的特点,具有连贯性。通过自然自然语音段的频谱参数序列的约束生成的合成频谱参数序列将比较靠近自然语音段的频谱参数序列,改变了传统基于最大似然准则生成的频谱参数序列比较平滑、声音沉闷的问题。
[0136] 由上述可知,本发明实施例提供的一种语音合成方法,先确定固定成分文本的合成时长参数和可变成分文本的合成时长参数,然后据此,再确定合成文本的合成基频参数序列和合成频谱参数序列,最后根据固定成分文本及可变成分文本的合成时长参数、合成基频参数序列和合成频谱参数序列生成连续语音信号,即固定成分文本和可变成分文本采用同样的方式生成语音信号,保持了一致性,同时也提高语音的合成音质和自然度。
[0137] 为便于更好的实施本发明实施例的技术方案,本发明实施例还提供用于实施上述方法的相关系统。其中名词的含义与上述方法中相同,具体实现细节可以参考方法实施例中的说明。
[0138] 请参考图2,图2为本发明实施例提供的一种语音合成系统的结构示意图;其中,所述系统包括:
[0139] 获取模块201,用于获取合成文本;
[0140] 文本划分模块202,用于将所述获取模块201获取的合成文本划分为固定成分文本和可变成分文本;
[0141] 在某些实施方式中,语音合成系统中的获取模块201获取用户输入的合成文本,文本划分模块202将其进行划分为固定成分文本和可变成分文本,其中,固定成分文本是指可以从系统音库中找到对应模板的文本字串,可变成分文本是指无法直接获取对应模板的文本字串。
[0142] 时长参数获取模块203,用于对所述固定成分文本进行分析,确定所述固定成分文本中各基本合成单元的合成时长参数,得到所述固定成分文本的合成时长参数序列;以及对所述可变成分文本进行分析,确定所述可变成分文本中各基本合成单元的合成时长参数,得到所述可变成分文本的合成时长参数序列;
[0143] 可以理解的是,每一个基本合成单元对应一个合成时长参数,文本中各基本合成单元的合成时长参数形成该文本的合成时长参数序列;另外,由于合成文本可以认为是由固定成分文本和可变成分文本组成,因此得到的固定成分文本的合成时长参数序列和得到的可变成分文本的合成时长参数序列可以认为是合成文本的合成时长参数序列。
[0144] 基频参数获取模块204,用于根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成基频参数序列;
[0145] 频谱参数获取模块205,用于根据所述固定成分文本的合成时长参数序列及可变成分文本的合成时长参数序列,确定所述合成文本的合成频谱参数序列;
[0146] 语音信号生成模块206,用于根据所述固定成分文本的合成时长参数序列、所述可变成分文本的合成时长参数序列、所述合成基频参数序列和所述合成频谱参数序列,生成连续语音信号。
[0147] 由上述可知,本发明实施例提供的一种语音合成系统,先确定固定成分文本的合成时长参数和可变成分文本的合成时长参数,然后据此,再确定合成文本的合成基频参数序列和合成频谱参数序列,最后根据固定成分文本及可变成分文本的合成时长参数、合成基频参数序列和合成频谱参数序列生成连续语音信号,即固定成分文本和可变成分文本采用同样的方式生成语音信号,保持了一致性,同时也提高语音的合成音质和自然度。
[0148] 其中,在本发明实施方式下,可以预先在语音合成系统中进行预置模板库的构建,其后根据利用预置模板库进行信息匹配和信息获取,最终得到合成文本的合成时长参数序列、合成文本的合成基频参数序列以及合成频谱参数序列,并据此生成连续语音信号。可以理解的是,所述预置模板库的构建可以参考方法实施例中的相应过程进行具体实现,此处不再具体阐述。
[0149] 在某些实施方式中,所述文本划分模块202,具体用于采用前后向最大分词算法对所述合成文本进行字词划分并得到分词或分词组合;将所述分词或分词组合与预置模板库中的韵律词标注信息进行比较,若所述分词或分词组合与所述韵律词标注信息一致,则确定出所述分词或分词组合为固定成分文本,若否,则确定出所述分词或分词组合为可变成分文本。
[0150] 可以理解的是,在文本划分模块202将所述分词或分词组合与预置模板库中的韵律词标注信息进行匹配比较的过程中,考虑到系统分词算法切分所得的分词单元往往较小,而固定成分文本的匹配需要完整匹配,对此系统还可以考虑分词及分词前后相邻单元的组合和预设韵律词标注信息的一致性。
[0151] 在某些实施方式中,确定固定成分文本的合成时长参数序列时,时长参数获取模块203可以具体用于:
[0152] 从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元的时长参数Ti;
[0153] 从所述预置模板库中获取所述固定成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列
[0154] 基于公式 S.T: 生成所述固定成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;
[0155] 其中,S.T: 为第i个基本语音单元所对应的基本合成单元序列的时长约束条件,为所述基本语音单元所对应的第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元总数。
[0156] 可以理解的是,本发明实施例考虑到数据量大小和模拟准确性,采用了高斯模型满足 即该模型由参数均值 以及方差 确定。通过引入自然语音段的时长特征约束,使得生成的语音段的合成参数更好的体现了自然语音的效果,改善了时长的预测效果。
[0157] 在某些实施方式中,确定所述可变成分文本的合成时长参数序列时,所述时长参数获取模块203还用于:
[0158] 从所述预置模板库中获取所述可变成分文本对应自然语音段中各基本语音单元所对应的基本合成单元序列的合成时长参数模型序列
[0159] 基于公式
[0160] 生成所述可变成分文本的各基本语音单元的基本合成单元序列的合成时长参数序列;
[0161] 其中,为第i个基本语音单元中第j个基本合成单元的时长特征变量,N为所述基本语音单元所对应的基本合成单元的总数。
[0162] 可以理解的是,本发明实施例中可变成分文本的合成时长参数序列是采用传统的方法获取,即选择模型最大化的变量作为最优时长特征。
[0163] 在某些实施方式中,基频参数获取模块204确定合成文本的合成基频参数序列,具体用于:
[0164] 从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的基频模型
[0165] 对所述各基本合成单元的基频模型 根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的基频模型序列;
[0166] 根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的基频模型序列,获取所述合成文本的基频模型序列;
[0167] 从所述预置模板库中获取所述固定成分文本所对应的自然语音段的基频参数序列Ygf;
[0168] 基于公式
[0169] 获取所述合成文本的合成基频参数序列;
[0170] 其中, 是合成文本对应的基频模型序列的似然度总和,其中,λ是所述概率模型的模型参数,包括计算动态参数的窗函数矩阵W,基频模型序列的均值Mf和协方差矩阵Uf;Cf为待生成的语音合成基频参数矩阵,包括固定成分的合成基频参数矩阵Cgf以及可变成分的合成基频参数矩阵Cuf;
[0171] α(Cgf-Ygf)T(Cgf-Ygf)ugf-1用于描述生成的合成基频参数序列和自然语音段的基频参数序列的差值,其中,Ygf为固定成分文本的自然基频参数,ugf-1为自然基频参数的全局方差,α是系统第一预设域值。
[0172] 可以理解的是,α用于调整合成基频参数序列的倾向度,α的值越大则合成基频参数序列越接近于所述固定成分文本对应的自然语音段的基频参数序列,则越符合通用模型分布特征。在具体实现中,选择权重a为[0,100]间的数值。
[0173] 另外,通过加权目标函数生成的合成基频参数序列具有如下特征:对可变成分文本其基频参数满足通用基频模型分布,而对于固定成分文本其基频参数在满足基频模型分布的同时还更接近自然语音的特点,具有连贯性。通过自然语音段的基频参数序列的约束生成的合成基频参数序列将比较靠近自然语音段的基频参数序列,改变了传统基于最大似然准则生成的基频参数序列比较平滑,动态起伏感不强、声音沉闷的问题。
[0174] 在某些实施方式中,频谱参数获取模块205确定合成文本的合成频谱参数序列,具体用于:
[0175] 从所述预置模板库中获取所述固定成分文本及可变成分文本的基本语音单元的各基本合成单元的频谱模型
[0176] 对所述各基本合成单元的频谱模型 根据其所对应合成时长参数 重复相应次数,获取所述基本合成单元的频谱模型序列;
[0177] 根据合成文本的基本语音单元序列,拼接各基本语音单元对应的所述基本合成单元的频谱模型序列,获取所述合成文本的频谱模型序列;
[0178] 从所述预置模板库中获取所述固定成分文本所对应的自然语音段的频谱参数序列Ygs;
[0179] 基于公式
[0180] 获取所述合成文本的合成频谱参数序列;
[0181] 其中, 是合成文本对应的频谱模型序列的似然度总和,λ是所述概率模型的模型参数,包括计算动态参数的窗函数矩阵W,频谱模型序列的均值Ms和协方差矩阵Us;Cs为待生成的语音合成频谱参数;
T -1
[0182] β(Cgs-Ygs)(Cgs-Ygs)ugs 用于描述生成的合成频谱参数序列和自然语音段的频谱-1参数序列的差值,其中,Ygs为固定成分文本的自然频谱参数,ugs 为自然频谱参数的全局方差,β是系统第二预设域值。
[0183] 可以理解的是,β用于调整合成频谱参数序列的倾向度,β的值越大则优化的合成频谱参数序列越接近于所述固定成分文本对应的自然语音段的频谱参数序列,反之则越符合通用模型分布特征。在具体实现中,选择权重β为[0,100]间的数值。
[0184] 另外,通过加权目标函数生成的合成频谱参数序列具有如下特征,对可变成分文本其频谱参数满足通用频谱模型分布,而对于固定成分文本其频谱参数在满足频谱分布的同时还更接近自然语音的特点,具有连贯性。通过自然自然语音段的频谱参数序列的约束生成的合成频谱参数序列将比较靠近自然语音段的频谱参数序列,改变了传统基于最大似然准则生成的频谱参数序列比较平滑、声音沉闷的问题。
[0185] 由上述可知,本发明实施例提供的一种语音合成系统,先确定固定成分文本的合成时长参数和可变成分文本的合成时长参数,然后据此,再确定合成文本的合成基频参数序列和合成频谱参数序列,最后根据固定成分文本及可变成分文本的合成时长参数、合成基频参数序列和合成频谱参数序列生成连续语音信号,即固定成分文本和可变成分文本采用同样的方式生成语音信号,保持了一致性,同时也提高语音的合成音质和自然度。
[0186] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统及系统中的单元模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0187] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0188] 以上对本发明所提供的一种语音合成方法和语音合成系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。