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

虚拟主播生成方法、装置、计算机设备及可读存储介质与流程

2021-08-03 14:28:00 来源:中国专利 TAG:计算机 图像处理 主播 装置 生成
虚拟主播生成方法、装置、计算机设备及可读存储介质与流程

本申请涉及图像处理技术领域,尤其涉及一种虚拟主播生成方法、装置、计算机设备及计算机可读存储介质。



背景技术:

随着人工智能技术的发展,非常多的ai技术在日常生活中得到了实际的应用,其中,虚拟主播技术应用也越来越广泛。虚拟主播技术通过融合计算机视觉、语音处理、自然语言处理等多领域的知识,为传播赋能,相较于传统的人工主播,具有更加低廉的人工成本,更广泛的适用场景,以及更灵活的运用方式等优势,可以在网络教学及新闻播报等当场景下进一步发展。通过输入文字或者语音生成对应的主播形象视频,然后与合成的语音相融合,从而合成虚拟主播:一个说着输入话术的主播形象视频,与真人主播在神情、动作、声音上相差无几。传统技术中,虚拟主播技术,往往多采用生成式方案,但是生成式方案模型复杂度高、部署性差、耗时高,导致虚拟主播的生成效率较低。



技术实现要素:

本申请提供了一种虚拟主播生成方法、装置、计算机设备及计算机可读存储介质,能够解决传统技术中虚拟主播的生成效率较低的技术问题。

第一方面,本申请提供了一种虚拟主播生成方法,包括:获取中文音频,并根据所述中文音频,获取所述中文音频所包含的每个中文文字相对应的中文读音;根据所述中文读音,获取所述中文读音相对应的中文音素;根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图;获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播。

第二方面,本申请还提供了一种虚拟主播生成装置,包括:第一获取单元,用于获取中文音频,并根据所述中文音频,获取所述中文音频所包含的每个中文文字相对应的中文读音;第二获取单元,用于根据所述中文读音,获取所述中文读音相对应的中文音素;第三获取单元,用于根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图;生成单元,用于获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播。

第三方面,本申请还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现所述虚拟主播生成方法的步骤。

第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器执行所述虚拟主播生成方法的步骤。

本申请提供了一种虚拟主播生成方法、装置、计算机设备及计算机可读存储介质。本申请通过获取中文音频,并根据所述中文音频,获取所述中文音频中所包含的每个中文文字相对应的中文读音,根据所述中文读音,获取所述中文读音相对应的中文音素,根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图,获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播,从而实现虚拟主播的拼接式生成,相比传统技术中虚拟主播的生成方式,提高了虚拟主播生成的效率与效果。

附图说明

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

图1为本申请实施例提供的虚拟主播生成方法的一个流程示意图;

图2为本申请实施例提供的虚拟主播生成方法的第一个子流程示意图;

图3为本申请实施例提供的虚拟主播生成方法中预设音素与预设嘴型图之间的对应关系示例示意图;

图4为本申请实施例提供的虚拟主播生成方法的第二个子流程示意图;

图5为本申请实施例提供的虚拟主播生成方法的第三个子流程示意图;

图6为本申请实施例提供的虚拟主播生成方法的第四个子流程示意图;

图7为本申请实施例提供的虚拟主播生成方法的第五个子流程示意图;

图8为本申请实施例提供的虚拟主播生成装置的一个示意性框图;以及

图9为本申请实施例提供的计算机设备的示意性框图。

具体实施方式

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

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

请参阅图1,图1为本申请实施例提供的虚拟主播生成方法的一个流程示意图。如图1所示,该方法包括以下步骤s11-s14:

s11、获取中文音频,并根据所述中文音频,获取所述中文音频所包含的每个中文文字相对应的中文读音。

具体地,可以直接获取录制的中文音频,也可以获取中文文本,并将所述中文文本通过从“文本到语音(即tts,英文为texttospeech)”转换,以得到所述中文文本所对应的中文音频。获取所述中文音频后,提取所述中文音频所包含的每个中文文字相对应的中文读音,其中,中文读音又可以称为中文发音或者中文拼音。

s12、根据所述中文读音,获取所述中文读音相对应的中文音素,所述中文音素包含若干音素单元,所述音素单元对应预设音素。

具体地,在中文读音中,存在由于发音相似,例如,“sh”与“r”,“k”与“h”等,嘴型也会相似,即使存在细微的差别,在虚拟主播视频中也不会存在明显的差异,因此,可以预先将中文读音中的声母和韵母等发音根据中文发音的相似程度进行划分,以划分为多个预设音素,例如可以划分为54个中文音素,每个所述预设音素作为独立的音素单元,每个所述中文读音包含若干个音素单元,每个所述中文读音可以包含单个的预设音素,也可以为预设音素组合,根据所述中文读音及预设音素,即可获取所述中文读音相对应的中文音素。

进一步地,请参阅图2,图2为本申请实施例提供的虚拟主播生成方法的第一个子流程示意图。如图2所示,在该实施例中,所述根据所述中文读音,获取所述中文读音相对应的中文音素的步骤包括:

s21、判断所述中文读音是否存在相对应的预设音素;

s22、若所述中文读音存在相对应的预设音素,获取所述中文读音相对应的预设音素,并将所述预设音素作为所述中文读音相对应的中文音素;

s23、若所述中文读音不存在相对应的预设音素,将所述中文读音拆分成相对应的声母与韵母,并分别获取所述声母与所述韵母各自所对应的预设音素,再将所述声母与所述韵母各自所对应的预设音素进行拼接组合,以得到所述中文读音相对应的中文音素。

具体地,根据中文读音的结构特点,有的中文读音由声母构成,有的中文读音由声母与韵母构成等不同的中文读音的结构特点,首先判断所述中文读音是否存在相对应的预设音素,若所述中文读音存在相应的预设音素,直接获取所述中文读音所对应的预设音素,并将所述预设音素作为所述中文读音相对应的中文音素,例如中文文字“啊”的中文读音“a”,直接由声母“a”构成,若存在单独的预设音素“a”,可以直接获取预设音素“a”作为中文文字“啊”的相对应中文音素。若所述中文读音不存在相对应的预设音素,例如由声母与韵母构成的中文文字“雷”与“美”各自的中文读音分别为“lei”与“mei”,通过将所述中文读音拆分成所对应的声母和韵母,分别获取各自的声母与韵母各自所对应的预设音素,再将各自的声母与韵母各自所对应的预设音素进行拼接组合,以得到中文读音所对应的中文音素。

进一步地,根据所述中文读音,获取所述中文读音相对应的中文音素,可以通过预训练的预设lstm模型进行,将中文读音输入预训练的预设lstm模型,以得到所述中文读音相对应的中文音素,采用预设lstm模型等深度学习模型,可以提高根据中文读音获取其所对应的中文音素的效率与准确性,训练所述预设lstm模型时,将各个声母与韵母及其各自所对应的预设音素输入预设lstm模型,以使lstm模型学习声母及韵母与其各自相对应的预设音素之间的匹配关系,后续根据学习到的所述预设匹配关系,即可判断所述中文读音是否存在相对应的预设音素,若所述中文读音存在相对应的预设音素,获取所述中文读音相对应的预设音素,并将所述预设音素作为所述中文读音相对应的中文音素,若所述中文读音不存在相对应的预设音素,将所述中文读音拆分成相对应的声母与韵母,并分别获取所述声母与所述韵母各自所对应的预设音素,再将所述声母与所述韵母各自所对应的预设音素进行拼接组合,以得到所述中文读音相对应的中文音素。

s13、根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图。

具体地,不同预设音素的发音是不相同的,即使是同一预设音素,在不同语境下,发音也存在不相同的情形,例如,针对预设音素“a”,当对应不同发音,或者同一发音的不同文字,或者同一文字在不同语境下,发音均存在不相同的情形。发音不同,嘴型不同,相对应的嘴型图也不相同,不同的嘴型可以用嘴型关键点来描述,嘴型关键点可以用嘴型关键点序列来描述,嘴型关键点序列中可以包含一个嘴型的多个关键点,通过嘴型的多个关键点来限定一个嘴型,然后针对不同的嘴型关键点设置相对应的嘴型图,从而通过嘴型关键点相对应的嘴型图来描述音素相对应的发音。预先根据预设音素不同的发音情形,设置预设音素相对应的预设嘴型关键点及与所述预设嘴型关键点相对应的预设嘴型图,其中,可以通过嘴型关键点序列对应一个预设嘴型图的方式,来描述预设嘴型关键点及与所述预设嘴型关键点相对应的预设嘴型图的匹配关系,一个嘴型关键点序列对应一个嘴型图,一个嘴型图中包含一个嘴型的多个关键点各自所对应的嘴型部分图,多个嘴型关键点各自所对应的嘴型部分图按照预设顺序可以组成一个嘴型,从而可以将一个嘴型图化整为零的分散存储,例如,将一个嘴唇图划分为左嘴角、上嘴唇、右嘴角、下嘴唇等不同关键点各自所对应的形状来描述一个嘴型图,当然,可以进行更细致的划分,以更精确的描述嘴唇形状。进一步地,每个预设音素可以对应若干个预设嘴型关键点,每个预设嘴型关键点可以一个预设嘴型图,请参阅图3,图3为本申请实施例提供的虚拟主播生成方法中预设音素与预设嘴型图之间的对应关系示例示意图,如图3所示,该预设音素对应多个预设嘴型关键点,每个预设嘴型关键点对应一个预设嘴型图,以描述预设音素在不同语境下的不同发音情形时所对应的嘴型,从而后续能够提高预设音素发音与嘴型的对应性,从而使生成的虚拟主播更逼真、生动与形象,使生成的虚拟主播效果更好,当然除图3所示示例外,预设音素与预设嘴型图之间也可以存在其它形式的对应关系,比如,一个预设音素对应一个预设嘴型关键点,一个预设嘴型关键点对应多个预设嘴型图,例如,预设音素对应预设嘴型关键点1,预设嘴型关键点1不仅对应预设嘴型图11,还可以对应其它的预设嘴型图,预设嘴型关键点3不仅对应预设嘴型图31,也还可以对应其它的预设嘴型图。从而获取到中文音素后,根据所述中文音素,可以基于预设lstm模型,将所述中文音素映射到人脸嘴部的关键点上,从而根据所述中文音频的特征,例如,音频的mfcc特征,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图,从而得到在该中文音频中的中文音素所对应的预设嘴型图。

更进一步地,在静态画面中,一帧图像中,一个嘴型关键点序列对应一个嘴型图,在动态视频中,由于动态视频为多帧图像形成的动态画面,一般为若干个嘴型关键点序列,每个嘴型关键点序列对应一个嘴型图,若干个嘴型关键点序列相对应若干个嘴型图,若干个嘴型图也就组成了嘴型图序列,例如对应的嘴型关键点序列有10个,与此同时对应的嘴型图也为10个,该10个嘴型图可以组成嘴型图序列,该嘴型图序列为时序序列,从而该嘴型形图序列也有10个嘴型图。

请参阅图4,图4为本申请实施例提供的虚拟主播生成方法的第二个子流程示意图。如图4所示,在该实施例中,所述根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图的步骤包括:

s41、根据所述中文音素,获取所述中文音素所对应的预设图形索引库;

s42、基于预设dtw算法,在所述预设图形索引库中进行路径查询,以得到所述中文音素相对应的目标索引路径,所述目标索引路径包括所述中文音素相对应的目标预设嘴型关键点及所述目标预设嘴型关键点所对应的目标预设嘴型图;

s43、根据所述目标索引路径,获取所述目标索引路径所对应的目标预设嘴型图,以得到所述中文音素所对应的预设嘴型图。

其中,dtw,英文为dynamictimewarping,为动态时间规整算法,为一种局部匹配距离,通过局部优化实现加权距离总和最小,从而得到加权距离总和最小的路径,该路径所对应的对象即为目标对象,例如本申请实施例中,首先训练好常见音素所对应的若干嘴型关键点及每个所述嘴型关键点所对应的若干嘴型图,即为构建的预设音素相对应的预设图形索引库,提取嘴型关键点(即嘴型特征点)特征后作为一个模板,当需要识别一个新来的音素时,也同样获取新来音素所对应的嘴型关键点特征,然后与预设图形索引库的每一个模板进行匹配,计算距离,求出最短距离的那个路径所对应的嘴型图,即为所述中文音素所对应的预设嘴型图。

具体地,针对每个预设音素,根据该预设音素在不同语境下的发音嘴型,尤其是在基于虚拟主播的动态音视频播放中,预先设置该预设音素相对应的预设图形索引库,所述预设图形索引库中包含预设音素、所述预设音素所对应的若干预设嘴型关键点及每个预设嘴型关键点所对应的若干预设嘴型图,所述预设音素、所述预设音素所对应的若干预设嘴型关键点及每个预设嘴型关键点所对应的若干预设嘴型图之间各自的对应关系通过各自所对应的索引路径进行描述。根据所述中文音素,获取所述中文音素所对应的预设图形索引库,基于预设dtw算法,在所述预设图形索引库中进行路径查询,以得到所述中文音素相对应的目标索引路径,所述目标索引路径包括所述中文音素相对应的目标预设嘴型关键点及所述目标预设嘴型关键点所对应的目标预设嘴型图。例如,针对预设音素“a”,在获取包含预设音素“a”的中文音频后,在通过预设lstm模型获取所述预设音素“a”所对应的预设嘴型关键点后,可以通过预设dtw算法,在所述预设图形索引库中进行路径查询,以得到所述预设音素“a”相对应的目标索引路径,根据所述目标索引路径,获取所述目标索引路径所对应的目标预设嘴型图,以得到所述预设音素“a”所对应的预设嘴型图。在本申请实施例中,通过建立预设图形索引库的方式,将音视频播放中虚拟主播时间上的复杂度转换为空间上的复杂度,通过在本地建立唇形和关键点序列的map库(即预设图形索引库),然后通过dtw算法进行索引,并且还可以进行多线程编程,从而将整体算法的耗时进行进一步的压缩,简化了虚拟主播的生成过程,提升了虚拟主播的生成效率,从而使本申请实施例的虚拟主播生成方式可以部署在移动终端,并且能够进行实时的虚拟主播合成,后续可以接入实时的视频流直播中,这样就可以形成一套在线的直播流的虚拟主播技术应用方案,相较于其它的生成式的主播方案,随着移动终端应用的发展,本申请实施例的实时虚拟主播生成的发展前景更广阔,也更适合当今日益剧增的移动终端应用的需求,实现了虚拟主播生成的简化,从而更适合移动终端应用的需求,提升了移动终端虚拟主播生成的生成效率与生成质量,能够实现移动终端基于虚拟主播的音视频播放效果。

s14、获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播。

具体地,获取所述中文音素所对应的预设嘴型图后,再获取预设虚拟主播形象,所述预设虚拟主播形象可以通过录制主播形象而得到,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,从而可以生成所述中文读音所对应的虚拟主播,将所述虚拟主播与所述中文读音进行时序上的对应融合进行播放,在实际应用中,可以将所述中文音频所包含的所有中文读音及每个所述中文读音各自所对应的虚拟主播按照时序进行对照融合,然后按照中文音频的时序顺序进行播放,从而实现虚拟主播的音视频播放。

本申请实施例,通过获取中文音频,并根据所述中文音频,获取所述中文音频中所包含的每个中文文字相对应的中文读音,根据所述中文读音,获取所述中文读音相对应的中文音素,根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图,获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播,从而实现虚拟主播的拼接式生成,相比传统技术中虚拟主播的生成方式,提高了虚拟主播生成的效率与效果。

请参阅图5,图5为本申请实施例提供的虚拟主播生成方法的第三个子流程示意图。如图5所示,在该实施例中,所述根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图的步骤之前,还包括:

s51、判断所述中文音素是否存储在预设缓存,所述预设缓存预先存储有预设中文音素及所述预设中文音素相对应的预设嘴型图;

s51、若所述中文音素存储在预设缓存,从所述预设缓存获取所述预设中文音素相对应的预设嘴型图;

s53、若所述中文音素未存储在预设缓存,执行所述根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图的步骤。

具体地,为了进一步提高虚拟主播的生成效率,可以充分利用缓存机制,将部分具备优先权的预设中文音素及所述预设中文音素相对应的预设嘴型图预先存储至缓存中,例如,在具体实际业务中,部分使用频率较高的中文音素及中文音素相对应的嘴型图,或者该业务中必须要使用的中文音素及中文音素相对应的嘴型图,预先存储至缓存中,在进行该业务对应的虚拟主播生成时,获取所述中文读音相对应的中文音素后,根据所述中文音素,判断所述中文音素是否存储在预设缓存,所述预设缓存预先存储有预设中文音素及所述预设中文音素相对应的预设嘴型图,若所述中文音素存储在预设缓存,直接从所述预设缓存获取所述预设中文音素相对应的预设嘴型图,若所述中文音素未存储在预设缓存,再执行所述根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图的步骤,在本申请实施例中,通过充分利用缓存机制,将部分具备优先权的预设中文音素及所述预设中文音素相对应的预设嘴型图预先存储至缓存中,缩短了对预设中文音素相对应的预设嘴型图的获取过程,尤其是在虚拟主播音视频要处理大量图像帧的生成时,可以大大提高虚拟主播的生成效率。

请参阅图6,图6为本申请实施例提供的虚拟主播生成方法的第四个子流程示意图。如图6所示,在该实施例中,所述获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播的步骤包括:

s61、获取预设虚拟主播形象,并获取所述预设虚拟主播形象所包含的嘴唇所对应的预设嘴唇位置;

s62、将所述预设嘴型图拼接至所述预设嘴唇位置;

s63、根据所述预设嘴型图及所述预设嘴唇位置,调整所述预设嘴型图贴合至所述预设嘴唇位置,以使所述预设嘴型图与所述预设嘴唇位置相适配,从而生成所述中文读音所对应的虚拟主播。

具体地,获取所述中文读音所对应的预设嘴型图后,再获取预设虚拟主播形象,所述预设虚拟主播形象可以为录制的真人主播形象所对应的视频图象帧,并获取所述预设虚拟主播形象所包含的嘴唇所对应的预设嘴唇位置,将所述预设嘴型图拼接至所述预设嘴唇位置,即将所述预设嘴型图放置至所述预设嘴唇位置,同时,为了使生成的虚拟主播的质量较高,效果较好,以使生成的虚拟主播生动、细节精确、线条精美,还可以根据所述预设嘴型图及所述预设嘴唇位置,调整所述预设嘴型图,例如,可以通过预设imagewarping变形算法(即图像变形算法,例如反距离加权插值,英文为inversedistanceweightedinterpolation,即idw),以使所述预设嘴型图精确贴合至所述预设嘴唇位置,以使所述预设嘴型图的曲线与所述预设嘴唇位置准确贴合,从而使所述预设嘴型图与所述预设嘴唇位置相适配,从而生成所述中文读音所对应的虚拟主播。

请参阅图7,图7为本申请实施例提供的虚拟主播生成方法的第五个子流程示意图。如图7所示,在该实施例中,所述获取中文音频的步骤包括:

s71、获取中文文本,并将所述中文文本经预设tts方法转换成初始语音;

s72、将所述初始语音进行强制对齐,以得到目标语音,并将所述目标语音作为所述中文文本所对应的中文音频。

具体地,针对文字输入以获取中文文本,然后将所述中文文本通过tts合(tts,英文为texttospeech,为从文本到语音的转换)成对应的中文音频,再根据所述中文音频合成虚拟主播的情形,由于录制视频的语音特征和推理过程中的tts语音存在较大的差异,为了避免domainadaption(即领域自适应),可以采用将音频通过强制对齐方式,以获取较为准确的中文音频,并根据中文音频获取中文音素,并根据所述中文音素获取预设嘴唇图,从而提升获取的虚拟主播的准确性与生动性。具体而言,在模型训练阶段,针对每个预设音素,可以通过包含标注文本的训练集将模型进行训练,将训练集中的每条音频利用标注文本解码得到每一帧对应的音素状态,从而使模型学习到每个音素。在进行虚拟主播生成过程中,可以获取中文文本,并将所述中文文本经预设tts方法转换成初始语音,将所述初始语音进行强制对齐,即将所述初始语音,根据语音识别的识别结果,按照预设长度进行切分,预设长度一般根据预设音素进行切分,例如,若初始语音比较接近预设音素“a”,将初始语音以预设音素“a”为单位进行切分,以得到切分的相对应的语音块,由于是根据模型针对每个预设音素进行深度学习的结果进行的语音识别,是根据进行语音识别的识别结果与预设的预设音素的相似性进行的切分,切分的语音块并非是完全准确的,然后再将得到的语音块与标准的预设音素进行比对,以将语音块根据与预设音素的相似性程度,再将所述语音块进行差错识别与纠正、缺失补齐等处理,以将语音块与标准的预设音素进行强制对齐,从而将语音块转换成最接近的预设音素,从而得到所述初始语音相对应的目标语音,所述目标语音一般情况下为包含标准的预设音素的中文读音,并将所述目标语音作为所述中文文本所对应的中文音频,后续根据所述中文音频,获取所述中文音频所包含的每个中文文字相对应的中文读音。

需要说明的是,上述各个实施例所述的虚拟主播生成方法,可以根据需要将不同实施例中包含的技术特征重新进行组合,以获取组合后的实施方案,但都在本申请要求的保护范围之内。

请参阅图8,图8为本申请实施例提供的虚拟主播生成装置的一个示意性框图。对应于上述所述虚拟主播生成方法,本申请实施例还提供一种虚拟主播生成装置。如图8所示,该虚拟主播生成装置包括用于执行上述所述虚拟主播生成方法的单元,该虚拟主播生成装置可以被配置于计算机设备中。具体地,请参阅图8,该虚拟主播生成装置80包括第一获取单元78、第二获取单元82、第三获取单元83及生成单元84。

其中,第一获取单元81,用于获取中文音频,并根据所述中文音频,获取所述中文音频所包含的每个中文文字相对应的中文读音;

第二获取单元82,用于根据所述中文读音,获取所述中文读音相对应的中文音素;

第三获取单元83,用于根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图;

生成单元84,用于获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播。

在一实施例中,所述第二获取单元82包括:

第一判断子单元,用于判断所述中文读音是否存在相对应的预设音素;

第一获取子单元,用于若所述中文读音存在相对应的预设音素,获取所述中文读音相对应的预设音素,并将所述预设音素作为所述中文读音相对应的中文音素;

第二获取子单元,用于若所述中文读音不存在相对应的预设音素,将所述中文读音拆分成相对应的声母与韵母,并分别获取所述声母与所述韵母各自所对应的预设音素,再将所述声母与所述韵母各自所对应的预设音素进行拼接组合,以得到所述中文读音相对应的中文音素。

在一实施例中,所述第三获取单元83包括:

第三获取子单元,用于根据所述中文音素,获取所述中文音素所对应的预设图形索引库;

查询子单元,用于基于预设dtw算法,在所述预设图形索引库中进行路径查询,以得到所述中文音素相对应的目标索引路径,所述目标索引路径包括所述中文音素相对应的目标预设嘴型关键点及所述目标预设嘴型关键点所对应的目标预设嘴型图;

第四获取子单元,用于根据所述目标索引路径,获取所述目标索引路径所对应的目标预设嘴型图,以得到所述中文音素所对应的预设嘴型图。

在一实施例中,所述虚拟主播生成装置80还包括:

判断单元,用于判断所述中文音素是否存储在预设缓存;

第四获取单元,用于若所述中文音素存储在预设缓存,从所述预设缓存获取所述预设中文音素相对应的预设嘴型图;

执行单元,用于若所述中文音素未存储在预设缓存,执行所述根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图的步骤。

在一实施例中,所述生成单元84包括:

第五获取子单元,用于获取预设虚拟主播形象,并获取所述预设虚拟主播形象所包含的嘴唇所对应的预设嘴唇位置;

拼接子单元,用于将所述预设嘴型图拼接至所述预设嘴唇位置;

适配子单元,用于根据所述预设嘴型图及所述预设嘴唇位置,调整所述预设嘴型图贴合至所述预设嘴唇位置,以使所述预设嘴型图与所述预设嘴唇位置相适配,从而生成所述中文读音所对应的虚拟主播。

在一实施例中,所述适配子单元,具体用于基于预设imagewarping算法,根据所述预设嘴型图及所述预设嘴唇位置,调整所述预设嘴型图贴合至所述预设嘴唇位置,以使所述预设嘴型图与所述预设嘴唇位置相适配。

在一实施例中,所述第一获取单元81包括:

转换子单元,用于获取中文文本,并将所述中文文本经预设tts方法转换成初始语音;

对齐子单元,用于将所述初始语音进行强制对齐,以得到目标语音,并将所述目标语音作为所述中文文本所对应的中文音频。

需要说明的是,所属领域的技术人员可以清楚地了解到,上述虚拟主播生成装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。

同时,上述虚拟主播生成装置中各个单元的划分和连接方式仅用于举例说明,在其他实施例中,可将虚拟主播生成装置按照需要划分为不同的单元,也可将虚拟主播生成装置中各单元采取不同的连接顺序和方式,以完成上述虚拟主播生成装置的全部或部分功能。

上述虚拟主播生成装置可以实现为一种计算机程序的形式,该计算机程序可以在如图9所示的计算机设备上运行。

请参阅图9,图9是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是台式机电脑或者服务器等计算机设备,也可以是其他设备中的组件或者部件。

参阅图9,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504,所述存储器也可以为易失性存储介质。

该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行一种上述虚拟主播生成方法。

该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。

该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种上述虚拟主播生成方法。

该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图9所示实施例一致,在此不再赘述。

其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:获取中文音频,并根据所述中文音频,获取所述中文音频所包含的每个中文文字相对应的中文读音;根据所述中文读音,获取所述中文读音相对应的中文音素;根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图;获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播。

在一实施例中,所述处理器502在实现所述根据所述中文读音,获取所述中文读音相对应的中文音素的步骤时,具体实现以下步骤:

判断所述中文读音是否存在相对应的预设音素;

若所述中文读音存在相对应的预设音素,获取所述中文读音相对应的预设音素,并将所述预设音素作为所述中文读音相对应的中文音素;

若所述中文读音不存在相对应的预设音素,将所述中文读音拆分成相对应的声母与韵母,并分别获取所述声母与所述韵母各自所对应的预设音素,再将所述声母与所述韵母各自所对应的预设音素进行拼接组合,以得到所述中文读音相对应的中文音素。

在一实施例中,所述处理器502在实现所述根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图的步骤时,具体实现以下步骤:

根据所述中文音素,获取所述中文音素所对应的预设图形索引库;

基于预设dtw算法,在所述预设图形索引库中进行路径查询,以得到所述中文音素相对应的目标索引路径,所述目标索引路径包括所述中文音素相对应的目标预设嘴型关键点及所述目标预设嘴型关键点所对应的目标预设嘴型图;

根据所述目标索引路径,获取所述目标索引路径所对应的目标预设嘴型图,以得到所述中文音素所对应的预设嘴型图。

在一实施例中,所述处理器502在实现所述根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图的步骤之前,还实现以下步骤:

判断所述中文音素是否存储在预设缓存;

若所述中文音素存储在预设缓存,从所述预设缓存获取所述预设中文音素相对应的预设嘴型图;

若所述中文音素未存储在预设缓存,执行所述根据所述中文音素,获取所述中文音素所对应的预设嘴型关键点,并根据所述预设嘴型关键点,获取所述预设嘴型关键点所对应的预设嘴型图的步骤。

在一实施例中,所述处理器502在实现所述获取预设虚拟主播形象,将所述预设嘴型图设置至所述预设虚拟主播形象的预设嘴唇位置,以生成所述中文读音所对应的虚拟主播的步骤时,具体实现以下步骤:

获取预设虚拟主播形象,并获取所述预设虚拟主播形象所包含的嘴唇所对应的预设嘴唇位置;

将所述预设嘴型图拼接至所述预设嘴唇位置;

根据所述预设嘴型图及所述预设嘴唇位置,调整所述预设嘴型图贴合至所述预设嘴唇位置,以使所述预设嘴型图与所述预设嘴唇位置相适配,从而生成所述中文读音所对应的虚拟主播。

在一实施例中,所述处理器502在实现所述根据所述预设嘴型图及所述预设嘴唇位置,调整所述预设嘴型图贴合至所述预设嘴唇位置,以使所述预设嘴型图与所述预设嘴唇位置相适配的步骤时,具体实现以下步骤:

基于预设imagewarping算法,根据所述预设嘴型图及所述预设嘴唇位置,调整所述预设嘴型图贴合至所述预设嘴唇位置,以使所述预设嘴型图与所述预设嘴唇位置相适配。

在一实施例中,所述处理器502在实现所述获取中文音频的步骤时,具体实现以下步骤:

获取中文文本,并将所述中文文本经预设tts方法转换成初始语音;

将所述初始语音进行强制对齐,以得到目标语音,并将所述目标语音作为所述中文文本所对应的中文音频。

应当理解,在本申请实施例中,处理器502可以是中央处理单元(centralprocessingunit,cpu),该处理器502还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来完成,该计算机程序可存储于一计算机可读存储介质。该计算机程序被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。

因此,本申请还提供一种计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质,也可以为易失性的计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时使处理器执行如下步骤:

一种计算机程序产品,当其在计算机上运行时,使得计算机执行以上各实施例中所描述的所述虚拟主播生成方法的步骤。

所述计算机可读存储介质可以是前述设备的内部存储单元,例如设备的硬盘或内存。所述计算机可读存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

所述存储介质为实体的、非瞬时性的存储介质,例如可以是u盘、移动硬盘、只读存储器(read-onlymemory,rom)、磁碟或者光盘等各种可以存储计算机程序的实体存储介质。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本申请实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。

该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,终端,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。

以上所述,仅为本申请的具体实施方式,但本申请明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

再多了解一些

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

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

相关文章

  • 日榜
  • 周榜
  • 月榜