语音合成系统、方法及非暂态计算机可读取媒体与流程

文档序号:25027220发布日期:2021-05-11 16:54阅读:101来源:国知局
语音合成系统、方法及非暂态计算机可读取媒体与流程

本案涉及一种电子系统、操作方法及非暂态计算机可读取媒体。详细而言,本案涉及一种转换及/或合成特定人声的系统、方法及非暂态计算机可读取媒体。



背景技术:

在全球化趋势下,文化交流及影音娱乐系统需要能够适应多语(multilingualism)环境。例如:服务型机器人、说故事装置、影音媒体中的虚拟人物、或者电影/多媒体影片配音当中的角色,皆可能需要以特定声音发出不同种类语言的声音,例如中文、英语、日语…等,甚至有时会需要多种语言夹杂播放的声音,例如中英夹杂的语音,而这些服务型机器人、说故事装置和虚拟人物等,需要多语言的文字转语音引擎(tts)以进行合成语音。

然而,大多数的声优或配音员,仅能够对一种语言进行配音或是录制单一种语言的语料来产生多种语言文字的文字转语音引擎,从而执行合成语音。能够进行多种语言的配音或是语料录制的声优相当稀少,使得有需要特定声音发出多种语言的产品难以产出或客制化。



技术实现要素:

为了解决前述问题,本案提供以下的系统、方法以及非暂态计算机可读取媒体。

本案的一面向涉及一种语音合成系统。该语音合成系统包含一操作界面、一储存单元以及一处理器,该处理器通讯耦接于该操作界面以及该储存单元。该操作界面提供多个语言选项以供一使用者选择其中之一作为一输出语言选项。该储存单元,储存多个声学模型,其中每一声学模型是分别对应该多个语言选项的其中之一,且每一声学模型包含对应一特定人声的多个音素标签。该处理器用以执行以下步骤:接收一文本文件,根据该文本文件、该输出语言选项所对应的该多个声学模型中的其中之一和一语音合成器,产生对应该特定人声的一输出语音数据。

本案的另一面向涉及一种语音合成方法。该语音合成方法包含:接收由一使用者于多个语言选项中选择的一输出语言选项;自一储存单元存取多个声学模型,其中每一声学模型是分别对应该多个语言选项的其中之一,且每一声学模型包含对应一特定人声的多个音素标签;接收一文本文件;以及根据该文本文件、该输出语言选项所对应的该多个声学模型的其中之一和一语音合成器,产生对应该特定人声的一输出语音数据。

本案的又一面向涉及一种非暂态计算机可读取媒体,包含至少一计算机可执行指令,当该至少一计算机可执行指令由一处理器执行时实施多个步骤,该些步骤包含:接收由一使用者于多个语言选项中选择的一输出语言选项;自一储存单元存取多个声学模型,其中每一声学模型是分别对应该多个语言选项的其中之一,且每一声学模型包含对应一特定人声的多个音素标签;接收一文本文件;以及根据该文本文件、该输出语言选项所对应的该多个声学模型中的其中之一和一语音合成器,产生对应该特定人声的一输出语音数据。

如本揭示文件所述,处理器可存取第二声学模型(对应英语),并执行语音合成器,使语音合成器可套用第二声学模型输出文本文件(例如:thehouseisonfire)的内容。应注意的是,语音合成器套用第二声学模型所输出的语音数据是对应于使用者的声音。亦即,语音合成系统可达成以使用者的声音输入中文语句,而系统以使用者的声音输出意义正确的英语语句的转换功能。基本上,应用本案的语音合成系统时,声优可以仅录制一种语言的语料,语音合成系统可对应地输出以该声优声音转换而成的其他不同语言种类的语音。

应注意的是,前述的发明内容以及后述的实施方式皆仅是举例说明而已,其主要目的是为详细地解释本案申请专利范围当中的内容。

附图说明

