CN114822489A - 文本转写方法和文本转写装置 - Google Patents
文本转写方法和文本转写装置 Download PDFInfo
- Publication number
- CN114822489A CN114822489A CN202210346094.2A CN202210346094A CN114822489A CN 114822489 A CN114822489 A CN 114822489A CN 202210346094 A CN202210346094 A CN 202210346094A CN 114822489 A CN114822489 A CN 114822489A
- Authority
- CN
- China
- Prior art keywords
- sentence
- sequence
- prosodic
- target
- voice
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000012546 transfer Methods 0.000 title description 9
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 35
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 35
- 238000013518 transcription Methods 0.000 claims abstract description 33
- 230000035897 transcription Effects 0.000 claims abstract description 33
- 230000011218 segmentation Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 19
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 230000002194 synthesizing effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000033764 rhythmic process Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000001308 synthesis method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/04—Details of speech synthesis systems, e.g. synthesiser structure or memory management
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
- G10L13/10—Prosody rules derived from text; Stress or intonation
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
Abstract
本申请涉及语音合成领域,提供一种文本转写方法和文本转写装置,所述文本转写方法,包括:对目标文本的韵律音素序列进行切分,生成多个分句序列,所述韵律音素序列包括与所述目标文本对应的多个音素以及位于相邻所述音素之间的韵律标识符,每个所述分句序列包括至少一个所述音素;确定所述多个分句序列中的任一待匹配分句序列与所述目标分句序列匹配,从所述缓存中获取与所述目标分句序列对应的目标分句语音,将所述待匹配分句序列对应的语音确定为所述目标分句语音。本申请的文本转写方法,可以有效提高命中效率且提高语音合成的效率。
Description
技术领域
本申请涉及语音合成技术领域,尤其涉及文本转写方法和文本转写装置。
背景技术
语音合成技术被广泛应用于日常生活中的方方面面,相关技术中,常用的语音合成方法为将待合成的文本作为key,将对应的已合成音频地址作为value,将这一组key和value存放在缓存中,当有重复的文本合成需求,则直接从缓存中查找到对应的音频,而避免重复使用算力合成相同的文本。但该方法要求整个句子完全匹配,考虑到实际使用过程中,请求的文本相互之间很少存在完全相同的情况,从而导致命中率较低。
发明内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种种文本转写方法。
本申请还提出一种文本转写装置。
本申请还提出一种电子设备。
本申请还提出一种非暂态计算机可读存储介质。
本申请还提出一种计算机程序产品。
根据本申请第一方面实施例的种文本转写方法,包括:
对目标文本的韵律音素序列进行切分,生成多个分句序列,所述韵律音素序列包括与所述目标文本对应的多个音素以及位于相邻所述音素之间的韵律标识符,每个所述分句序列包括至少一个所述音素;
确定所述多个分句序列中的任一待匹配分句序列与缓存的目标分句序列匹配,从缓存中获取与所述目标分句序列对应的目标分句语音,将所述待匹配分句序列对应的语音确定为所述目标分句语音。
根据本申请实施例的文本转写方法,基于韵律特征将韵律音素序列切分为多个分句序列,分别将分句序列与缓存的目标分句序列进行比较,可以有效提高命中效率;在分句序列与目标序列相同的情况下,则直接将目标分句序列对应的目标分句语音确定为该分句序列的语音,而无需重新进行语音合成,从而提高语音合成的效率。
根据本申请的一个实施例,所述对目标文本的韵律音素序列进行切分,生成多个分句序列,包括:
将所述目标文本转化为韵律音素序列;
基于多个所述韵律标识符中的至少部分切分所述韵律音素序列,生成所述多个分句序列。
根据本申请的一个实施例,所述方法还包括:
确定所述多个分句序列中的任一待匹配分句序列与所述目标分句序列不匹配,对所述待匹配分句序列进行语音合成,生成第二分句语音。
根据本申请的一个实施例,在所述生成第二分句语音之后,所述方法还包括:
基于所述韵律标识符切分所述第二分句语音,生成多个子第二分句语音;
缓存所述多个子第二分句语音和所述子第二分句语音对应的子分句序列。
根据本申请的一个实施例,在所述生成第二分句语音之后,所述方法还包括:
基于所述目标分句语音对应的分句序列在所述韵律音素序列中的切分顺序,以及所述第二分句语音对应的分句序列在所述韵律音素序列中的切分顺序,拼接所述目标分句语音和所述第二分句语音,生成所述目标文本对应的目标语音。
根据本申请的一个实施例,所述基于多个所述韵律标识符中的至少部分切分所述韵律音素序列,生成所述多个分句序列,包括:
基于所述多个韵律标识符中的目标标识符对所述韵律音素序列进行切分,生成多个候选序列,且位于第一个切分点之前的所述候选序列对应的语音合成时长在目标时长内;
将所述多个候选序列中的目标候选序列与相邻候选序列进行组合,生成所述多个分句序列以及所述分句序列对应的细粒度大小;
基于所述分句序列对应的细粒度大小,对所述多个分句序列进行降序排序。
根据本申请的一个实施例,所述韵律标识符包括:用于表征音节、用于表征韵律词、用于表征韵律短语、用于表征语调短语和用于表征句末信息的标识符中的至少一种;
且所述用于表征句末信息的标识符的细粒度大于所述用于所述语调短语的标识符的细粒度,所述用于表征语调短语的标识符的细粒度大于所述用于表征韵律短语的标识符的细粒度,所述用于表征韵律短语的标识符的细粒度大于所述用于表征韵律词的标识符的细粒度,所述用于表征韵律词的标识符的细粒度大于所述用于表征音节的标识符的细粒度。
根据本申请第二方面实施例的文本转写装置,包括:
第一处理模块,用于对目标文本的韵律音素序列进行切分,生成多个分句序列,所述韵律音素序列包括与所述目标文本对应的多个音素以及位于相邻所述音素之间的韵律标识符,每个所述分句序列包括至少一个所述音素;
第二处理模块,用于确定所述多个分句序列中的任一待匹配分句序列与缓存的目标分句序列匹配,从缓存中获取与所述目标分句序列对应的目标分句语音,将所述待匹配分句序列对应的语音确定为所述目标分句语音。
根据本申请第三方面实施例的电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述文本转写方法。
根据本申请第四方面实施例的非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述文本转写方法。
根据本申请第五方面实施例的计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述文本转写方法。
本申请实施例中的上述一个或多个技术方案,至少具有如下技术效果之一:
基于韵律特征将韵律音素序列切分为多个分句序列,分别将分句序列与缓存的目标分句序列进行比较,可以有效提高命中效率;在分句序列与目标序列相同的情况下,则直接将目标分句序列对应的目标分句语音确定为该分句序列的语音,而无需重新进行语音合成,从而提高语音合成的效率。
进一步的,基于语义及人的说话习惯预测的韵律结果对韵律音素序列进行切分,以在停顿时长较长位置分割,而非简单基于标点符号切分,有助于提高后续拼接所合成的多个分句语音所生成的目标语音的自然度。
更进一步的,将音素作为关键字进行缓存,克服文本中标点的变化,或在数字写法变化而读音完全相同时被当成不同句子进行缓存的缺点,能够实现目标文本的标准化缓存,提高缓存效率。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的文本转写方法的流程示意图之一;
图2是本申请实施例提供的文本转写方法的流程示意图之二;
图3是本申请实施例提供的文本转写装置的结构示意图;
图4是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请的实施方式作进一步详细描述。以下实施例用于说明本申请,但不能用来限制本申请的范围。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
下面结合图1-图2描述本申请实施例的文本转写方法。
该文本转写方法的执行主体可以为文本转写装置,或者为服务器,或者还可以为用户的终端,包括但不限于手机、平板电脑、pc端、车载终端以及家用智能电器等。
如图1所示,该文本转写方法包括:步骤110和步骤120。
步骤110、对目标文本的韵律音素序列进行切分,生成多个分句序列;
在该步骤中,目标文本为当前用于进行语音合成的文本。
韵律音素序列为用于表征目标文本的韵律特征的序列。
韵律音素序列包括位于相邻音素之间的韵律标识符和与目标文本对应的多个音素。
其中,音素可以为一个或多个根据语音的自然属性划分出来的语音单位的组合,语音单位可以为一个汉字对应的拼音、声调或者英文音标。
韵律标识符为用于表征目标文本中每一个音素所对应的韵律特征的标识符。韵律特征包括但不限于:音素对应的声调、音节、韵律词、韵律短语、语调短语、静音以及停顿等特征。
在一些实施例中,韵律标识符可以包括:用于表征音节、用于表征韵律词、用于表征韵律短语、用于表征句末信息和用于表征语调短语的标识符中的至少一种。
在该实施例中,音节是语流中的语音单位,也是人们听觉上最容易分辨出来的语音单位,例如,音节可以为目标文本中的每一个汉字。
韵律词是一组在实际语流中联系密切且联在一起发音的音节。
韵律短语是介于韵律词和语调短语之间的中等节奏组块,韵律短语中可以包括多个韵律词和语气词,且组成该韵律短语的多个韵律词听起来是共用一个节奏群。
语调短语为将多个韵律短语按照一定的句调模式连接起来所组成的句子,用于表征较大的停顿。
句末信息用于表征每一个长句的结束。
例如,对于目标文本“上海市今天阴转多云东南风三到四级”,其中如“上”、“海”以及“市”等每一个汉字均为该目标文本对应的音节;“上海市”、“今天”以及“阴转多云”等单词或由单词组成的短语即为该目标文本对应的韵律短语;而由韵律短语“上海市”、“今天”以及“阴转多云”所组成的句子“上海市今天阴转多云”,则为该目标文本对应的语调短语。
可以理解的是,不同的韵律标识符对应有不同的细粒度等级,其中,用于表征停顿的韵律标识符的细粒度大于用于表征语调短语的韵律的标识符的细粒度,用于表征语调短语的细粒度大于用于表征韵律短语的细粒度,用于表征韵律短语的细粒度大于用于表征韵律词的细粒度,用于表征韵律词的细粒度大于用于表征音节的细粒度。
在实际执行过程中,可以用不同的符号表示不同细粒度等级的韵律特征。
例如,对于目标文本“上海市今天阴转多云东南风三到四级”,可以将其转化为韵律音素序列:sil shang4#0hai3#0shi4#2jin1#0tian1#2yin1#0zhuan3#1duo1#0yun2#3dong1#0nan2#0feng1#2san1#0dao4#1si4#0ji2#4sil。
可以理解的是,对于该韵律音素序列,韵律标识符可以包括:各相邻的拼音之间的#和数字;音素可以包括每一个汉字对应的拼音和声调或英文音标。
其中,sil为韵律音素序列中的代表句首和句末的静音,#0代表着音节、#1代表韵律词、#2代表韵律短语、#3代表语调短语以及#4代表句末,每个音素后面的数字代表该音素的声调,如shang4中的4代表拼音“shang”的声调为第四声。
且细粒度由小到大依次为:#0<#1<#2<#3<#4。
对于每段韵律音素序列,对应至少一个切分点,则可以得到至少两个分句序列。
在一些实施例中,步骤110可以包括:
将目标文本转化为韵律音素序列;
基于多个韵律标识符中的至少部分切分韵律音素序列,生成多个分句序列。
在该实施例中,对于一整段韵律音素序列,包括有多个音素和多个韵律标识符,多个韵律标识符中包括对应不同细粒度等级的韵律标识符。
在实际执行过程中,可以基于实际情况选择合适的细粒度等级作为切分标准,并将该细粒度等级对应的韵律标识符在韵律音素序列中的位置作为切分点,对韵律音素序列进行切分,以得到多个分句序列。
需要说明的是,每个分句序列包括切分点处的韵律标识符以及至少一个音素。
可以理解的是,对于每段韵律音素序列,对应至少一个切分点,则可以得到至少两个分句序列。
例如,对于韵律音素序列“sil shang4#0hai3#0shi4#2jin1#0tian1#2yin1#0zhuan3#1duo1#0yun2#3dong1#0nan2#0feng1#2san1#0dao4#1si4#0ji2#4sil”,基于实际需求确定在#3处进行切分,则分别在韵律音素序列中含有#3的位置进行切分,并保留韵律分割符#3至前一个拼接单元,从而可以将该韵律音素序列切分为以下多个分句序列:
分句序列1:sil shang4#0hai3#0shi4#2jin1#0tian1#2yin1#0zhuan3#1duo1#0yun2#3;
分句序列2:dong1#0nan2#0feng1#2san1#0dao4#1si4#0ji2#4sil。
在一些实施例中,步骤110还可以包括:
基于多个韵律标识符中的目标标识符切分韵律音素序列,生成多个候选序列;
将多个候选序列中的目标候选序列与相邻候选序列进行组合,生成分句序列对应的细粒度大小以及多个分句序列;
基于分句序列对应的细粒度大小,对多个分句序列进行降序排序。
在该实施例中,基于目标标识符所对应的位置,可以将该韵律音素序列切分为多个候选序列,其中位于第一个切分点位置之前的候选序列,其对应的语音合成时长在目标时长内。
其中,语音合成时长为将该候选序列合成为语音所耗费的时间。
目标时长为一个较短的时长,目标时长可以基于用户自定义,或者也可以采用系统默认值,例如可以将目标时长设置为0.2s或0.3s等。
例如对于韵律音素序列“sil mu4#0qian2#1xiao2#0jia3#3ke2#0yi3#1kong4#0zhi4#1re4#0shui3#0qi4#1kai1#0guan1#3tiao2#0jie2#1wen1#0du4#3ding4#0shi2#1kai1#0guan1#3xiang2#0xi4#1nei4#0rong2#2ma2#0fan5#1zai4#1jia 3#0ju1#1AE1 P#0shang4#1sou1#0xun2#0xia4#4sil”,可以分别将“yi3”对应的韵律标识符以及“yi3”之后的所有“#3”对应的韵律标识符确定为目标标识符,生成如下切分序列:
sil mu4#0qian2#1xiao2#0jia3#3ke2#0yi3#1|kong4#0zhi4#1re4#0shui3#0qi4#1kai1#0guan1#3|tiao2#0jie2#1wen1#0du4#3|ding4#0shi2#1kai1#0guan1#3|xiang2#0xi4#1nei4#0rong2#2ma2#0fan5#1zai4#1jia 3#0ju1#1AE1 P#0shang4#1sou1#0xun2#0xia4#4sil
其中,“|”为目标标识符对应的切分点。
目标候选序列可以为多个候选序列中的任一候选序列,分别将该目标候选序列与相邻的其他候选序列进行组合,从而生成多个组合后的分句序列,其中,多个分句序列中包括原始的候选序列和目标文本对应的原始的韵律音素序列。
可以理解的是,分句序列的细粒度等级大于目标候选序列的细粒度等级。
例如,句子“希望这首歌|能让你喜欢|为您播放|XX”的韵律音素序列“sil xi1#0wang4#1zhe4#0shou3#0ge1#3|neng2#0rang4#1ni2#1xi3#0huan1#1|wei4#0nin2#1bo1#0fang4#1|EH1 K S#10EH1 K S#0de5#1EH1 K S#4sil”中,“xi1#0wang4#1zhe4#0shou3#0ge1#3”、“neng2#0rang4#1ni2#1xi3#0huan1#1”、“wei4#0nin2#1bo1#0fang4#1”以及“EH1K S#10EH1 K S#0de5#1EH1 K S#4”均为候选序列。
分别将候选序列中的任一候选序列作为目标候选序列,将其与相邻的其他候选序列进行组合,从而可以得到如下多个分句序列(两个“|”之间的为一个分句序列):
“sil xi1#0wang4#1zhe4#0shou3#0ge1#3|neng2#0rang4#1ni2#1xi3#0huan1#1|wei4#0nin2#1bo1#0fang4#1|EH1 K S#10EH1 K S#0de5#1EH1 K S#4sil”
“sil xi1#0wang4#1zhe4#0shou3#0ge1#3neng2#0rang4#1ni2#1xi3#0huan1#1|wei4#0nin2#1bo1#0fang4#1|EH1 K S#10EH1 K S#0de5#1EH1K S#4sil”
“sil xi1#0wang4#1zhe4#0shou3#0ge1#3|neng2#0rang4#1ni2#1xi3#0huan1#1wei4#0nin2#1bo1#0fang4#1|EH1 K S#10EH1 K S#0de5#1EH1 K S#4sil”
“sil xi1#0wang4#1zhe4#0shou3#0ge1#3neng2#0rang4#1ni2#1xi3#0huan1#1wei4#0nin2#1bo1#0fang4#1|EH1 K S#10EH1 K S#0de5#1EH1 KS#4sil”
“sil xi1#0wang4#1zhe4#0shou3#0ge1#3|neng2#0rang4#1ni2#1xi3#0huan1#1|wei4#0nin2#1bo1#0fang4#1EH1 K S#10EH1 K S#0de5#1EH1 K S#4sil”
“sil xi1#0wang4#1zhe4#0shou3#0ge1#3|neng2#0rang4#1ni2#1xi3#0huan1#1wei4#0nin2#1bo1#0fang4#1EH1 K S#10EH1 K S#0de5#1EH1K S#4sil”
“sil xi1#0wang4#1zhe4#0shou3#0ge1#3neng2#0rang4#1ni2#1xi3#0huan1#1wei4#0nin2#1bo1#0fang4#1EH1 K S#10EH1 K S#0de5#1EH1K S#4sil”
可以理解的是,每个分句序列均对应有细粒度等级,分句序列中所包括的候选序列的数量越多,则其对应的细粒度越大,例如“希望这首歌能让你喜欢”所对应的细粒度大于“希望这首歌”所对应的细粒度。
基于分句序列对应的细粒度大小,对多个分句序列进行排序,细粒度越大,则其对应的分句序列排在越前面,例如将“xi1#0wang4#1zhe4#0shou3#0ge1#3neng2#0rang4#1ni2#1xi3#0huan1#1wei4#0nin2#1bo1#0fang4#1EH1K S#10EH1 K S#0de5#1EH1 K S#4(希望这首歌能让你喜欢为您播放XX的X)”排在“xi1#0wang4#1zhe4#0shou3#0ge1#3neng2#0rang4#1ni2#1xi3#0huan1#1wei4#0nin2#1bo1#0fang4#1(希望这首歌能让你喜欢为您播放)”的前面。
在该实施例中,基于语义及人的说话习惯预测的韵律结果对韵律音素序列进行切分,以在停顿时长较长位置分割,而非简单基于标点符号切分,有助于提高后续拼接所合成的多个分句语音所生成的目标语音的自然度。
步骤120、确定多个分句序列中的任一待匹配分句序列与缓存的目标分句序列匹配,从缓存中获取与目标分句序列对应的目标分句语音,并将该待匹配分句序列对应的语音确定为目标分句语音。
在该步骤中,目标分句序列为预先生成并存储于系统中的分句序列。
目标分句序列可以为缓存于系统中的全部的预存分句序列中的任意一个。
目标分句语音为预先对目标分句序列进行语音合成所生成的语音,该目标分句语音存储于系统中,且目标分句序列与目标分句语音之间建立有对应关系。
在实际执行过程中,可以将缓存的目标分句序列分别与多个分句序列进行精确匹配,确定目标分句序列与多个分句序列中的任一待匹配分句序列匹配,则将该待匹配分句序列确定为第一分句序列,并从缓存中获取与目标分句序列对应的目标分句语音;
在将该分句序列确定为第一分句序列后,则可以直接将与该第一分句序列相匹配的目标分句对应的目标分句语音确定为该第一分句序列对应的语音。
在一些实施例中,其中,待匹配分句序列包括多个分句序列中的任一分句序列及不同分句序列之间的组合。
如图2所示,在一些实施例中,步骤120可以包括:
基于步骤110中的降序排序,从前至后依次将多个分句序列与目标分句序列进行精确匹配。
具体地,基于降序排序的次序,从前至后依次将多个分句序列与缓存中的目标分句序列进行匹配,并将匹配成功的目标分句序列的语音确定为所述分句序列的语音。
在该实施例中,基于步骤110中所生成的降序排序的顺序,从前到后依次将分句序列与目标分句序列进行精确匹配,例如先将分句序列“xi1#0wang4#1zhe4#0shou3#0ge1#3neng2#0rang4#1ni2#1xi3#0huan1#1wei4#0nin2#1bo1#0fang4#1EH1 K S#10EH1 K S#0de5#1EH1 K S#4(希望这首歌能让你喜欢为您播放XX的X)”与目标分句进行精确匹配,在匹配成功的情况下,则将该分句序列确定为第一分句序列,并将与该第一分句序列匹配的目标分句对应的目标分句语音确定为该第一分句序列对应的语音,结束比较。
在匹配不成功的情况下,则再将分句序列“xi1#0wang4#1zhe4#0shou3#0ge1#3neng2#0rang4#1ni2#1xi3#0huan1#1wei4#0nin2#1bo1#0fang4#1(希望这首歌能让你喜欢为您播放)”与目标分句进行比较,并重复上述过程,直至确定某一分句序列与目标分句能够实现精确匹配,则结束比较。
在一些实施例中,在所有分句序列与目标分句均不能实现精确匹配的情况下,则基于该分句序列生成语音,具体实现方式将在后续实施例中进行说明,在此暂不作赘述。
在一些实施例中,在步骤120之后,该方法还可以包括:输出目标分句语音。
在该实施例中,目标分句语音为第一分句序列对应的语音,其目标分句语音为预先生成且存储与缓存中的语音。
在实际执行过程中,在确定分句序列与目标分句序列精确匹配的情况下,则直接将与该第一分句序列相似的目标分句对应的目标分句语音确定为该第一分句序列对应的语音,并输出目标分句语音。
申请人在研发过程中发现,由于语音的时间特性,合成一段文本需要很多算力,如果语音合成请求量非常大,且基本上相同的文本,服务器将浪费大量算力重复相同的工作。一种简单方法是把待合成的文本作为key,把对应的已合成音频地址作为value,将这一组key和value存放在缓存中。当有重复的文本合成需求,则直接从缓存中查找到对应的音频,而避免重复使用算力合成相同的文本。
但该方法要求整个句子完全匹配,考虑到实际使用过程中,请求的文本相互之间很少存在完全相同的情况(如仅仅是标点符号不同,或者一句话中仅仅是某部分有所变化),从而导致命中率较低,进而影响缓存效率。
而在本申请中,通过将目标文本转化为韵律音素序列,基于韵律特征确定目标文本的停顿位置和停顿时长级别,并基于韵律特征将韵律音素序列切分为多个分句序列,分别将分句序列与缓存的目标分句序列进行比较,由于作为查找关键词的序列更短,在缓存查找中更容易命中,从而可以有效提高命中效率;在分句序列与目标序列相同的情况下,则直接将目标分句序列对应的目标分句语音确定为该分句序列的语音,而无需重新进行语音合成,从而有效降低服务器的算力开支。
如图2所示,在实际执行过程中,可以分别采用韵律预测模块和切分模块来执行上述步骤。
根据本申请实施例提供的文本转写方法,基于韵律特征将韵律音素序列切分为多个分句序列,分别将分句序列与缓存的目标分句序列进行比较,可以有效提高命中效率;在分句序列与目标序列相同的情况下,则直接将目标分句序列对应的目标分句语音确定为该分句序列的语音,而无需重新进行语音合成,从而提高语音合成的效率。
下面从另一种实现角度,对本申请的实施例进行说明。
继续参考图2,根据本申请的一些实施例,该方法还可以包括:
确定多个分句序列中的任一待匹配分句序列与目标分句序列不匹配,对待匹配分句序列进行语音合成,生成第二分句语音。
在该实施例中,目标分句序列为预先生成并存储于系统中的分句序列。
目标分句序列可以为缓存于系统中的全部的预存分句序列中的任意一个。
确定多个分句序列中的任一待匹配分句序列与目标分句序列不匹配,则将该待匹配分句序列确定为第二分句序列。
在实际执行过程中,将目标分句序列与多个分句序列中的任意待匹配分句序列进行精确匹配,在均不匹配的情况下,则将该待匹配分句序列确定为第二分句序列,并对第二分句序列进行语音合成,生成第二分句语音。
第二分句语音为缓存中不存在的语音。
在实际执行过程中,可以基于步骤110中所生成的降序排序的顺序,从前到后依次将分句序列与目标分句序列进行精确匹配,在所有分句序列与目标分句均不匹配的情况下,则对未查找到相似序列的分句序列进行语音合成,生成第二分句语音。
在一些实施例中,对第二分句序列进行语音合成,生成第二分句语音,可以包括:
将第二分句序列转换为端到端语音合成模型可接收的韵律音素序列,对该韵律音素序列进行语音合成,生成第二分句语音。
在该实施例中,韵律音素序列用于表征第二分句序列的韵律信息和音素信息。
其中,音素为根据语音的自然属性划分出来的最小语音单位,依据音节里的发音动作来分析,一个动作即构成一个音素,音素可以为汉语音素,也可以为英语音素。
例如,第二分句序列可以表现为sil shang4#0hai3#0shi4#2jin1#0tian1#2yin1#0zhuan3#1duo1#0yun2#3,或者表现为:sil sh ang4#0h ai3#0sh i4#2jin1#0t ian1#2yin1#0zh uan3#1d uo1#0y vn2#3sil eos等不同格式的音素序列。
将第二分句序列输入至语音合成系统(如端到端语音合成模型),由语音合成系统合成第二分句语音。
在实际执行过程中,可以采用文字转音素模块来执行以上操作。
在该实施例中,将音素作为关键字进行缓存,克服了文本中标点的变化,或在数字写法变化而读音完全相同时被当成不同句子进行缓存的缺点,能够实现目标文本的标准化缓存,提高缓存效率。
继续参考图2根据本申请的一些实施例,在生成第二分句语音之后,该方法还可以包括:
基于韵律标识符对第二分句语音进行切分,生成多个子第二分句语音;
缓存子第二分句语音对应的子分句序列和多个子第二分句语音。
在该实施例中,可以基于第二分句语音所对应的第二分句序列中的韵律标识符,对第二分句语音进行切分,生成多个子第二分句语音。
其中,每个子第二分句语音对应的分句序列即为子分句序列。
在得到子第二分句语音以及其对应的子分句序列后,可以将子分句序列和子第二分句语音缓存至系统,作为后续查询过程中的目标分句序列及其对应的目标分句语音。
根据本申请的一些实施例,在生成第二分句语音之后,该方法还可以包括:拼接第二分句语音和目标分句语音,生成目标文本对应的目标语音。
在该实施例中,目标语音为将这个目标文本进行语音合成后所得到的语音。
目标分句语音为缓存中存在的语音;
第二分句语音为缓存中不存在的语音。
可以理解的是,该目标语音为基于缓存中的目标分句语音以及新生成的第二分句语音中的至少一种所生成。
在一些实施例中,拼接第二分句语音和目标分句语音,还可以包括:
基于第二分句语音对应的分句序列在韵律音素序列中的切分顺序,以及目标分句语音对应的分句序列在韵律音素序列中的切分顺序,拼接第二分句语音和目标分句语音。
在该实施例中,基于第二分句语音对应的第二分句序列在韵律音素序列中的切分顺序,以及目标分句语音对应的第一分句序列在韵律音素序列中的切分顺序,从第一个分句序列开始,依次拼接相邻的分句序列对应的语音,直至拼接完成全部的分句序列对应语音,生成目标语音。
在生成目标语音后,还可以输出目标语音。
根据本申请实施例提供的文本转写方法,基于韵律特征将韵律音素序列切分为多个分句序列,分别将分句序列与缓存的目标分句序列进行比较,可以有效提高命中效率;只有在分句序列与目标序列不同的情况下,才进行语音合成,有效减轻服务器的算力压力,提高语音合成的效率。
下面对本申请实施例提供的文本转写装置进行描述,下文描述的文本转写装置与上文描述的文本转写方法可相互对应参照。
如图3所示,该文本转写装置包括:第一处理模块310和第二处理模块320。
第一处理模块310,用于对目标文本的韵律音素序列进行切分,生成多个分句序列,韵律音素序列包括与目标文本对应的多个音素以及位于相邻音素之间的韵律标识符,每个分句序列包括至少一个音素;
第二处理模块320,用于确定多个分句序列中的任一待匹配分句序列与缓存的目标分句序列匹配,从缓存中获取与目标分句序列对应的目标分句语音,将待匹配分句序列对应的语音确定为目标分句语音。
根据本申请实施例提供的文本转写装置,基于韵律特征将韵律音素序列切分为多个分句序列,分别将分句序列与缓存的目标分句序列进行比较,可以有效提高命中效率;在分句序列与目标序列相同的情况下,则直接将目标分句序列对应的目标分句语音确定为该分句序列的语音,而无需重新进行语音合成,从而提高语音合成的效率。
在一些实施例中,第一处理模块310,还可以用于:
将目标文本转化为韵律音素序列;
基于多个韵律标识符中的至少部分切分韵律音素序列,生成多个分句序列。
在一些实施例中,该装置可以包括:
第三处理模块,用于确定多个分句序列中的任一待匹配分句序列与目标分句序列不匹配,对待匹配分句序列进行语音合成,生成第二分句语音。
在一些实施例中,该装置可以包括:
第四处理模块,用于在生成第二分句语音之后,基于韵律标识符对第二分句语音进行切分,生成多个子第二分句语音;
缓存子第二分句语音对应的子分句序列和多个子第二分句语音。
在一些实施例中,该装置可以包括:
第五处理模块,用于在生成第二分句语音之后,基于目标分句语音对应的分句序列在韵律音素序列中的切分顺序,以及第二分句语音对应的分句序列在韵律音素序列中的切分顺序,拼接目标分句语音和第二分句语音,生成目标文本对应的目标语音。
在一些实施例中,第一处理模块310,还可以用于:
基于多个韵律标识符中的目标标识符对韵律音素序列进行切分,生成多个候选序列,且位于第一个切分点之前的候选序列对应的语音合成时长在目标时长内;
将多个候选序列中的目标候选序列与相邻候选序列进行组合,生成多个分句序列以及分句序列对应的细粒度大小;
基于分句序列对应的细粒度大小,对多个分句序列进行降序排序。
在一些实施例中,韵律标识符包括:用于表征韵律词、用于表征音节、用于表征韵律短语、用于表征句末信息和用于表征语调短语的标识符中的至少一种;
且用于表征句末信息的标识符的细粒度大于用于语调短语的标识符的细粒度,用于表征语调短语的标识符的细粒度大于用于表征韵律短语的标识符的细粒度,用于表征韵律短语的标识符的细粒度大于用于表征韵律词的标识符的细粒度,用于表征韵律词的标识符的细粒度大于用于表征音节的标识符的细粒度。
图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行文本转写方法,该方法包括:对目标文本的韵律音素序列进行切分,生成多个分句序列,韵律音素序列包括与目标文本对应的多个音素以及位于相邻音素之间的韵律标识符,每个分句序列包括至少一个音素;确定多个分句序列中的任一待匹配分句序列与缓存的目标分句序列匹配,从缓存中获取与目标分句序列对应的目标分句语音,将待匹配分句序列对应的语音确定为目标分句语音。
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
进一步地,本申请还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法实施例所提供的文本转写方法,该方法包括:对目标文本的韵律音素序列进行切分,生成多个分句序列,韵律音素序列包括与目标文本对应的多个音素以及位于相邻音素之间的韵律标识符,每个分句序列包括至少一个音素;确定多个分句序列中的任一待匹配分句序列与缓存的目标分句序列匹配,从缓存中获取与目标分句序列对应的目标分句语音,将待匹配分句序列对应的语音确定为目标分句语音。
另一方面,本申请实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的文本转写方法,该方法包括:对目标文本的韵律音素序列进行切分,生成多个分句序列,韵律音素序列包括与目标文本对应的多个音素以及位于相邻音素之间的韵律标识符,每个分句序列包括至少一个音素;确定多个分句序列中的任一待匹配分句序列与缓存的目标分句序列匹配,从缓存中获取与目标分句序列对应的目标分句语音,将待匹配分句序列对应的语音确定为目标分句语音。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
以上实施方式仅用于说明本申请,而非对本申请的限制。尽管参照实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,对本申请的技术方案进行各种组合、修改或者等同替换,都不脱离本申请技术方案的精神和范围,均应涵盖在本申请的权利要求范围中。
Claims (10)
1.一种文本转写方法,其特征在于,包括:
对目标文本的韵律音素序列进行切分,生成多个分句序列,所述韵律音素序列包括与所述目标文本对应的多个音素以及位于相邻所述音素之间的韵律标识符,每个所述分句序列包括至少一个所述音素;
确定所述多个分句序列中的任一待匹配分句序列与缓存的目标分句序列匹配,从缓存中获取与所述目标分句序列对应的目标分句语音,将所述待匹配分句序列对应的语音确定为所述目标分句语音。
2.根据权利要求1所述的文本转写方法,其特征在于,所述对目标文本的韵律音素序列进行切分,生成多个分句序列,包括:
将所述目标文本转化为韵律音素序列;
基于多个所述韵律标识符中的至少部分切分所述韵律音素序列,生成所述多个分句序列。
3.根据权利要求1所述的文本转写方法,其特征在于,所述方法还包括:
确定所述多个分句序列中的任一待匹配分句序列与所述目标分句序列不匹配,对所述待匹配分句序列进行语音合成,生成第二分句语音。
4.根据权利要求3所述的文本转写方法,其特征在于,在所述生成第二分句语音之后,所述方法还包括:
基于所述韵律标识符切分所述第二分句语音,生成多个子第二分句语音;
缓存所述多个子第二分句语音和所述子第二分句语音对应的子分句序列。
5.根据权利要求3所述的文本转写方法,其特征在于,在所述生成第二分句语音之后,所述方法还包括:
基于所述目标分句语音对应的分句序列在所述韵律音素序列中的切分顺序,以及所述第二分句语音对应的分句序列在所述韵律音素序列中的切分顺序,拼接所述目标分句语音和所述第二分句语音,生成所述目标文本对应的目标语音。
6.根据权利要求2所述的文本转写方法,其特征在于,所述基于多个所述韵律标识符中的至少部分切分所述韵律音素序列,生成所述多个分句序列,包括:
基于所述多个韵律标识符中的目标标识符对所述韵律音素序列进行切分,生成多个候选序列,且位于第一个切分点之前的所述候选序列对应的语音合成时长在目标时长内;
将所述多个候选序列中的目标候选序列与相邻候选序列进行组合,生成所述多个分句序列,并确定所述分句序列对应的细粒度大小;
基于所述分句序列对应的细粒度大小,对所述多个分句序列进行降序排序。
7.根据权利要求6所述的文本转写方法,其特征在于,所述韵律标识符包括:用于表征音节、用于表征韵律词、用于表征韵律短语、用于表征语调短语和用于表征句末信息的标识符中的至少一种;
且所述用于表征句末信息的标识符的细粒度大于所述用于所述语调短语的标识符的细粒度,所述用于表征语调短语的标识符的细粒度大于所述用于表征韵律短语的标识符的细粒度,所述用于表征韵律短语的标识符的细粒度大于所述用于表征韵律词的标识符的细粒度,所述用于表征韵律词的标识符的细粒度大于所述用于表征音节的标识符的细粒度。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述文本转写方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述文本转写方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述文本转写方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210346094.2A CN114822489A (zh) | 2022-03-31 | 2022-03-31 | 文本转写方法和文本转写装置 |
PCT/CN2022/118072 WO2023184874A1 (zh) | 2022-03-31 | 2022-09-09 | 语音合成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210346094.2A CN114822489A (zh) | 2022-03-31 | 2022-03-31 | 文本转写方法和文本转写装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114822489A true CN114822489A (zh) | 2022-07-29 |
Family
ID=82532854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210346094.2A Pending CN114822489A (zh) | 2022-03-31 | 2022-03-31 | 文本转写方法和文本转写装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114822489A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023184874A1 (zh) * | 2022-03-31 | 2023-10-05 | 美的集团(上海)有限公司 | 语音合成方法和装置 |
-
2022
- 2022-03-31 CN CN202210346094.2A patent/CN114822489A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023184874A1 (zh) * | 2022-03-31 | 2023-10-05 | 美的集团(上海)有限公司 | 语音合成方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7464621B2 (ja) | 音声合成方法、デバイス、およびコンピュータ可読ストレージ媒体 | |
US10140973B1 (en) | Text-to-speech processing using previously speech processed data | |
CN108899009B (zh) | 一种基于音素的中文语音合成系统 | |
US10475438B1 (en) | Contextual text-to-speech processing | |
US9761219B2 (en) | System and method for distributed text-to-speech synthesis and intelligibility | |
US8990089B2 (en) | Text to speech synthesis for texts with foreign language inclusions | |
US20080177543A1 (en) | Stochastic Syllable Accent Recognition | |
US20070055526A1 (en) | Method, apparatus and computer program product providing prosodic-categorical enhancement to phrase-spliced text-to-speech synthesis | |
Qian et al. | A cross-language state sharing and mapping approach to bilingual (Mandarin–English) TTS | |
JP2002530703A (ja) | 音声波形の連結を用いる音声合成 | |
MXPA01006594A (es) | Metodo y sistema para la preseleccion de unidades adecuadas para habla por concatenacion. | |
JP2009036999A (ja) | コンピュータによる対話方法、対話システム、コンピュータプログラムおよびコンピュータに読み取り可能な記憶媒体 | |
JP6806662B2 (ja) | 音声合成システム、統計モデル生成装置、音声合成装置、音声合成方法 | |
CN106710585A (zh) | 语音交互过程中的多音字播报方法及系统 | |
Cooper | Text-to-speech synthesis using found data for low-resource languages | |
JPH11249677A (ja) | 音声合成装置の韻律制御方法 | |
CN113327574A (zh) | 一种语音合成方法、装置、计算机设备和存储介质 | |
Chen et al. | The ustc system for blizzard challenge 2011 | |
CN114678001A (zh) | 语音合成方法和语音合成装置 | |
CN112185341A (zh) | 基于语音合成的配音方法、装置、设备和存储介质 | |
Al-Anzi et al. | The impact of phonological rules on Arabic speech recognition | |
CN114822489A (zh) | 文本转写方法和文本转写装置 | |
WO2023184874A1 (zh) | 语音合成方法和装置 | |
CN109859746B (zh) | 一种基于tts的语音识别语料库生成方法及系统 | |
CN114678002A (zh) | 文本的切分方法和文本的切分装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |