发明内容
本发明实施方式的目的在于提供一种语音合成的方法、电子设备及可读存储介质,能够快速合成任意语言种类的语音文件,减小语音合成的成本。
为解决上述技术问题,本发明的实施方式提供了一种语音合成的方法,包括:获取待播放文本数据的初始注音信息,初始注音信息是基于待播放文本数据所属语言种类对应的初始注音标准确定;根据初始注音信息以及预设的注音标准,确定待播放文本数据实际的注音信息;根据实际的注音信息以及预设的语音合成模型,确定待播放文本数据的语音播放文件,其中,语音合成模型根据训练数据训练获得,训练数据基于预设的注音标准确定。
本发明的实施方式还提供了一种电子设备,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的语音合成的方法。
本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述的语音合成的方法。
本发明实施方式相对于现有技术而言,通过将待播放文本数据的初始注音信息转换为基于预设的注音标准的实际的注音信息,根据待播放文本数据实际的注音信息和预设的语音合成模型,即可生成对应的语音文件,从而使得即使每次获取的待播放文本数据的所属语言种类不同,但是依然可以使用同一个语音合成模型,而无需使用与待播放文本数据所属语言种类一一对应的语音合成模型,减少了语音合成模型的数量,降低了语音合成的成本,同时增大了可应用的范围。
另外,根据初始注音信息以及预设的注音标准,确定待播放文本数据实际的注音信息,具体包括:获取第一音标集合与预设音标集合之间的第一对应关系,第一音标集合为基于初始注音标准的音标编码集合,预设音标集合为基于预设的注音标准对应的音标编码集合;按照第一对应关系,将初始注音信息转换为实际的注音信息。由于预先构建了预设音标集合与第一音标集合之间的第一对应关系,根据待播放文本数据所属语言种类对应的初始注音标准,可快速获取该第一对应关系,从而快速实现对初始注音信息的转换。
另外,待播放文本数据所属语言种类包括N种,初始注音标准包括N种语言种类各自对应的注音标准,N为大于1的整数。待播放文本数据所属语言种类包括多种,使得该方法也同样适用于存在多种语言种类的待播放文本数据的语音合成,而无需使用多个语音合成模型,进一步减小语音合成的成本。
另外,根据初始注音信息以及预设的注音标准,确定待播放文本数据实际的注音信息,具体包括:获取初始注音信息中N个第一注音信息,第一注音信息是基于待播放文本数据中对应文本字段的语言种类对应的注音标准确定;按照N个文本字段的排列顺序组合每个文本字段各自对应的注音信息,获得实际的注音信息;其中,每个文本字段各自对应的注音信息的确定过程为:获取第二音标集合与预设音标集合之间的第二对应关系;按照第二对应关系,将文本字段对应的第一注音信息转换为文本字段对应的注音信息;第二音标集合为基于文本字段对应的注音标准的音标编码集合,预设音标集合为基于预设的注音标准对应的音标编码集合。在待播放文本数据所属语言种类有多种时,分别对初始注音信息中的各第一注音信息进行转换,从而使得无论该初始注音信息中包括多少个第一注音信息,也都能以同一个预设的注音标准进行注音,从而减少了多语言种类语音合成的复杂度,减小了语音合成的成本。
另外,训练数据包括:基于预设的注音标准的训练注音信息,以及与训练注音信息对应的训练频谱数据。训练数据是基于预设的注音标准确定,使得仅需要一套训练数据,而无需获取每种语言种类所对应的训练数据,减小了获取训练数据的成本。
另外,根据实际的注音信息以及预设的语音合成模型,确定待播放文本数据的语音播放文件,具体包括:将待播放文本数据的注音信息输入预设的语音合成模型,获得与待播放文本数据的注音信息所对应的频谱数据;根据频谱数据,生成预设数据格式的语音文件。根据频谱数据,可以生成预设数据格式的语音文件,使得适用于各种语音播放格式的电子设备。
另外,预设的音标集合包括:国际音标和/或国际扩展音标。
另外,在获取待播放文本数据的初始注音信息之前,语音合成的方法还包括:识别待播放文本数据所属语言种类;根据所属语言种类,确定初始注音标准;按照初始注音标准,对待播放文本数据进行注音,获得初始注音信息。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
本发明的第一实施方式涉及一种语音合成的方法。该语音合成的方法可以应用于电子设备中,例如,智能机器人、安装有读书应用软件的电子设备等。也可以应用于服务器设备,该语音合成的方法的具体流程如图1所示。
步骤101:获取待播放文本数据的初始注音信息,初始注音信息是基于待播放文本数据所属语言种类对应的初始注音标准确定。
具体的说,可以根据情景需要生成待播放文本数据,例如,智能机器人可以根据交互对象的语言、动作确定待播放文本数据;还可以是获取用户通过输入界面输入的文本数据,例如,输入待播报的名字等。
待播放文本数据所属语言种类可以一种,也可以两种以上,本实施方式以待播放文本数据所属语言种类为一种的情况进行说明。
需要说明的是,在获取待播放文本数据的初始注音信息之前,识别待播放文本数据所属语言种类;根据所属语言种类,确定初始注音标准;按照初始注音标准,对待播放文本数据进行注音,获得初始注音信息。
具体的说,在确定了该待播放文本数据所属语言种类后,根据语言种类,即可获取该语言种类对应的注音标准,并将该语言种类对应的注音标准作为初始注音标准;例如,若待播放文本数据所属语言种类为中文,则确定初始注音标准为《汉语拼音方案的通用键盘表示规范》,若所属语言种类为日语,则初始注音标准可以为五十音图的注音标准。按照该初始注音标准,对待播放文本进行注音,得到该待播放文本数据的初始注音信息;例如,中文“天气”按照初始注音标准进行注音,得到该初始注音信息“tian1qi4”,其中,1表示“天”的音调,4表示“气”的音调。
步骤102:根据初始注音信息以及预设的注音标准,确定待播放文本数据实际的注音信息。
一个具体的实现中,获取第一音标集合与预设音标集合之间的第一对应关系,第一音标集合为基于初始注音标准的音标编码集合,预设音标集合为基于预设的注音标准对应的音标编码集合;按照第一对应关系,将初始注音信息转换为待播放文本数据的注音信息。
具体的说,预设的注音标准选择国际音标的注音标准、或者国际扩展音标注音标准,或者国际音标的注音标准和国际扩展音标注音标准的结合。基于该预设的注音标准对应的预设的音标集合包括:国际音标和/或国际扩展音标。
为了便于将初始注音信息转换为基于预设的注音标准注音的实际的注音信息,可以预先构建第一音标集合与预设音标集合之间的第一对应关系,从而使得在获取了第一对应关系后,任意的第一音标集合中的第一音标都可以转换为预设音标集合中的预设音标。按照第一对应关系,即可将初始注音信息中的每个初始音标转换为预设音标,从而获得该待播放文本数据实际的注音信息。
可以根据该待播放文本数据所属语言种类,确定对应的初始注音标准,根据该初始注音标准,即可确定第一音标集合,进而查找该第一音标集合与预设音标集合之间第一对应关系。可以理解的是,在存储第一对应关系时,可以使用与初始注音标准对应的语言种类为键值,键值用于查找第一对应关系,在获知该待播放文本数据所属语言种类后,即可根据语言种类获取与该语言种类对应的第一对应关系。以上两种获取第一对应关系的方式仅为举例说明,实际应用中该可以采用其他的方式。
步骤103:根据实际待播放文本数据的注音信息以及预设的语音合成模型,确定待播放文本数据的语音播放文件,其中,语音合成模型根据训练数据训练获得,训练数据基于预设的注音标准确定。
具体的说,用于训练语音合成模型的训练数据包括:基于预设的注音标准的训练注音信息,以及与训练注音信息对应的训练频谱数据。训练的过程为:通过调整语音合成模型中的参数,以使调整后的语音合成模型生成的频谱数据与训练注音信息对应的训练频谱数据无限接近。下面介绍该语音合成模型的训练过程:
将预设音标集合中的音标数据加载至初始语音合成模型中,该初始语音合成模型生成频谱数据,其中,初始语音合成模型为预先构建的模型,将该生成的频谱数据与训练注音信息对应的训练频谱数据进行比较,比较得到的差值用于更新该初始语音合成模型的参数;此外,选取训练数据以外的待训练文本数据,加载至该初始语音合成模型,可以验证该生成的频谱数据是否准确,根据验证的频谱数据的质量,继续调整该初始语音合成模型,重复上述的操作,直至生成的频谱数据与训练注音信息对应的训练频谱数据无限接近,即将该初始语音合成模型作为语音合成模型,结束训练。
在训练获得语音合成模型之后,将待播放文本数据的注音信息输入预设的语音合成模型,获得与待播放文本数据的注音信息所对应的频谱数据;根据频谱数据,生成预设数据格式的语音文件。生成的频谱数据通过声码器即可转换为预设数据格式的语音文件。
值得一提的是,语音合成模型可以将输入的实际的注音信息转换数字编码,进而识别实际的注音信息中的每个音标,例如,可以通过如表1所示的《国际音标符码表》将实际的注音信息转换为数字编码。
表1
本发明实施方式相对于现有技术而言,通过将待播放文本数据的初始注音信息转换为基于预设的注音标准的实际的注音信息,根据待播放文本数据实际的注音信息和预设的语音合成模型,即可生成对应的语音文件,从而使得即使每次获取的待播放文本数据的所属语言种类不同,但是依然可以使用同一个语音合成模型,而无需使用与待播放文本数据所属语言种类一一对应的语音合成模型,减少了语音合成模型的数量,降低了语音合成的成本,同时增大了可应用的范围。
本发明第二实施方式涉及一种语音合成的方法,该语音合成的方法包括:获取待播放文本数据的初始注音信息;根据初始注音信息以及预设的注音标准,确定待播放文本数据实际的注音信息;根据实际的注音信息以及预设的语音合成模型,确定待播放文本数据的语音播放文件。
第二实施方式是第一实施方式中步骤102的另一种情况的实现方式,主要区别之处在于:在第一实施方式中,待播放文本数据所属语言种类的数目为1;而在本发明第二实施方式中,待播放文本数据所属语言种类包括N种,初始注音标准包括N种语言种类各自对应的注音标准,N为大于1的整数,则本实施方式中确定待播放文本数据实际的注音信息的具体过程如图2所示。
步骤201:获取初始注音信息中N个第一注音信息,第一注音信息是基于待播放文本数据中对应文本字段的语言种类对应的注音标准确定。
具体的说,由于该待播放文本数据所属语言种类有多种,则该播放文本数据的初始注音标准包括该待播放文本数据所属语言种类中每种语言种类各自对应的注音标准,例如,待播放文本数据为“我会用英语说hello word”,则该待播放文本数据所属语言种类包括2种语言种类,分别为中文和英文,则该初始注音标准即包括中文注音标准以及英文注音标准。同理,该初始注音信息中包括基于每种注音标准对该待播放文本数据注音的注音信息。
需要说明的是,为了便于获取该初始注音信息,可以预先将该待播放文本数据按照语言种类,划分为N个文本字段,N为该待播放文本数据所属语言种类的数目。例如,待播放文本数据为“我会用英语说hello word”,则将该待播放文本数据划分为2个文本字段,分别为“我会用英语说”和“hello word”。分别对每个文本字段进行注音,得到N个第一注音信息,组合每个文本字段的第一注音信息,构成该待播放文本数据的初始注音信息。例如,“我会用英语说”为文本字段1和“hello word”文本字段2;按照中文注音标准对该文本字段1注音,得到该文本字段1的第一注音信息A,按照英文注音标准对文本字段2注音,得到文本字段2的第一注音信息B,按照待播放文本数据中文本字段的排列顺序,组合该第一注音信息A和第一注音信息B,并将组合后的注音信息作为初始注音信息。
步骤202:按照N个文本字段的排列顺序组合每个文本字段各自对应的注音信息,获得实际的注音信息。
一个具体的实现中,每个文本字段各自对应的注音信息的确定过程为:获取第二音标集合与预设音标集合之间的第二对应关系;按照第二对应关系,将文本字段对应的第一注音信息转换为文本字段对应的注音信息;第二音标集合为基于文本字段对应的注音标准的音标编码集合,预设音标集合为基于预设的注音标准对应的音标编码集合。
具体的说,本实施方式中,预设音标集合与第一实施方式中的预设音标集合类似,此处不再进行赘述,第二音标集合为基于当前文本字段对应的注音标准的音标的集合。第二对应关系如第一实施方式类似,可以预先存储,并根据当前文本字段的语言种类,确定出该第二对应关系,按照该第二对应关系,即可将文本字段的第一注音信息转换为该文本字段的注音信息。
本实施方式提供的语音合成的方法,目前的语音合成技术,若待播放文本数据中包括多个语言种类,在合成语音时,需要按照每个语言种类对该待播放文本数据进行拆分,分别对每个语种对应的文本进行语音合成,再拼接成一句完整的语音,导致语音合成繁琐、合成成本高、速度慢,而本实施方式中若待播放文本数据所属语言种类包括多种,可以使用预设的注音标准对该待播放文本数据进行标注,得到实际的注音标准,进而根据该实际注音标准生成语音文件,使得即使出现了多种语言种类,依然可以使用同一个预设的注音标准进行注音,仅需要一个语音合成模型用于生成语音文件,进一步扩展了该语音合成方法的应用范围,降低了语音合成的成本。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第三实施方式涉及一种电子设备,该电子设备30的具体结构如图3所示,包括:至少一个处理器301;以及,与至少一个处理器301通信连接的存储器302;其中,存储器302存储有可被至少一个处理器301执行的指令,指令被至少一个处理器301执行,以使至少一个处理器301能够执行第一实施方式或第二实施方式的语音合成的方法。
其中,存储器302和处理器301采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器301和存储器302的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器301处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器301。
处理器301负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本发明第四实施方式涉及一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现第一实施方式或第二实施方式的语音合成的方法。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。