一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

语音合成方法、语音交互方法、装置及设备与流程

2021-08-24 16:08:00 来源:中国专利 TAG:语音 方法 交互 装置 申请
语音合成方法、语音交互方法、装置及设备与流程

本申请涉及语音处理技术领域,尤其涉及一种语音合成方法、语音交互方法、装置及设备。



背景技术:

随着人工智能的不断发展,语音合成的应用越来越广泛,通过语音合成能够实现将文本合成为语音。

传统的语音合成方法主要包括使用原始发音人的语音片段拼接生成语音的拼接法,具体的,先利用声学模型获得待合成文本对应的音素序列中各音素的音频特征,然后根据音素的音频特征从音库与该音素对应的多个语音片段中选择与该音素的音频特征最相似的语音片段,最后按照音素序列的顺序对音素的语音片段进行拼接得到待合成文本的合成语音。然而,拼接法在韵律、语速、自然度上都与真人发音差距较大。目前,新涌现出以tacotron为代表的端到端方法,具体的,将待合成文本输入端到端模型中,端到端模型的输出即为待合成文本的合成语音,端到端方法能够生成较拼接法更加流畅自然的语音,但是由于模型较大,因此实时性较差。

因此,在实时语音场景下,如何提高合成语音的流畅度及自然度成为目前亟待解决的问题。



技术实现要素:

本申请实施例提供一种语音合成方法、语音交互方法、装置及设备,用以解决现有技术中在实时语音场景下,如何提高合成语音的流畅度及自然度成为目前亟待解决的问题。

第一方面,本申请实施例提供一种语音合成方法,包括:

对待合成文本进行切分,得到其已合成片段和待合成片段;

以所述待合成片段中的音素为单元,确定所述音素的语音片段;

通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;

根据所述音素及所述已合成片段的语音片段,得到合成语音。

第二方面,本申请实施例提供一种语音交互方法,包括:

获得针对待合成文本的合成语音,所述合成语音是采用如下方式合成:对所述待合成文本进行切分,得到其已合成片段和待合成片段,以所述待合成片段中的音素为单元,确定所述音素的语音片段,通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;以及,根据所述音素及所述已合成片段的语音片段,得到所述合成语音;

播放所述合成语音。

第三方面,本申请实施例一种提供语音合成装置,包括:

切分模块,用于对待合成文本进行切分,得到其已合成片段和待合成片段;

确定模块,用于以所述待合成片段中的音素为单元,确定所述音素的语音片段;

获得模块,用于通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;

合成模块,用于根据所述音素及所述已合成片段的语音片段,得到合成语音。

第四方面,本申请实施例一种语音交互装置,包括:

获得模块,用于获得针对待合成文本的合成语音,所述合成语音是采用如下方式合成:对所述待合成文本进行切分,得到其已合成片段和待合成片段,以所述待合成片段中的音素为单元,确定所述音素的语音片段,通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;以及,根据所述音素及所述已合成片段的语音片段,得到所述合成语音;

播放模块,用于播放所述合成语音。

第五方面,本申请实施例一种计算机设备,包括:存储器、处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现如第一方面任一项所述的方法。

第六方面,本申请实施例一种终端,包括:存储器、处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现如第二方面任一项所述的方法。

本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行如第一方面任一项所述的方法。

本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行如第二方面任一项所述的方法。

本申请实施例还提供一种计算机程序,当所述计算机程序被计算机执行时,用于实现如第一方面任一项所述的方法。

本申请实施例还提供一种计算机程序,当所述计算机程序被计算机执行时,用于实现如第二方面任一项所述的方法。

本申请实施例提供的语音合成方法、语音交互方法、装置及设备,通过对待合成文本进行切分得到其已合成片段和待合成片段,以待合成片段中的音素为单元确定音素的语音片段,通过查询基于端到端语音合成模型生成的预设音库获得已合成片段的语音片段,并根据音素及已合成片段的语音片段得到合成语音,实现了将端到端技术与拼接技术结合的语音合成方法,通过端到端语音合成模型离线生成已合成片段的语音库,能够解决端到端语音合成模型无法应用于实时语音场景的问题,并且,相比于传统技术中的拼接法能够提高合成语音的自然度及流畅度,从而能够在实时语音场景下,提供给用户一个更加自然流畅的语音合成体验。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例的应用场景示意图一;

图2为本申请实施例提供的语音合成方法的原理图;

图3为本申请实施例的应用场景示意图二;

图4为本申请实施例提供的获得待合成语音的示意图;

图5为本申请实施例提供的切分待合成文本的示意图;

图6为本申请实施例提供的语音合成方法的流程示意图;

图7为本申请实施例提供的结构化数据与自然语言的语义之间关系的示意图;

图8为本申请实施例提供的处理待合成文本的示意图;

图9为本申请实施例提供的生成预设音库的示意图;

图10为本申请实施例提供的标注第一对应关系的示意图;

图11为本申请实施例提供的目标第一对应关系的示意图;

图12为本申请实施例提供的根据语音片段得到合成语音的示意图一;

图13为本申请实施例提供的根据语音片段得到合成语音的示意图二;

图14为本申请实施例提供的语音交互方法的流程示意图;

图15为本申请实施例提供的语音合成装置的结构示意图;

图16为本申请实施例提供的计算机设备的结构示意图;

图17为本申请实施例提供的语音交互装置的结构示意图;

图18为本申请实施例提供的终端的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。

另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。

为了方便本领域技术人员理解本申请实施例提供的技术方案,下面先对技术方案实现的技术环境进行说明。

相关技术中比较常用的语音合成方法,主要包括拼接法和端到端法,其中,拼接法所合成的语音流畅度及自然度较差,端到端法只能离线使用,在非实时语音场景下,生成较拼接法更加流畅、自然的语音,因此相关技术中亟需一种在实时语音场景下,提高合成语音的流畅度及自然度的语音合成方式。

基于类似于上文所述的实际技术需求,本申请提供的语音合成方法可以利用技术化的手段提高实时语音场景下,所生成语音的流畅度及自然度。

下面通过两个示例性的业务场景具体说明本申请各个实施例提供的语音合成方法。

场景一

在一个场景中,如图1所示,终端11可以通过用户接口装置采集用户的输入,图1中终端11仅是示例性的,还可以包括平板电脑、台式电脑、智能音响等其他多种形式的终端。其中,输入例如可以为语音输入、文字输入、操作输入等。例如,输入例如可以为用户用于查询特定城市天气的查询操作输入。终端11在采集获得用户的输入数据后,可以将输入数据发送至服务器12,或者,终端11可以在对输入数据进行一定处理后,将处理后的数据发送至服务器12。

如图1所示,服务器12接收到终端的数据之后,可以确定与所述数据对应的待合成文本,例如可以根据接收到的数据生成与所述数据对应的待合成文本。进一步的,服务器12可以采用本申请实施例提供的语音合成方法得到所述待合成文本的合成语音。如图2所示,服务器12可以先将待合成文本切分为已合成片段和待合成片段,其中,已合成片段是指已存在对应语音的文本片段,待合成片段是指不存在对应语音需要通过实时合成的方式获得对应语音的文本片段。然后,以所述待合成片段中的音素为单元确定所述音素的语音片段,并通过查询基于端到端语音合成模型生成的预设音库,获得所述已合成片段的语音片段,最后根据所述音素及所述已合成片段的语音片段,得到合成语音。其中,预设音库是基于端到端语音合成模型生成。

在服务器12得到所述合成语音之后,如图1所示,服务器12可以将所述合成语音发送至终端11,终端11在接收到所述合成语音后,可以通过扬声器对所述待合成语音进行播放,以便所述用户能够获得针对其输入的响应。

需要说明的是,本场景中终端11与服务器12的功能划分仅为举例。可替换的,服务器12可以将待合成文本发送至终端11,由终端11基于本申请实施例提供的语音合成方法得到待合成文本的合成语音并进行语音播放。或者,可替换的,可以由终端11根据用户的输入生成待合成文本,并将待合成文本发送至服务器12,进一步由服务器12基于本申请实施例提供的语音合成方法得到待合成文本的合成语音,并将合成文本发送至终端11以便终端11能够进行语音播放。或者,可替换的,根据用户输入获得待合成文本,基于本申请实施例提供的语音合成方法得到待合成文本的合成语音,以及对合成语音进行语音播放均可以由终端11完成。

场景二

在另一个场景中,如图3所示,终端11可以通过声音采集装置(例如,麦克风)采集用户的输入语音。以用户发出“明天杭州天气怎么样”的语音为例,终端11可以采集用户发出的“明天杭州天气怎么样”的语音。在终端11采集到输入语音之后,可以直接将输入语音发送至服务器12,由服务器12将输入语音转换为文字;或者,终端11可以将采集到的输入语音转换为文字即“明天杭州天气怎么样”,然后在转换得到的文字发送至服务器12。

