一种3D虚拟形象的生成方法、装置、电子设备及存储介质制造方法及图纸

技术编号:25692519 阅读:32 留言:0更新日期:2020-09-18 21:03
本申请涉及一种3D虚拟形象的生成方法、装置、电子设备及存储介质。该技术方案通过视频中2D形象的2D骨骼数据计算出相应的3D骨骼数据,从而驱动2D形象对应的3D虚拟形象进行运动。这样,无需训练用于采集3D骨骼数据的机器学习算法,根据视频就可直接准确地驱动虚拟形象运动,且避免直接计算3D骨骼数据对系统资源消耗过大,降低CPU的占用率,针对动作复杂且时间较长的骨骼动画具有显著的性能优势。

【技术实现步骤摘要】
一种3D虚拟形象的生成方法、装置、电子设备及存储介质
本申请涉及计算机图形处理
,尤其涉及一种3D虚拟形象的生成方法、装置、电子设备及存储介质。
技术介绍
随着3D计算机动画技术的发展,虚拟形象在游戏、AR、VR、MR等领域运用越来越广泛。目前,虚拟形象的绘制常用骨骼动画来实现。在骨骼动画中,模型具有互相连接的“骨骼”组成的骨架结构,通过改变骨骼的朝向和位置来为模型生成动画。但是,现有机器学习算法学习到的是2D骨骼的位置,如何通过2D骨骼位置的变化驱动虚拟形象运动,是目前急需解决的技术问题。
技术实现思路
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请实施例提供了一种3D虚拟形象的生成方法、装置、电子设备及存储介质。第一方面,本申请实施例提供了一种3D虚拟形象的生成方法,包括:采集2D视频的视频帧中2D形象的第一2D骨骼位置信息;获取所述第一2D骨骼位置信息相对于第一3D骨骼位置信息的映射矩阵,所述映射矩阵根据初始2D骨架及初始3D骨架生成;根据所述映射矩阵将所述第一2D骨骼位置信息转换为第一3D骨骼位置信息;根据所述第一3D骨骼位置信息及所述初始3D骨架的第二3D骨骼位置信息计算骨骼变化信息;根据所述第一3D骨骼位置信息及所述骨骼变化信息确定3D骨骼数据;根据所述3D骨骼数据及所述初始3D骨架确定所述2D形象对应的3D虚拟形象。可选的,所述方法还包括:构建所述初始2D骨架对应的第一2D骨骼包围盒及所述初始3D骨架对应的3D骨骼包围盒;根据所述第一2D骨骼包围盒和3D骨骼包围盒计算所述映射矩阵。可选的,所述根据所述第一2D骨骼包围盒和3D骨骼包围盒计算所述映射矩阵,包括:将所述3D骨骼包围盒的深度坐标值设置为相同,得到第二2D骨骼包围盒;获取所述第一2D骨骼包围盒上预设个数的第一预设位置点,及所述第二2D骨骼包围盒上所述预设个数的第二预设位置点,所述第一预设位置点在所述第一2D骨骼包围盒上的位置与所述第二预设位置点在所述第二2D骨骼包围盒上的位置相同;根据所述第一预设位置点和第二预设位置点的坐标计算所述映射矩阵。可选的,在所述构建所述初始2D骨架对应的第一2D骨骼包围盒及所述初始3D骨架对应的3D骨骼包围盒之前,所述方法还包括:识别所述视频帧中的2D形象;当确定所述2D形象处于预设状态时,创建所述初始2D骨架和所述初始3D骨架。可选的,根据所述映射矩阵将所述第一2D骨骼位置信息转换为所述第一3D骨骼位置信息,包括:从根骨骼遍历所述2D形象的2D骨架;将所述2D骨架中骨骼的第一2D骨骼位置信息乘以所述映射矩阵,得到所述骨骼对应的所述第一3D骨骼位置信息。可选的,所述根据所述初始3D骨架的第二3D骨骼位置信息及所述第一3D骨骼位置信息计算每个骨骼的骨骼变化信息,包括:获取初始3D骨架中的第二3D骨骼位置信息;根据所述第二3D骨骼位置信息及所述第一3D骨骼位置信息计算所述骨骼的缩放量和旋转量;根据所述缩放量和旋转量得到所述骨骼变化信息。可选的,所述根据所述第二3D骨骼位置信息及所述第一3D骨骼位置信息计算所述骨骼的缩放量,包括:根据所述第一3D骨骼位置信息确定子骨骼与其父骨骼之间的第一长度,根据所述第二3D骨骼位置信息确定所述子骨骼与其父骨骼之间的第二长度;根据所述第一长度与所述第二长度的比值确定所述缩放量。可选的,所述根据所述第二3D骨骼位置信息及所述第一3D骨骼位置信息计算每个骨骼的旋转量,包括:根据所述第一3D骨骼位置信息确定子骨骼与其父骨骼的第一向量,根据所述第二3D骨骼位置信息确定所述子骨骼与其父骨骼的第二向量;确定所述第一向量和所述第二向量的向量积及夹角;根据所述向量积及所述夹角计算所述旋转量。第二方面,本申请实施例提供了一种3D虚拟形象的生成装置,包括:采集模块,用于采集2D视频的视频帧中2D形象的第一2D骨骼位置信息;获取模块,用于获取所述第一2D骨骼位置信息相对于第一3D骨骼位置信息的映射矩阵,所述映射矩阵根据初始2D骨架及初始3D骨架生成;转换模块,用于根据所述映射矩阵将所述第一2D骨骼位置信息转换为第一3D骨骼位置信息;变化计算模块,用于根据所述第一3D骨骼位置信息及所述初始3D骨架的第二3D骨骼位置信息计算骨骼变化信息;确定模块,用于根据所述第一3D骨骼位置信息及所述骨骼变化信息确定3D骨骼数据;驱动模块,用于根据所述3D骨骼数据及所述初始3D骨架确定所述2D形象对应的3D虚拟形象。第三方面,本申请实施例提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行计算机程序时,实现上述方法步骤。第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法步骤。本申请实施例提供的上述技术方案与现有技术相比具有如下优点:通过视频中2D形象的2D骨骼数据计算出相应的3D骨骼数据,从而驱动2D形象对应的3D虚拟形象进行运动。这样,无需训练用于采集3D骨骼数据的机器学习算法,根据视频就可直接准确地驱动虚拟形象运动,且避免直接计算3D骨骼数据对系统资源消耗过大,降低CPU的占用率,针对动作复杂且时间较长的骨骼动画具有显著的性能优势。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种3D虚拟形象的生成方法的流程图;图2为本申请另一实施例提供的一种3D虚拟形象的生成方法的流程图;图3为本申请另一实施例提供的一种3D虚拟形象的生成方法的流程图;图4为本申请另一实施例提供的一种3D虚拟形象的生成方法的流程图;图5为本申请另一实施例提供的一种3D虚拟形象的生成方法的流程图;图6为本申请实施例提供的一种3D虚拟形象的生成装置的框图;图7为本申请另一个实施例提供的一种3D虚拟形象的生成装置的框图;图8为本申请另一个实施例提供的一种3D虚拟形象的生成装置的框图;图9为本申请实施例提供的一种电子设备的结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施本文档来自技高网...

