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

动作调整方法、装置、电子设备及可读存储介质与流程

2022-03-26 10:17:19 来源:中国专利 TAG:


1.本公开涉及计算机技术领域,具体而言,涉及一种动作调整方法、装置、电子设备和存储介质。


背景技术:

2.近年来,虚拟角色直播在视频直播业务中占据着越来越大的比例,虚拟角色直播是以特定的虚拟角色替代主播的真实形象进行视频直播,具体的,通过外置硬件设备获取关于演员(中之人)的动作表情数据的控制信号,并驱动虚拟角色动作。
3.然而,在多个虚拟角色需要做出同样的动作时,通常由于各种原因(比如硬件设备异常或者控制信号之间存在差异),导致多个虚拟角色之间的动作存在差异,进而影响用户的观看体验,尤其在团体表演的过程中,动作差异会严重的影响视觉效果。


技术实现要素:

4.本公开实施例至少提供一种动作调整方法、装置、电子设备及存储介质。
5.本公开实施例提供了一种动作调整方法,包括:
6.获取每个虚拟角色的原始控制信息,其中,所述每个虚拟角色的原始控制信息指示多个虚拟角色做出相同的目标动作;
7.在确定所述多个虚拟角色的目标动作之间的最大差异大于第一预设阈值的情况下,对至少一个虚拟角色的原始控制信息进行调整,得到调整控制信息;
8.基于所述调整控制信息驱动对应的虚拟角色做出调整动作,和/或,基于所述原始控制信息驱动对应的虚拟角色做出所述目标动作;其中,任意两个调整动作之间、任意两个目标动作之间、或者任意一个目标动作与任意一个调整动作之间的差异小于第二预设阈值;其中,所述第二预设阈值小于所述第一预设阈值。
9.在一种可能的实施方式中,所述对至少一个虚拟角色的原始控制信息进行调整,得到调整控制信息,包括:
10.根据所述每个虚拟角色在所述3d场景中的当前位置以及所述原始控制信息,确定所述每个虚拟角色在所述3d场景中的目标位置;
11.基于所述每个虚拟角色在所述3d场景中的目标位置,从所述多个虚拟角色中确定需要调整的目标虚拟角色;
12.对所述目标虚拟角色的原始控制信息进行调整,得到所述调整控制信息。
13.在一种可能的实施方式中,所述对所述目标虚拟角色的原始控制信息进行调整,得到所述调整控制信息,包括:
14.对所述目标角色的指示脚部移动的控制信息进行调整,得到所述目标角色的脚部的调整控制信息。
15.在一种可能的实施方式中,所述目标动作包括手势动作和/或姿态动作,所述对至少一个虚拟角色的控制信息进行调整,得到调整控制信息,包括:
16.基于所述目标动作,从预设的动作库中确定与所述目标动作匹配的调整动作;
17.基于所述调整动作的控制信息,对所述每个虚拟角色的控制信息进行调整,得到所述调整控制信息。
18.在一种可能的实施方式中,所述目标动作包括手势动作和/或姿态动作,所述对至少一个虚拟角色的控制信息进行调整,得到调整控制信息,包括:
19.从所述多个虚拟角色中确定基准手势动作和/或基准姿态;
20.基于所述基准手势动作和/或所述基准姿态的控制信息,对所述原始控制信息进行调整,得到所述调整控制信息。
21.在一种可能的实施方式中,所述从所述多个虚拟角色中确定基准手势动作和/或基准姿态,包括:
22.基于所述每个虚拟角色的目标动作的标准度,从所述多个虚拟角色中确定基准手势动作和/或基准姿态。
23.在一种可能的实施方式中,采用人工智能方法确定所述每个虚拟角色的目标动作的标准度。
24.本公开实施例提供了一种动作调整装置,包括:
25.获取模块,用于获取每个虚拟角色的原始控制信息,其中,所述每个虚拟角色的原始控制信息指示多个虚拟角色做出相同的目标动作;
26.调整模块,用于在确定所述多个虚拟角色的目标动作之间的最大差异大于第一预设阈值的情况下,对至少一个虚拟角色的原始控制信息进行调整,得到调整控制信息;
27.驱动模块,用于基于所述调整控制信息驱动对应的虚拟角色做出调整动作,和/或,基于所述原始控制信息驱动对应的虚拟角色做出所述目标动作;其中,任意两个调整动作之间、任意两个目标动作之间、或者任意一个目标动作与任意一个调整动作之间的差异小于第二预设阈值;其中,所述第二预设阈值小于所述第一预设阈值。
28.在一种可能的实施方式中,所述调整模块具体用于:
29.根据所述每个虚拟角色在所述3d场景中的当前位置以及所述原始控制信息,确定所述每个虚拟角色在所述3d场景中的目标位置;
30.基于所述每个虚拟角色在所述3d场景中的目标位置,从所述多个虚拟角色中确定需要调整的目标虚拟角色;
31.对所述目标虚拟角色的原始控制信息进行调整,得到所述调整控制信息。
32.在一种可能的实施方式中,所述调整模块具体用于:
33.对所述目标角色的指示脚部移动的控制信息进行调整,得到所述目标角色的脚部的调整控制信息。
34.在一种可能的实施方式中,所述目标动作包括手势动作和/或姿态动作,所述调整模块具体用于:
35.基于所述目标动作,从预设的动作库中确定与所述目标动作匹配的调整动作;
36.基于所述调整动作的控制信息,对所述每个虚拟角色的控制信息进行调整,得到所述调整控制信息。
37.在一种可能的实施方式中,所述目标动作包括手势动作和/或姿态动作,所述调整模块具体用于:
38.从所述多个虚拟角色中确定基准手势动作和/或基准姿态;
39.基于所述基准手势动作和/或所述基准姿态的控制信息,对所述原始控制信息进行调整,得到所述调整控制信息。
40.在一种可能的实施方式中,所述调整模块具体用于:
41.基于所述每个虚拟角色的目标动作的标准度,从所述多个虚拟角色中确定基准手势动作和/或基准姿态。
42.在一种可能的实施方式中,所述调整模块具体用于:
43.采用人工智能方法确定所述每个虚拟角色的目标动作的标准度。
44.本公开实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上所述的动作调整方法。
45.本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上所述的动作调整方法。
46.上述各实施例中所提供的动作调整方法、装置、电子设备及存储介质,在确定多个虚拟角色需要做出相同动作的情况下,若多个虚拟角色的目标动作之间的最大差异大于第一预设阈值,也即,在多个虚拟角色中存在至少一个虚拟角色与其他虚拟角色的动作差异较大的情况下,对至少一个虚拟角色的原始控制信息进行调整,进而使得多个虚拟角色之间的动作差异小于第二预设阈值,也即,使得多个虚拟角色之间的动作差异较小,从而实现多个虚拟角色的动作统一的效果,提升了用户的观赏体验。
47.为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
48.为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
49.图1示出了本公开实施例所提供的第一种动作调整方法的流程图;
50.图2示出了本公开实施例所提供的一种虚拟角色和演员之间的关系示意图;
51.图3示出了本公开实施例所提供的一种各个虚拟角色在3d场景中的当前位置的示意图;
52.图4示出了本公开实施例所提供的一种各个虚拟角色在3d场景中的目标位置的示意图;
53.图5示出了本公开实施例所提供的一种各个虚拟角色在3d场景中的预期位置的示意图;
54.图6示出了本公开实施例所提供的一种对至少一个虚拟角色进行调整的方法流程图;
55.图7示出了本公开实施例所提供的一种目标手势与动作库中的调整手势的示意
图;
56.图8示出了本公开实施例所提供的另一种对至少一个虚拟角色进行调整的方法流程图;
57.图9示出了本公开实施例所提供的一种动作调整装置的结构示意图;
58.图10示出了本公开实施例所提供的一种电子设备的示意图。
具体实施方式
59.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
60.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
61.本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。
62.虚拟角色直播是以特定的虚拟角色替代主播的真实形象进行视频直播,具体的,可以通过外置硬件设备获取关于演员(中之人)的动作表情数据的控制信号,并驱动虚拟角色动作。
63.经研究发现,在多个虚拟角色需要做出同样的动作时,通常由于各种原因(比如硬件设备异常或者控制信息之间存在差异),会导致多个虚拟角色之间的动作存在差异,进而影响用户的观看体验,尤其在团体表演的过程中,动作差异会严重的影响视觉效果,因此,如何提升多个虚拟角色在特定情况下(比如跳团舞)的一致性,是亟待解决的问题。
64.基于上述研究,本公开提供了一种动作调整方法,包括:获取每个虚拟角色的原始控制信息,其中,所述每个虚拟角色的原始控制信息指示多个虚拟角色做出相同的目标动作;在确定所述多个虚拟角色的目标动作之间的最大差异大于第一预设阈值的情况下,对至少一个虚拟角色的原始控制信息进行调整,得到调整控制信息;基于所述调整控制信息驱动对应的虚拟角色做出调整动作,和/或,基于所述原始控制信息驱动对应的虚拟角色做出所述目标动作;其中,任意两个调整动作之间、任意两个目标动作之间、或者任意一个目标动作与任意一个调整动作之间的差异小于第二预设阈值;其中,所述第二预设阈值小于所述第一预设阈值。
65.本公开实施例中,在确定多个虚拟角色需要做出相同动作的情况下,若多个虚拟角色的目标动作之间的最大差异大于第一预设阈值,也即,在多个虚拟角色中存在至少一个虚拟角色与其他虚拟角色的动作差异较大的情况下,对至少一个虚拟角色的原始控制信息进行调整,进而使得多个虚拟角色之间的动作差异小于第二预设阈值,也即,使得多个虚
拟角色之间的动作差异较小,从而实现多个虚拟角色的动作统一的效果,提升了用户的观赏体验。
66.在一些实施方式中,本公开实施例提供的动作调整方法可以应用于电子设备中,所述电子设备用于运行3d渲染环境,所述3d渲染环境中包含3d场景信息,所述3d场景信息用于渲染后生成3d场景,所述3d场景信息包含至少一个虚拟角色信息及至少一个虚拟镜头,所述虚拟角色信息用于渲染后生成虚拟角色,所述虚拟角色通过动作捕捉设备捕捉的控制信息驱动。
67.其中,3d渲染环境可以是运行于电子设备中的3d引擎,能够基于待渲染数据生成基于一个或者多个视角的影像信息。虚拟角色信息是指存在于3d引擎中的角色模型,能够在渲染后生成相应的虚拟角色。虚拟角色可以包括虚拟人物角色、虚拟动物角色、虚拟卡通角色等,在此不做限定。
68.3d场景信息可以运行于计算机cpu(central processing uni,中央处理器)、gpu(graphics processing unit,图形处理器)以及存储器中,其包含网格化的模型信息以及和贴图纹理信息。相应地,作为示例,虚拟角色数据包含但不限于网格化的模型数据、体素数据及贴图纹理数据或者其组合。其中,网格包括但不限于三角形网格、四边形网格、其他多边形网格或者其组合。
69.其中,动作调整方法可以应用于电子设备中,是指动作调整方法的执行主体一般为具有一定计算能力的电子设备,该电子设备可以是服务器,其中该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云存储、大数据和人工智能平台等基础云计算服务的云服务器。其他实施方式中,该电子设备还可以是终端设备(比如手机、笔记本电脑、车载设备等)或其它处理设备。此外,该动作调整方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
70.需要说明的是,在一些实施方式中,还可以基于所述3d场景信息生成视频数据。其中,视频数据包括多张视频帧。可以理解,基于所述3d场景信息所生成视频数据,可以在本地展示,例如,若电子设备自带显示屏或者外接有显示装置,可以将生成的视频数据在本地进行播放,也可以形成录播视频,还可以形成直播视频流,用于直播。
71.下面对本公开实施例所提供的动作调整方法做详细的介绍。
72.参见图1所示,为本公开实施例提供的第一种动作调整方法的流程图,该动作调整方法包括以下s101~s103:
73.s101,获取每个虚拟角色的原始控制信息,其中,所述每个虚拟角色的原始控制信息指示多个虚拟角色做出相同的目标动作。
74.示例性地,参见图2所示,在3d场景中可以存在多个虚拟角色,本实施方式中以虚拟角色a和虚拟角色b为例进行说明,每个虚拟角色对应一个演员,如图2所示,虚拟角色a对应演员10,虚拟角色b对应演员20,因此,通过演员10佩戴的动作捕捉设备即可捕捉演员10的动作数据,并可以根据获取的动作数据驱动虚拟角色a做出相应动作,同理,通过演员20所佩戴的动作捕捉设备即可捕捉到演员20的动作数据,进而驱动虚拟角色b做出相应动作。其他实施例中,虚拟角色的数量可以更多,比如可以是3个、5个或者是10个,在此不做限定。
75.其中,动作捕捉设备包括穿在演员身体上衣服及戴在演员手上的手套等。其中,衣
服用于捕捉演员的肢体动作,手套用于捕捉演员的手部动作。具体的,该动作捕捉设备包含多个待识别特征点,该多个待识别特征点可以与演员骨骼的关键点对应。例如,可以在动作捕捉设备与演员骨骼的各个关节(如膝关节、肘关节、指关节)对应处设置特征点,该特征点可以通过特定材料(如纳米材料)制成,进而可以通过摄像头来获取该多个特征点的位置信息,得到控制信息。
76.相应地,为了实现对虚拟角色的驱动,虚拟角色包含了与该多个待识别特征点匹配的受控特征点,例如,演员的肘关节的待识别特征点与虚拟角色的肘关节受控点相匹配,也即,演员的骨骼关键点与虚拟角色的骨骼关键点之间存在一一对应的关系,如此,在获取到演员的肘关节的待识别特征点的控制信息后,即可驱动虚拟角色的肘关节相应的改变,进而由多个受控点的变化形成虚拟角色的动作变化。
77.其他实施例中,动作捕捉设备还可以是摄像头,也即,通过获取演员的肢体动作和/或面部表情动作的相关视频,即可确定虚拟角色的控制信息。
78.示例性地,原始控制信息包括通过动作捕捉设备所获取的演员的肢体动作数据和/或面部表情数据。其中,肢体包括但不限于演员身体的各个部位,比如,头部、手臂、手掌、腿部或者脚部等。
79.可以理解,在获取到虚拟角色的原始控制信息之后,即可根据获取到的原始控制信息确定该原始控制信息所指示的目标动作,例如,可以根据虚拟角色a的原始控制信息确定虚拟角色a的动作为鼓掌动作,而根据虚拟角色b的原始控制信息,可以确定虚拟角色b的动作为走路的动作,此时,则表明虚拟角色a与虚拟角色b所做出的目标动作不同。
80.然而,在一些特定场景(比如集体舞蹈场景)下,可能需要多个虚拟角色做出相同的目标动作。具体的,该多个虚拟角色可以是3d场景中所存在的所有虚拟角色,也可以是3d场景中所存在的所有虚拟角色中的部分虚拟角色,例如,若3d场景中存在5个虚拟角色,该多个虚拟角色可以是全部的5个虚拟角色,还可以是该5个虚拟角色中的3个或者两个虚拟角色。
81.其中,相同的目标动作是指多个虚拟角色所做出的目标动作属于同一类即可,而并非严格意义上的百分之百相同。比如,请再次参阅图2,若根据每个虚拟角色的原始控制信息,确定虚拟角色a和虚拟角色b需要同时做出图2所示的姿势(包括手部动作和腿部动作),即可确定多个虚拟角色需要做出相同的目标动作。
82.s102,在确定所述多个虚拟角色的目标动作之间的最大差异大于第一预设阈值的情况下,对至少一个虚拟角色的原始控制信息进行调整,得到调整控制信息。
83.在确定多个虚拟角色需要做出相同的目标动作的情况下,为了提升多个虚拟角色的相同动作的统一效果,需要对多个虚拟角色的目标动作的差异性进行判断,若多个虚拟角色的目标动作之间的最大差异小于或者等于第一预设阈值,则说明多个虚拟角色的目标动作比较整齐统一,此时,则不需要对原始控制信息进行调整,直接基于该原始控制信息驱动对应的虚拟角色做出相应的动作即可;而若多个虚拟角色的目标动作之间的最大差异大于第一预设阈值,则说明多个虚拟角色的目标动作之间较为不齐,将会影响多个虚拟角色演出的整体效果,此时,则需要对至少一个虚拟角色的原始控制信息进行调整,得到调整控制信息。
84.其中,对至少一个虚拟角色的原始控制信息进行调整是指,可以对该多个虚拟角
色中的部分虚拟角色,或者该多个虚拟角色中的全部虚拟角色都进行调整,具体调整的数量可以根据实际情况而定,只要能使得调整后的多个虚拟角色的目标动作整齐即可。
85.另外,目标动作之间的差异性不仅包括动作之间不同的差异性,还包括相同动作之间的比例差异。比如,由于各个虚拟角色的身高不同,即使通过原始控制信息确定不同的虚拟角色做出相同的目标动作,但是虚拟角色所做出的实际动作之间却存在比例差异,尤其是在虚拟角色走位的场景下尤为明显。
86.比如,若原始控制信息指示虚拟角色向前走一步,然而由于虚拟角色a的身高较矮,导致虚拟角色a实际所走的步长小于虚拟角色b所走的步长,进而导致虚拟角色a向前行走一步后的位置与虚拟角色b向前行走一步后的位置失调。
87.s103,基于所述调整控制信息驱动对应的虚拟角色做出调整动作,和/或,基于所述原始控制信息驱动对应的虚拟角色做出所述目标动作;其中,任意两个调整动作之间、任意两个目标动作之间、或者任意一个目标动作与任意一个调整动作之间的差异小于第二预设阈值;其中,所述第二预设阈值小于所述第一预设阈值。
88.可以理解,由于存在只调整部分虚拟角色的原始控制信息的情况,因此,在得到调整控制信息之后,即可基于所述调整控制信息驱动对应的虚拟角色做出调整动作,和/或,基于所述原始控制信息驱动对应的虚拟角色做出所述目标动作。
89.本实施方式中,在对虚拟角色的原始控制信息之后,即可使得任意两个调整动作之间、任意两个目标动作之间、或者任意一个目标动作与任意一个调整动作之间的差异小于第二预设阈值,且所述第二预设阈值小于所述第一预设阈值,如此,使得多个虚拟角色之间的动作差异较小,从而实现多个虚拟角色的动作统一的效果,提升了用户的观赏体验。
90.在一些实施方式中,在对至少一个虚拟角色的原始控制信息进行调整时,可以包括以下s1021~s1023:
91.s1021,根据所述每个虚拟角色在所述3d场景中的当前位置以及所述原始控制信息,确定所述每个虚拟角色在所述3d场景中的目标位置。
92.本实施方式中,所述原始控制信息包括虚拟角色的脚部的原始控制信息。示例性地,参见图3所示,为各虚拟角色在3d场景中的当前位置的示意图,从图3中可以看出,多个虚拟角色在m区域的当前位置形成一条直线,较为整齐,但是,参见图4所示,根据所述每个虚拟角色在所述3d场景中的当前位置以及所述原始控制信息,确定出各个虚拟角色在所述3d场景中的目标位置如图4所示,也即,若基于原始控制信息驱动对应的虚拟角色做出相应的动作后,每个虚拟角色的位置发生了改变,变成了n区域中的目标位置,导致多个虚拟角色的队形发生了变化,变得不整齐。因此,需要对虚拟角色a、虚拟角色b、虚拟角色c、虚拟角色d及虚拟角色e中的部分或者全部的原始控制信息进行调整,使得在目标位置时的队形仍然整齐统一。
93.需要说明的是,在虚拟角色从当前位置移动至目标位置的过程中,虚拟角色的其他部位(比如手部)还可能存在其他动作,此处不做限定。
94.s1022,基于所述每个虚拟角色在所述3d场景中的目标位置,从所述多个虚拟角色中确定需要调整的目标虚拟角色。
95.示例性地,可以基于每个虚拟角色在所述3d场景中的目标位置在预设范围(n区域)内的分布情况,来确定需要调整的目标虚拟角色,比如,参见图4所示,根据目标位置的
分布情况,发现多个虚拟角色中的虚拟角色a、虚拟角色b及虚拟角色c较为集中,而虚拟角色d及虚拟角色e则偏离较远,此时,则可以根据目标位置的分布情况确定需要调整的目标虚拟角色。
96.在一些实施方式中,可以根据多个虚拟角色在所述3d场景中的预设范围内分布的预期效果,来确定对原始控制信息的调整幅度。比如,参见图5所示,多个虚拟角色的预期分布效果如图5所示,此时,则可以依据预期的分布效果,确定虚拟角色b、虚拟角色c及虚拟角色d作为目标虚拟角色,也即虚拟角色a和虚拟角色e无需调整。
97.s1023,对所述目标虚拟角色的原始控制信息进行调整,得到所述调整控制信息。
98.示例性地,可以根据调整幅度,对目标虚拟角色的原始控制信息进行调整,进而使得多个虚拟角色的目标位置的分布达到图5所示的预期效果(比如分布均匀且整齐的效果)。
99.在一些实施方式中,若根据预期的分布效果确定了目标虚拟角色的调整后的目标位置,此时,则可以根据目标虚拟角色在3d场景中的当前位置与调整后的目标位置的相对距离,确定目标虚拟角色的调整幅度。其中,调整幅度可以包括目标角色移动步长和/或移动步频的调整幅度。
100.比如,在当前位置与调整后的目标位置之间的距离大于预设距离(较远)的情况下,可以调整原始控制信息中指示虚拟角色移动的步长增大和/或者步频增高,如此,使得虚拟角色在移动的过程中达到调整后的目标位置,进而达到预期的效果,提升了用户的观看体验。另外,通过调整步频或者步长来调整目标角色的移动过程,可以使得目标角色调整后的动作较为自然,不容易引发突变(跳跃)的情况,进而进一步提升了用户的视觉体验。
101.因此,在一些实施方式中,在对所述目标虚拟角色的原始控制信息进行调整,得到所述调整控制信息时,可以包括:对所述目标角色的指示脚部移动的控制信息进行调整,得到所述目标角色的脚部的调整控制信息。
102.在一些实施方式中,所述目标动作包括手势动作和/或姿态动作,参见图6所示,在对至少一个虚拟角色的控制信息进行调整,得到调整控制信息时,可以包括以下s1022a~s1022b:
103.s1021,基于所述目标动作,从预设的动作库中确定与所述目标动作匹配的调整动作。
104.示例性地,在原始控制信息指示的目标动作为特定的手势或者姿势的情况下,可以从预设的动作库中确定与所述目标动作匹配的调整动作。可以理解,为了提升调整的效率,可以预先建立动作库,该动作库中的各类动作可以是基于大量的场景得出的使用频率较高的动作,或者是动作难度系数较大的动作,此处不做限定。
105.参见图7所示,在原始控制信息指示的目标动作为比心的手势动作j时,可以从动作库中确定与该目标动作匹配的调整动作k。
106.s1022,基于所述调整动作的控制信息,对所述每个虚拟角色的控制信息进行调整,得到所述调整控制信息。
107.在确定调整动作k之后,即可基于所述调整动作k的控制信息对所述每个虚拟角色的控制信息进行调整,得到所述调整控制信息,从图7中可以看出,调整动作k的美观度优于目标动作的手势动作j,如此,可以提升虚拟角色的手势的美观度以及整齐性。
108.需要说明的是,本实施方式中的控制信息包括手指的弯曲弧度信息、手指间的相对位置信息等。
109.在另一些实施方式中,参见图8所示,在对至少一个虚拟角色的控制信息进行调整,得到调整控制信息时,还可以包括以下s1022a~s1022b:
110.s102a,从所述多个虚拟角色中确定基准手势动作和/或基准姿态;
111.示例性地,与从动作库中确定调整动作的方案不同的是,还可以从多个虚拟角色中确定基准手势动作和/或基准姿态,也即,可以从多个虚拟角色中确定一个目标虚拟角色作为基础,将其他虚拟角色按照该目标虚拟角色的控制信息进行调整。
112.在一些实施方式中,可以基于所述每个虚拟角色的目标动作的标准度,从所述多个虚拟角色中确定基准手势动作和/或基准姿态。其他实施方式中,还可以基于其他指标进行确定,比如,基于目标动作的创新度。
113.其中,创新度是指该目标动作的出现频次和/或难度。比如,若目标动作均为下腰的动作,但是每个虚拟角色的创新度不同,可能其中一个虚拟角色做出的下腰动作就比较新颖(比如下腰弧线优美,且脸部靠近地面),不是常见的,此时,则可以该虚拟角色的下腰动作作为基准姿态,如此,可以使得用户欣赏到别出心裁的动作,提升了用户的观看体验。
114.在一些实施方式中,该标准度可以采用人工智能方法得出,如此,可以使得所确定的基准手势动作和/或基准姿态更加符合用户的审美需求,进一步提升用户的观赏体验。其他实施方式中,还可以为每个动作预先设定其对应的标准度。
115.其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
116.s102b,基于所述基准手势动作和/或所述基准姿态的控制信息,对所述原始控制信息进行调整,得到所述调整控制信息。
117.可以理解,在确定基准手势动作和/或基准姿态之后,即可基于所述基准手势动作和/或所述基准姿态的控制信息,对所述原始控制信息进行调整,得到所述调整控制信息,如此,使得每个虚拟角色的调整控制信息均相同。
118.需要说明的是,确定基准手势动作和/或基准姿态对应的虚拟角色的控制信息是不需要调整的。
119.本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
120.基于同一技术构思,本公开实施例中还提供了与动作调整方法对应的动作调整装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述动作调整方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
121.参照图9所示,为本公开实施例提供的一种动作调整装置500的示意图,所述装置包括:
122.获取模块501,用于获取每个虚拟角色的原始控制信息,其中,所述每个虚拟角色
的原始控制信息指示多个虚拟角色做出相同的目标动作;
123.调整模块502,用于在确定所述多个虚拟角色的目标动作之间的最大差异大于第一预设阈值的情况下,对至少一个虚拟角色的原始控制信息进行调整,得到调整控制信息;
124.驱动模块503,用于基于所述调整控制信息驱动对应的虚拟角色做出调整动作,和/或,基于所述原始控制信息驱动对应的虚拟角色做出所述目标动作;其中,任意两个调整动作之间、任意两个目标动作之间、或者任意一个目标动作与任意一个调整动作之间的差异小于第二预设阈值;其中,所述第二预设阈值小于所述第一预设阈值。
125.在一种可能的实施方式中,所述调整模块502具体用于:
126.根据所述每个虚拟角色在所述3d场景中的当前位置以及所述原始控制信息,确定所述每个虚拟角色在所述3d场景中的目标位置;
127.基于所述每个虚拟角色在所述3d场景中的目标位置,从所述多个虚拟角色中确定需要调整的目标虚拟角色;
128.对所述目标虚拟角色的原始控制信息进行调整,得到所述调整控制信息。
129.在一种可能的实施方式中,所述调整模块502具体用于:
130.对所述目标角色的指示脚部移动的控制信息进行调整,得到所述目标角色的脚部的调整控制信息。
131.在一种可能的实施方式中,所述目标动作包括手势动作和/或姿态动作,所述调整模块502具体用于:
132.基于所述目标动作,从预设的动作库中确定与所述目标动作匹配的调整动作;
133.基于所述调整动作的控制信息,对所述每个虚拟角色的控制信息进行调整,得到所述调整控制信息。
134.在一种可能的实施方式中,所述目标动作包括手势动作和/或姿态动作,所述调整模块502具体用于:
135.从所述多个虚拟角色中确定基准手势动作和/或基准姿态;
136.基于所述基准手势动作和/或所述基准姿态的控制信息,对所述原始控制信息进行调整,得到所述调整控制信息。
137.在一种可能的实施方式中,所述调整模块502具体用于:
138.基于所述每个虚拟角色的目标动作的标准度,从所述多个虚拟角色中确定基准手势动作和/或基准姿态。
139.在一种可能的实施方式中,所述调整模块502具体用于:
140.采用人工智能方法确定所述每个虚拟角色的目标动作的标准度。
141.关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
142.基于同一技术构思,本公开实施例还提供了一种电子设备。参照图10所示,为本公开实施例提供的电子设备700的结构示意图,包括处理器701、存储器702、和总线703。其中,存储器702用于存储执行指令,包括内存7021和外部存储器7022;这里的内存7021也称内存储器,用于暂时存放处理器701中的运算数据,以及与硬盘等外部存储器7022交换的数据,处理器701通过内存7021与外部存储器7022进行数据交换。
143.本技术实施例中,存储器702具体用于存储执行本技术方案的应用程序代码,并由
处理器701来控制执行。也即,当电子设备700运行时,处理器701与存储器702之间通过总线703通信,使得处理器701执行存储器702中存储的应用程序代码,进而执行前述任一实施例中所述的方法。
144.其中,存储器702可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。
145.处理器701可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
146.可以理解的是,本技术实施例示意的结构并不构成对电子设备700的具体限定。在本技术另一些实施例中,电子设备700可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
147.本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中的动作调整方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
148.本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中的动作调整方法的步骤,具体可参见上述方法实施例,在此不再赘述。
149.其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(software development kit,sdk)等等。
150.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
151.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目
的。
152.另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
153.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
154.最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
再多了解一些

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

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

相关文献