汉语词句发音合成方法

文档序号:6481481阅读:330来源:国知局

专利名称::汉语词句发音合成方法
技术领域
:本发明涉及一种汉语词句发音合成方法,尤其是一种先对汉语词句进行分割再根据分割结果来合成汉词句发音的
技术领域

背景技术
:显示方式以及语音方式是目前电子装置最普遍的两种信息表现方式。在人机互动接口中,尤以语音方式传递信息较为方便,加上人们对语言学习的需求日亦增加,所以对语音合成技术需求也日益迫切。然而,由于传统的语音输出方法在句子发音过程中,都是按字符串的存储形式发音,因此自然度较差,尤其是汉语词句的合成发音更是明显。此外,在语音数据处理中,也需要数据处理人员将语句的发音按词组进行切分以便于为句子发音学习提供素材。利用上述手工切分词组的传统合成发音方法时,因为每个汉字的发音带有尾音,会使句子发音不符合自然发音原则,应该有停顿的时候无停顿,应该不停顿的时候又有停顿,造成所合成出的发音听起来像一串长长句子,造成使用者感觉枯燥,而降低学习兴趣。
发明内容本发明为解决
背景技术
中存在的上述技术问题,而提出汉语词句发音合成方法。本发明的技术解决方案是本发明为一种汉语词句发音合成方法,其特殊之处在于该方法包含下列步骤1)提供具有多个分词的分词词库、虚词黏词规则表及具有多个单字发音波形数据的发音数据库;2)扫描汉语词句取得字词,并根据分词词库对字词进行分词匹配;3)根据虚词黏词规则表对字词进行虚词组词处理;4)根据分词匹配结果及虚词查询结果,决定汉语词句的停顿点;5)从发音数据库中取得对应汉语词句所包含单字的单字发音波形数据,并根据停顿点合成对应的单字发音波形数据。上述步骤2)的具体步骤如下21)依序从汉语词句中读取汉字,并将读取的汉字储存在缓冲区中;22)判断缓冲区内汉字的数目是否大于1,若否,则进行步骤21),若是,则进行步骤23)23)根据分词词库进行分词匹配,24)判断匹配是否成功,若匹配成功,则进行步骤21),若匹配不成功,则进行步骤25))25)在缓冲区内最后一个汉字及倒数第2个汉字之间设定停顿点,将缓冲区中的第一个汉字到倒数第2个汉字从缓冲区移除,留下最后一个汉字继续进行分词匹配;26)判断汉词句中是否有尚未读取的汉字,若是,则进行步骤21,若否,则进行步骤3)。上述步骤3)中进行虚词组词处理时,搜寻汉语词句中是否有虚词,若有,则根据虚词黏词规则表判断出与虚词相黏的字词。上述步骤3)中还包含对汉语词句进行歧义词处理搜寻汉语词句中是否具有歧义词,若汉词句中有歧义词,则从歧义词的最后一个字逆向逐字加字匹配,找到最长词的结束点。本发明提供的本汉语词句发音合成方法,通过提供分词词库及虚词黏词规则表,分别对汉语词句进行分词匹配及虚词组词处理,判断出汉语词句中的分词及虚词,如此可有效地确认汉词句中的停顿点并分割汉语词句,再根据停顿点对汉语词句中的所有单字的单字发音波形数据进行合成。由此可提高汉语词句的合成发音的自然度。图1为本发明方法步骤流程图;图2为本发明方法进行分词匹配实施例的步骤流程图;图3为本发明波形范例图及先前技术汉字句合成发音的波形范例图。具体实施例方式参见图l,汉语词句发音合成方法从开始展开,包含下列步骤步骤Sll提供具有多个分词的分词词库、虚词黏词规则表及具有多个单字发音波形数据的发音数据库。其中,分词指有意义的词汇,例如"今天"、"分解"或"天气"等等,人们在发音此类词汇时会习惯縮短尾音,或是说完此分词后会略作停顿。除了上述分词之外,人们在发音虚词时会与前后词相黏发音,例如"很好"或"最近",虚词黏词规则表便是记录会与前后词相黏发音的虚词以及此虚词的黏词规则。虚词包含副词或量词,例如副词"很"或"最"与后面的词相黏发音,而量词"个"或"张"则是与前面的词相黏发音,也会与后面的词相黏发音,例如"一个人"。步骤S12扫描汉语词句取得字词,并根据分词词库对字词进行分词匹配。以正向扫描此汉语词句,而正向为此汉语词句念读方向,由左至右或由上至下。以汉语词句"今天天气很好"为例,正向扫描逐一取得"今"、"天"、"天"、气"、"很"及"好"等6个字。步骤S13根据虚词黏词规则表对字词进行虚词组词处理。实施上,搜寻汉词句中的虚词,若汉词句中有虚词,则根据虚词黏词规则表判断出与虚词相黏的字词。以汉语词句"今天天气很好"为例,"很好"在分词库中可能无法匹配成功,但在虚词黏词规则表中记录"很"是虚词,则可把"很"与之后的字"好"组成分词。步骤S14根据分词匹配结果及虚词查询结果,以决定汉语词句的停顿点。停顿点用来区隔出多个组成汉词句的分隔词,以汉语词句"今天天气很好"为例,其组成的分隔词应为"今天"、"天气"及"很好"。此外,除了分词匹配与虚词组词处理外,步骤14前,视需要可进行歧义词处理,用来搜寻汉词句中是否具有歧义词,来确认汉语词句停顿点的正确性,歧义词指前后可能有多种组合的词,例如字尾是"子"的词。若汉词句中有歧义词,则从歧义词的最后一个字逆向逐字加字匹配,找到最长词的结束点。逆向为与汉语词句念读方向相反的方向。以汉语词句"分解成分子"为例,若无进行歧义词处理,则汉语词句可能会被分隔成"分解""成分""子",但是此分隔结果与原义不符。由于汉词句具有"子",而字尾为"子"的分词为歧义词,因此逆向逐字加字匹配后,可匹配出最长词"分子",因此汉语词句会分隔成"分解""成""分子",符合汉语词句的原意。步骤S15从发音数据库中取得对应汉词句所包含的单字的单字发音波形数据,并根据停顿点合成单字发音波形数据。例如,进行合成时,可縮短分隔词单字的尾音。此外,进行合成时,可在停顿点插入停顿信号。合成发音后,结束此流程。参见图2,实施例包含下列步骤步骤21依序从汉语词句中读取汉字,并将读取的汉字储存在缓冲区中。当步骤21重复进行时,依序取得"今"一"天"一"天"一气"一"很"一"好"等汉字。步骤22判断缓冲区内汉字的数目是否大于1,若否,则进行步骤21。若缓冲区内汉字的数目大于1,则步骤23根据分词词库进行分词匹配,并在步骤24判断匹配是否成功。若匹配成功,则进行步骤21。因为有意义的分词的字数并不固定,且部分分词包含其它有意义的分词,所以需要再利用下一个汉字作进一步确认。若匹配不成功,则步骤25在缓冲区内最后一个汉字及倒数第2个汉字之间设定停顿点,将缓冲区中的第一个汉字到倒数第2个汉字从缓冲区移除,留下最后一个汉字继续进行分词匹配。在步骤26判断汉词句中是否有尚未读取的汉字,若是,则进行步骤21,若否,则结束此流程。完成分词匹配后,可进行虚词组词处理,先搜寻汉词句中是否有虚词,若有,则根据虚词黏词规则表判断出与此虚词相黏的字词。以汉语词句"今天天气很好"为例,经过分词匹配后,所产生的分隔词可能为"今天"、"天气"、"很"及"好"。因为"很好"此类的词汇为数众多,例如"很久"、"很大"、"很小"、"很远"、"很近"、"很烂"、"很浅"、"很深"等等,所以分词库可能不会储存"很好"分词,导致匹配失败。但是将"很好"分开发音又会造成发音不自然。因此,搜寻"很"这个虚词后,根据虚词黏词规则表,将"很"与其后的"好"组成分词,由此可提高汉语词句合成发音的自然度。下列表一列出汉语词句"今天天气很好"进行分词匹配及虚词组词处理的过程。<table>tableseeoriginaldocumentpage5</column></row><table>比较结果很好"很"为副词,与后面形容词"好"黏在一起天气很好确定"天气"与"很好"分割,"气"和"很"之间设定停顿点进行完分词匹配及虚词组词处理后,视需要可再进行歧义词处理,搜寻汉语词句中是否具有歧义词,用来确认汉语词句的停顿点的正确性。在上述说明中,将分词匹配、虚词组词处理及歧义词处理分开说明,但并不限制分词匹配、虚词组词处理及歧义词处理必须分开进行,将分词匹配、虚词组词处理或歧义词处理混合进行也在本发明保护范围内。而分词匹配的方式不限于上述实施例,凡可将汉语字句中有意义的词汇以匹配方式进行判断,皆在本发明保护范围内。参见图3,图中以汉语词句"今天天气很好"作为范例,而为了方便说明本发明与先前技术之间的差异,所以六个单字皆用相同的单字发音波形数据。波形图(a)绘示先前技术的汉字句合成波形图,可看出先前技术将6个单字的单字发音波形数据依序连接,所合成出的发音十分不自然。再观看波形图(b),由于已经判断出第2个单字与第3个单字之间,第4个单字与第5个单字之间设有停顿点,即第1个单字与第2个单字、第3个单字与第4个单字、第5个单字与第6个单字分别组成分词,因此可縮短第1个单字、第3个单字及第5个单字的尾音,如此可提高汉字句合成发音的自然度,更接近真人发音的感觉。权利要求一种汉语词句发音合成方法,其特征在于该方法包含下列步骤1)提供具有多个分词的分词词库、虚词黏词规则表及具有多个单字发音波形数据的发音数据库;2)扫描汉语词句取得字词,并根据分词词库对字词进行分词匹配;3)根据虚词黏词规则表对字词进行虚词组词处理;4)根据分词匹配结果及虚词查询结果,决定汉语词句的停顿点;5)从发音数据库中取得对应汉语词句所包含单字的单字发音波形数据,并根据停顿点合成对应的单字发音波形数据。2.根据权利要求1所述的汉语词句发音合成方法,其特征在于所述步骤2)的具体步骤如下21)依序从汉语词句中读取汉字,并将读取的汉字储存在缓冲区中;22)判断缓冲区内汉字的数目是否大于1,若否,则进行步骤21),若是,则进行步骤23)23)根据分词词库进行分词匹配,24)判断匹配是否成功,若匹配成功,则进行步骤21),若匹配不成功,则进行步骤25))25)在缓冲区内最后一个汉字及倒数第2个汉字之间设定停顿点,将缓冲区中的第一个汉字到倒数第2个汉字从缓冲区移除,留下最后一个汉字继续进行分词匹配;26)判断汉词句中是否有尚未读取的汉字,若是,则进行步骤21,若否,则进行步骤3)。3.根据权利要求1或2所述的汉语词句发音合成方法,其特征在于所述步骤3)中进行虚词组词处理时,搜寻汉语词句中是否有虚词,若有,则根据虚词黏词规则表判断出与虚词相黏的字词。4.根据权利要求3所述的汉语词句发音合成方法,其特征在于所述步骤3)中还包含对汉语词句进行歧义词处理搜寻汉语词句中是否具有歧义词,若汉词句中有歧义词,则从歧义词的最后一个字逆向逐字加字匹配,找到最长词的结束点。全文摘要本发明涉及一种汉语词句发音合成方法,通过提供分词词库及虚词黏词规则表,分别对汉语词句进行分词匹配及虚词组词处理,判断出汉语词句中的分词及虚词,如此可有效地确认汉词句中的停顿点并分割汉语词句,再根据停顿点对汉语词句中的所有单字的单字发音波形数据进行合成。由此可提高汉语词句的合成发音的自然度。文档编号G06F17/22GK101694771SQ20091002439公开日2010年4月14日申请日期2009年10月20日优先权日2009年10月20日发明者王秦秦,陈淮琰申请人:无敌科技(西安)有限公司;
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1