【技术保护点】
1.一种3D虚拟形象的生成方法,其特征在于,包括:/n采集2D视频的视频帧中2D形象的第一2D骨骼位置信息;/n获取所述第一2D骨骼位置信息相对于第一3D骨骼位置信息的映射矩阵,所述映射矩阵根据初始2D骨架及初始3D骨架生成;/n根据所述映射矩阵将所述第一2D骨骼位置信息转换为第一3D骨骼位置信息;/n根据所述第一3D骨骼位置信息及所述初始3D骨架的第二3D骨骼位置信息计算骨骼变化信息;/n根据所述第一3D骨骼位置信息及所述骨骼变化信息确定3D骨骼数据;/n根据所述3D骨骼数据及所述初始3D骨架确定所述2D形象对应的3D虚拟形象。/n

【技术特征摘要】
1.一种3D虚拟形象的生成方法,其特征在于,包括:
采集2D视频的视频帧中2D形象的第一2D骨骼位置信息;
获取所述第一2D骨骼位置信息相对于第一3D骨骼位置信息的映射矩阵,所述映射矩阵根据初始2D骨架及初始3D骨架生成;
根据所述映射矩阵将所述第一2D骨骼位置信息转换为第一3D骨骼位置信息;
根据所述第一3D骨骼位置信息及所述初始3D骨架的第二3D骨骼位置信息计算骨骼变化信息;
根据所述第一3D骨骼位置信息及所述骨骼变化信息确定3D骨骼数据;
根据所述3D骨骼数据及所述初始3D骨架确定所述2D形象对应的3D虚拟形象。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
构建所述初始2D骨架对应的第一2D骨骼包围盒及所述初始3D骨架对应的3D骨骼包围盒;
根据所述第一2D骨骼包围盒和3D骨骼包围盒计算所述映射矩阵。


3.根据权利要求2所述的方法,其特征在于,所述根据所述第一2D骨骼包围盒和3D骨骼包围盒计算所述映射矩阵,包括:
将所述3D骨骼包围盒的深度坐标值设置为相同,得到第二2D骨骼包围盒;
获取所述第一2D骨骼包围盒上预设个数的第一预设位置点,及所述第二2D骨骼包围盒上所述预设个数的第二预设位置点,所述第一预设位置点在所述第一2D骨骼包围盒上的位置与所述第二预设位置点在所述第二2D骨骼包围盒上的位置相同;
根据所述第一预设位置点和第二预设位置点的坐标计算所述映射矩阵。


4.根据权利要求2所述的方法,其特征在于,在所述构建所述初始2D骨架对应的第一2D骨骼包围盒及所述初始3D骨架对应的3D骨骼包围盒之前,所述方法还包括:
识别所述视频帧中的2D形象;
当确定所述2D形象处于预设状态时,创建所述初始2D骨架和所述初始3D骨架。


5.根据权利要求1所述的方法,其特征在于,根据所述映射矩阵将所述第一2D骨骼位置信息转换为所述第一3D骨骼位置信息,包括:
从根骨骼遍历所述2D形象的2D骨架;
将所述2D骨架中骨骼的第一2D骨骼位置信息乘以所述映射矩阵,得到所述骨骼对应的所述第一3D骨骼位置信息。


6.根据权利要求5所述的方法,其特征在于,所述根据所述初始3D骨架的第二3D骨骼位置信息及所述第一3D骨骼位置信息计算每个骨骼的骨...

【专利技术属性】
技术研发人员:王银辉
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1