之后,如图4所示,服务器12可以利用自然语义理解(naturallanguageunderstanding,nlu)模块将用户的自然语音结构化为问天气(ask_whether)(位置(location)=“杭州”,时间(time)“明天”),其中,动作(action)为问天气,对应函数为ask_whether,有两个参数需要填充,第一个参数是位置,对应的取值是“杭州”,第二个参数是时间,对应的取值是“明天”,这样就完成了nlu,实现了对自然语言结构化。然后,服务器12可以利用对话处理模块对结构化的文本进行对话处理,并最终得到同样结构化的答天气(report_whether)(位置(location)=“杭州”,时间(time)=“明天”,最高气温(temp_from)=“20”,最低气温(temp_to)=“15”,状况(state)=“晴转多云”),其中,动作为答天气,对应函数为report_whether,有五个参数需要填充,第一个参数是位置,对应的取值是“杭州”,第二个参数是时间,对应的取值是“明天”,第三个参数是最高气温,对应的取值是“20”,第四个参数是最低气温),对应的取值是“15”,第五个参数是状况,对应的取值是“晴转多云”。最后,服务器12可以利用自然语言生成(naturallanguagegeneration,nlg)模块处理结构化的文本,以将结构化文翻译成对应的自然语义“明天杭州晴转多云,气温变化不大,预计市区最高温度在20度左右,夜间受冷空气影响,气温开始下降,最低在15度左右”。基于此,服务器12可以得到待合成文本。需要说明的是,以上会话处理过程仅为举例。

服务器12在获得待合成文本之后,可以采用本申请实施例提供的语音合成方法,对所述待合成文本进行处理,以得到待合成文本的合成语音。其中,所述待合成文本是可以切分为待合成片段和已合成片段的文本,以待合成文本为“明天杭州晴转多云,气温变化不大,预计市区最高温度在20度左右,夜间受冷空气影响,气温开始下降,最低在15度左右”为例,如图5所示,其切分后的待合成片段可以为方括号括起来的文本片段,即“明天”、“杭州”、“晴转多云”、“15”和“20”;已合成片段可以为未被方括号括起来的文本片段,即“,气温变化不大,预计市区最高温度在”、“度左右,夜间受冷空气影响,气温开始下降,最低在”以及“度左右”。或者,切分后的待合成片段可以为“明天”、“杭州”、“15”和“20”已合成片段可以为“晴转多云,”、“气温变化不大,预计市区最高温度在”“度左右,夜间受冷空气影响,气温开始下降,最低在”以及“度左右”。需要说明的是,以上切分方式仅为举例,对于待合成文本切分为已合成片段和待合成片段的具体方式可以根据需求灵活实现。

在服务器12得到所述合成语音之后,如图3所示,服务器12可以将所述合成语音发送至终端11,终端11在接收到所述合成语音后,可以通过扬声器对所述待合成语音进行播放,以便所述用户能够获得针对其语音输入的响应。

需要说明的是,以上场景仅为场景举例,本申请实施例提供的语音合成方法可以应用于通过语音方式向用户输出信息的人机交互场景,示例性的,可以应用于支持智能家居控制、语音购物、手机充值、叫外卖、音频音乐播放等的智能设备,例如智能音响、智能机器人等。

下面结合附图,对本申请的一些实施例作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

图6为本申请实施例提供的语音合成方法的流程示意图。如图6所示,本实施例的方法可以包括:

步骤601,对待合成文本进行切分,得到其已合成片段和待合成片段;

步骤602,以所述待合成片段中的音素为单元,确定所述音素的语音片段;

步骤603,通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;

步骤604,根据所述音素及所述已合成片段的语音片段,得到合成语音。

需要说明的是,步骤602与步骤603之间没有先后顺序的限制。为了便于说明,本申请实施例中以待合成文本为汉字为例进行举例。

本申请实施例中,所述待合成文本可以为具有特定结构的文本,根据其结构可以将其切分为已合成片段和待合成片段。所述结构化数据可以理解为能够结构化表示自然语言的语义的数据,结构化数据例如可以符合动作(act)-参数(slot)-值(value)数据结构。以动作为请求(request),参数为类型(type)和姓名(name),类型参数的参数值为电话(phone),姓名参数的参数值为韩小姐为例,其结构化数据与其表示的自然语言的语义之间的关系可以如图7所示,即结构化数据request(type=phone,name=韩小姐)对应的自然语言的语义可以为“您好韩小姐,麻烦提供下手机号哦”。

示例性的,所述待合成文本可以基于自然语言生成模型对结构化数据处理得到,对于图5,结构化数据例如可以为前述的“report_whether(location=“杭州”,time=“明天”,temp_from=“20”,temp_to=“15”,state=“晴转多云””。基于此,所述待合成片段可以包括所述结构化数据中参数值对应的文本片段,其中,参数值对应的文本片段例如可以为“15”、“20”;所述已合成片段可以包括所述自然语言生成模型针对所述结构化数据所扩展的文本片段,其中,扩展的文本片段例如可以为“,气温变化不大,预计市区最高温度在”。

需要说明的是,所述待合成片段可以包括所述结构化数据中所有参数值对应的文本片段。或者,可替换的,所述待合成片段可以包括所述结构化数据中特定参数值对应的文本片段,所述已合成片段还可以包括所述结构化数据中所述特定参数值之外的其他参数值对应的文本片段,其中,所述特定参数值具体可以为不能枚举或者枚举量较大的参数值,例如最高气温、最低气温。

本申请实施例中,可以采用如图8所示的方式,对于待合成文本,可以先经过步骤801进行切分,获得待合成片段和已合成片段。之后,对于待合成片段可以经过步骤802的前端处理,以将待合成片段转成标记(label)形式,包含组成待合成片段的所有音素、各音素的预测停顿、轻重等标记,例如以待合成片段为汉字“明天”为例,其所有音素即为m、i、ng、t、i、a和n,进一步的可以预测这7个音素中各音素的停顿、轻重等,各音素及其停顿、轻重可以认为是一组标记,则“明天”可以对应7组标记。需要说明的是,对于预测音素的停顿、轻重的具体方式本申请不做限定。在获得待合成文本的多组标记之后,该多组标记中的各组标记可以分别经过步骤803中特征分类模型的处理,获得各组标记的音频特征,该音频特征例如可以包括基频特征和频谱特征。进一步的,在获得的各组标记的音频特征之后,在步骤804的单元挑选可以通过查询音素音库获得的各组标记对应音素的多个语音片段,并根据各组标记的音频特征从多个语音片段中挑选出目标语音片段,以获得各音素的语音片段。其中,音素音库中可以保存有录制语音以及不同音素与录制语音的语音片段的对应关系,例如,音素i可以对应录制语音1的第0.1秒到0.2秒以及录制语音2的第10.2秒到10.3秒。由于对于同一音素在音素音库中存在多个语音片段,因此需要根据音频特征从多个语音片段中挑选出音频特征最接近的目标语音片段。至此,即得到了待合成片段中各音素的语音片段。

本申请实施例中,如图8所示,对于已合成片段,在步骤804的单元挑选可以通过查询预设音库获得所述已合成片段的语音片段,所述预设音库基于端到端语音合成模型生成。可以将样本文本输入训练好的端到端语音合成模型,经所述端到端语音合成模型进行处理,以得到所述样本文本的生成语音。所述端到端语音合成模型例如可以为tacotron,其中,tacotron是一种端到端的从文本到语音(texttospeech,tts)模型,其输入可以为文字向量,其输出可以为谱图框架(spectrogramframe),进一步的可以根据谱图框架生成音频,例如可以根据谱图框架,采用griffin_lim算法生成对应音频。

本申请实施例中,所述预设音库可以包括:所述端到端语音合成模型基于至少一个样本文本生成的生成语音,以及各样本文本的不同特定样本片段与各所述样本文本的生成语音中语音片段的第一对应关系,其中,所述样本文本为所述自然语言生成模型处理样本结构化数据所得到的文本,所述特定样本片段包括已合成样本片段和/或待合成样本片段。由于待合成文本通常是基于自然语言生成模型对结构化数据进行处理所生成的,通过预设音库包括自然语言生成模型处理样本结构化数据所得到的样本文本的生成语音,使得预设音库能够以样本结构化数据为单元进行生成语音的管理,有利于提高获得待合成文本中待合成片段的语音片段的效率。

需要说明的是,所述样本结构化数据的数据结构包括与待合成文本对应结构化数据的数据结构,例如样本结构化数据包括前述report_whether对应数据结构。

需要说明的是,在待合成文本对应结构化数据的数据结构为多个的情况下,所述样本结构化数据以及所述样本文本的个数也可以为多个,多个样本结构化数据可以与多个数据结构一一对应。

本申请实施例中,所述预设音库可以通过图9所示的方式获得。如图9所示,可以在步骤901中将至少一个样本文本分别输入所述端到端语音合成模型,经所述端到端语音合成模型处理,以得到各样本文本的生成语音;在得到各样本文本的生成语音之后,进一步可以在步骤902中标注各样本文本的不同特定样本片段与各所述样本文本的生成语音中语音片段的对应关系,以得到所述第一对应关系。其中,步骤902中可以采用人工标注的方式标注各样本文本的不同特定样本片段与各所述样本文本的生成语音中语音片段的对应关系,即可以由人通过听取生成语音,手动标注出样本文本的不同特定样本片段与其生成语音中语音片段的对应关系。

为了简化操作,节省人力成本,提高标注的准确性,可选的,如图9所示,步骤902具体可以包括步骤a和步骤b。如图9所示,在步骤a中可以先标注各样本文本的音素序列中各音素与各所述样本文本的生成语音中语音帧的第三对应关系。样本文本的音素序列与该样本文本的生成语音中语音帧的对应关系例如可以如图10所示。图10中,样本文本1的生成语音包括了多个语音帧,通过标注可以获得样本文本1的音素与样本文本1的语音帧之间的对应关系。

本申请实施例中,如图9所示,可以基于步骤803中所使用的所述特征分类模型完成前述步骤a。示例性的,针对所述至少一个样本文本中的各样本文本可以分别执行如下步骤a1至步骤a3。在步骤a1中,可以将样本文本对应的音素序列中各音素的文本特征分别输入特征分类模型,经所述特征分类模型处理得到各所述音素的音频特征;然后,在步骤a2中,根据各音素的音频特征以及所述样本文本的生成语音中各语音帧的音频特征,按照所述音素序列的顺序,依次确定出所述生成语音中与各音素匹配的至少一个语音帧;在步骤a3中,建立各音素与其匹配的至少一个语音帧的对应关系。其中,与一个音素匹配的语音帧可以是指与该音素的音频特征相似度大于一定阈值的语音帧,或者,与该音素的音频特征相似度大于与该音素下一个音素的音频特征相似度的语音帧。

本申请实施例中,在确定出第三对应关系之后,在步骤b中可以根据所述第三对应关系,标注各样本文本的不同特定样本片段与各所述样本文本的生成语音中语音片段的对应关系,以得到预设音库。假设特定样本片段为待合成样本片段,且样本文本1的音素序列中前6个音素属于待合成样本片段,后4个音素属于已合成样本片段,则如图10所示,根据第三对应关系所标注的第一对应关系具体可以为待合成样本片段与样本文本的生成语音中语音片段x的对应关系。

可选的,所述通过查询预设音库获得所述已合成片段的语音片段,具体可以包括:通过查询所述预设音库获得与所述待合成文本匹配的目标生成语音以及不同特定样本文本片段与所述目标生成语音中语音片段的目标第一对应关系,并根据所述目标第一对应关系从所述目标生成语音中截取与所述已合成片段匹配的语音片段。其中,与所述待合成文本匹配的目标生成语音可以是指目标样本结构化数据的生成语音,所述目标样本结构化数据的数据结构与所述待合成文本对应结构化数据的数据结构相同。

假设待合成语音文本对应结构化数据的数据结构为前述的report_whether,则与待合成文本匹配的目标生成语音可以为端到端语音合成模型基于目标样本文本“明天杭州晴转多云,气温变化不大,预计市区最高温度在20度左右,夜间受冷空气影响,气温开始下降,最低在15度左右”生成的生成语音。进一步的,假设结构化数据中的参数值对应的文本片段均待合成片段,自然语言生成模型针对结构化数据所扩展的文本片段均为已合成片段待合成片段,且特定样本片段包括待合成样本片段为例,目标第一对应关系可以如图11所示。

参考图11,时间参数对应待合成样本片段对应的语音片段即为目标生成语音中时间参数值对应的语音片段a,在时间参数值为“明天”情况下,语音片段a即为文本“明天”的语音;位置参数对应待合成样本片段对应的语音片段即为目标生成语音中位置参数值对应的语音片段b,在位置参数值为“杭州”情况下,语音片段b即为文本“杭州”的语音;状态参数对应待合成样本片段对应的语音片段即为目标生成语音中状态参数值对应的语音片段c;最高气温参数对应待合成样本片段对应的语音片段即为目标生成语音中最高气温参数值对应的语音片段d;最低气温参数对应待合成样本片段对应的语音片段即为目标生成语音中最低气温参数值对应的语音片段e。

可以理解的是,图11中语音片段c与语音片段d之间的语音片段f、语音片段d与语音片段e之间的语音片段g以及语音片段e之后的语音片段k即为已合成样本片段对应的语音片段。其中,语音片段f例如可以对应已合成样本片段“,气温变化不大,预计市区最高温度在”,语音片段g例如可以对应已合成样本片段“度左右,夜间受冷空气影响,气温开始下降,最低在”,语音片段k例如可以对应已合成样本片段“度左右”。基于此,所述根据所述目标第一对应关系从所述目标生成语音中截取与所述已合成片段匹配的语音片段具体可以为从所述目标生成语音中截取语音片段f、g和h。

本申请实施例中,在从目标生成语音中截取已合成片段的语音片段之后,如图8所示,通过步骤805可以对所述音素及所述已合成片段的语音片段进行拼接,以得到合成语音。示例性的,可以先以待合成片段为单元对待合成片段自身的音素的语音片段进行拼接,然后再将待合成片段的语音片段与截取出来的已合成片段的语音片段进行拼接,以得到合成语音。对应于图11,如图12所示,可以先分别对待合成文本中时间参数值、位置参数值、状态参数值、最高气温参数值以及最低气温参数值对应的待合成片段中音素的语音片段进行拼接,得到时间参数值对应待合成片段的语音片段a1、位置参数值对应待合成片段的语音片段b1、状态参数值对应待合成片段的语音片段c1、最高气温参数值对应待合成片段的语音片段d1以及最低气温参数值对应待合成片段的语音片段e1,然后将与语音片段a1至b1分别与截取出来的语音片段f、g和h进行拼接,得到待合成文本的合成语音。需要说明的是,拼接得到的语音片段a1、b1、c1、d1和e1与目标生成语音中的语音片段a、b、c、d和e的时长可能相同也可能不同。

或者,可替换的,所述通过查询预设音库获得所述已合成片段的语音片段,具体可以包括:通过查询所述预设音库获得与所述待合成文本匹配的目标生成语音以及不同特定样本文本片段与所述目标生成语音中语音片段的目标第一对应关系,所述目标生成数据中包括所述已合成片段的语音片段;基于此,所述根据所述音素及所述已合成片段的语音片段,得到合成语音,具体可以包括:根据所述目标第一对应关系,使用所述音素的语音片段替换所述目标生成语音中相应的语音片段,以得到合成语音。

示例性的,可以先以待合成片段为单元对待合成片段自身的音素的语音片段进行拼接,获得所述待合成文本中待合成片段的语音片段,然后再根据所述目标第一对应关系,使用待合成文本中待合成片段的语音片段替换所述目标生成语音中相应的语音片段,以得到合成语音。对应于图11,如图13所示,可以先分别对待合成文本中时间参数值、位置参数值、状态参数值、最高气温参数值以及最低气温参数值对应的待合成片段中音素的语音片段进行拼接,得到时间参数值对应待合成片段的语音片段a1、位置参数值对应待合成片段的语音片段b1、状态参数值对应待合成片段的语音片段c1、最高气温参数值对应待合成片段的语音片段d1以及最低气温参数值对应待合成片段的语音片段e1,然后根据所述目标第一对应关系,使用语音片段a1替换目标生成语音中的语音片段a,使用语音片段b2替换目标生成语音中的语音片段b,使用语音片段c1替换目标生成语音中的语音片段c,使用语音片段d1替换目标生成语音中的语音片段d,使用语音片段e1替换目标生成语音中的语音片段e,以得到合成语音。

如图8所示,对音素和已合成片段的语音片段进行拼接之后,还可以通过步骤806对拼接获得的语音进行后处理,并将后处理得到的语音作为合成语音。示例性的,所述后处理可以包括平滑处理,通过平滑处理有利于进一步提高自然度及流畅度。需要说明的是,对于平滑处理的具体方式,本申请不做限定。

在实际应用的过程中,可以通过人工干预的交互方式,提高流畅度及自然度。例如,对于得到的合成语音,可以进行播放,并在播放之后可以获取人工输入的针对该合成语音的流畅度信息,如果流畅度信息所指示的流畅度低于一定阈值,则可以对拼接或后处理进行相应调整,以提高流畅度。

本申请实施例中,在所述样本结构化数据的个数为多个,且多个所述样本结构化数据与多个数据结构一一对应的情况下,所述预设音库还可以包括:不同生成语音与结构化标识的第二对应关系,所述结构化标识用于标识对应的数据结构。基于此,所述上述通过查询所述预设音库获得与所述待合成文本匹配的目标生成语音以及不同特定样本文本片段与所述目标生成语音中语音片段的目标第一对应关系,具体可以包括:通过将所述待合成文本对应结构化数据的结构化标识作为索引,查询所述预设音库获得与所述目标生成语音以及所述目标第一对应关系。

本申请实施例中,所述特征分类模型可以利用经标注的录制语音训练得到。可以先对录制语音进行标注,可以以一定窗口大小(例如20ms)截取录制语音,得到样本语音帧,并标注每一样本语音帧的文本特征及音频特征,文本特征可以包括音素、停顿、轻重等。需要说明的是,一样本语音帧的音频特征可以理解为该样本语音帧的文本特征的期望结果。

在对录制语音进行标注之后,可以基于样本语音帧的文本特征及音频特征进行模型训练,以训练得到步骤803中的特征分类模型。示例性的,可以先构建特征分类模型,该特征分类模型组件中设置有训练参数。然后,可以将样本语音帧的文本特征分别输入至构建的特征分类模型组件中,生成预测结果。在一个实施例中,所述预测结果可以包括输入的文本特征对应的音频特征。最后,可以基于所述预测结果与所述文本特征的期望结果之间的差异,对所述训练参数进行迭代调整,直至所述差异满足预设要求。

本申请实施例中,在训练得到所述特征分类模型之后,可以利用训练好的所述特征分类模型将所述录制语音切割成音素,以获得音素音库。需要说明的是,通过特征分类模型将录音语音切割成音素的方式,与前述借助特征分类模型标注第三对应关系的方式类似,在此不再赘述。

本申请实施例中,前述特征分类模型的训练以及基于端到端语音合成模型得到预设音库的方式,可以应用于通过语音方式向用户输出信息的人机交互场景的模型训练以及音库生成中,例如可以应用于智能音响对应服务器侧模型的训练以及预设音库的生成。

本申请实施例提供的语音合成方法,通过对待合成文本进行切分得到其已合成片段和待合成片段,以待合成片段中的音素为单元确定音素的语音片段,通过查询基于端到端语音合成模型生成的预设音库获得已合成片段的语音片段,并根据音素及已合成片段的语音片段得到合成语音,实现了将端到端技术与拼接技术结合的语音合成方法,通过端到端语音合成模型离线生成已合成片段的语音库,能够解决端到端语音合成模型无法应用于实时语音场景的问题,并且,相比于传统技术中的拼接法能够提高合成语音的自然度及流畅度,从而能够在实时语音场景下,提供给用户一个更加自然流畅的语音合成体验。

图14为本申请实施例提供的语音交互方法的流程示意图,如图14所示,本实施例的方法可以包括:

步骤141,获得针对待合成文本的合成语音,所述合成语音是采用如下方式合成:对所述待合成文本进行切分,得到其已合成片段和待合成片段,以所述待合成片段中的音素为单元,确定所述音素的语音片段,通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;以及,根据所述音素及所述已合成片段的语音片段,得到所述合成语音;

步骤142,播放所述合成语音。

本实施例中,可以接收其他设备发送的合成语音的方式,获得所述合成语音,或者,可以通过根据待合成文本生成合成语音的方式,获得所述合成语音。对于合成语音的具体合成方式,可以参见前述方法实施例的相关描述,在此不再赘述。

本申请实施例提供的语音交互方法,通过获得针对待合成文本的合成语音,并播放合成语音,其中,合成语音是采用端到端技术与拼接技术结合的语音合成方法生成,既能够确保合成语音的实时性,又能够提高合成语音的流畅度及自然度,从而实现了在实时语音场景下,提供给用户一个更加自然流畅的语音合成体验。

图15为本申请实施例提供的语音合成装置的结构示意图;参考附图15所示,本实施例提供了一种语音合成装置,该装置可以执行上述的语音合成方法,具体的,该装置可以包括:

切分模块151,用于对待合成文本进行切分,得到其已合成片段和待合成片段;

确定模块,152,用于以所述待合成片段中的音素为单元,确定所述音素的语音片段;

获得模块153,用于通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;

合成模块154,用于根据所述音素及所述已合成片段的语音片段,得到合成语音。

可选的,所述待合成文本基于自然语言生成模型对结构化数据处理得到;所述待合成片段包括所述结构化数据中参数值对应的文本片段;所述已合成片段包括所述自然语言生成模型针对所述结构化数据所扩展的文本片段。

可选的,所述预设音库包括:所述端到端语音合成模型基于至少一个样本文本生成的生成语音,以及各样本文本的不同特定样本片段与各所述样本文本的生成语音中语音片段的第一对应关系;其中,所述样本文本为所述自然语言生成模型处理样本结构化数据所得到的文本,所述特定样本片段包括已合成样本片段和/或待合成样本片段。

可选的,所述获得模块153,具体用于通过查询所述预设音库获得与所述待合成文本匹配的目标生成语音以及不同特定样本文本片段与所述目标生成语音中语音片段的目标第一对应关系,并根据所述目标第一对应关系从所述目标生成语音中截取与所述已合成片段匹配的语音片段;

所述合成模块154,具体用于通过对所述音素及所述已合成片段的语音片段进行拼接,以得到合成语音。

可选的,所述获得模块153,具体用于通过查询所述预设音库获得与所述待合成文本匹配的目标生成语音以及不同特定样本文本片段与所述目标生成语音中语音片段的目标第一对应关系,所述目标生成数据中包括所述已合成片段的语音片段;

所述合成模块154,具体用于根据所述目标第一对应关系,使用所述音素的语音片段替换所述目标生成语音中相应的语音片段,以得到合成语音。

可选的,所述样本结构化数据的个数为多个,且多个所述样本结构化数据与多个数据结构一一对应;所述预设音库还包括:不同生成语音与结构化标识的第二对应关系,所述结构化标识用于标识对应的数据结构;

所述获得模块153,具体用于通过将所述待合成文本对应结构化数据的结构化标识作为索引,查询所述预设音库获得与所述目标生成语音以及所述目标第一对应关系。

可选的,所述预设音库的生成过程包括如下步骤:

将所述至少一个样本文本分别输入所述端到端语音合成模型,经所述端到端语音合成模型处理,以得到各样本文本的生成语音;

标注各样本文本的不同特定样本片段与各所述样本文本的生成语音中语音片段的对应关系,以得到所述第一对应关系。

可选的,所述标注各样本文本的不同特定样本片段与各所述样本文本的生成语音中语音片段的对应关系,包括:

标注各样本文本的音素序列中各音素与各所述样本文本的生成语音中语音帧的第三对应关系;

根据所述第三对应关系,标注各样本文本的不同特定样本片段与各所述样本文本的生成语音中语音片段的对应关系。

可选的,所述标注各样本文本的音素序列中各音素与各所述样本文本的生成语音中语音帧的第三对应关系,包括:

将所述样本文本对应的音素序列中各音素的文本特征分别输入特征分类模型,经所述特征分类模型处理得到各所述音素的音频特征;

根据各音素的音频特征以及所述样本文本的生成语音中各语音帧的音频特征,按照所述音素序列的顺序,依次确定出所述生成语音中与各音素匹配的至少一个语音帧;

建立各音素与所述至少一个语音帧的对应关系。

图15所示装置可以执行上述语音合成方法实施例的方法,本实施例未详细描述的部分,可参考对上述语音合成方法实施例的相关说明。该技术方案的执行过程和技术效果参见上述语音合成方法实施例中的描述,在此不再赘述。

在一个可能的实现中,图15所示语音合成装置的结构可实现为一计算机设备。如图16所示,该计算机设备可以包括:处理器161和存储器162。其中,存储器162用于存储支持终端执行上述语音合成方法实施例中提供的方法的程序,处理器161被配置为用于执行存储器162中存储的程序。

程序包括一条或多条计算机指令,其中,一条或多条计算机指令被处理器161执行时能够实现如下步骤:

对待合成文本进行切分,得到其已合成片段和待合成片段;

以所述待合成片段中的音素为单元,确定所述音素的语音片段;

通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;

根据所述音素及所述已合成片段的语音片段,得到合成语音。

可选地,处理器161还用于执行上述语音合成方法实施例中的全部或部分步骤。

其中,计算机设备的结构中还可以包括通信接口163,用于计算机设备与其他设备或通信网络通信。

图17为本申请实施例提供的语音交互装置的结构示意图;参考附图17所示,本实施例提供了一种语音交互装置,该装置可以执行上述的语音交互方法,具体的,该装置可以包括:

获得模块171,用于获得针对待合成文本的合成语音,所述合成语音是采用如下方式合成:对所述待合成文本进行切分,得到其已合成片段和待合成片段,以所述待合成片段中的音素为单元,确定所述音素的语音片段,通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;以及,根据所述音素及所述已合成片段的语音片段,得到所述合成语音;

播放模块172,用于播放所述合成语音。

图17所示装置可以执行上述语音交互方法实施例的方法,本实施例未详细描述的部分,可参考对上述语音交互方法实施例的相关说明。该技术方案的执行过程和技术效果参见上述语音交互方法实施例中的描述,在此不再赘述。

在一个可能的实现中,图17所示语音交互装置的结构可实现为终端。如图18所示,该终端可以包括:处理器181和存储器182。其中,存储器182用于存储支持网络设备执行上述语音交互方法实施例中提供的方法的程序,处理器181被配置为用于执行存储器182中存储的程序。

程序包括一条或多条计算机指令,其中,一条或多条计算机指令被处理器181执行时能够实现如下步骤:

获得针对待合成文本的合成语音,所述合成语音是采用如下方式合成:对所述待合成文本进行切分,得到其已合成片段和待合成片段,以所述待合成片段中的音素为单元,确定所述音素的语音片段,通过查询预设音库获得所述已合成片段的语音片段;所述预设音库基于端到端语音合成模型生成;以及,根据所述音素及所述已合成片段的语音片段,得到所述合成语音;

播放所述合成语音。

可选的,处理器181还用于执行上述语音交互方法实施例的全部或部分步骤。

其中,终端的结构中还可以包括通信接口183,用于终端与其他设备或通信网络通信。

另外,本申请实施例提供了一种计算机存储介质,用于储存计算机设备所用的计算机软件指令,其包含用于执行上述语音合成方法实施例所涉及的程序。

本申请实施例提供了一种计算机存储介质,用于储存终端所用的计算机软件指令,其包含用于执行上述语音交互方法实施例所涉及的程序。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对传统技术做出贡献的部分可以以计算机产品的形式体现出来,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理器以产生一个机器,使得通过计算机或其他可编程设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

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

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