著录项信息
专利名称 | 基于韵律特征的语音合成方法 |
申请号 | CN200710071613.4 | 申请日期 | 2007-01-09 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2007-07-18 | 公开/公告号 | CN101000765 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G10L13/00 | IPC分类号 | G;1;0;L;1;3;/;0;0;;;G;1;0;L;1;3;/;0;2;;;G;1;0;L;1;3;/;0;4查看分类表>
|
申请人 | 黑龙江大学 | 申请人地址 | 黑龙江省哈尔滨市南岗区学府路74号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 黑龙江大学 | 当前权利人 | 黑龙江大学 |
发明人 | 张鹏;王丽红 |
代理机构 | 哈尔滨市哈科专利事务所有限责任公司 | 代理人 | 祖玉清 |
摘要
本发明提供了一种能够丰富和改进韵律控制方法、进一步提高汉语语音合成自然度的基于韵律特征的语音合成方法。它包括以下计算机可实现的步骤:文本处理程序,合成基元选取程序和语音合成处理程序,文本处理程序包括文本规整步骤、韵律结构分析步骤和语言学处理步骤,合成基元选取程序包括确定基元步骤、匹配步骤、拼接步骤和优化筛选步骤,语音合成处理程序包括短语单元的基频轮廓生成步骤、音节单元的基频轮廓生成步骤和语调叠加步骤。本发明从汉语的语音特征、汉语的声调与特点和汉语的语调及模式出发,构筑套完整的基于韵律特征的语音合成方法,其中各步骤及模块均为计算机程序处理过程,通用性强,可移植性强,适用范围及场合广。
1.一种基于韵律特征的语音合成方法,其特征在于它包括以下计算机可实现的步骤:
文本处理步骤,包括:
文本规整步骤,将输入的文本字符序列按照预先设置的特殊符号表转换成合法读音字符序列,输出合法读音字符序列送给韵律结构分析步骤;
韵律结构分析步骤,将接收到的合法读音字符序列送入韵律结构分析模块进行处理,根据预先设置的分词规则、韵律结构分析规则对合法读音字符序列标注韵律结构信息,输出标注了韵律结构信息的标注字符序列送给语言学处理步骤;
语言学处理步骤,将接收到的标注字符序列送入语言学处理模块进行处理,逐字按照预先设置的拼音表、韵律规则进行字音转换,将输入的汉字符映射为拼音码,将韵律结构信息标注映射为相应韵律信息,输出处理后的标注拼音码序列送给合成基元选取步骤和语音合成处理步骤;
合成基元选取步骤,包括:
确定基元步骤,将送入的标注拼音码序列作为目标序列送入统计模块进行处理,采用统计方法、根据索引从语音库中选出与目标序列对应的候选基元序列,并输出候选基元序列给匹配步骤;
匹配步骤,将确定基元步骤送出的候选基元序列送入韵律匹配代价基元选取模块,根据韵律匹配代价从语音库中选出与单个目标序列在韵律特征上匹配的候选基元,输出给拼接步骤;
拼接步骤,将匹配步骤送出的候选基元序列送入韵律拼接代价基元选取模块,根据拼接代价判断相邻的候选基元在韵律特征上是否满足要求,从中选出满足拼接代价要求的候选基元,输出给优化筛选步骤;
优化筛选步骤,将拼接步骤送出的候选基元序列送入韵律匹配代价与韵律拼接代价的基元选取模块,根据韵律匹配代价与韵律拼接代价找出在韵律特征上使匹配代价与韵律拼接代价的加权和最小的路径上的候选基元,最后输出优化筛选的基元序列送给语音合成处理步骤;
语音合成处理步骤,包括:
短语单元的基频轮廓生成步骤,将输入的标注拼音码序列从头至尾依次提取韵律信息,判断是否为短语信息;如果是,则作为短语命令送入给短语控制机构,同时根据这个短语韵律信息,从韵律模板库中索引出相应的短语单元韵律模板,生成并输出短语单元的基频轮廓曲线,并保留在缓冲区中;否则继续查找短语信息;以此类推,直至将整个标注拼音码序列搜索完毕,输出所输入的标注拼音码序列的全部短语单元的基频轮廓曲线;
音节单元的基频轮廓生成步骤,将输入的标注拼音码序列从头至尾依次提取韵律信息,判断是否为音节信息;如果是,则作为音节命令输入给音节控制机构,同时根据这个音节韵律信息,从韵律模板库中索引出相应的音节单元韵律模板,生成并输出音节单元的基频轮廓曲线,并保留在缓冲区中;否则继续查找音节信息;以此类推,直至将整个标注拼音码序列搜索完毕,输出所输入的标注拼音码序列的全部音节单元的基频轮廓曲线;
语调基频轮廓叠加步骤,将基频最小值Fmin、短语控制机构送出的短语单元的基频轮廓和音节控制机构送出的音节单元的基频轮廓,依照汉语语调模型、按序位、幅度大小和时间长短进行对数叠加;如果判断标注拼音码序列没有处理完毕,则继续执行;否则,生成并输出所输入的标注拼音码序列的语调基频轮廓曲线给后续的信号处理步骤。
2.根据权利要求1所述的基于韵律特征的语音合成方法,其特征在于所述的韵律结构分析模块包括以下几个子模块:
分词和词性标注子模块,用以对输入的合法读音字符序列与预先设置的分词规则进行比较,将字符序列根据分词规则标注分词信息和词性信息,输出标注了分词信息和词性信息的字符序列送给韵律结构预测子模块;
韵律结构预测子模块,用以对送入的标注了分词信息和词性信息的字符序列构建韵律结构预测树,并根据韵律结构预测树来确定韵律边界位置,对目标语句确定输出语句的韵律组块及其层级结构,输出标注了韵律层次结构的标注字符序列给语言学处理步骤。
3.根据权利要求1所述的基于韵律特征的语音合成方法,其特征在于所述的韵律结构分析规则通过以下几个处理步骤来设置:
将语句中在句法上距离最近的语法词两两连接为韵律节点,构成韵律词;
再将在句法上距离最近的韵律词两两连接为更高一个层级的韵律节点,构成韵律短语;
重复连接构建直到在句法上仅有一个最高层级的节点,构成语调短语;
将同层的每两个相邻的节点之间划分为韵律边界或一个韵律停顿,则构建成为韵律结构预测树。
4.根据权利要求1所述的基于韵律特征的语音合成方法,其特征在于所述的语言学处理模块进一步包括以下几个子模块:
音变、变调分析子模块,用以将送入的标注字符序列进行音变现象分析,将每个词组的字符序列按照二字词、三字词和四字词分别与文本处理规则数据库中的音变、变调规则表进行匹配比对,如果完全匹配则进行相应的转换处理,将应发生音变或变调现象的字或音节标注为正确的音调,输出转换后的字符序列,否则输出原字符序列,输出的字符序列送给停顿分析子模块;
停顿分析子模块,用以将音变、变调分析模块送入的标注字符序列根据文本处理规则数据库中的停顿规则按照韵律边界的不同,从句首向句尾依次将字符序列中韵律边界标记与韵律词标记、韵律短语标记和语调短语标记进行匹配,如果满足其一就在其韵律边界标记处插入与韵律边界标记等价的停顿;否则字符序列保持不变并输出,输出的字符序列送给强调、重音分析子模块;
强调、重音分析子模块,用以将停顿分析子模块送入的标注字符序列根据常规重音分布规律标注重音位置,并按照韵律结构预测树韵律边界的不同标注重音位置,根据预先设置的韵律规则中的强调、重音规则修正停顿的时间长度或者韵律边界的字词的音高或时长,输出的字符序列送给字音转换子模块;
字音转换子模块,用以将强调、重音分析子模块送入的字符序列从句首向句尾依次将字符与文本处理数据库中的拼音表进行匹配,如果满足匹配要求就将该字符用与其对应的拼音码替代,直至将整个文本字符替代完毕,输出标注拼音码序列送给基元选取步骤和语音合成处理步骤。
5.根据权利要求4所述的基于韵律特征的语音合成方法,其特征在于所述的强调、重音分析子模块中标注重音位置步骤又包括以下计算机可以实现的步骤:将得到的字符序列按照韵律结构预测树内部两个分叉之间的句法关系,以及常规重音分布规律,给每个二分叉韵律成分标注相对的重、轻地位;计算每个韵律词最后标注的重度指标,确定每个韵律词的重度;将各个韵律词的重度标注于字符序列上,输出标注后的字符序列。
6.根据权利要求1所述的一种基于韵律特征的语音合成方法,其特征在于所述的语调基频轮廓曲线,其数学表达式如下:
其中:
Fmin:句子的基频最小值;
i:短语的序号;I:短语的数目;Ri:第i个短语衰减系数,经验值为3/s;T0i:第i个短语控制命令发生的时间;Api:第i个短语控制命令的幅度;Gpi(t):表示不同的短语调型;
j:音节的序号;J:音节的数目;Aaj:第j个音节控制命令的幅度;T1j:第j个音节控制命令开始的时间;T2j:第j个音节控制命令结束的时间;Bj:第j个音节控制命令在音节控制机构下的固有角度值,经验值为20/s;θj:第j个音节控制命令的音节成分的最大允许值,经验值为0.9;Gaj(t):表示不同的音节调型;
对于每个短语的具体调型Gpi(t),根据标注的拼音码序列中的短语信息确定短语调型,其短语调型函数采用短语单元韵律模板直接生成短语的基频轮廓曲线;
对于每个音节的具体调型Gaj(t),根据标注拼音码序列中的音节信息确定音节调型,其音节调型函数采用音节单元韵律模板直接生成音节的韵律基频曲线,或利用曲线方程
2 3 4
Gaj(t)=a0+a1t+a2t+a3t+a4t 生成拟合效果较为理想的音节单元的基频轮廓曲线。
7.根据权利要求1所述的基于韵律特征的语音合成方法,其特征在于所述语调模型参数由计算机程序自动生成,算法的第一步是确定短语命令参数和基频最小值Fmin,然后,由基频最小值Fmin和短语命令参数模拟出准确的语调基频轮廓曲线,短语命令参数优化好后,再计算音节命令参数;单独的音节从左到右处理,对每个音节都做局部的基频曲线模拟。
基于韵律特征的语音合成方法\n(一)技术领域\n[0001] 本发明涉及语音信号处理技术领域,具体涉及到语音合成技术中一种基于韵律特\n征的语音合成方法。\n(二)背景技术\n[0002] 现有的汉语语音合成方法是以字为切分单位的单字式的字音转换,或是以语法词\n为切分单位的词组式的文语转换。事实上,人在说话时不是以字或语法词为切分单位,而是\n以韵律词为切分单位。前面两种语音合成方法会导致计算机及语音合成装置所输出的合成\n语音自然度相对较低,“机器味”太浓,好像是在“蹦字”发音,无法达到用户可以接受的程\n度,从而制约了这项技术大规模地进入市场。其原因是语音合成及其韵律控制存在以下几\n个方面的问题:①连续的合成语音的自然度有待进一步提高;②文本分析过程应当能够反\n映自然语音中韵律变化,来丰富合成语音的表现力;③语音合成的韵律控制过程应当符合\n自然语音的韵律规律。\n[0003] 而现有的语音合成技术中有关基元选取方法,一般是采用统计的基元选取方法或\n规则的基元选取方法。统计的基元选取方法适用于大范围的基元选取,而规则的基元选取\n方法适用于一些特殊情况下的基元选取。实践中发现,汉语的韵律模型及韵律控制极为复\n杂,基于一种方式的基元选取方法在目前的情况下根本无法满足语音合成对韵律特征及其\n韵律控制的要求。因为汉语的韵律是多变的,即使同一个句子也会由于不同的语境而产生\n不同的韵律组合。所以,必须寻求更好的方法,以适应多变的韵律变化。\n(三)发明内容\n[0004] 本发明的目的在于提供一种能够丰富和改进韵律控制方法,进一步提高汉语合成\n语音自然度的基于韵律特征的语音合成方法。\n[0005] 本发明的目的是这样实现的:它包括以下计算机可实现的步骤:\n[0006] 文本处理程序,包括:\n[0007] 文本规整步骤,将输入的文本字符序列按照预先设置的特殊符号表转换成合法读\n音字符序列,输出合法读音字符序列送给韵律结构分析步骤;\n[0008] 韵律结构分析步骤,将接收到的合法读音字符序列送入韵律结构分析模块进行处\n理,根据预先设置的分词规则、韵律结构分析规则对合法读音字符序列标注韵律结构信息,\n输出标注了韵律结构信息的标注字符序列送给语言学处理步骤;\n[0009] 语言学处理步骤,将接收到的标注字符序列送入语言学处理模块进行处理,逐字\n按照预先设置的拼音表、韵律规则进行字音转换,将输入的汉字符映射为拼音码,将韵律结\n构信息标注映射为相应韵律信息,输出处理后的标注拼音码序列送给合成基元选取程序;\n[0010] 合成基元选取程序,包括:\n[0011] 确定基元步骤,将送入的标注拼音码序列作为目标序列送入统计模块进行处理,\n采用统计方法、根据索引从语音库中选出与目标序列对应的候选基元序列,并输出候选基\n元序列给匹配步骤;\n[0012] 匹配步骤,将确定基元步骤送出的候选基元序列送入韵律匹配代价基元选取模\n块,根据韵律匹配代价从语音库中选出与单个目标序列在韵律特征上匹配的候选基元,输\n出候选基元序列送给拼接步骤;\n[0013] 拼接步骤,将匹配步骤送出的候选基元序列送入韵律拼接代价基元选取模块,根\n据拼接代价判断相邻的候选基元在韵律特征上是否满足要求,从中选出满足拼接代价要求\n的候选基元,最后输出候选基元序列送给优化筛选步骤;\n[0014] 优化筛选步骤,将拼接步骤送出的候选基元序列送入韵律匹配代价与韵律拼接代\n价的基元选取模块,根据韵律匹配代价与韵律拼接代价找出在韵律特征上使匹配代价与韵\n律拼接代价最小的路径上的候选基元,最后输出优化筛选的基元序列送给语音合成处理程\n序;\n[0015] 语音合成处理程序,包括:\n[0016] 短语单元的基频轮廓生成步骤,将输入的标注拼音码序列从头至尾依次提取韵律\n信息,判断是否为短语信息;如果是,则作为短语命令送入给短语控制机构,同时根据这个\n短语韵律信息,从韵律模板库中索引出相应的短语单元韵律模板,生成并输出短语单元的\n基频轮廓曲线,并保留在缓冲区中;否则继续查找短语信息;以此类推,直至将整个标注拼\n音码序列搜索完毕,输出短语单元的基频轮廓曲线;\n[0017] 音节单元的基频轮廓生成步骤,将输入的标注拼音码序列从头至尾依次提取韵律\n信息,判断是否为音节信息;如果是,则作为音节命令输入给音节控制机构,同时根据这个\n音节韵律信息,从韵律模板库中索引出相应的音节单元韵律模板,生成并输出音节单元的\n基频轮廓曲线,并保留在缓冲区中;否则继续查找音节信息;以此类推,直至将整个标注拼\n音码序列搜索完毕,输出音节单元的基频轮廓曲线;\n[0018] 语调叠加步骤,将短语控制机构送出的短语单元的基频轮廓、音节控制机构送出\n的音节单元的基频轮廓和最小基频值Fmin,依照汉语语调模型、按序位、幅度大小和时间长\n短进行对数叠加;如果判断标注拼音码序列没有处理完毕,则返回继续执行;否则,生成并\n输出语调基频轮廓曲线给后续的信号处理步骤。\n[0019] 本发明还有这样一些技术特征:\n[0020] 1、所述的韵律结构分析模块包括以下几个子模块:\n[0021] 分词和词性标注子模块,用以对输入的合法读音字符序列根据预先设置的分词规\n则进行比较,将字符序列根据分词规则标注分词信息和词性信息,输出标注了分词信息和\n词性信息的字符序列送给韵律结构预测子模块;\n[0022] 韵律结构预测子模块,用以将送入的标注分词信息和词性信息的字符序列构建韵\n律结构预测树,并根据韵律结构预测树来确定韵律边界位置,对目标语句确定输出语句的\n韵律组块及其层级结构,输出标注韵律层次结构的标注字符序列给语言学处理步骤;\n[0023] 2、所述的韵律结构分析规则进一步包括以下几个处理步骤:\n[0024] 将语句中在句法上距离最近的语法词两两连接为韵律节点,构成韵律词;\n[0025] 再将在句法上距离最近的韵律词两两连接为更高一个层级的韵律节点,构成韵律\n短语;\n[0026] 重复连接构建直到在句法上仅有一个最高层级的节点,构成语调短语;\n[0027] 将同层的每两个相邻的节点之间划分为韵律边界或一个韵律停顿,则构建成为韵\n律结构预测树;\n[0028] 3、所述的语言学处理模块进一步包括以下几个子模块:\n[0029] 音变、变调分析子模块,用以将送入的标注字符序列进行音变现象分析,将每个词\n组的字符序列按照二字词、三字词和四字词分别与文本处理规则数据库中的音变、变调规\n则表进行匹配比对,如果完全匹配则进行相应的转换处理,将应发生音变或变调现象的字\n或音节标注为正确的音调,输出转换后的字符序列,否则输出原字符序列,输出的字符序列\n送给停顿分析子模块;\n[0030] 停顿分析子模块,用以将音变、变调分析模块送入的标注字符序列根据文本处理\n规则数据库中的停顿规则按照韵律边界的不同,从句首向句尾依次将字符序列中韵律边界\n标记与韵律词标记、韵律短语标记和语调短语标记进行匹配,如果满足其一就在其韵律边\n界标记处插入与韵律边界标记等价的停顿;否则字符序列保持不变并输出,输出的字符序\n列送给强调、重音分析子模块;\n[0031] 强调、重音分析子模块,用以将停顿分析子模块送入的标注字符序列根据常规重\n音分布规律标注重音位置,并按照韵律结构预测树韵律边界的不同标注重音位置,根据预\n先设置的韵律规则中的强调、重音规则修正停顿的时间长度或者韵律边界的字词的音高或\n时长,输出的字符序列送给字音转换子模块;\n[0032] 字音转换子模块,用以将强调、重音分析子模块送入的字符序列从句首向句尾依\n次将字符与文本处理数据库中的拼音表进行匹配,如果满足匹配要求就将该字符用与其对\n应的拼音码替代,直至将整个文本字符替代完毕,输出标注拼音码序列送给语音合成处理\n程序;\n[0033] 4、所述的强调、重音分析子模块中标注重音位置步骤又包括以下计算机可以实现\n的步骤:将得到的字符序列按照韵律结构预测树内部两个分叉之间的句法关系,以及常规\n重音分布规律,给每个二分叉韵律成分标注相对的重、轻地位;计算每个韵律词最后标注的\n重度指标,确定每个韵律词的重度;将各个韵律词的重度标注于字符序列上,输出标注后的\n字符序列;\n[0034] 5、所述的统计模块的处理过程为:\n[0035] 首先设置条件概率阈值,然后设置候选基元数量最大值M;\n[0036] 对于输入的目标基元序列以及与它对应的拼音码序列,从头至尾、逐一计算每个\n目标基元和它对应的拼音码基元在语音库中的条件概率;\n[0037] 判断如果其条件概率大于或等于预先设置的阈值时,则从语音库选出候选基元保\n留在缓存中,否则,继续在语音库中查找候选基元,然后重新计算下一目标基元条件概率;\n[0038] 当找到M个基元时就停止查找,否则对整个语音库进行查找;\n[0039] 以此类推,逐一将输入的目标基元查找完毕,输出保留在缓存中的候选基元序列\n并退出模块;\n[0040] 所述的韵律匹配代价基元选取模块的处理过程为:\n[0041] 首先,设置目标基元的候选基元数量最大值M,调入一个目标基元p维韵律特征参\n数向量的p值;\n[0042] 将输入的标注了韵律特征参数的拼音码序列从头至尾、逐一计算每个基元的p维\n韵律特征参数向量与语音库中每个基元的p维韵律特征参数向量之差的加权和,直到将整\n个语音库中搜索完毕,从中选出加权和最小的前M个候选基元保留在缓存中;\n[0043] 以此类推,直至将整个输入的文本搜索计算完毕,输出保留在缓存中的候选基元\n并退出模块;\n[0044] 所述的韵律拼接代价基元选取模块的处理过程为:\n[0045] 首先,设置候选基元数量最大值M,然后设置候选基元的p维韵律特征参数向量的\np值大小;\n[0046] 按照输入的拼音码序列的顺序从头至尾、逐一计算每个候选基元的p维韵律特征\n参数向量与它前一个候选基元的p维韵律特征参数向量之差的加权和,从中选出加权和最\n小的基元保留在缓存中;\n[0047] 以此类推,直至将整个输入文本序列搜索计算完毕,输出保留在缓存中的基元并\n退出模块;\n[0048] 所述的韵律匹配代价与韵律拼接代价的基元选取模块的处理过程为:\n[0049] 首先设置候选基元数量最大值M,然后设置候选基元的p维韵律特征参数向量的p\n值大小;\n[0050] 按照输入的拼音码序列的顺序从头至尾、逐一计算每个候选基元的p维韵律特征\n参数向量的匹配代价和拼接代价的加权和,保留在缓存中;\n[0051] 以此类推,直至将整个输入文本搜索计算完毕,从满足条件的候选基元中优化筛\n选出使加权和最小的路径上的候选基元作为最后优化筛选的基元输出。\n[0052] 6、所述的基频轮廓曲线,其数学表达式如下:\n[0053] \n[0054] \n[0055] 或\n[0056] \n[0057] 或\n[0058] 其中:\n[0059] Fmin:句子的基频最小值;\n[0060] i:短语的数目;Ri:第i个短语衰减系数,经验值为3/s;T0i:第i个短语控制命令\n发生的时间;Api第i个短语控制命令的幅度;\n[0061] j:音节或韵律词的数目;Aaj:第j个音节控制命令的幅度:T1j:第j个音节控制命\n令开始的时间;T2j:第j个音节控制命令结束的时间;Bj:第j个音节控制命令在音节控制\n机构下的固有角度值,经验值为20/s;θj:第j个音节控制命令的音节成分的最大允许值,\n(m)\n经验值为0.9;Gqj 代表不同的音节调型。\n[0062] 7、所述的模型参数由计算机程序自动生成,算法的第一步的是确定短语命令参数\n和基频最小值Fmin,然后,由基步最小值Fmin和短语参数模拟出准确的F0曲线,短语单元的\n参数优化好后,再计算音节单元的参数;单独的韵律词从左到右处理,对每个韵律词都做局\n部的基顿曲线模拟。\n[0063] 其中,所述的预先设置的分词规则为:将输入文本的合法读音字符序列从句首向\n句尾、逐字假设分割点形成词,从当前字向后进行最大词匹配处理确定词边界;而本发明将\n汉语的韵律结构主要分为由底到高的三个基本层级:韵律词、韵律短语和语调短语,并且它\n们之间的关系在韵律上是按照树状的层级结构、有序地排列。一个语调短语包括一个或一\n个以上的韵律短语,一个韵律短语包括一个或一个以上的韵律词,一个韵律词包括一个或\n一个以上的语法词。\n[0064] 而基元选取步骤中所述的韵律匹配代价为在预先设置的语音库中当前候选基元\n的韵律特征向量与其目标基元韵律特征向量之差的加权和,其中的权值满足归一化条件;\n韵律拼接代价为任意两个候选基元韵律拼接代价为当的候选基元的韵律特征向量与其相\n邻的前一个候选基元韵律特征向量之差的加权和,其中的权值满足归一化条件;而韵律匹\n配代价与韵律拼接代价的加权和最小路径的步骤为Viterbi寻优算法;优化筛选也可以为\nViterbi寻优算法。\n[0065] 计算机对键入的特定文本信息分析并转换成含有韵律结构信息的发音符号序列,\n根据韵律规则划分的短语和词语结构,标注语句的短语位置和个数、各短语强度、音节个\n数、音节调号属性、音节清/浊音长度、音节调域幅度和整句基调值等参数;用人工和参数\n优化算法调节并定量提取有关控制参量,按模型分层综合,计算出成句基频轮廓数据;然\n后,根据基频输出值和对应的时长参数,最后采用PSOA方法对音库中各音节波形韵律进行\n调整,拼接合成连续语音。\n[0066] 本发明的有益优点有:\n[0067] (1)采用韵律分层技术对要合成的句子文本进行有效的韵律切分,合成的声音更\n加自然、流畅;\n[0068] (2)采用韵律分层技术可以更好地反映韵律变化复杂多变的要求,符合自然语音\n的韵律要求。\n[0069] (3)采用韵律分层技术,为以后的语音基元选取提供了方便;\n[0070] (4)采用韵律分层技术可以简化后期语音合成的韵律控制;\n[0071] (5)提出了基于韵律特征的汉语语音合成基元的选取方法,为语音合成系统提供\n了更加优化的候选基元;\n[0072] (6)将韵律特征作为基元选取的重要指标,符合自然语音的韵律要求,同时降低了\n后期的语音合成韵律控制的难度;\n[0073] (7)将基于统计的基元选取方法和韵律特征基元选取方法相结合,可以更好地满\n足韵律变化复杂多变的要求;\n[0074] (8)从输入文本的标注拼音码序列中得到短语和音节的韵律信息,来生成语调基\n频轮廓音符合自然语音的韵律结构要求;\n[0075] (9)将短语单元的基频轮廓和音节单元的基频轮廓分别处理可以准确地确定短语\n单元、音节单元的时间序位;\n[0076] (10)采用短语单元韵律模板和音节单元韵律模板可以简化短语单元、音节单元的\n基频轮廓的生成过程。同时,可以更好地反映韵律变化复杂多变的要求;\n[0077] (11)将短语控制机构和音节单元控制机构看作衰减的二阶振荡系统,符合人发音\n器官的生理特性。\n[0078] 汉语不同于其它西方语系,表现在语法结构、语法规则、声学特性、韵律结构等多\n个方面。首先,汉语是一字一音,即单音节字;其次,汉语是声调语言,声调具有辨义作用,每\n个字都有固定的音调(基频形状)。而且,字与字之间的音调前后彼此互相影响会发生变\n异,甚至失去了原有的调型,即出现协同发音现象(音变现象)。同时,连续语句的发音中\n间还会有短暂的停顿。每个人说话都有一个基本频率,称作基频,它体现了说话人的音调高\n低,此外,人们说话还有声音大小的区别等等。在汉语的文语转换(TTS)系统中,对语音基\n频、时长、幅度等韵律信息的预测、分析和控制称作韵律控制。针对这种情况,发明人从汉语\n的语音特征出发,研究汉语的声调与特点、汉语的语调及模式,构筑了一套基于韵律特征的\n语音合成方法。\n[0079] 语音识别和语音合成技术是实现人机语音交互的两项关键技术,它能使电脑象人\n一样具有“能说会听”的能力,是现代信息产业的重要竞争市场。研究语音合成技术的目的\n是制造一种会说话的机器,将文本信息转换成为语音。而本发明通过对汉语韵律结构以及\n汉语语音合成韵律控制方法的研究,揭示了汉语的韵律结构与韵律规则和模型之间的内在\n联系,丰富和改进了韵律控制方法,进一步提高了汉语语音合成的自然度。本发明对汉语的\n分析处理方法合理实用,其中各步骤及模块均为计算机程序处理过程,通用性强,可移植性\n强,适用范围及场合广,是新一代的语音合成处理技术。\n(四)附图说明\n[0080] 图1为文语转换系统示意图;\n[0081] 图2为文本处理框图;\n[0082] 图3为文本处理流程图;\n[0083] 图4为汉语的韵律层级结构示意图;\n[0084] 图5为韵律结构预测树示意图;\n[0085] 图6为基于韵律特征的语音合成基元选取方法框图;\n[0086] 图7为统计方法的基元选取流程图;\n[0087] 图8为匹配代价方法的基元选取流程图;\n[0088] 图9为拼接代价方法的基元选取流程图\n[0089] 图10为匹配代价与拼接代价基元选取方法路径示意图;\n[0090] 图11为汉语语调基频轮廓生成模型框图;\n[0091] 图12为汉语语调基频轮廓生成框图;\n[0092] 图13为汉语语调基频轮廓生成流程图;\n[0093] 图14为衰减特性的短语基频曲线;\n[0094] 图15为上扬特性的音节基频曲线;\n[0095] 图16为韵律特征控制流程图;\n[0096] 图17为本发明实施例的计算机硬件系统框图。\n(五)具体实施方式\n[0097] 下面结合附图和具体实施例对本发明作进一步的详细说明:\n[0098] 结合图1,本发明包括以下计算机可实现的步骤:\n[0099] 文本处理程序,包括:\n[0100] 文本规整步骤,将输入的文本字符序列按照预先设置的特殊符号表转换成合法读\n音字符序列,输出合法读音字符序列送给韵律结构分析步骤;\n[0101] 韵律结构分析步骤,将接收到的合法读音字符序列送入韵律结构分析模块进行处\n理,根据预先设置的分词规则、韵律结构分析规则对合法读音字符序列标注韵律结构信息,\n输出标注了韵律结构信息的标注字符序列送给语言学处理步骤;\n[0102] 语言学处理步骤,将接收到的标注字符序列送入语言学处理模块进行处理,逐字\n按照预先设置的拼音表、韵律规则进行字音转换,将输入的汉字符映射为拼音码,将韵律结\n构信息标注映射为相应韵律信息,输出处理后的标注拼音码序列送给合成基元选取程序;\n[0103] 合成基元选取程序,包括:\n[0104] 确定基元步骤,将送入的标注拼音码序列作为目标序列送入统计模块进行处理,\n采用统计方法、根据索引从语音库中选出与目标序列对应的候选基元序列,并输出候选基\n元序列给匹配步骤;\n[0105] 匹配步骤,将确定基元步骤送出的候选基元序列送入韵律匹配代价基元选取模\n块,根据韵律匹配代价从语音库中选出与单个目标序列在韵律特征上匹配的候选基元,输\n出候选基元序列送给拼接步骤;\n[0106] 拼接步骤,将匹配步骤送出的候选基元序列送入韵律拼接代价基元选取模块,根\n据拼接代价判断相邻的候选基元在韵律特征上是否满足要求,从中选出满足拼接代价要求\n的候选基元,最后输出候选基元序列送给优化筛选步骤;\n[0107] 优化筛选步骤,将拼接步骤送出的候选基元序列送入韵律匹配代价与韵律拼接代\n价的基元选取模块,根据韵律匹配代价与韵律拼接代价找出在韵律特征上使匹配代价与韵\n律拼接代价最小的路径上的候选基元,最后输出优化筛选的基元序列送给语音合成处理程\n序;\n[0108] 语音合成处理程序,包括:\n[0109] 短语单元的基频轮廓生成步骤,将输入的标注拼音码序列从头至尾依次提取韵律\n信息,判断是否为短语信息;如果是,则作为短语命令送入给短语控制机构,同时根据这个\n短语韵律信息,从韵律模板库中索引出相应的短语单元韵律模板,生成并输出短语单元的\n基频轮廓曲线,并保留在缓冲区中;否则继续查找短语信息;以此类推,直至将整个标注拼\n音码序列搜索完毕,输出短语单元的基频轮廓曲线;\n[0110] 音节单元的基频轮廓生成步骤,将输入的标注拼音码序列从头至尾依次提取韵律\n信息,判断是否为音节信息;如果是,则作为音节命令输入给音节控制机构,同时根据这个\n音节韵律信息,从韵律模板库中索引出相应的音节单元韵律模板,生成并输出音节单元的\n基频轮廓曲线,并保留在缓冲区中;否则继续查找音节信息;以此类推,直至将整个标注拼\n音码序列搜索完毕,输出音节单元的基频轮廓曲线;\n[0111] 语调叠加步骤,将短语控制机构送出的短语单元的基频轮廓、音节控制机构送出\n的音节单元的基频轮廓和基频最小值Fmin,依照汉语语调模型、按序位、幅度大小和时间长\n短进行对数叠加;如果判断标注拼音码序列没有处理完毕,则返回继续执行;否则,生成并\n输出语调基频轮廓曲线给后续的信号处理步骤。\n[0112] 实施例中各步骤及模块、子模块均由计算机程序实现。\n[0113] 同行,程序中语音库及韵律模板库的构建采用常规的方法即可,与一般建立数据\n库的方法相同,这里就不细举。本发明在综合考虑各种因素之后,选择汉语中的最小听辨单\n位—音节作为语音合成的基元,并将语音库中的一个音节存储多个样本,各个样本的轻重\n音及基频曲线也各不相同。\n[0114] 实施例:\n[0115] 1、文本处理程序\n[0116] 1.1、文本规整\n[0117] 结合图2-5,本发明对于输入的文本,通过文本规整步骤进行处理,目的是将输\n入文本中如日期、数字、天气预报、门牌号等一些带有特殊符号的信息,根据正确读法对输\n入文本进行标注;例如:日期“2000-12-12”标注为“2000年12月12日”,“晚间最低气\n温-12℃”标注为“晚间最低气温零下12度”,等等。文本规整装置的输出是合法读音字符\n序列,如表1所示。\n[0118] 表1 特殊符号与输入文本的关系\n[0119] \n序 日\n2\n符 1\n字的 月2 ”\n1 度\n音 2\n读 年 1\n0\n法 0 下\n0\n合 列 2 零\n \n \n”\n月\n“\n作 ”\n读 度\n”- “\n作\n“\n个 读\n”\n二\n℃\n第\n “\n \n”\n年\n“作 ,” ”\n法 读 上 下\n读 ”- 零“ 零“\n号 “ 作 作\n符 个 读 读\n殊 一 ” ”\n+ -\n特 第\n “ “\n \n式\n2\n格 1\n-\n符 2\n1\n字入输 -0002 ℃21- \n型\n类\n符 期 度\n字 日 温\n \n \n[0120] 首先,对输入文本字符逐字进行判断,当文本字符是合法字符时则正常输出,而当\n文本字符是非法字符时进入特殊符号处理过程。特殊符号处理过程中,首先判断文本字符\n是否为日期格式,是则进行日期格式的读音转换,并输出转换后合法读音字符序列;否则继\n续判断是否为温度格式,是则进行温度格式的读音转换,并输出转换后合法读音字符序列;\n否则进行下一步,判断是否为其他特殊字符,以此类推,直至将整个文本字符序列处理完\n毕。\n[0121] 1.2、韵律结构分析\n[0122] 韵律结构分析步骤是将文本借助于如“韵律结构树CART的方法”等方法进行语义\n分析、或韵律结构分析,目的是将一个文本按照语法规则和韵律结构分析规则切分成较小\n的单位,这有利于确定文本的韵律结构。如果按照语义规则对文本进行切分,则切分的最小\n单位是语法词和韵律词;如果是按照韵律结构对文本进行切分,则切分的最小单位是韵律\n词。韵律结构分析步骤的输出是标注的字符序列。\n[0123] 在做韵律结构分析步骤以前,应预先建立文本处理规则数据库。文本处理规则数\n据库包括特殊符号表、分词规则及词典、韵律结构分析规则、韵律规则和拼音表,其中特殊\n符号表是文本中一些特殊符号与其在文本中正确读法的映射规定;分词规则是字与语法词\n之间的映射规定;韵律结构分析规则是将语法词按照韵律层级结构合并成韵律词的规定;\n韵律规则包括音变、变调规则,停顿规则,强调、重音规则,分别解决文本中字与字之间的音\n变现象,韵律成分之间的停顿,以及语义焦点重音的规定;拼音表是文本中每个文字转换成\n与其对应的拼音码的映射规定。建库的方法与一般建立数据库的方法相同,这里就不一一\n细举。\n[0124] 其中标注分词信息步骤为根据分词规则对输入文本进行分词和词性标注,利用分\n词和词性信息查找韵律分析规则实现分词;而韵律结构预测模块是在对目标语句完成句法\n切分和句法标注的基础上,结合最初的韵律组词构建韵律结构预测树,借此预测韵律边界\n位置,确定输出语句的韵律组块及其层级结构。\n[0125] 分词方法是采用正向最大匹配法,即从句首向句尾逐字假设分割点形成词,在确\n定了词边界后从当前字向后按最大词匹配,把句子分成词或词组序列。与本分词法相匹配\n建立了分词词库,词库中包括二字词、三字词和四字词。最大匹配是指按最大匹配后确定不\n可以再分的字符序列的原则,如语句“晚间最低气温零下十度。”经上述正向最大匹配法匹\n配的过程如表2所示:\n[0126] 表2 分词举例\n[0127] \n 步骤 比较 分词结果\n 1 晚间 “晚间”是词\n 2 晚间最 “晚间最”、“间最”不是饲,确定“最”不是词。\n 3 最低 “最低”是词\n 4 最低气 “最低气”、“低气”不是词,确定“气”不是词\n 5 气温 “气温”是词\n 6 气温零 “气温零”、“温零”不是词,确定“零”\n 7 零下 “零下”是词\n 8 零下十 “零下十”、“下十”不是词,确定“十”不是词\n 9 十度 “度”不是词,确定“十度”是词\n 分词的最后结果 晚间/最低/气温/零下/十度/\n[0128] 结合图4可以概括出这样几个韵律结构特点:\n[0129] (1)一个语调短语包含了一个或一个以上的韵律短语;一个韵律短语包含了若干\n个韵律词;而一个韵律词也可以包含了一个或一个以上的语法词;\n[0130] (2)两个语法词在同一个韵律词内部;\n[0131] (3)两个语法词在不同的韵律词内,但在同一个韵律短语内;\n[0132] (4)两个语法词不在同一个韵律短语内。\n[0133] 本发明将汉语的韵律结构主要分为由底到高的三个基本层级:韵律词、韵律短语\n和语调短语,并且它们之间的关系在韵律上是按照树状的层级结构、有序地排列。\n[0134] 利用从文本分析获得的句法信息和词性信息,再根据已经认识的有关韵律与句法\n之间的某种相关性,可以预测合成话语的总体韵律结构框架,包括停顿的位置分布和等级\n的确定,以及重音的位置分布和等级的确定。这种预测的实质,就是首先给每个语法(词)\n边界确立韵律地位,然后给每个韵律词确立重音地位。因此,韵律组词是预测的关键。\n[0135] 综合上面的分析结果,利用韵律预测树可以实现韵律结构的预测,具体方法如\n下:\n[0136] (1)基本步骤\n[0137] 首先,借助韵律结构分析模块对输入文本的句子进行分词和词性标注,利用分词\n和词性信息,查找韵律结构分析规则实现韵律组词;然后,在输入文本句子完成句法切分和\n句法标注的基础上,结合最初的韵律组词构建韵律结构预测树;藉此预测韵律边界位置,确\n定输出语句的韵律组块及其层级结构。\n[0138] (2)预测树的构建方法\n[0139] 预测树的构建综合利用了文本分析时得到的句法、词性和韵律组词信息。它的上\n半部是个倒置的二分叉树,通常汉语语音在韵律组词上有偶分的倾向。首先把语句中在句\n法上距离最近的韵律词两两连接为节点,然后再依此法建立更高层级的韵律节点,同层级\n中的每个节点都代表了它所对应的两个下位树权之间的一个韵律停顿或韵律边界。这样,\n自低层向高层总会找到根节点,从而构建韵律结构树。基于这种二分叉结构,可以实现对一\n个句子韵律层级的预测,即:越是接近根部的节点,它所代表的停顿级别越高,韵律边界也\n就越强。\n[0140] 因此,所述的韵律结构分析规则进一步包括以下几个处理步骤:\n[0141] (1)、将语句中在句法上距离最近的语法词两两连接为韵律节点,构成韵律词;\n[0142] (2)、再将在句法上距离最近的韵律词两两连接为更高一个层级的韵律节点,构成\n韵律短语;\n[0143] (3)、重复连接构建直到在句法上仅有一个最高层级的节点,构成语调短语;\n[0144] (4)、将同层的每两个相邻的节点之间划分为韵律边界或一个韵律停顿,则构建成\n为韵律结构预测树。\n[0145] 1.3、语言学处理\n[0146] 语言学处理模块又包括音变、变调分析子模块、停顿分析子模块、强调、重音分析\n子模块和字音转换子模块,其中音变、变调分析子模块是将输入文本进行音变现象分析。汉\n语的每个音节在单独发音时,都有自己稳定的静态声调。然而在连续语流中,由于每个音节\n都会受到它前后音节的影响,使得它原有的单字声调发生变异,成为“动态声调”,我们把这\n种现象称之为协同发音现象,也叫“音变”现象。其变化的情况可以分为:发生“部分变调”;\n或发生“全部变调”,即失去原有的单字调值;或发生声调融合,即与别的声调连成一体。例\n如,“重量(zhong4liang4)”和“重庆(chong2qing4)”,同一个“重”字在不同的两个词组里\n发音已经完全不相同;再如“爸爸(ba1ba4)”,第一个“爸”的发音已经变为阳平(1声)。\n[0147] 声调的变化与字(音节)所在的词组及它在词组中的位置有关。比如某个音节声\n调在字词、三字词和四字词以及在词中的位置不同,变化也不尽相同。动态声调和静态声调\n直接有内在的联系性和对应性。二字词在汉语中占的比例最高,约为74.3%,是最常用的基\n本语言单位,也是构成三字词和四字词一部分。\n[0148] 音变、变调处理过程采用音变匹配法,即将每个词组字符序列中的二字词、三字词\n和四字词分别与文本处理规则数据库音变、变调规则表中的二字词、三字词和四字词进行\n匹配比对,如果完全匹配则进行相应的转换处理,否则原字符序列保持不变。\n[0149] 表3 变调规则表\n[0150] \n (1)上声+上声→阳平+上声;\n 双音节词的变调规则\n (2)上声+其它声调,平上+其它声调(不变)\n 三音节词变调规则 (1)阴平+阳平+阴平(或阳平、去声)→阳平+阴平+阴平(或阳平、去声);\n (2)阴平+阳平+上声→阴平+去声+上声;\n (3)阳平+阳平+阴平(或去声)→阳平+阴平+阴平(或去声);\n (4)阳平+阳平+阳平(或上声)→阳平+去声+阳平(或上声);\n (5)上声+上声+阴平(或阳平、上声、去声)→阳平+半上+阴平(或阳平、上\n 声、去声);\n (6)去声+去声+其它~去声(53)+去声(31)+其它;\n (1)阴平+轻声,轻声取41降调,例如“他的”;\n 轻声调型规则\n (2)阳平+轻声,轻声取51降调,例如“得了”;\n (3)上声+轻声,轻声取高平调44,例如“好的”;\n (4)去声+轻声,轻声取21降调,例如“对的”;\n 以双音节变调规律为基础,例如可以将前两个音节和后两个音节分别当作双\n 音节词变调规则\n 音节词变调。\n[0151] 停顿分析子模块是将送入的字符序列根据韵律规则中的停顿规则,按照韵律边界\n的不同,插入适当时间长度的停顿(无声段)。其处理过程采用韵律边界匹配法,即从句首\n向句尾依次将字符序列中韵律边界标记与韵律词标记、韵律短语标记和语调短语标记进行\n匹配,如果满足其一就将其韵律边界标记处插入与韵律边界等价的停顿。否则,字符序列保\n持不变。其停顿等级包括:一级停顿、二级停顿、三级停顿和四级停顿,其适用范围如表3和\n表4所示。\n[0152] 表4 停顿与停顿位置、时间间隔列表\n[0153] \n 停顿等级 停顿位置 插入形式的 时间间隔\n 一级停顿 语调短语边界 插入 0.125秒~0.6秒\n 二级停顿 韵律短语边界 插入 0.05秒~0.1秒\n 三级停顿 韵律词组边界 插入 0.0375秒\n 四级停顿 韵律词边界 插入 0.0157秒\n[0154] 强调、重音分析子模块是根据韵律规则中的强调、重音规则,将停顿分析模块的输\n出字符序列中按照韵律边界不同和重音的位置修正停顿(无声段)的时间长度或者韵律边\n界的字词的音高或时长,其适用范围如表4所示。\n[0155] 强调、重音分析子模块的处理过程采用强调、重音匹配法,即:从句首向句尾依次\n将字符序列中强调、重音标记与强调、重音标记表进行匹配,如果满足其一就在其标记处插\n入相应的强调、重音标注等级或词组提高基频、时长。\n[0156] 本发明中语句重音等级的预测借助于韵律预测树实现,利用多重二分叉韵律预测\n树,根据韵律组块内部两个分叉之间句法关系,以及常规重音分布规律,给每个二分叉韵律\n成分赋予相对的轻/重地位;计算每个韵律词最后负载的重度指标,确定每个韵律词的重\n度;根据各个韵律词的重度,输出标注重度信息的字符序列。\n[0157] 表5 重音的区别特征表\n[0158] \n[0159] 注:“+”表示增大,“-”表示减小。\n[0160] 字音转换子模块是将输入文本按照拼音表转换成标注了韵律信息的拼音码序列。\n处理过程为:从句首向句尾依次将文本字符与文本处理规则数据库中的拼音表进行匹配,\n如果满足匹配条件则将该字符用与其对应的拼音码替代,直至将整个文本字符替代完毕。\n输出转换后的拼音码序列给语音合成处理程序。\n[0161] 而后的语音合成处理就可以采用通用的语音合成方法,如采用Viterbi等寻优算\n法实现合成基元选取,再采用PSOLA技术的波形拼接算法进行语音合成,即可输出自然度\n很高的自然语音。\n[0162] 下面对从文本到语音合成韵律标注的映射举例说明:\n[0163] 例如:\n[0164] ·文本:他们的关系本来就一向很不好。\n[0165] ·分词标注后的结果:\n[0166] (名—形(名代{的}—名(名{的}他们的)关系)(副—形本来(副—形就\n(副—形一向(副—形(程副一副很不)好)))))\n[0167] ·韵律标注后的结果:\n[0168] 他们的关系本来\n就一向很不好\n[0169] ·拼音码标注的结果:\n[0170] /r{talmen5}/u{de5}/\nn{guanlxi4}/d{ben3lai2}/d{jiu4}/\nd{yilxiang4}/d{hen3}/a{bu4hao3}/\n[0171] 其中,韵律标注符号见表6。\n[0172] 表6 韵律标注符号\n[0173] \n 标识名称 句式结构 用途与说明\n 句子标识 ... ...表示为句子\n 字词标识 ... ...表示为字词\n 读法标识 XIII 罗马字读法\n123 数字读法\n[0174] \n发\n的\n字\n表 。\n秒 代 读\n毫 别 重\n为 分, 和\n位 1 读\n单 或 常\n, 0 正\n气 气 气 间 、\n法 法 法 法 语 语 语 时 或1 读\n读 读 读 读 句 句 句 表 - 轻\n期 币 址 码 述 问 叹 代 = 为\n日 货 网 页 陈 疑 感 x x 音\n \n \n>\ns\na\n-\ny\n>sa-yas/<1/5/4002>”dmy:et >sa-yas/<98.32$>”ycnerr as/”liame:t >sa-yas/<5P>”页 >ecnet >ecnetnes/<...>noitseu >ecnetnes/<...>yrotalucajad uc en 五 ne q e > >w\n“ “ “ 第 s/ = = /x /<\n=e =e =e “= <.. edo edo = ...\np p p b . m m e >\ny y y u > m x\nt t t s e e e i\n s s s s cn cn cn t =\na a a a e e e k p\n- - - - t t t a m\ny y y y n n n e e\na a a a e e e r \ns s s s s s s b w\n< < < < < < < < <\n \n \n识\n标\n识 识 元\n标 标 基\n气 顿 音\n语 停 发\n \n \n[0175] 2、合成基元选取程序\n[0176] 2.1、基于统计方法的基元选取\n[0177] 结合图6-10,从Bayes原则出发,自然语音被看作一个随机序列。语流中的每一个\n语音基元都是一个具有一定分布的随机变量。在基于大的语音库的TTS系统中,语音合成\n的主要思想是在已知文本序列W=(w1,w2...,wj,...wn)的条件下,求出概率最大的语音基\n元序列V=(v1,v2...,vj,...vn),以达到高自然度、高表现力的要求。对于文本序列W=\n(w1,w2...,wj,...wn)中的某个目标基元wj,在语音库中可能有多个候选的语音基元,记为\n(vj,1,vj,2...,vj,k,...vj,m),其中定义Vj,c为选出的候选基元,vj,k为wj对应的第k个候选\n语音基元,m为其候选基元的个数。基于统计方法的基元选取可以描述为:\n[0178] \n[0179] 由上式可知,基于统计方法的基元选取需要完成二项工作内容:一是计算P(wm|vm,\nk),基于统计的方法就是建立含有大量数据的语音库,对其进行标注,建立选音模型;二是\n建立韵律模型,即计算P(vm,k)。\n[0180] 统计方法的基元选取模块的输入是输入文本及它的拼音码序列。设置概率阈值的\n目的,是为了从语音库中能够选出合适的基元。这个概率阈值的大小是根据概率最大生成\n准则或概率最小生成准则来确定。概率最大生成准则是指条件概率阈值比较大,只有语音\n库中某个基元的条件概率大于或等于这个阈值时才可以作为候选基元,这样在语音库中只\n能选出较少的候选基元来参加优化筛选。概率最小生成准则是指条件概率阈值比较小,只\n要语音库中某个基元的条件概率大于或等于这个阈值就可以作为候选基元。这样,在语音\n库中就可以选出更多的候选基元来参加优化筛选。候选基元是指经过筛选出的、但还要参\n加优化筛选的基元。优化筛选是从候选基元中再筛选出满足韵律特征要求、唯一的基元。概\n率阈值大小可根据优化筛选的实际效果来确定。\n[0181] 设置候选基元数量最大值是为了当候选基元数量较多时,使被选出的候选基元数\n量不能超过这个最大值,通过限定候选基元的数量来加快优化筛选候选基元的速度。例如\n只有满足条件概率阈值的前M个基元可以参加以后的优化筛选。M的大小可根据优化筛选\n时所期望的计算速度来确定,也可对M的大小不加限制。\n[0182] 统计方法的基元选取模块的处理过程是:首先设置条件概率阈值,然后设置候选\n基元数量最大值M。接下来,对于输入的文本序列以及与它对应的拼音码序列,从句首向句\n尾逐一计算每个目标基元在语音库中的条件概率,如果其条件概率满足阈值要求则保留在\n缓存中,否则继续在语音库中查找;当找到第M个基元时就停止查找,否则将整个语音库搜\n索完毕。这样,一个目标基元可以在语音库中选出若干个基元,其数量等于M个或小于M个。\n以此类推,直至将整个输入的文本序列查找完毕。统计方法的基元选取模块的输出是经过\n统计方法筛选出的若干基元组序列。\n[0183] 优化筛选可以直接采用Viterbi等寻优算法来实现,也可以利用后面韵律匹配代\n价和韵律拼接代价的方法来实现。\n[0184] 2.2、基于韵律匹配代价的基元的选取\n[0185] 汉语中由于语音的音联现象,相邻音节、词汇之间在韵律特征和声学特性上相互\n影响。基元的匹配代价反映了当前候选基元的韵律特征与目标基元韵律特征之间的匹程\n度,对于已知的一个文本序列W=(w1,w2...,wj,...wn),拟选定的对应的语音序列为V=\n(v1,v2...,vj,...vn);其中j为语音基元序号,n为文本序列中目标基元的数量。对于文本\n序列W=(w1,w2...,wj,...wn)中的某个目标基元wj,在语音库中可能有多个候选的语音基\n元,记为(vj,1,vj,2...,vj,k,...vj,m),其中定义vj,k为wj对应的第k个候选语音基元,m为\n其候选基元的个数。语音库中的每个候选语音基元,都可以用个p维的韵律特征参数向量\ni\n来描述,其中p为韵律特征参数的个数,k为当前候选基元的序号,则dk\n表示为第k个候选基元的第i个韵律特征参数。对于待合成的目标基元,通过文本分析和\n韵律建模等,可以得到它的目标韵律特征向量 我们定义韵律匹配代价\n为当前候选基元的韵律特征向量与其目标基元的韵律特征向量之差的加权和,即:\n[0186] \n[0187] 其中ωui为韵律匹配权系数,并月满足归一化条件 所以基元选\n取时,只要根据目标韵律特征向量 从语音库中选择合适的样本,使其韵律特征向量 和其\n目标韵律特征向量 达到最接近即可。\n[0188] 因此,基元的选取必须解决两个关键的问题:①语音韵律特征参数选择;②根据\n韵律参数之间的关系和各参数对整体韵律特征的影响,设置或训练权重向量。\n[0189] 韵律匹配代价基元选取模块的处理过程是:首先,设置目标基元的候选基元数量\n最大值M,然后调入一个目标基元p维韵律特征参数向量的p值。接下来,对于输入的标注\n了韵律特征参数的拼音码序列,从头至尾、逐一计算每个目标基元的p维韵律特征参数向\n量与语音库中每个语音基元的p维韵律特征参数向量之差的加权和,直到将整个语音库搜\n索完毕,从中选出加权和最小的前M个候选基元保留在缓存中。以此类推,直至将整个输入\n的文本序列搜索完毕。\n[0190] 2.3、基于韵律拼接代价的基元的选取\n[0191] 通常,将所有经过匹配代价单独筛选出的最优基元直接拼接在一起,得到的最终\n合成语句并不一定是最优的。因为,匹配代价只是考虑单个候选基元与它所对应的目标基\n元之间在韵律特征上的匹配程度,而没有更多地考虑音节与音节之间的拼接匹配程度对合\n成语句自然度的显著影响,也就是说单个筛选出的最优基元并不一定是全局最优的基元。\n[0192] 拼接代价反映了前后语音基元的韵律连续性的匹配程度。对于合成语音来说,每\n个候选基元,都可以用一个p维的韵律特征参数向量 来描述,而它的前\n一个候选基元的韵律特征参数为 为了保证语音合成基元之间的\n谱过渡更加自然,我们定义任意两个候选基元韵律拼接代价为当前候选基元的韵律特征向\n量与其相邻的前一个候选基元韵律特征向最之差的加权和,即:\n[0193] \n[0194] 其中ωci为韵律拼接权系数,并月满足归一化条件 所以在保证\n候选基元与目标基元之间匹配距离一定的情况下,使当前候选基元的韵律特征与它相邻的\n前一个候选基元的韵律特征参数之间的拼接距离最小即可。\n[0195] 韵律拼接代价基元选取模块的处理过程是:首先,设置候选基元数量最大值M,然\n后设置候选基元的p维韵律特征参数向量的p值大小。接下来,按照输入的拼音码序列的\n顺序,从头至尾、逐一计算每个候选基元的p维韵律特征参数向量与它前一个候选基元的p\n维韵律特征参数向量之差的加权和,从中选出加权和最小的候选基元保留在缓存中。以此\n类推,直至将整个输入文本序列搜索完毕。\n[0196] 2.4、基于韵律匹配代价与韵律拼接代价的基元的选取\n[0197] 同样,我们可以将韵律匹配代价与韵律拼接代价进行综合考虑,使得候选的语音\n基元在能够从两个方面来逼近目标的韵律特征。对于一个已知的文本序列,可以找到一个\n与之对应的最优的语音基元序列,即从语料库中筛选出使下式达到最小的路径上的语音基\n元:\n[0198] \n[0199] 这样可以保证候选基元在韵律特征和谱过渡两个方面都能满足一个完整句子对\n自然度的要求。不同的权重可以导致不同特征重要性的相对变化,比如在基元选取时,可以\n允许基频特征比时长特征发挥更大的作用。另外,权重可以为零,这样就可以在基元选取时\n忽略某一特征的影响。与此同时,匹配代价的权重也不同于拼接代价的权重。\n[0200] 韵律匹配代价与韵律拼接代价的基元选取模块的处理过程是:首先,设置候选基\n元数量最大值M,然后设置候选基元的p维韵律特征参数向量的p值大小。接下来,按照输\n入的拼音码序列的顺序,从头至尾、逐一计算每个候选基元的p维韵律特征参数向量的匹\n配代价和拼接代价的加权和,并保留在缓存中。以此类推,直至将整个输入文本序列搜索完\n毕,从中选出使加权和最小的路径上的候选基元作为最后优化筛选的基元。\n[0201] 3、语音合成处理程序\n[0202] 3.1、汉语的语调模型\n[0203] 结合图11-16,一个发音自然、完整的语句主要表现在三个方面:一是句子的调\n型,主要体现在句子的基频上,即句子的音高曲线;二是韵律短语和韵律词在句子中的具体\n位置,因为它们反映了整个句子的韵律特征属性变化;三是句子的重音和停顿位置,重音能\n凸显和强调整个句子的语义中心,停顿反映了句子的韵律节奏;在这三个方面,句子的基频\n曲线尤为重要,它反映了整个句子韵律变化最显著的特征以及整个句子基频曲线轮廓的变\n化的趋势。\n[0204] 可以把一个句子的F0基频轮廓曲线看作是短语单元的基频轮廓曲线、音节单元的\n基频轮廓曲线和基频最小值Fmin的叠加,基频轮廓用对数坐标表示。其中短语单元的基频\n轮廓曲线反映了句子全局的基频轮廓变化,音节单元的基频轮廓曲线反映了音节或韵律词\n的局部基频轮廓变化,而基频最小值Fmin代表了使人声带振动发小声音的最低频率。短语\n单元和音节单元分别属于短语控制机构和音节控制机构,两个控制机构类似于衰减的二阶\n振荡系统。短语控制机构的输入是短语命令,输出是短语单元的基频轮廓;而音节控制机构\n的输入是音节命令,输出是音节单元的基频轮廓。短语命令可以用一个冲击函数宋描述,音\n节命令可以用一个阶跃函数来描述。这些函数分别有两组不同的控制命令和参数组成:\n[0205] (1)短语命令的定时、幅度以及短语控制机构的阻尼系数;\n[0206] (2)音节命令开始和结束的时刻、幅度以及音节控制机构的阻尼系数。\n[0207] 这些参数必须在一个设定的时间段内保持恒定,即短语单元的参数在一个韵律短\n语内部恒定,音节单元的参数在音节或韵律词中恒定,基频最小值Fmin在整个句子中恒定。\n汉语语调基频轮廓生成模型框图,如图11所示。\n[0208] 基于上述汉语语调基频轮廓生成模型,用两种命令即短语命令和音节命令,作为\n句子语调模型的输入,而模型的输出为句子的基频轮廓曲线,其数学表达式如下:\n[0209] \n[0210] \n[0211] \n[0212] \n[0213] \n[0214] 其中:\n[0215] Fmin:句子的基频最小值;\n[0216] i:短语的数目;Ri:第i个短语衰减系数,经验值为3/s;T0i:第i个短语控制命令\n发生的时间;Api第i个短语控制命令的幅度。\n[0217] j:音节或韵律词的数目;Aaj:第j个音节控制命令的幅度;T1j:第j个音节控制命\n令开始的时间;T2j:第j个音节控制命令结束的时间:Bj:第j个音节控制命令在音节控制\n机构下的固有角度值,经验值为20/s;θj:第j个音节控制命令的旨节成分的最大允许值,\n(m)\n经验值为0.9;Gaj 代表不同的音节调型。\n[0218] 式(5)的第1部分可以看作是使声带保持振动的基频最小值;第2部分代表短语\n单元的基频轮廓;第3部分代表音节单元的基频轮廓;三者成对数迭加形式。这里基频最小\n值Fmin是由句子的语态和调型所决定,贯穿于整个语句;其次在它的上面叠加短语的基频\n变化曲线,得到一个句子的基频中心轨迹的基本走向;然后在这个基频中心轨迹的基础上\n继续按序位叠加音节或韵律词的基频变化曲线。最后,这三个部分叠加的结果即为一个完\n整句子的基频变化曲线。\n[0219] 对短语的缓降趋势,可以通过调节Ri的大小来改变Gpi(t)的衰减特性,进而达到\n调整短语基频走向的目的。Ri值越大,则衰减程度越大,短语基频曲线下倾的越严重;同时,\nRi的大小也间接地反映了语调短语的长短。同样,对音节的缓升趋势可以通过调节Bj的大\n小来实现,Bj值越大,音节的基频曲线上扬的越明显。图14和图15分别列出了短语衰减特\n性的基频曲线和音节上扬特性的基频曲线。\n[0220] 对于每个短语的具体调形,根据标注的拼音码序列中的短语信息确定短语调形,\n其短语调形函数可以采用“短语单元韵律模板”直接生成短语的基频轮廓曲线。\n[0221] 对于每个音节的具体调形,根据标注的拼音码序列中的音节信息确定音节调形,\n其音节调形函数可以采用“音节单元韵律模板”直接生成音节的韵律基频曲线,也可以利用\n曲线方程 生成拟合效果较为理想的音节调形曲线。调长由\n对应的浊音段的定时起点和终点来确定;调域用与调长对应的阶梯式调域幅度来控制。\n[0222] 3.2、模型参数的设置\n[0223] 模型参数由计算机程序自动生成。基于重叠原则,算法的第一步的是确定短语命\n令参数和基频最小值Fmin,这一步可与音节命令参数的确定分开。然后,由基频最小值Fmin\n和短语参数模拟出准确的F0曲线。短语模型的参数优化好后,再计算音节单元的参数。\n[0224] 一个音节命令生成的基频曲线模拟一个音节或韵律词。单独的韵律词从左到右处\n理,整个音节单元没有进行全局优化,但是对每个韵律词都做局部的基频曲线模拟。对此F0\n基频曲线的处理从左到右应有两个限制条件:一个条件是防止后面的音节命令影响优化后\n的曲线;另一个条件是保证在前面命令参数不充分的情况下也能估计音节或韵律词。\n[0225] 3.3、基于规则的F0的合成\n[0226] (1)阻尼系数\n[0227] 短语单元和音节单元当作阻尼时间的常量来处理。对于短语单元,阴尼系数标准\n值为3.1Hz。所有说话人和所有音节或韵律词的阻尼系数均值为16Hz。\n[0228] (2)基频最小值Fmin\n[0229] 基频最小值Fmin分布离散度较小,典型值的范围是男性为70-80Hz,女性为\n120-140Hz。\n[0230] (3)短语命令的幅度和定时\n[0231] 短语单元代表了语句中F0曲线的全局下倾和缓慢变化,是语调基频曲线的基础。\n从基频幅度上看,短语命令的幅度是确定短语基频曲线的在频域上偏移量的乘积系数,是\n句子中F0下倾的直接尺度,并且在很大程度上与说话人相关。句子模式通过短语单元的基\n频曲线在全局上表现出来,例如,陈述句的基频曲线呈下倾态势,而一般疑问句和反意疑问\n句的基频曲线从头向尾先下倾、然后到尾部再上扬。从时间上看,短浯的坫频曲线相对较早\n地达到最大值,并且随着句子的主要部分单独下降。短语基频曲线的峰值与句子或韵律短\n语的头一致,因此短语命令的定时直接依据阴尼系数(3.1Hz)。句子开始前的第一个短语命\n令设置为323ms,这也证明了F0的生成和控制的研究结果,揭示了喉部肌肉发音前的活动。\n[0232] (4)音节命令幅度\n[0233] 音节幅度是确定音节曲线的在频域上偏移量以及音节高峰值高度的乘积系数,并\n且幅度在很大程度上与音节的位置有关。句尾音节命令幅度远小于句子中其它位置的幅\n度,名词的幅度要高于其它词性,而短语边界前的音节命令幅度要比其它位置的幅度高大\n约10~20%。\n[0234] (5)音节命令时长\n[0235] 音节命令的时长可以通过该音节所在的韵律词的时长预测出,二者的相关度(r\n=0.84),即音节命令时长大约70%以上的变化可从韵律词的时长来得到。\n[0236] (6)音节命令位置\n[0237] 非句尾位置中音节(或韵律词)开始和命令开始之间的瞬时距离大约是音节(或\n韵律词)时长的10%,即在音节(或韵律词)命令开始和音节(或韵律词)发音开始之间\n有一个静音段,这一距离在句子术尾韵律词中趋于零。\n[0238] 因此,根据上面的分析,可以建立一套规则宋控制参数的调整,比如语句模式、语\n句重音、短语边界或词重旨,以此为一个给定的句子生成人工语调曲线。而需要输入的信息\n包括词音节的位置、韵律词的时长及它们的词性。\n[0239] 这里所提出的规则是基于统计分析的结果为基础,提供的参数为平均值,所以产\n生的曲线不代表任何一个真实的说话人。但从另一个方面说明:如果能够准确的捕捉说话\n人的特征,那么由上述规则及模型所产生的语调模式和被建模的说话人发出的语调模式就\n会非常接近。语调模型参数见表7。\n[0240] 表7 语调模型参数表\n[0241] \n 语调模型参数 参数说明\n 阻尼系数 短语单元3.1Hz,音节单元16Hz。\n 基频最小值Fmin 典型值的范围是男性为7080Hz,女性为120-140Hz。\n 短语命令幅度 短语命令的幅度是确定短语基频曲线的在频域上偏移量的乘积系数。是句子\n 中F0下倾的直接尺度,并且在很大程度上与说话人相关。\n 音节幅度是确定音节曲线的在频域上偏移量以及音节高峰值高度的乘积系\n 音节命令幅度 数,并且幅度在很大程度上与音节的位置有关。短语边界前的音节命令幅度\n 要比其它位置的幅度高大约10~20%。\n 短语命令时间设置 句子开始前的第一个短语命令设置为323ms。\n 非句尾位置中音节(或韵律词)命令开始和音节发音开始之间的瞬时距离大\n 音节命令时间设置 约是音节(或韵律词)时长的10%,即在音节(或韵律词)命令开始和音节(或\n 韵律词)发音开始之间要有一个静音段,这一距离在句子末尾韵律词中趋于\n 零。\n 短语命令时长 短语命令时长可以从韵律短语的时长来得到。\n 音节命令时长 音节命令时长大约70%以上的变化可从韵律词的时长来得到。\n[0242] 图16是韵律特征控制流程图,结合图16,计算机对键入的特定文本信息分析并\n转换成含有韵律结构信息的发音符号序列,根据韵律规则划分的短语和词语结构,标注语\n句的短语位置和个数、各短语强度、音节个数、音节调号属性、音节清/浊音长度、音节调域\n幅度和整句基调值等参数;用人工和参数优化算法调节并定量提取有关控制参量,按模型\n分层综合,计算出成句基频轮廓数据;然后,根据基频输出值和对应的时长参数,最后采用\nPSOLA方法对音库中各音节波形韵律进行调整,拼接合成连续语音。\n[0243] 4、计算系统环境\n[0244] 结合图17,为一个可以实施本发明的适合的计算系统环境。该计算系统环境只是\n可以实施本发明的计算系统环境的一个实施例,而并非是对本发明的应用范围或功能进行\n任何限制。计算环境也不应被认为是对实例性操作环境中所示的任何一个部件或者部件的\n组合有任何依赖性或要求。\n[0245] 本发明可以用于众多的特定的或非特定的计算系统环境或配置,如:个人计算机,\n小型计算机,中型计算机,大型计算机,网络计算机,服务器计算机,手持或膝上型装置,多\n处理器系统,基于微处理器的系统,机顶盒,可编程电子消费装置,包括任何上述的系统或\n装置的分布式计算环境,等等。\n[0246] 本发明可以使计算机可执行指令的一般模式来描述,例如计算机的程序模块。程\n序模块包括程序、子程序、对象、控件、组件、数据结构等,它们用来执行特定的任务或者实\n现特定的抽象数据类型。本发明也可以被应用于分布式计算环境,其中通过利用通信网络\n链接的远程处理装置来执行任务。在分布式计算环境中,程序模块可以同时存放在包括存\n储器存储装置在内的本地和远程计算机存储介质中。\n[0247] 图17所示的计算机装置的构成包括:一个或多个中央处理单元、内部存储器、外\n部存储器、输入设备接口、输出设备接口以及连接上述各个单元或部件的系统总线。系统总\n线可以是包括如下几种类型的总线结构中的任何总线结构:一个存储总线或存储控制器、\n一个外围总线和使用各种总线结构中总线的局部总线。这些总线结构;如工业标准结构\n(ISA)总线、微通道体系结构(MCA)总线、增强的ISA线、视频电子标准协会(VESA),局部总\n线以及外部设备互连(PCI)总线(也叫夹层总线(Mezzanine bus),等等。\n[0248] 用户可以通过输入装置向计算机口输人命令和信息。这些输入装置可以是键盘、\n麦克风以及指点装置如鼠标、轨迹球或触摸板,还可以是其他的输入装置(图上未画出),\n例如操作杆、游戏垫、圆盘式卫星电视大线(satellite dish)、扫描仪等。上述输入装置通\n常是通过一个耦合到系统总线的用户输入接口连接到处理单元的,但也可以通过别的的接\n口和总线结构连接,例如并行端口、游戏端口或者通用序列行总线(USB)。监视器或者其他\n类型的显示装置通过一个接口,例如视频接口连接到系统总线。除了该监视器外,计算机也\n可以包括其他的外部输出设备,例如扬声器以及打印机,它们通过一个外部输出接口连接。\n[0249] 计算机可以通过逻辑连接的方式连接到一台或更多远程计算机(例如远程计算\n机)从而在网络环境中进行操作。
法律信息
- 2015-03-11
未缴年费专利权终止
IPC(主分类): G10L 13/00
专利号: ZL 200710071613.4
申请日: 2007.01.09
授权公告日: 2011.03.30
- 2011-03-30
- 2007-09-12
- 2007-07-18
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2006-09-20
|
2006-04-07
| | |
2
| |
2006-02-08
|
2005-09-02
| | |
3
| |
2006-08-02
|
2005-01-28
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |