直播控制方法、装置、存储介质及电子设备与流程

文档序号:29695604发布日期:2022-04-16 12:55阅读:118来源:国知局
直播控制方法、装置、存储介质及电子设备与流程

1.本公开涉及虚拟现实领域,具体涉及一种直播控制方法、直播控制装置、存储介质及电子设备。


背景技术:

2.随着直播行业的快速兴起,舞蹈类的直播逐渐增多,主播可以通过直播设备向观众展现自己最有魅力的一面。
3.通常在演唱会、舞台表演等大型直播活动中,有特定的实拍运镜配合拍摄舞蹈表演动作,从而突出舞蹈视觉冲击力。然而对于大多数个人主播而言,由于直播条件有限,主播通常只能通过定机位进行直播,运镜效果单一,直播画面丰富性较差。而有部分摄像头硬件是有自动跟踪或自动运镜的功能,通常是基于人物脸的位置进行镜头的跟踪,但最终直播效果也取决于主播的直播空间大小和装饰,如果直播间没有足够的施展移动的空间,摄像头的跟踪功能效果也将大打折扣,效果不佳。
4.需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现要素:

5.本公开的目的在于提供一种直播控制方法、直播控制装置、存储介质及电子设备,旨在根据主播的动作改变运镜信息,提高直播运镜效果的丰富性。
6.本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
7.根据本公开实施例的一方面,提供了直播控制方法,通过终端的图形用户界面提供一直播界面,包括:利用所述终端的图像获取设备采集主播在真实直播场景中的真实视频数据;通过真实视频数据中所述主播同步驱动虚拟直播场景中的虚拟对象得到所述虚拟对象的动作;识别所述虚拟对象的动作对应的目标常规动作,并基于常规动作与虚拟直播场景中虚拟摄像头的运镜信息之间的映射关系获取与所述目标常规动作对应的目标运镜信息;将所述真实视频数据中所述主播添加至所述虚拟直播场景,并根据所述目标运镜信息利用所述虚拟摄像头对包含所述主播的虚拟直播场景进行拍摄生成直播视频数据,以将所述直播视频数据显示在所述直播界面中。
8.根据本公开的一些实施例,基于前述方案,所述通过真实视频数据中的所述主播同步驱动虚拟直播场景中的虚拟对象得到所述虚拟对象的动作,包括:利用预设的动作特征点对所述真实视频数据中所述主播进行动作识别得到所述主播各动作特征点的时间域动态轨迹序列;基于所述主播与所述虚拟对象动作特征点之间的对应关系,将所述主播各动作特征点的时间域动态轨迹序列分别配置为所述虚拟对象各动作特征点的时间域动态轨迹序列得到所述虚拟对象的动作。
9.根据本公开的一些实施例,基于前述方案,所述识别所述虚拟对象的动作对应的
目标常规动作,包括:将所述虚拟对象的动作与动作数据库中的常规动作进行匹配,以确定与所述动作对应的目标常规动作。
10.根据本公开的一些实施例,基于前述方案,基于常规动作与虚拟直播场景中虚拟摄像头的运镜信息之间的映射关系获取与所述目标常规动作对应的目标运镜信息,包括:从动作数据库提取所述目标常规动作的运镜触发条件;在检测到所述虚拟对象的动作满足所述运镜触发条件时提取所述目标运镜信息;其中,所述动作数据库包括常规动作、运镜信息及常规动作与运镜信息之间的映射关系。
11.根据本公开的一些实施例,基于前述方案,所述方法还包括:所述方法还包括创建所述动作数据库,所述创建所述动作数据库,包括:对历史视频数据进行动作分析以创建常规动作;配置所述常规动作对应的动作特征点的时间域动态轨迹序列以用于识别目标常规动作;以及配置所述常规动作对应的运镜触发条件和运镜信息以用于获取目标常规动作对应的目标运镜信息;创建存储常规动作的动作特征点的时间域动态轨迹序列、运镜触发条件和运镜信息的所述动作数据库。
12.根据本公开的一些实施例,基于前述方案,所述将所述真实视频数据中所述主播添加至所述虚拟直播场景,包括:对所述真实视频数据中的所述主播和所述真实直播场景进行抠图处理,以提取所述主播的视频数据;将所述主播的视频数据添加至所述虚拟直播场景中。
13.根据本公开的一些实施例,基于前述方案,在根据所述目标运镜信息利用所述虚拟摄像头对包含所述主播的虚拟直播场景进行拍摄生成直播视频数据之前,所述方法还包括:将所述虚拟对象渲染为不可见状态。
14.根据本公开实施例的第二方面,提供了一种直播控制装置,通过终端的图形用户界面提供一直播界面,包括:采集模块,用于利用所述终端的图像获取设备采集主播在真实直播场景中的真实视频数据;同步模块,用于通过真实视频数据中所述主播同步驱动虚拟直播场景中的虚拟对象得到所述虚拟对象的动作;获取模块,用于识别所述虚拟对象的动作对应的目标常规动作,并基于常规动作与虚拟直播场景中虚拟摄像头的运镜信息之间的映射关系获取与所述目标常规动作对应的目标运镜信息;拍摄模块,用于将所述真实视频数据中所述主播添加至所述虚拟直播场景,并根据所述目标运镜信息利用所述虚拟摄像头对包含所述主播的虚拟直播场景进行拍摄生成直播视频数据,以将所述直播视频数据显示在所述直播界面中。
15.根据本公开实施例的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中的直播控制方法。
16.根据本公开实施例的第四方面,提供了一种电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中的直播控制方法。
17.本公开示例性实施例可以具有以下部分或全部有益效果:
18.在本公开的一些实施例所提供的技术方案中,首先对主播的图像数据进行动作识别得到动作识别结果,再将动作识别结果同步至预设的虚拟对象得到虚拟对象的动作数据,从而实现主播与虚拟对象的动作联动,最后在检测到虚拟对象的动作数据满足目标动作的运镜触发条件时,获取对应的运镜信息进行虚拟拍摄得到视频画面。本公开提供的直
播控制方法,一方面,通过将真实的主播的动作与虚拟对象的动作进行同步,进而使用虚拟对象的动作进行检测,可以避免检测主播动作时识别精度低,误差范围大的问题,使得触发运镜的精准度较高;另一方面,通过预设常规动作与虚拟摄像头运镜信息之间的映射关系,能够自动调整运镜,并且实现丰富多样的镜头运镜,丰富了直播视频画面效果。
19.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
20.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
21.图1示意性示出本公开示例性实施例中一种直播控制方法的流程示意图;
22.图2示意性示出本公开示例性实施例中一种动作识别结果的示意图;
23.图3示意性示出本公开示例性实施例中一种虚拟对象的动作的示意图;
24.图4a-4b示意性示出本公开示例性实施例中一种直播视频画面的示意图;
25.图5a-5b示意性示出本公开示例性实施例中另一种直播视频画面的示意图;
26.图6示意性示出本公开示例性实施例中一种直播控制装置的组成示意图;
27.图7示意性示出本公开示例性实施例中一种计算机可读存储介质的示意图;
28.图8示意性示出本公开示例性实施例中一种电子设备的计算机系统的结构示意图。
具体实施方式
29.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
30.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
31.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
32.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
33.以下对本公开实施例的技术方案的实现细节进行详细阐述。
34.图1示意性示出本公开示例性实施例中一种直播控制方法的流程示意图。如图1所
示,该直播控制方法包括步骤s1至步骤s4:
35.步骤s1,利用所述终端的图像获取设备采集主播在真实直播场景中的真实视频数据;
36.步骤s2,通过真实视频数据中所述主播同步驱动虚拟直播场景中的虚拟对象得到所述虚拟对象的动作;
37.步骤s3,识别所述虚拟对象的动作对应的目标常规动作,并基于常规动作与虚拟直播场景中虚拟摄像头的运镜信息之间的映射关系获取与所述目标常规动作对应的目标运镜信息;
38.步骤s4,将所述真实视频数据中所述主播添加至所述虚拟直播场景,并根据所述目标运镜信息利用所述虚拟摄像头对包含所述主播的虚拟直播场景进行拍摄生成直播视频数据,以将所述直播视频数据显示在所述直播界面中。
39.在本公开的一些实施例所提供的技术方案中,首先对主播的图像数据进行动作识别得到动作识别结果,再将动作识别结果同步至预设的虚拟对象得到虚拟对象的动作数据,从而实现主播与虚拟对象的动作联动,最后在检测到虚拟对象的动作数据满足目标动作的运镜触发条件时,获取对应的运镜信息进行虚拟拍摄得到视频画面。本公开提供的直播控制方法,一方面,通过将真实的主播的动作与虚拟对象的动作进行同步,进而使用虚拟对象的动作进行检测,可以避免检测主播动作时识别精度低,误差范围大的问题,使得触发运镜的精准度较高;另一方面,通过预设常规动作与虚拟摄像头运镜信息之间的映射关系,能够自动调整运镜,并且实现丰富多样的镜头运镜,丰富了直播视频画面效果。
40.下面,将结合附图及实施例对本示例实施方式中的直播控制方法的各个步骤进行更详细的说明。
41.在步骤s1中,利用所述终端的图像获取设备采集主播在真实直播场景中的真实视频数据。
42.在本公开的一个实施例中,可以利用现实摄像机采集主播的图像数据。例如在直播场景中,主播通过架设现实摄像机,获取现实摄像机拍摄的视频数据源。现实摄像机可以是手机、电脑或相机的摄像头等。
43.图像数据中包括主播,主播可以是现实摄像机拍摄的真实人物,也可以是图像中的其他目标主体,其可以具有多样的动作特征,从而可以根据主播的动作来实现自主运镜。需要说明的是,本公开中对主播的说明仅是示例性解释,并不能限制本公开。
44.在步骤s2中,通过真实视频数据中所述主播同步驱动虚拟直播场景中的虚拟对象得到所述虚拟对象的动作。
45.进一步地,对于步骤s2,通过真实视频数据中的所述主播同步驱动虚拟直播场景中的虚拟对象得到所述虚拟对象的动作,包括:
46.步骤s21,利用预设的动作特征点对所述真实视频数据中所述主播进行动作识别得到所述主播各动作特征点的时间域动态轨迹序列;
47.步骤s22,基于所述主播与所述虚拟对象动作特征点之间的对应关系,将所述主播各动作特征点的时间域动态轨迹序列分别配置为所述虚拟对象各动作特征点的时间域动态轨迹序列得到所述虚拟对象的动作。
48.具体地,在步骤s21中,利用预设的动作特征点对所述真实视频数据中所述主播进
行动作识别得到所述主播各动作特征点的时间域动态轨迹序列。
49.在本公开的一个实施例中,可以预设多个能够表征主播动作的动作特征点,在识别主播的动作时,将主播的动作简化为这些动作特征点的信息,即时间域动态轨迹序列,利用一段时间内各动作特征点的移动轨迹进行动态识别,得到动作识别结果。
50.以识别人体的动作为例,根据人体骨骼信息可以预设例如头、肩、胸、腰、大臂、小臂、大腿、小腿、足等人体骨骼关键点作为动作特征点,然后识别图像数据中的各个人体骨骼点对应的时间域动态轨迹序列。在传统机器学习算法中,将人体骨骼关键点看作时间域动态轨迹序列,可通过隐马尔科夫hmm,条件随机场crfs,时域金字塔等模型求解。对时域骨骼关键点的特征提取方法主要有关键点的联合位置直方图分布,关键点3d位置的旋转与位移特征等等。在深度学习领域,可通过rnns、lstm、cnn等手段将时空域人体骨骼关键点建模来完成分类识别。
51.图2示意性示出本公开示例性实施例中一种动作识别结果的示意图。如图2所示,对主播的图像数据进行识别,主播处于真实场景画面201中,得到识别的人体范围203,各人体骨骼关键点203,以及各人体骨骼关键点203当前时刻的坐标信息。
52.在步骤s22中,基于所述主播与所述虚拟对象动作特征点之间的对应关系,将所述主播各动作特征点的时间域动态轨迹序列分别配置为所述虚拟对象各动作特征点的时间域动态轨迹序列得到所述虚拟对象的动作。
53.具体地,为了方便有效地设定运镜动势,会在虚拟引擎中预置一个虚拟对象,将主播的动作识别结果同步给虚拟对象来实现真实直播场景的主播同步虚拟直播场景中的虚拟对象,使得主播与虚拟对象的动作同步进行变化。
54.在本公开的一个实施例中,在虚拟引擎中创建的虚拟对象包括的动作特征点和主播的动作特征点保持一致。因此,将主播的动作特征点与虚拟对象的动作特征点一一对应连接,并将主播中动作特征点的时间域动态轨迹序列配置给虚拟对象中对应的动作特征点,从而将主播的动作与虚拟对象的动作完全同步,得到虚拟对象的动作,使得主播能够驱动虚拟对象执行动作。
55.需要说明的是,在预设虚拟对象时可以根据拍摄的主播的图像数据来按需设定。比如拍摄的图像中包括两个主播,那么就需要创建对应的两个虚拟对象,将各自的动作特征点建立对应连接。
56.在本公开的一个实施例中,为了将虚拟对象的动作标准化,在将主播的动作特征点的时间域动态轨迹序列配置为虚拟对象的动作特征点的时间域动态轨迹序列之后,还可以对虚拟对象的动作特征点的时间域动态轨迹序列进行微调。例如,当主播在做“双手举高”的动作时,两个手臂的小臂高度可能存在细微差异,此时可以对小臂高度调整为相同高度,进而得到虚拟对象中两臂高度一致的“双手举高”动作,进而更易检测虚拟对象的动作数据是否满足目标动作的运镜触发条件。
57.图3示意性示出本公开示例性实施例中一种虚拟对象的动作的示意图。参考图3所示,301为虚拟场景图像,302为预设的虚拟对象,虚拟对象包括多个人体骨骼关键点303。即将图2所示的主播的动作识别结果同步至虚拟对象之后,就得到虚拟对象302的动作如图3所示。
58.基于上述的方法,将真实的主播的动作与虚拟对象的动作进行同步联动,进而对
虚拟对象的动作进行检测识别是否满足目标动作的运镜触发条件,可以避免检测主播动作时识别精度低,误差范围大的问题,使得运镜调整的精准度较高。
59.在步骤s3中,识别所述虚拟对象的动作对应的目标常规动作,并基于常规动作与虚拟直播场景中虚拟摄像头的运镜信息之间的映射关系获取与所述目标常规动作对应的目标运镜信息。
60.具体地,步骤s3的实现可以分为以下两个步骤:
61.步骤s31,识别所述虚拟对象的动作对应的目标常规动作;
62.步骤s32,基于常规动作与虚拟直播场景中虚拟摄像头的运镜信息之间的映射关系获取与所述目标常规动作对应的目标运镜信息;
63.需要说明的是,需要预先对历史数据分析建立动作数据库,动作数据库中存储有常见的常规动作,以及这些常规动作对应的运镜信息,才能识别虚拟对象的动作对应的目标常规动作以及获取对应的目标运镜信息。
64.在步骤s31中,所述识别所述虚拟对象的动作对应的目标常规动作,包括:将所述虚拟对象的动作与动作数据库中的常规动作进行匹配,以确定与所述动作对应的目标常规动作。
65.具体地,对同步后的虚拟对象的动作数据进行分析,将虚拟对象的动作特征点的时间域动态轨迹序列与各常规动作的动作特征点的时间域动态轨迹序列进行匹配,进而判断虚拟对象是否执行的是预先设定的目标常规动作,以及时哪个目标常规动作。
66.在步骤s32中,基于常规动作与虚拟直播场景中虚拟摄像头的运镜信息之间的映射关系获取与所述目标常规动作对应的目标运镜信息。
67.具体地,由于动作数据库中存储有常规动作以及该常规动作对应的运镜信息,那么当识别到虚拟对象的动作时目标常规动作时,提取该目标常规动作对应的运镜信息即可得到目标运镜信息。
68.运镜信息是虚拟摄像机在虚拟场景中的空间三维坐标及镜头fov参数等,通过这些参数驱动虚拟摄像头的镜头参数变化,来达到移动、旋转或者推拉的拍摄效果。
69.在本公开的一个实施例中,在获取目标运镜信息时,还可以检测虚拟对象的动作数据是否满足该目标常规动作的运镜触发条件,当满足运镜触发条件时,在获取目标运镜信息。
70.运镜触发条件例如是单次触发,还是该动作连续出现n次再触发,或者是其他触发条件。
71.需要说明的时,本公开提供的运镜触发条件以及常规动作仅是示例性说明,不因当限制本公开。
72.在本公开的一个实施例中,所述方法还包括:创建所述动作数据库,包括:对历史视频数据进行动作分析以创建常规动作;配置所述常规动作对应的动作特征点的时间域动态轨迹序列以用于识别目标常规动作;以及配置所述常规动作对应的运镜触发条件和运镜信息以用于获取目标常规动作对应的目标运镜信息;创建存储常规动作的动作特征点的时间域动态轨迹序列、运镜触发条件和运镜信息的所述动作数据库。
73.具体来说,需要提前创建动作数据库。可以通过搜集大量所有主播的动作数据资料或者对主播的动作进行调研,判断出主播较常出现的常规动作,整合为常规动作。
74.为了具体描述该常规动作的内容,可以设计好该常规动作对应的动作特征点的时间域动态轨迹序列,用于检测虚拟对象是否执行常规动作,执行的是哪个常规动作。
75.对于每一个常规动作,会针对其设定独特的运镜交互逻辑,根据拍摄的交互需求设置拍摄该目标动作时的运镜触发条件以及运镜信息,用于检测虚拟对象的动作是否满足运镜触发条件,并在满足条件时获取到运镜信息。
76.运镜触发条件例如是单次触发,还是该动作连续出现n次再触发,或者是其他触发条件,而运镜信息是虚拟摄像机在虚拟场景中的空间三维坐标及镜头fov参数等,通过这些参数驱动虚拟摄像头的镜头参数变化,来达到移动、旋转或者推拉的拍摄效果。
77.另外,还可以在执行过程中不断地收集虚拟对象的动作添加至动作库中,再加入动作相似度分组信息,利用数据库中的总做信息和分组信息进行训练,进而遴选出常见的常规动作,以及这些常规动作的运镜触发条件。当执行的次数越多,数据库的量越来越大,精确度也就越来越高,最后虚拟动作与主播的动作数据趋向于无限接近,达到理想的精确度。同时虚拟对象具备人物动作的学习能力,可以自定义动作及触发的效果。
78.并且,虚拟对象还可以记录使用运镜交互逻辑时的动作数据,当用户使用次数较多时,可以根据历史使用数据根据使用习惯自定义运镜交互逻辑,使运镜方式逐步合适用户。
79.基于上述方法,通过提前预设常规动作的运镜交互逻辑,能够在识别到虚拟动作为常规动作时,执行相应的运镜信息,从而实现自动调整运镜,使得虚拟摄像机的拍摄能够跟随动作的改变而改变,不再是固定机位的单一运镜,提升了视频画面的丰富度。
80.在步骤s4中,将所述真实视频数据中所述主播添加至所述虚拟直播场景,并根据所述目标运镜信息利用所述虚拟摄像头对包含所述主播的虚拟直播场景进行拍摄生成直播视频数据,以将所述直播视频数据显示在所述直播界面中。
81.在本公开的一个实施例中,当获取到运镜信息后,需要利用运镜信息生成视频画面。因此,可以将主播的图像数据中的真实场景替换成预设的虚拟场景,然后利用该虚拟场景中的虚拟摄像机利用运镜信息进行虚拟拍摄生成视频画面。
82.首先可以对主播的图像数据进行抠图处理,提取到主播对应的前景图像。主播的图像数据中包括两个部分:一个是前景图像,例如主播的图像,可以是主播用户;另一个是真实场景图像,例如主播身后真实存在的纯色幕布部分。
83.当然,本公开并不限于此,前景图像和真实场景图像都可以根据需求来设定,例如前景图像可以是直播时涉及的动物如猫、狗之类的图像,纯色幕布部分可以是蓝色、绿色等颜色,需要选取一个总体上与真实场景图像具有区别的颜色,便于通过取色器将前景图像和真实场景图像像相分离,实现将前景图像抠像。
84.然后将前景图像叠加至虚拟场景图像中进行合成。所以需要在虚幻引擎中提前预设虚拟场景,虚拟引擎可例如ue4(unreal engine 4),虚拟场景例如高楼大厦、海浪沙滩、咖啡馆、图书馆等场景,创建的虚拟场景可以是一个,也可以是多个以供主播用户选择。之后将不带真实场景图像的前景图像与虚拟场景图像进行合成,主播就被放置在了预设虚拟场景中,使得生成视频时不受限于实际场地的限制,节约成本的同时还提供了丰富的视频背景效果。
85.最后,虚拟场景中配置有虚拟摄像机进行视频画面的生成。在获取到运镜信息后,
可以利用运镜信息中绑定的摄像机坐标信息、fov参数等控制虚拟摄像机的移动,进而达到相应动作的运镜效果。
86.需要说明的是,预设的虚拟人物也可以放置在虚拟场景中,在生成视频的过程中需要将其隐藏,通过渲染设置为不可见状态。
87.基于上述方法,以虚拟场景中的虚拟摄像机为核心,执行目标动作对应的运镜信息,一方面能够根据变化的动作自动调整运镜信息,使得摄像机的运镜配合动作变化而变化,从而丰富了视频画面的效果;另一方面,通过预设虚拟场景,并利用虚拟摄像机完成虚拟现实拍摄,相比于现有的固定机位拍摄或者摄像头难以进行可旋转角度之外的拍摄,能够使生成视频的过程不受限于场地的大小,节约了成本。
88.接下来以舞蹈直播为场景的实施例,详细介绍本公开提供的视频生成方法。
89.随着互联网的高速发展,舞蹈类直播越来越受到大众的喜爱。对于大多数个人主播而言,通常都是在一个不大于10平米的空间,一台画面采集设备,并由单人主播操作开播,由于直播条件有限,主播通常只能通过定机位直播展示自己的舞蹈,导致优美的舞蹈动作在定机位镜头中显得平平无奇,甚至偶尔失误的舞蹈动作会显得尤为明显。
90.首先在虚拟引擎中创建一虚拟场景,在虚拟场景中架设虚拟摄像机,以及在虚拟场景中创建一虚拟人物作为虚拟对象。其中,虚拟人物的人体骨骼关键点与真实人物的人体骨骼关键点一致,将真实人物与虚拟人物的人体骨骼关键点进行连接联动,进而通过真实人物驱动虚拟人物执行对应的动作。同时,提前预设好运镜交互逻辑,配置多个目标动作,以及目标动作的运镜触发条件和运镜信息。
91.当现实摄像机采集真实人物的舞蹈动作图像后,虚拟人物也会执行相同的动作,当虚拟人物动作为目标动作且满足该目标动作的触发条件时,获取该目标动作对应的运镜信息,控制虚拟摄像机完成直播视频的生成,从而达到虚拟摄像机的运镜与舞蹈动作同步。
92.表1示意性示出本公开示例性实施例中一种运镜交互逻辑。以主播直播舞蹈视频场景为例,预设了多个目标动作以及目标动作对应的运镜触发条件以及运镜信息如表1所示。
93.表1运镜交互逻辑
94.[0095][0096]
参考表1所示,以第一条运镜交互逻辑为例,当识别到虚拟对象的手部与人脸交合,获取交合的时间,当交合时间超过2秒时,则切换跟踪目标,当前为人脸跟踪,则切换为手部跟踪,当前为手部跟踪,则切换为人脸跟踪。
[0097]
再例如第二条运镜交互逻辑,当识别到虚拟对象第一次执行甩头动作时,虚拟摄像机的镜头往脸部前推至人物近景,当虚拟对象再次执行甩头动作时,则结束镜头推进。
[0098]
图4a-4b示意性示出本公开示例性实施例中一种直播视频画面的示意图。其中,图4a为改变运镜之前的视频画面截图,主播参考图4a中的401所示;图4b为改变运镜之后的视频画面截图,主播参考图4b中的402所示。参考第三条运镜交互逻辑,当识别到虚拟对象手点嘴唇时,执行镜头往脸部前推至人物近景的运镜。因此,视频画面由图4a过渡至图4b,进行了镜头的推进。
[0099]
图5a-5b示意性示出本公开示例性实施例中另一种直播视频画面的示意图。其中,图5a为改变运镜之前的视频画面截图,主播参考图5a中的501所示;图5b为改变运镜之后的视频画面截图,主播参考图5b中的502所示。参考第十一条运镜交互逻辑,基于动作特征识别结果得到脸部面积比例,判断出虚拟对象处于背身状态时,镜头往后拉至大景。因此,视频画面由图5a过渡至图5b,进行了镜头的拉远。
[0100]
基于上述方法,极大地丰富了主播舞蹈表演地直播效果,让主播每一场舞蹈表演
都拥有一个“智能摄影师”,使摄像机随表演者动作而动,达到演唱会跟拍视觉;并且在狭小直播间局限的空间中,通过虚拟摄像机也能打造复杂的拍摄镜头,不再需要大型空间、专业摄影师、专业硬件设备,通过低本的简易制作即可达到跟拍视效果。
[0101]
图6示意性示出本公开示例性实施例中一种直播控制装置的组成示意图,如图6所示,该直播控制装置600可以包括采集模块601、同步模块602、获取模块603以及拍摄模块604。其中:
[0102]
采集模块601,用于利用所述终端的图像获取设备采集主播在真实直播场景中的真实视频数据;
[0103]
同步模块602,用于通过真实视频数据中所述主播同步驱动虚拟直播场景中的虚拟对象得到所述虚拟对象的动作;
[0104]
获取模块603,用于识别所述虚拟对象的动作对应的目标常规动作,并基于常规动作与虚拟直播场景中虚拟摄像头的运镜信息之间的映射关系获取与所述目标常规动作对应的目标运镜信息;
[0105]
拍摄模块604,用于将所述真实视频数据中所述主播添加至所述虚拟直播场景,并根据所述目标运镜信息利用所述虚拟摄像头对包含所述主播的虚拟直播场景进行拍摄生成直播视频数据,以将所述直播视频数据显示在所述直播界面中。
[0106]
根据本公开的示例性实施例,所述同步模块602用于利用预设的动作特征点对所述真实视频数据中所述主播进行动作识别得到所述主播各动作特征点的时间域动态轨迹序列;基于所述主播与所述虚拟对象动作特征点之间的对应关系,将所述主播各动作特征点的时间域动态轨迹序列分别配置为所述虚拟对象各动作特征点的时间域动态轨迹序列得到所述虚拟对象的动作。
[0107]
根据本公开的示例性实施例,所述获取模块603用于将所述虚拟对象的动作与动作数据库中的常规动作进行匹配,以确定与所述动作对应的目标常规动作。
[0108]
根据本公开的示例性实施例,所述获取模块603还用于从动作数据库提取所述目标常规动作的运镜触发条件;
[0109]
在检测到所述虚拟对象的动作满足所述运镜触发条件时提取所述目标运镜信息;所述动作数据库包括常规动作、运镜信息及常规动作与运镜信息之间的映射关系。
[0110]
根据本公开的示例性实施例,所述直播控制装置600还包括动作库模块(图中未示出),用于对历史视频数据进行动作分析以创建常规动作;配置所述常规动作对应的动作特征点的时间域动态轨迹序列以用于识别目标常规动作;以及配置所述常规动作对应的运镜触发条件和运镜信息以用于获取目标常规动作对应的目标运镜信息;创建存储常规动作的动作特征点的时间域动态轨迹序列、运镜触发条件和运镜信息的所述动作数据库。
[0111]
根据本公开的示例性实施例,所述拍摄模块604用于对所述真实视频数据中的所述主播和所述真实直播场景进行抠图处理,以提取所述主播的视频数据;将所述主播的视频数据添加至所述虚拟直播场景中。
[0112]
根据本公开的示例性实施例,所述拍摄模块604还用于在根据所述目标运镜信息利用所述虚拟摄像头对包含所述主播的虚拟直播场景进行拍摄生成直播视频数据之前,将所述虚拟对象渲染为不可见状态。
[0113]
上述的直播控制装置600中各模块的具体细节已经在对应的直播控制方法中进行
了详细的描述,因此此处不再赘述。
[0114]
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0115]
在本公开的示例性实施例中,还提供了一种能够实现上述方法的存储介质。图7示意性示出本公开示例性实施例中一种计算机可读存储介质的示意图。如图7所示,描述了根据本公开的实施方式的用于实现上述方法的程序产品700,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如手机上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0116]
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。图8示意性示出本公开示例性实施例中一种电子设备的计算机系统的结构示意图。
[0117]
需要说明的是,图8示出的电子设备的计算机系统800仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0118]
如图8所示,计算机系统800包括中央处理单元(central processing unit,cpu)801,其可以根据存储在只读存储器(read-only memory,rom)802中的程序或者从存储部分808加载到随机访问存储器(random access memory,ram)803中的程序而执行各种适当的动作和处理。在ram 803中,还存储有系统操作所需的各种程序和数据。cpu 801、rom 802以及ram 803通过总线804彼此相连。输入/输出(input/output,i/o)接口805也连接至总线804。
[0119]
以下部件连接至i/o接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至i/o接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
[0120]
特别地,根据本公开的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(cpu)801执行时,执行本公开的系统中限定的各种功能。
[0121]
需要说明的是,本公开实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程
只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0122]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0123]
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
[0124]
作为另一方面,本公开还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
[0125]
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0126]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
[0127]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或
者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。
[0128]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1