参照后续段落中的实施方式以及下列附图,当可更佳地理解本案的内容:

图1为根据本案一些实施例绘示的语音合成系统的示意图;

图2为根据本案一些实施例绘示的语音合成方法的步骤流程图;

图3为根据本案一些实施例绘示的声学模型训练方法的示意图;以及

图4为根据本案一些实施例绘示的文字转换产生方法的示意图。

【符号说明】

100:语音合成系统

110:界面

120:储存单元

130:处理器

200:服务器

s1~s4:步骤流程

s31~s33:步骤流程

具体实施方式

以下将以附图及详细叙述清楚说明本案的精神,任何所属技术领域中具有通常知识者在了解本案的实施例后,当可由本案所教示的技术,加以改变及修饰,其并不脱离本案的精神与范围。

本文的用语只为描述特定实施例,而无意为本案的限制。单数形式如“一”、“这”、“此”、“本”以及“该”,如本文所用,同样也包含复数形式。

关于本文中所使用的“耦接”或“连接”,均可指二或多个元件或装置相互直接作实体接触,或是相互间接作实体接触,亦可指二或多个元件或装置相互操作或动作。

关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。

关于本文中所使用的“及/或”,是包括所述事物的任一或全部组合。

关于本文中所使用的用词(terms),除有特别注明外,通常具有每个用词使用在此领域中、在本案的内容中与特殊内容中的平常意义。某些用以描述本案的用词将于下或在此说明书的别处讨论,以提供本领域技术人员在有关本案的描述上额外的引导。

图1为根据本案一些实施例绘示的语音合成系统100的示意图。如图1所示,在一些实施例中,语音合成系统100可包含界面110、储存单元120以及处理器130。

在一些实施例中,界面110可包含但不限于以视频装置或音频装置实现人机互动的界面(interface),界面110可包含操作界面以及语音接收界面。例如,操作界面可通过显示器以实施,通过播放可视图形或连续影像输出信息,并以触控方式或其他输入方式供使用者输入信息。例如,语音接收界面可通过麦克风以及扬声器以实施,通过播放声音输出信息,并以收音、录音方式供使用者输入信息。在一些实施例中,语音接收界面也可接收影像文件,且影像文件可包含对应于可选择的数种语言的语音数据及/或字幕数据。

在一些实施例中,储存单元120可包含但不限于快闪(flash)记忆体、硬盘(hdd)、固态硬盘(ssd)、动态随机存取记忆体(dram)或静态随机存取记忆体(sram)。在一些实施例中,储存单元120作为一种非暂态计算机可读取媒体,储存了至少一计算机可执行指令,此计算机可执行指令关联于一种语音合成方法。

在一些实施例中,处理器130可包含但不限于单一处理器以及多个微处理器的集成,例如,中央处理器(cpu)或绘图处理器(gpu)等。该些(微)处理器电性耦接于记忆体,借此,处理器130可自储存单元120存取此计算机可执行指令,并依据此计算机可执行指令,执行特定应用程序,借以实施前述语音合成方法。为了更佳地理解此语音合成方法,其详细步骤将于下面段落中解释之。

如图1所示,在一些实施例中,处理器130可选择性地通讯耦接于服务器200。在一些实施例中,服务器200当中可储存有多个声学模型以及外部声学模型,该多个声学模型以及该外部声学模型可供处理器130存取,以进行语音合成使用,以及新的声学模型的训练。

应理解,前述的“电性耦接”或“通讯耦接”可指涉实体或非实体的耦接。例如:在一些实施例中,处理器130可通过实体线路耦接于储存单元120。在又一些实施例中,处理器130可通过无线通讯标准耦接于界面110。然而,本案的耦接方式并不以前述实施例为限。通过前述耦接方式,处理器130、储存单元120以及界面110可实施单向讯息传递或双向讯息交换。

图2为根据本案一些实施例绘示的语音合成方法的步骤流程图。如图2所示,在一些实施例中,此语音合成方法可由图1中所示的语音合成系统100所执行。详细而言,处理器130自储存单元120存取前述计算机可执行指令并执行特定应用程序,通过应用程序实施此语音合成方法,并通过界面110与使用者沟通。在一些实施例中,此语音合成方法的详细步骤将于下面段落中叙述。

步骤s1:接收由一使用者于多个语言选项中选择的一输出语言选项。

在一些实施例中,处理器130可通过界面110当中的操作界面提供多个语言选项,例如:中文、英语、日语、法语、德语等。语音合成系统100的使用者可自界面110上显示的多个语言选项中选择一第一语言选项以及一第二语言选项。在一些实施例中,第一语言选项是为输入(input)语言选项,第二语言选项是为输出(output)语言选项。

应理解,本案的语音合成系统100是一种具语言转换功能的语音合成系统,输入语言选项是使用者希望向语音合成系统100输入的语音对应的语言种类,输出语言选项是使用者希望语音合成系统100转换后输出的语音对应的语言种类。在一些实施例中,第一语言选项是为中文,第二语言选项是为英语。

步骤s2:自一储存单元存取多个声学模型,其中每一声学模型是分别对应该多个语言选项的其中之一,且每一声学模型包含对应一特定人声的多个音素标签。

应注意的是,储存单元120(或服务器200的储存单元)当中可储存多个声学模型,处理器130可存取该多个声学模型。应理解,多个声学模型皆对应于特定人声,亦即不同种类语言的声学模型,具有特定人声的音色及声调。在一些实施例中,此特定人声是为语音合成系统100的使用者的声音,而每一个声学模型对应于前述语言选项当中不同的语言选项。例如,当语言选项包含中文、英语、日语、法语以及德语时,多个声学模型可包含中文声学模型、英语声学模型、日语声学模型、法语声学模型以及德语声学模型。

在一些实施例中,该多个声学模型至少包含第一声学模型和第二声学模型,但本案并不以此为限。第一声学模型对应于前述的第一语言选项,且包含对应于第一语言选项的多个第一音素标签。第二声学模型对应于前述的第二语言选项,且包含对应于第二语言选项的多个音素第二标签。

步骤s3:接收一文本文件。

在一些实施例中,处理器130可接收一已存在的文本文件,此文本文件可能经由多种不同的方式来产生,对应第二语言选项,例如为英文的文本文件。

步骤s4:根据该文本文件、该输出语言选项所对应的该多个声学模型中的其中之一和一语音合成器,产生对应该特定人声的一输出语音数据。

在一些实施例中,处理器130可存取第二声学模型(对应英语),并执行语音合成器,使语音合成器可依据该文本文件,套用第二声学模型(例如英语声学模型),产生输出语音数据,例如一英语语音文件,以对应文本文件的内容。应注意的是,语音合成器套用第二声学模型所输出的语音数据是对应于使用者的声音。亦即,语音合成系统100可达成以使用者的声音输入中文语句,而系统以使用者的声音输出意义正确的英语语句的转换功能。

以下将进一步说明,对应于特定人声、已具有对应第一语言选项的第一声学模型、尚未具有第二声学模型时,如何去建置对应于特定人声的第二语言选项的第二声学模型。在一些实施例中,处理器130可存取(例如:自服务器200的储存单元)外部声学模型,外部声学模型对应于该多个语言选项中的至少一者(例如:第二语言选项)且对应外部人声,外部声学模型包含有对应外部人声的多个外部音素标签。应理解,此外部人声不同于语音合成系统100的使用者的声音,通常是市售可得或是他人已经建置完成、对应于第二语言选项的声学模型。

应理解,前述的音素(phoneme)亦可称为音位,其表示人类语言(包含各种语言种类)中能够区别意义的最小单位。在人类语言中,每个单字、每个字词、每个字词组以及每个单句中可为多个音节的组合,每个音节又是由一或多个音素所组成。换言之,人类语言中的每个单字、每个字词、每个字词组以及每个单句皆可理解为不同的音素排列组合而成。

在一些实施例中,储存单元120当中更可储存对应于第一语言选项(例如:中文)的多个训练语料。例如,使用者可操作界面110的语音接收界面,并根据一语料样板(例如:包含特定发音以及特定句型的样板)录制该多个训练语料。在一些实施例中,该多个训练语料可用以训练第一声学模型。

在一些实施例中,在建置第二声学模型或其他语言的声学模型时,需要先进行声学模型的训练,声学模型的训练可通过下列步骤实施,请一并参照图3。图3为根据本案一些实施例绘示的声学模型训练方法的步骤流程图。

步骤s21:执行文脉分析。

在一些实施例中,处理器130可通过文脉分析器对该多个训练语料执行文脉分析。例如:文脉分析器可针对特定音素,计算该音素于该多个训练语料中的每个单字、每个字词、每个字词组以及每个单句中的相对位置。例如:该音素自所在单字由前起算的位置、该音素自所在单字由后起算的位置、该音素自所在单字于字词组中的位置、该音素所在单字的构成字数、该音素所在单字的前一个单字的构成字数…等,但并不以此为限。处理器130通过文脉分析器对该多个训练语料执行文脉分析后,可取得该多个训练语料中每个音素的多个系数。该多个系数也可理解作该多个训练语料中每个音素的多个文脉维度。

步骤s22:执行频谱分析。

在一些实施例中,处理器130可通过频谱分析器对该多个训练语料执行频谱分析。例如,在习知的频谱分析中,处理器130可通过梅尔频率倒谱系数(mel-frequencycepstralcoefficients,mfcc)将该多个训练语料分解为多个讯框,通过高通滤波器再进行傅立叶转换,以获得每个讯框的频谱。处理器130可将每个讯框的频谱通过梅尔滤波器获取梅尔刻度,且针对每个梅尔刻度提取对数,再将结果进行离散傅立叶反转换,将其转换至倒频谱域,从而获得梅尔频率倒谱系数。该多个梅尔频率倒谱系数亦可理解作该多个训练语料中每个音素的多个频谱维度。

步骤s23:执行发音特征分析。

在一些实施例中,处理器130可通过发音特征分析器对该多个训练语料执行发音特征分析。例如,处理器130可将该多个训练语料中每个音素的该多个文脉维度以及该多个频谱维度作为递归神经网路(recurrentneuralnetworks,rnn)的输入值,最后的输出值为每个音素的发音特征值。

在一些实施例中,处理器130搜集训练语料产生的每个音素的发音特征值,可用以建立对应第一语言选项(例如:中文)的第一声学模型。

步骤s24:执行音素分类。

在一些实施例中,处理器130可通过音素分类器比对第一声学模型当中音素的发音特征值以及其他已经建置好的模型(例如:外部声学模型)当中音素的发音特征值,并判断第一声学模型当中音素的发音特征值是否近似既存模型当中音素的发音特征值。若处理器130判断第一声学模型当中音素的发音特征值与既存模型当中音素的发音特征值的近似度大于特定阈值(例如:80%),处理器130可将此两音素归类于同一群组,以建立分属不同声学模型的两音素间的映射关系。

通过此映射关系,处理器130可建立以使用者的声音发声、对应于第二语言选项的第二声学模型。应理解,若第一声学模型(对应中文)中的某一音素的发音特征值近似外部声学模型(对应英语)中的某一音素的发音特征值,此两音素的关联性可用以组合出另一声学模型(例如:第二声学模型,对应英语)。在此声学模型中,可以第一声学模型的音素取代外部声学模型的近似音素,但保留外部声学模型的字词以及句型韵律(即英语的单字以及句型)。借此,经由第二声学模型和语音合成器所产生的输出语音数据,具有使用者的音色、语调、韵律,如同以使用者的声音来说出另一语言(如英语)的效果。

换言之,处理器130通过步骤s21~s24执行了文脉分析、频谱分析、发音特征分析以及音素分类,可利用使用者的声音所录制特定语言的训练语料产生各个音素的发音特征值,并根据发音特征值对照另一语言的既存外部模型当中的发音特征值,进而建立仿佛由使用者的声音来说话的另一语言的声学模型。

在另一些实施例中,前述步骤s3中所说明的处理器130所接收文本文件,此文本文件的转换产生方式如下所示,请一并参照图4。

步骤s31:接收由该使用者于该多个语言选项中选择的一输入语言选项,其中该输入语言选项和该输出语言选项是为不同语言选项。

在一些实施例中,语音合成系统100的使用者使用对应第一语言选项(例如:中文)的语言说话时,操作界面110中的语音接收界面可接收对应第一语言选项(例如:中文)的输入语音数据。例如,使用者可说出“房子失火了”,语音接收界面可进行收音并录制输入语音数据,对应的内容即为“房子失火了”。

步骤s32:将该输入语音数据转换成对应该输入语言选项的一输入文字。

在一些实施例中,处理器130可通过语音对文字转换(speechtotext,stt)器将输入语音数据转换成对应输入语言选项的输入文字。例如,语音接收界面录制的输入语音数据对应的是为“房子失火了”的语音内容,处理器130可通过语音对文字转换程序获取“房子失火了”的输入文字内容。

步骤s33:将该输入文字翻译成对应该输出语言选项的一输出文字,以作为该文本文件。

在一些实施例中,处理器130可通过翻译器将该输入文字内容翻译为对应第二语言选项(例如:英语)的输出文字,将其作为文本文件。例如,处理器130可通过翻译器将“房子失火了”的输入文字内容翻译为“thehouseisonfire”的输出文字内容。其中,翻译器可以为市售可得、一般可公开取得的翻译机、翻译软件或系统。

在一些实施例中,处理器130可将经由前述步骤s31~s33后所输出的文字内容作为文本文件。

将对应第二语言选项的文本文件,经由步骤s4,从多个声学模型中取出对应的第二声学模型,使用语音合成器,即可产生对应该特定人声的一输出语音数据。

如上述实施例,处理器130可存取第二声学模型(对应英语),并执行语音合成器,使语音合成器可套用第二声学模型输出文本文件(例如:thehouseisonfire)的内容。应注意的是,语音合成器套用第二声学模型所输出的语音数据是对应于使用者的声音。亦即,语音合成系统100可达成以使用者的声音输入中文语句,而系统以使用者的声音输出意义正确的英语语句的转换功能。基本上,应用本案的语音合成系统100时,声优可以仅录制一种语言的语料,语音合成系统100可对应地输出以该声优声音转换而成的其他不同语言种类的语音。

应理解,在前述实施例中,本案的语音合成系统100具有多个功能方块或模块。领域中人应当理解,在一些实施例中,优选地,该些功能方块或模块可通过特定电路(包含在一或多个处理器以及编码指令下操作的专用电路或通用电路)以实现。一般而言,特定电路可包含电晶体或其他电路元件,以前述实施例中的方式配置,使特定电路可根据本案所述的功能以及操作运行。进一步地,特定电路当中的功能方块或模块间的协作程序可由特定编译器(compiler)所实现,例如,暂存器传送语言(registertransferlanguage,rtl)编译器。然而,本案并不以此为限。

虽然本案以详细的实施例揭露如上,然而本案并不排除其他可行的实施态样。因此,本案的保护范围当视所附的权利要求书所界定的范围为准,而非受于前述实施例的限制。

对本领域技术人员而言,在不脱离本案的精神和范围内,当可对本案作各种的更动与润饰。基于前述实施例,所有对本案所作的更动与润饰,亦涵盖于本案的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1