CN116523737A - 虚拟对象的生成方法、三维姿态的处理方法及电子设备 - Google Patents
虚拟对象的生成方法、三维姿态的处理方法及电子设备 Download PDFInfo
- Publication number
- CN116523737A CN116523737A CN202310508879.XA CN202310508879A CN116523737A CN 116523737 A CN116523737 A CN 116523737A CN 202310508879 A CN202310508879 A CN 202310508879A CN 116523737 A CN116523737 A CN 116523737A
- Authority
- CN
- China
- Prior art keywords
- dimensional gesture
- virtual
- dimensional
- under
- view angles
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 238000003672 processing method Methods 0.000 title abstract description 6
- 238000010586 diagram Methods 0.000 claims abstract description 58
- 238000013507 mapping Methods 0.000 claims abstract description 29
- 230000003190 augmentative effect Effects 0.000 claims abstract description 12
- 230000004927 fusion Effects 0.000 claims description 41
- 238000012545 processing Methods 0.000 claims description 29
- 230000000007 visual effect Effects 0.000 claims description 20
- 230000002441 reversible effect Effects 0.000 claims description 14
- 230000033001 locomotion Effects 0.000 claims description 13
- 230000006870 function Effects 0.000 description 16
- 238000000605 extraction Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 210000004197 pelvis Anatomy 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 210000001508 eye Anatomy 0.000 description 5
- 210000003128 head Anatomy 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000037237 body shape Effects 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 210000001624 hip Anatomy 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/08—Projecting images onto non-planar surfaces, e.g. geodetic screens
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开了一种虚拟对象的生成方法、三维姿态的处理方法及电子设备。其中,该方法包括:获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。本申请应用于扩展现实、数字人等领域,解决了基于二维图像生成虚拟对象时,生成的虚拟对象的精确度较低的技术问题。
Description
技术领域
本申请涉及数据处理领域,具体而言,涉及一种虚拟对象的生成方法、三维姿态的处理方法及电子设备。
背景技术
随着深度学习的普及,利用深度神经网络模型,可以实现从单目摄像头捕获真人动作并驱动虚拟人物,该方法的出现一方面可以方便快捷的生成大量的真人动作素材,另一方面还可以用于直接驱动虚拟人物进行交互,从而大幅降低了人工智能虚拟人物的成本。但是,由于不同的拍摄视角所得到的图像,在空间上会具有视觉误差,因此,会造成生成的虚拟对象的精确度较低。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种虚拟对象的生成方法、三维姿态的处理方法及电子设备,以至少解决基于二维图像生成虚拟对象时,生成的虚拟对象的精确度较低的技术问题。
根据本申请实施例的一个方面,提供了一种虚拟对象的生成方法,包括:获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
根据本申请实施例的另一方面,还提供了一种虚拟对象的生成方法,包括:响应作用于操作界面上的输入指令,在操作界面上显示多个视角下的二维姿态图,其中,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息;响应作用于操作界面上的生成指令,在操作界面上显示实体对象映射至虚拟场景中得到的虚拟对象,其中,虚拟对象是基于实体对象的三维姿态和多个视角下的二维姿态图生成的,三维姿态是基于实体对象上的预设部位的接触状态和多个视角下的二维姿态图生成的,预设部位的接触状态是基于多个视角下的二维姿态图预测得到的。
根据本申请实施例的另一方面,还提供了一种可以应用于虚拟现实VR设备、增强现实AR设备等虚拟现实场景下的虚拟对象的生成方法,包括:在虚拟现实VR设备或增强现实AR设备的呈现画面上展示多个视角下的二维姿态图,其中,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象;驱动VR设备或AR设备渲染展示虚拟对象。
根据本申请实施例的另一方面,还提供了另一种虚拟对象的生成方法,包括:通过调用第一接口获取多个视角下的二维姿态图,其中,第一接口包括第一参数,第一参数的参数值为多个视角下的二维姿态图,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象;通过调用第二接口输出虚拟对象,其中,第二接口包括第二参数,第二参数的参数值为虚拟对象。
根据本申请实施例的另一方面,还提供了又一种三维姿态的处理方法,包括:获取二维图像,其中,二维图像是对真实场景中的实体人物进行拍摄得到的图像;对二维图像中的实体人物进行二维姿态估计,得到多个视角下的二维姿态特征;基于多个视角下的二维姿态特征,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态特征,生成实体对象的三维姿态;将三维姿态结果与预设三维姿态进行匹配,得到三维姿态结果的处理结果,其中,处理结果用于表征三维姿态结果与预设三维姿态是否相匹配的。
根据本申请实施例的另一方面,还提供了一种电子设备,包括:存储器,存储有可执行程序;处理器,用于运行程序,其中,程序运行时执行上述中任意一项的方法。
根据本申请实施例的另一方面,还提供了一种计算机可读存储介质,该计算机可读存储介质包括存储的可执行程序,其中,在可执行程序运行时控制计算机可读存储介质所在设备执行上述中任意一项的方法。
在本申请实施例中,通过获取真实场景中的实体对象在多个视角下的二维姿态图;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。容易注意到的是,可以利用实体对象上的预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态,从而可以使得不仅仅依靠多个视角下的二维姿态图来生成对应的虚拟对象,而是可以通过实体对象的三维姿态和多个视角下的二维姿态图来生成对应的虚拟对象,也即通过两种方式结合,从而能够对通过单独一种方法生成的虚拟对象进行调整,进一步的提高了生成的虚拟对象的精确度,进而解决了基于二维图像生成虚拟对象时,生成的虚拟对象的精确度较低的技术问题。
容易注意到的是,上面的通用描述和后面的详细描述仅仅是为了对本申请进行举例和解释,并不构成对本申请的限定。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种虚拟对象的生成方法的虚拟现实设备的硬件环境的示意图;
图2是根据本申请实施例的一种虚拟对象的生成方法的计算环境的结构框图;
图3是根据本申请实施例1的虚拟对象的生成方法的流程图;
图4是根据本申请实施例的一种骨盆及脚部位置的确定方法示意图;
图5是根据本申请实施例2的虚拟对象的生成方法的流程图;
图6是根据本申请实施例3的虚拟对象的生成方法的流程图;
图7是根据本申请实施例4的虚拟对象的生成方法的流程图;
图8是根据本申请实施例5的三维姿态的处理方法的流程图;
图9是根据本申请实施例1的虚拟对象的生成装置的示意图;
图10是根据本申请实施例2的虚拟对象的生成装置的示意图;
图11是根据本申请实施例3的虚拟对象的生成装置的示意图;
图12是根据本申请实施例4的虚拟对象的生成装置的示意图;
图13是根据本申请实施例5的三维姿态的处理装置的示意图;
图14是根据本申请实施例的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
SMPL:Skinned Multi-Person Linear Model,也称参数化人体模型,以人体姿态θ∈R24×3和人体形状β∈R10为输入,输出顶点为v=R3890×3的三维人体网格。人体姿态θ由跟关节(如骨盆)的全局旋转和23个关节点相对于运动学树中的父节点的局部旋转构成。K个3D关节点可以通过顶点的线性组合进行计算,公式如下:j3d=Mv,其中,M∈Rk×6890,R为实数集。
FFN:Feed Forward Networks,也称前馈神经网络。
MHSA:Multi-Head Self Attention,也称多头自注意力层。
RKTD:Reversible Kinematic Topology Decoder,也称可逆运动学拓扑解码器。
实施例1
根据本申请实施例,提供了一种虚拟对象的生成方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的一种虚拟对象的生成方法的虚拟现实设备的硬件环境的示意图。如图1所示,虚拟现实设备104与终端106相连接,终端106与服务器102通过网络进行连接,上述虚拟现实设备104并不限定于:虚拟现实头盔、虚拟现实眼镜、虚拟现实一体机等,上述终端104并不限定于PC、手机、平板电脑等,服务器102可以为媒体文件运营商对应的服务器,上述网络包括但不限于:广域网、城域网或局域网。
可选地,该实施例的虚拟现实设备104包括:存储器、处理器和传输装置。存储器用于存储应用程序,该应用程序可以用于执行:获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。从而解决了由于难以对虚拟对象的姿态进行调整造成的生成的虚拟对象的精确度较低的技术问题,达到了提高生成虚拟对象的精确度的目的。
该实施例的终端可以用于执行在虚拟现实(Virtual Reality,简称为VR)设备或增强现实(Augmented Reality,简称为AR)设备的呈现画面上展示在虚拟现实VR设备或增强现实AR设备的呈现画面上展示多个视角下的二维姿态图,其中,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象;驱动VR设备或AR设备渲染展示虚拟对象。并向虚拟现实设备104发送虚拟对象,虚拟现实设备104在接收到虚拟对象之后在目标投放位置显示出来。
可选地,该实施例的虚拟现实设备104带有的眼球追踪的HMD(Head MountDisplay,头戴式显示器)头显与眼球追踪模块与上述实施例中的作用相同,也即,HMD头显中的屏幕,用于显示实时的画面,HMD中的眼球追踪模块,用于获取用户眼球的实时运动轨迹。该实施例的终端通过跟踪系统获取用户在真实三维空间的位置信息与运动信息,并计算出用户头部在虚拟三维空间中的三维坐标,以及用户在虚拟三维空间中的视野朝向。
图1示出的硬件结构框图,不仅可以作为上述AR/VR设备(或移动设备)的示例性框图,还可以作为上述服务器的示例性框图,一种可选实施例中,图2以框图示出了使用上述图1所示的AR/VR设备(或移动设备)作为计算环境201中计算节点的一种实施例。图2是根据本申请实施例的一种虚拟对象的生成方法的计算环境的结构框图,如图2所示,计算环境201包括运行在分布式网络上的多个(图中采用210-1,210-2,…,来示出)计算节点(如服务器)。不同计算节点都包含本地处理和内存资源,终端用户202可以在计算环境201中远程运行应用程序或存储数据。应用程序可以作为计算环境201中的多个服务220-1,220-2,220-3和220-4进行提供,分别代表服务“A”,“D”,“E”和“H”。
终端用户202可以通过客户端上的web浏览器或其他软件应用程序提供和访问服务,在一些实施例中,可以将终端用户202的供应和/或请求提供给入口网关230。入口网关230可以包括一个相应的代理来处理针对服务(计算环境201中提供的一个或多个服务)的供应和/或请求。
服务是根据计算环境201支持的各种虚拟化技术来提供或部署的。在一些实施例中,可以根据基于虚拟机(Virtual Machine,VM)的虚拟化、基于容器的虚拟化和/或类似的方式提供服务。基于虚拟机的虚拟化可以是通过初始化虚拟机来模拟真实的计算机,在不直接接触任何实际硬件资源的情况下执行程序和应用程序。在虚拟机虚拟化机器的同时,根据基于容器的虚拟化,可以启动容器来虚拟化整个操作系统(Operating System,OS),以便多个工作负载可以在单个操作系统实例上运行。
在基于容器虚拟化的一个实施例中,服务的若干容器可以被组装成一个Pod(例如,Kubernetes Pod)。举例来说,如图2所示,服务220-2可以配备一个或多个Pod 240-1,240-2,…,240-N(统称为Pod)。Pod可以包括代理245和一个或多个容器242-1,242-2,…,242-M(统称为容器)。Pod中一个或多个容器处理与服务的一个或多个相应功能相关的请求,代理245通常控制与服务相关的网络功能,如路由、负载均衡等。其他服务也可以配备类似的Pod。
在操作过程中,执行来自终端用户202的用户请求可能需要调用计算环境201中的一个或多个服务,执行一个服务的一个或多个功能需要调用另一个服务的一个或多个功能。如图2所示,服务“A”220-1从入口网关230接收终端用户202的用户请求,服务“A”220-1可以调用服务“D”220-2,服务“D”220-2可以请求服务“E”220-3执行一个或多个功能。
上述的计算环境可以是云计算环境,资源的分配由云服务提供上管理,允许功能的开发无需考虑实现、调整或扩展服务器。该计算环境允许开发人员在不构建或维护复杂基础设施的情况下执行响应事件的代码。服务可以被分割完成一组可以自动独立伸缩的功能,而不是扩展单个硬件设备来处理潜在的负载。
在上述运行环境下,本申请提供了如图3所示的虚拟对象的生成方法。需要说明的是,该实施例的虚拟对象的生成方法可以由图1所示实施例的移动终端执行。图3是根据本申请实施例1的虚拟对象的生成方法的流程图。如图3所示,该方法可以包括如下步骤:
步骤S302:获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息。
上述的真实场景可以为现实生活中实体对象所在的场景,可选的,该真实场景可以包括,实体对象的跑步场景、实体对象的游泳场景、实体对象的跳舞场景等。上述的实体对象可以包括人物对象,以及其他的具有生命特征或不具有生命特征的对象。上述的多个视角可以包括正视图所对应的视角、侧视图所对应的视角、以及俯视图所对应的视角等视角,但不仅限于此,可以根据实际需要进行设定。上述的二维姿态图可以用于表示实体对象上的关节点在多个视角下的位置信息。可选的,可以通过坐标系的形式来展示实体对象上的关节点在多个视角下的位置信息。假设用坐标系0-xyz来表示二维姿态图,其中,x可以用于表示水平方向左右位置的坐标轴,y可以用于表示水平方向前后位置的坐标轴,z可以用于表示竖直方向上的坐标轴,因此,xy平面的图像可以为正视图所对应的二维姿态图,xz平面上的图像可以为侧视图所对应的二维姿态图,yz平面上的图像可以为俯视图所对应的二维姿态图。上述的位置信息可以为实体对象的关节点的不同坐标。
在一种可选的实施例中,可以通过照相机对实体对象在真实场景中的多个视角下的状态进行拍摄,从而可以得到实体对象在多个不同视角下的二维姿态图,可选的,上述的照相机可以为单目相机,单目相机可以通过对实体对象的身体进行感知,从而拍摄到实体对象的不同关节点的位置信息。以如下为例来进行说明,假设实体对象为正在跳舞的舞蹈演员,拍摄到的实体对象的二维姿态图为正视图视角下的二维姿态图,由于在实体对象在跳舞的过程中腿部以及胳膊上的关节点没有处于同一水平位置,因此,该二维姿态图中,实体对象的不同关节点的位置也不处于同一水平线。
步骤S304:基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触。
上述的预设部位可以为实体对象的身体上的部位,可选的,预设部位可以包括实体对象的脚部、臀部等部位。上述的实体平面可以为与实体对象所接触的平面,可选的,该平面可以包括实体对象所站的地面、实体对象所坐的位置、以及实体对象所站的台阶面等平面。上述的接触状态可以用于表示预设部位与实体平面是否存在间隙,也即,预设部位与实体平面是否接触。
在一种可选的实施例中,在得到实体对象的多个不同视角下的二维姿态图后,可以对多个不同视角下的二维姿态图进行特征提取,并对经过特征提取得到的特征提取结果进行叠加,从而得到融合特征,可选的,融合特征可以用于预测实体对象与实体平面的接触状态,在接触状态为实体对象的预设部位与实体平面之间不存在间隙的情况下,可以确定实体对象的预设部位与实体平面接触。
步骤S306:基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态。
上述的三维姿态可以用于表示实体对象上的不同关节点的三维坐标。
在一种可选的实施例中,在接触状态为实体对象与实体平面之间不存在间隙的情况下,可以通过以实体对象的预设部位为基础构建并根据预设部位与实体平面的接触状态自适应地生成根节点不同的运动学树,其中,运动学树可以为基于运动学所确定的树形结构,并根据运动学树来确定从实体对象的预设部位以及实体对象的其他位置的坐标位置,从而得到实体对象的三维姿态。
步骤S308:基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
上述的虚拟场景可以为与实体对象所在的真实场景所对应的虚拟场景,可选的,虚拟场景可以为AR场景、VR场景、游戏场景等虚拟场景,其中,虚拟场景中可以包含虚拟对象。
在一种可选的实施例中,在得到实体对象的三维姿态后,可以利用实体对象的三维姿态以及多个视角下的二维姿态图来共同生成虚拟对象,从而使得虚拟对象不仅依靠多个不同视角下的二维姿态图,且依靠实体对象与预设部位的接触状态来生成。可选的,可以先利用多个视角下的二维姿态图生成初始虚拟对象,并利用实体对象的三维姿态对多个视角下的二维姿态图所生成的初始虚拟对象进行调整,从而得到虚拟对象,可以使得生成的虚拟对象的精确度更高。
在本申请实施例中,通过获取真实场景中的实体对象在多个视角下的二维姿态图;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。容易注意到的是,可以利用实体对象上的预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态,从而可以使得不仅仅依靠多个视角下的二维姿态图来生成对应的虚拟对象,而是可以通过实体对象的三维姿态和多个视角下的二维姿态图来生成对应的虚拟对象,也即通过两种方式结合,从而提高了生成的虚拟对象的精确度,进而解决了基于二维图像生成虚拟对象时,生成的虚拟对象的精确度较低的技术问题。
本申请上述实施例中,基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,包括:基于多个视角下的二维姿态图,生成虚拟对象的虚拟网格;基于虚拟网格上的多个顶点,预测得到虚拟场景中与实体平面相关联的目标虚拟平面;基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设部位的接触状态,其中,预设顶点用于表征预设部位对应的顶点。
上述的虚拟网格可以为虚拟对象所在的虚拟场景中的网格,可选的,上述的虚拟网格可以为人体建模方法网格(Skinned Mult i Person Linear Model简称SMPL网格)。上述的目标虚拟平面可以为虚拟场景中,与真实场景中的实体平面所对应的虚拟平面。上述的预设顶点用于表示预设部位上的关键点,假设预设部位为实体对象的脚部,则预设顶点可以为实体对象的脚跟或脚尖位置的关键点,其中,预设顶点的数量可以为一个也可以为多个,本申请中对预设顶点的数量不做具体的限制。
在一种可选的实施例中,针对处于比较平坦的实体平面上的实体对象,可以采用SMPL模型预测得到实体对象上的预设部位的接触状态。可选的,通过给定一个SMPL网格序列作为输入,并设置出相关阈值,同时确定虚拟网格上的多个顶点与目标虚拟平面之间的距离,在虚拟网格上的多个顶点与目标虚拟平面之间的距离大于阈值的情况下,可以认为虚拟网格上的多个顶点与目标虚拟平面之间为接触状态,在虚拟网格上的多个顶点与目标虚拟平面之间的距离小于或等于阈值时,可以认为虚拟网格上的多个顶点与目标虚拟平面之间未接触。
本申请上述实施例中,基于多个视角下的二维姿态图,生成虚拟对象的虚拟网格,包括:对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征;对多个不同视角下的二维姿态特征进行叠加,得到融合特征;对融合特征进行解码,得到虚拟网格。
在一种可选的实施例中,可以利用骨干网络(也称Backbone)对二维姿态图进行特征提取,或利用残差神经网络(也称resnet)系列模型对二维姿态图进行特征提取,还可以利用视觉转换器(也称视觉Transformer)模型对二维姿态图进行特征提取,从而可以得到多个视角下的二维姿态特征,其中,该多个视角下的二维姿态特征可以通过数值的形式来表示。在本实施例中,以将视觉Transformer模型作为特征提取器为例进行说明。
可选的,为了对二维姿态图进行更精确的特征提取,可以在进行特征提取之前先对二维姿态图进行切分,从而可以得到多个图像块,并分别对多个图像块进行特征提取。其中,可以由不同的Transformer层对多个图像块进行处理,其中,任意一个Transformer层都由一个多头自注意力层(Multi-Head Self Attention简称MHSA)和一个前馈网络(FeedForward Networks简称FFN)组成,可选的,可以采用如下的公式来计算任意一个Transformer层的输出。
F′i+1=Fi+MHSA(LN(Fi))
Fi+1=F′i+1+FFN(LN(F′i+1)),
其中,LN表示层归一化,Fi表示第i个Transformer层的输出,F0=PatchEmbed(X)是分块嵌入层的输出特征,Transformer模型的输出特征可以记为从而得到多个视角下的二维姿态特征。
进一步的,在得到实体对象的多个不同视角下的二维姿态特征后,可以对多个不同视角下的二维姿态特征进行叠加,从而得到融合特征,可选的,融合特征可以用于预测实体对象与实体平面的接触状态。可选的,由于不同视角下的二维姿态图的特征不一致,因此,通过将不同视角下的二维姿态图的二维姿态特征进行融合,从而可以得到实体对象的三维特征,也即,对多个不同视角下的二维姿态特征进行叠加,得到融合特征。
可选的,可以使用二维姿态估计器分别提取不同视角下的二维姿态图中的特征,并利用多视图二维重建投影约束,对原始SMPL参数进行优化,也即对实体对象的姿态进行优化调整。以如下为例来进行说明,可以利用实体对象的脚部和实体对象身体上其他的关节点之间的关系,构建运动学树,并对该运动学树进行反向遍历,从而可以对实体对象的全身网格进行重建,以及更精确的进行实体对象的脚部姿态估计。
可选的,对原始SMPL参数进行优化时,可以采用如下的优化公式:
argθminlproj(θ,β,T,j2d)+lsmooth(θ),其中,θ和β为SMPL参数,θ表示关节的旋转,β表示人体形状,T为相机外部矩阵,j2d表示实体对象上的关键点,lproj为预测损失函数,用于计算从SMPL中重投影的三维关节与标注的二维关键点质检的错位;lsmooth(θ)是序列平滑损失函数。
进一步的,在得到融合特征后,可以利用可逆运动学拓扑解码器(ReversibleKinematic Topology Decoder,简称RKTD)来对融合特征进行解码,从而得到相机参数和实体对象对应的虚拟网格。进一步的,可以基于相机参数、虚拟网格和三维姿态进行重建,生成虚拟对象,可选的,还可以通过像素集背景建模、前景检测算法(Visual BackgroundExtractor,简称VIBE)全连接层组成的回归器来对融合特征进行解码,从而得到虚拟网格。
本申请上述实施例中,基于虚拟网格上的多个顶点,预测得到虚拟场景中与实体平面相关联的目标虚拟平面,包括:获取虚拟场景中的初始虚拟平面;确定虚拟网格上的多个顶点中,与初始虚拟平面距离最小的第一顶点;对第一顶点进行拟合,生成目标虚拟平面。
上述的第一顶点可以为虚拟网格上的多个顶点中,与初始平面距离最近的顶点。
在一种可选的实施例中,针对处于比较平坦的实体平面上的实体对象,可以获取地面接触标注,通过给定一个SMPL网格序列作为输入,从而确定出预设部位的接触状态。可选的,可以在网格下面设置一个初始虚拟平面,然后在网格中计算与该初始虚拟平面距离最近的顶点,并将该顶点确定为第一顶点。可选的,可以通过相关的拟合算法对第一顶点进行拟合,从而能够估计出一个较为准确的平面,也即,目标虚拟平面。其中,上述过程可以重复多次,可选的,脚与预设平面接触标注可以通过如下方式获取:
其中,v∈R3890×3,是来自SMPL的实体对象的顶点,D表示该顶点到实体平面的欧式距离,与实体平面之间的距离小于高度阈值δ的顶点可以被标记为接触,从而可以得到不同顶点的顶点接触状态,其中,高度阈值可以由本领域技术人员自行设置。
本申请上述实施例中,基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设部位的接触状态,包括:基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设顶点的顶点接触状态;对预设顶点的顶点接触状态进行叠加,得到预设部位的接触状态。
在一种可选的实施例中,在预设顶点的数量大于一个的情况下,可以将已经确定下来的预设顶点的接触状态进行叠加,并根据叠加的结果去确定预设部位的接触状态。可选的,在叠加的过程中,可以先确定需要叠加的预设顶点的接触状态的数量,并根据预设顶点的接触状态的数量确定出接触阈值,进一步的,在显示为接触状态的预设顶点的数量大于接触阈值的情况下,可以认为预设部位的接触状态为预设部位与目标虚拟平面为接触状态。
本申请上述实施例中,预设部位包含:多个子部位,对预设顶点的顶点接触状态进行汇总,得到预设部位的接触状态,包括:对预设顶点进行分组,得到多个顶点集合,其中,多个顶点集合与多个子部位一一对应;对多个顶点集合包含的顶点的顶点接触状态进行叠加,得到多个子部位的接触状态。
上述的多个子部位可以为预设部位所包含的不同部位,以如下为例来进行说明,假设预设部位为实体对象的脚部,则多个子部位可以为实体对象的左脚和右脚。
上述的多个顶点集合可以包括左脚的顶点集合以及右脚的顶点集合。
在一种可选的实施例中,若第一部位包含多个子部位,则可以分别确定不同子部位上的顶点,并确定该顶点的接触状态,以及数量。可选的,可以根据顶点的位置信息对顶点进行分组,也即,将用于表示左脚的顶点分为一组,将用于表示右脚的顶点分为一组,在叠加的过程中,只需要将左脚对应的顶点与左脚对应的顶点进行叠加,将右脚对应的顶点与右脚对应的顶点进行叠加,从而得到多个子部位的接触状态。
本申请上述实施例中,预设部位包含:多个子部位,基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态,包括:基于多个子部位的接触状态,生成目标运动学树,其中,目标运动学树包含多个节点和连接在两个节点之间的边,多个节点用于表征实体对象的关节点,边用于表征两个节点之间的运动顺序;对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征;对多个不同视角下的二维姿态特征进行叠加,得到融合特征;基于融合特征对目标运动学树进行反向遍历,生成三维姿态。
上述的目标运动学树可以为基于运动学所确定的树形结构,其中,树形结构中节点可以表示实体对象的关键点,可选的,该树形结构可以将实体对象的脚部作为起点,用于表示实体对象上不同位置的关键点的坐标分布情况。其中,上述的目标运动学树可以包括左脚运动学树以及右脚运动学树。
在一种可选的实施例中,可以利用RKTD算法来确定实体对象上的预设部位的接触状态,RKTD提供了一种基于实体对象与实体平面接触预测的可逆运动树。
可选的,假设预设部位为实体对象的脚部的情况下,则多个子部位可以为实体对象的左脚和右脚,可选的,可以将左脚接触状态记为将右脚接触状态记为
进一步的,可以对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征,并对多个不同视角下的二维姿态特征进行叠加,得到融合特征。其中,融合特征可以用于对目标运动学树进行反向遍历,从而得到实体对象的三维姿态。可选的,假设实体对象的预设部位为实体对象的脚部时,在接触状态为实体对象的脚部与实体平面之间不存在间隙的情况下,可以确定实体对象的脚部与实体平面接触,因此可以根据接触状态对运动学树反向遍历,确定从实体对象的脚部的不同关键点的姿态,得到三维姿态。可选的,在预测的过程中,可以引入参数化的SMPL模型,通过多视图优化来重建实体对象的脚部姿态。
本申请上述实施例中,基于多个子部位的接触状态,生成目标运动学树,包括:基于多个子部位的接触状态,确定多个子部位中的目标子部位,其中,目标子部位用于表征实体对象上与实体平面接触的子部位;基于目标子部位,生成目标运动学树,其中,目标运动学树的根节点为目标子部位对应的节点。
上述的目标子部位可以用于表示多个子部位中,与实体平面接触的子部位。
可选的,可以将目标子部位对应的节点作为根节点,该节点是固定的,因此,可以根据与RKTD中跟-叶顺序不同的反向运动学树顺序依次估计各关节的姿态,其中,第i个子关节姿态是基于输入特征F和祖先关节链的姿态,迭代结果如下
其中,θi=MLP(Fi),ancestorl,ancestorl以及ancestorp分别表示不同运动学树(例如,左脚运动学树、右脚运动学树和基础运动学树)中从根节点到KTD中使用的其他节点的祖先节点。
本申请上述实施例中,基于融合特征对目标运动学树进行反向遍历,生成三维姿态,包括:确定目标运动学树中当前遍历的目标节点;获取目标节点之前的祖先节点的姿态,其中,在目标节点为目标运动学树的根节点的情况下,祖先节点的姿态为空;基于融合特征和祖先节点的姿态进行回归处理,得到目标节点的姿态;在目标运动学树遍历完成的情况下,基于目标运动学树包含的多个节点的姿态,得到三维姿态。
上述的目标节点可以为目标运动学树中当前遍历的节点。上述的祖先节点可以为目标节点之前的节点。上述的根节点可以为目标运动学树的第一个节点。
在一种可选的实施例中,在基于融合特征对目标运动学树进行反向遍历的过程中,可以先获取到当前节点,也即,目标节点,并根据目标节点去获取祖先节点,并基于融合特征和祖先节点的姿态进行回归处理,得到目标节点的姿态。可选的,若目标节点为目标运动学树的根节点,则说明目标节点不存在祖先节点,也即,祖先节点的姿态为空,此时,不需要基于融合特征和祖先节点的姿态进行回归处理。可选的,上述的步骤可以重复操作,直至遍历完整个目标运动学树。此时,目标运动学树中便包含有多个节点的姿态,也即实体对象的三维姿态。
图4是根据本申请实施例的一种骨盆及脚部位置的确定方法示意图,如图4所示,由于骨盆位于实体对象身体的中间位置,因此,在生成虚拟对象的时候,可以先确定出骨盆的位置,从而可以得到虚拟对象的大致位置,其中,骨盆位置在图4中的左侧部分,用白色球形来表示骨盆位置。进一步的,可以将与与实体平面接触的脚确定为接触脚,在图中用白色球形来表示接触脚,可选的,在生成虚拟对象时,可以结合接触脚的状态对虚拟对象的姿态进行调整。
整个方法的损失函数定义如下:
其中,代表二维姿态图的损失函数,/>代表三维姿态结果的损失函数,/>代表参数化人体模型SMPL中的损失函数,/>代表反向运动学树中的损失函数。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
根据本申请实施例,还提供了一种虚拟对象的生成方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图5是根据本申请实施例2的虚拟对象的生成方法的流程图,如图5所示,该方法包括如下步骤:
步骤S502:响应作用于操作界面上的输入指令,在操作界面上显示多个视角下的二维姿态图,其中,多个视角下的二维姿态图用于表征真实场景中的实体对象的关节点在多个视角下的位置信息;
步骤S504:响应作用于操作界面上的生成指令,在操作界面上显示实体对象映射至虚拟场景中得到的虚拟对象,其中,虚拟对象是基于实体对象的三维姿态和多个视角下的二维姿态图生成的,三维姿态是基于实体对象上的预设部位的接触状态和多个视角下的二维姿态图生成的,预设部位的接触状态是基于多个视角下的二维姿态图预测得到的。
上述的输入指令可以用于指示操作界面显示多个视角下的二维姿态图,可选的,上述的输入指令可以通过触摸或手势的形式来显示,在本申请中对输入指令的类型不做具体的限制。
上述的生成指令可以用于指示操作界面显示实体对象映射至虚拟场景中得到的虚拟对象,可选的,上述的生成指令可以通过语音或手势的形式来显示,在本申请中对输入指令的类型不做具体的限制。
实施例3
根据本申请实施例,还提供了一种可以应用于虚拟现实VR设备、增强现实AR设备等虚拟现实场景下的虚拟对象的生成方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图6是根据本申请实施例3的虚拟对象的生成方法的流程图。如图6所示,该方法可以包括如下步骤:
步骤S602:在虚拟现实VR设备或增强现实AR设备的呈现画面上展示多个视角下的二维姿态图,其中,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息。
步骤S604:基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触。
步骤S606:基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态。
步骤S608:基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
步骤S610:驱动VR设备或AR设备渲染展示虚拟对象。
在一种可选的实施例中,可以通过在虚拟现实VR设备或增强现实AR设备的呈现画面上展示多个视角下的二维姿态图,并根据所展示的多个视角下的二维姿态图来预测实体对象上的预设部位的接触状态。可选的,在得到实体对象上的预设部位的接触状态后,可以基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态,并基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象,进一步的,在生成虚拟对象后,可以利用VR设备或AR设备来进行渲染展示该虚拟对象。
可选地,在本实施例中,上述虚拟对象的生成方法可以应用于由服务器、虚拟现实设备所构成的硬件环境中。在虚拟现实VR设备或增强现实AR设备的呈现画面上展示虚拟对象,服务器可以为媒体文件运营商对应的服务器,上述网络包括但不限于:广域网、城域网或局域网,上述虚拟现实设备并不限定于:虚拟现实头盔、虚拟现实眼镜、虚拟现实一体机等。
可选地,虚拟现实设备包括:存储器、处理器和传输装置。存储器用于存储应用程序,该应用程序可以用于执行:在虚拟现实VR设备或增强现实AR设备的呈现画面上展示多个视角下的二维姿态图,其中,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象;驱动VR设备或AR设备渲染展示虚拟对象。
需要说明的是,该实施例的上述应用在VR设备或AR设备中的虚拟对象的生成方法可以包括图6所示实施例的方法,以实现驱动VR设备或AR设备展示虚拟对象的生成方法的目的。
可选地,该实施例的处理器可以通过传输装置调用上述存储器存储的应用程序以执行上述步骤。传输装置可以通过网络接收服务器发送的媒体文件,也可以用于上述处理器与存储器之间的数据传输。
可选地,在虚拟现实设备中,带有眼球追踪的头戴式显示器,该HMD头显中的屏幕,用于显示展示的视频画面,HMD中的眼球追踪模块,用于获取用户眼球的实时运动轨迹,跟踪系统,用于追踪用户在真实三维空间的位置信息与运动信息,计算处理单元,用于从跟踪系统中获取用户的实时位置与运动信息,并计算出用户头部在虚拟三维空间中的三维坐标,以及用户在虚拟三维空间中的视野朝向等。
在本申请实施例中,虚拟现实设备可以与终端相连接,终端与服务器通过网络进行连接,上述虚拟现实设备并不限定于:虚拟现实头盔、虚拟现实眼镜、虚拟现实一体机等,上述终端并不限定于PC、手机、平板电脑等,服务器可以为媒体文件运营商对应的服务器,上述网络包括但不限于:广域网、城域网或局域网。
实施例4
根据本申请实施例,还提供了另一种虚拟对象的生成方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图7是根据本申请实施例4的虚拟对象的生成方法的流程图,如图7所示,该方法包括如下步骤:
步骤S702:通过调用第一接口获取多个视角下的二维姿态图,其中,第一接口包括第一参数,第一参数的参数值为多个视角下的二维姿态图,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息。
步骤S704:基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触。
步骤S706:基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态。
步骤S708:基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
步骤S710:通过调用第二接口输出虚拟对象,其中,第二接口包括第二参数,第二参数的参数值为虚拟对象。
上述的第一接口用于获取多个视角下的二维姿态图,可选的,第一接口可以和相机连接,或和计算机连接。
上述的第一参数用于通过参数值的形式来表示多个视角下的二维姿态图。
上述的第二接口用于输出生成的虚拟对象,可选的,第二接口可以与显示屏,或计算机进行连接。
上述的第二参数用于通过参数值的形式来表示虚拟对象。
实施例5
根据本申请实施例,还提供了一种三维姿态的处理方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图8是根据本申请实施例5的三维姿态的处理方法的流程图,如图8所示,该方法包括如下步骤:
步骤S802:获取二维图像,其中,二维图像是对真实场景中的实体人物进行拍摄得到的图像。
步骤S804:对二维图像中的实体人物进行二维姿态估计,得到多个视角下的二维姿态特征。
步骤S806:基于多个视角下的二维姿态特征,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触。
步骤S808:基于预设部位的接触状态和多个视角下的二维姿态特征,生成实体对象的三维姿态。
步骤S810:将三维姿态结果与预设三维姿态进行匹配,得到三维姿态结果的处理结果,其中,处理结果用于表征三维姿态结果与预设三维姿态是否相匹配的。
上述的预设三维姿态可以为某场景下的标准的姿态,例如,某舞蹈动作的标准姿态、运动员运动时候的标准姿态、患者肢体运动的动作范围等。
在一种可选的实施例中,当生成实体对象的三维姿态后,可以将实体对象的三维姿态与预设三维姿态进行匹配,在实体对象的三维姿态与预设三维姿态可以匹配成功的情况下,可以认为生成的实体对象的三维姿态的准确度较高,认为实体对象的三维姿态标准。
实施例6
根据本申请实施例,还提供了一种用于实施上述实施例1的虚拟对象的生成装置,图9是根据本申请实施例1的虚拟对象的生成装置的示意图,如图9所示,该装置包括:获取模块902、预测模块904、第一生成模块906、第二生成模块908。
其中,获取模块902,用于获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息。预测模块904,用于基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触。第一生成模块906,用于基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态。第二生成模块908,用于基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
此处需要说明的是,上述获取模块902、预测模块904、第一生成模块906、第二生成模块908,对应于实施例1中的步骤S302至步骤S308,模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例1所公开的内容。
本申请上述实施例中,预测模块904,包括:第一生成单元,用于基于多个视角下的二维姿态图,生成虚拟对象的虚拟网格;预测单元,用于基于虚拟网格上的多个顶点,预测得到虚拟场景中与实体平面相关联的目标虚拟平面;第一确定单元,用于基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设部位的接触状态,其中,预设顶点用于表征预设部位对应的顶点。
本申请上述实施例中,第一生成单元,包括:提取子单元,用于对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征;第一叠加子单元,用于对多个不同视角下的二维姿态特征进行叠加,得到融合特征;解码子单元,用于对融合特征进行解码,得到虚拟网格。
本申请上述实施例中,预测单元,包括:第一获取子单元,用于获取虚拟场景中的初始虚拟平面;第一确定子单元,用于确定虚拟网格上的多个顶点中,与初始虚拟平面距离最小的第一顶点;拟合子单元,用于对第一顶点进行拟合,生成目标虚拟平面。
本申请上述实施例中,第一确定单元,包括:第二确定子单元,用于基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设顶点的顶点接触状态;第二叠加子单元,用于对预设顶点的顶点接触状态进行叠加,得到预设部位的接触状态。
本申请上述实施例中,第二确定子单元,还用于:对预设顶点进行分组,得到多个顶点集合,其中,多个顶点集合与多个子部位一一对应;对多个顶点集合包含的顶点的顶点接触状态进行叠加,得到多个子部位的接触状态。
本申请上述实施例中,第一生成模块906,包括:第二生成单元,用于基于多个子部位的接触状态,生成目标运动学树,其中,目标运动学树包含多个节点和连接在两个节点之间的边,多个节点用于表征实体对象的关节点,边用于表征两个节点之间的运动顺序;提取单元,用于对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征;叠加单元,用于对多个不同视角下的二维姿态特征进行叠加,得到融合特征;遍历单元,用于基于融合特征对目标运动学树进行反向遍历,生成三维姿态。
本申请上述实施例中,第二生成单元,包括:第三确定子单元,用于基于多个子部位的接触状态,确定多个子部位中的目标子部位,其中,目标子部位用于表征实体对象上与实体平面接触的子部位;生成子单元,用于基于目标子部位,生成目标运动学树,其中,目标运动学树的根节点为目标子部位对应的节点。
本申请上述实施例中,遍历单元,包括:第四确定子单元,用于确定目标运动学树中当前遍历的目标节点;第二获取子单元,用于获取目标节点之前的祖先节点的姿态,其中,在目标节点为目标运动学树的根节点的情况下,祖先节点的姿态为空;处理子单元,用于基于融合特征和祖先节点的姿态进行回归处理,得到目标节点的姿态;第五确定子单元,用于在目标运动学树遍历完成的情况下,基于目标运动学树包含的多个节点的姿态,得到三维姿态。
实施例7
根据本申请实施例,还提供了一种用于实施上述实施例2的虚拟对象的生成装置,图10是根据本申请实施例2的虚拟对象的生成装置的示意图,如图10所示,该装置包括:第一显示模块1002、第二显示模块1004。
其中,第一显示模块1002,用于响应作用于操作界面上的输入指令,在操作界面上显示多个视角下的二维姿态图,其中,多个视角下的二维姿态图用于表征真实场景中的实体对象的关节点在多个视角下的位置信息;第二显示模块1004,用于响应作用于操作界面上的生成指令,在操作界面上显示实体对象映射至虚拟场景中得到的虚拟对象,其中,虚拟对象是基于实体对象的三维姿态和多个视角下的二维姿态图生成的,三维姿态是基于实体对象上的预设部位的接触状态和多个视角下的二维姿态图生成的,预设部位的接触状态是基于多个视角下的二维姿态图预测得到的。
此处需要说明的是,上述第一显示模块1002、第二显示模块1004,对应于实施例2中的步骤S502至步骤S504,模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例2所公开的内容。
实施例8
根据本申请实施例,还提供了一种用于实施上述实施例3的虚拟对象的生成装置,图11是根据本申请实施例3的虚拟对象的生成装置的示意图,如图11所示,该装置包括:第一呈现模块1102、预测模块1104、第一生成模块1106、第二生成模块1108、驱动模块1110。
其中,第一呈现模块1102,用于在虚拟现实VR设备或增强现实AR设备的呈现画面上展示多个视角下的二维姿态图,其中,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息;预测模块1104,用于基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;第一生成模块1106,用于基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;第二生成模块1108,用于基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象;驱动模块1110,用于驱动VR设备或AR设备渲染展示虚拟对象。
此处需要说明的是,上述第一呈现模块1102、预测模块1104、第一生成模块1106、第二生成模块1108、驱动模块1110对应于实施例3中的步骤S602至步骤S610,模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例3所公开的内容。需要说明的是,上述模块或单元可以是存储在存储器中并由一个或多个处理器处理的硬件组件或软件组件,上述模块也可以作为装置的一部分可以运行在实施例3提供的AR/VR设备中。
实施例9
根据本申请实施例,还提供了一种用于实施上述实施例4的虚拟对象的生成装置,图12是根据本申请实施例4的虚拟对象的生成装置的示意图,如图12所示,该装置包括:获取模块1202、预测模块1204、第一生成模块1206、第二生成模块1208、输出模块1210。
其中,获取模块1202,用于通过调用第一接口获取多个视角下的二维姿态图,其中,第一接口包括第一参数,第一参数的参数值为多个视角下的二维姿态图,多个视角下的二维姿态图用于表征实场景中的实体对象的关节点在多个视角下的位置信息;预测模块1204,用于基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;第一生成模块1206,用于基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;第二生成模块1208,用于基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象;输出模块1210,用于通过调用第二接口输出虚拟对象,其中,第二接口包括第二参数,第二参数的参数值为虚拟对象。
此处需要说明的是,上述获取模块1202、预测模块1204、第一生成模块1206、第二生成模块1208、输出模块1210,对应于实施例4中的步骤S702至步骤S710,模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例4所公开的内容。
实施例10
根据本申请实施例,还提供了一种用于实施上述实施例5的三维姿态的处理装置,图13是根据本申请实施例5的三维姿态的处理装置的示意图,如图13所示,该装置包括:获取模块1302、估计模块1304、预测模块1306、生成模块1308、匹配模块1310。
其中,获取模块1302,用于获取二维图像,其中,二维图像是对真实场景中的实体人物进行拍摄得到的图像;估计模块1304,用于对二维图像中的实体人物进行二维姿态估计,得到多个视角下的二维姿态特征;预测模块1306,用于基于多个视角下的二维姿态特征,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;生成模块1308,用于基于预设部位的接触状态和多个视角下的二维姿态特征,生成实体对象的三维姿态;匹配模块1310,用于将三维姿态结果与预设三维姿态进行匹配,得到三维姿态结果的处理结果,其中,处理结果用于表征三维姿态结果与预设三维姿态是否相匹配的。
此处需要说明的是,上述获取模块1302、估计模块1304、预测模块1306、生成模块1308、匹配模块1310,对应于实施例5中的步骤S802至步骤S810,模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例5所公开的内容。
实施例11
本申请的实施例可以提供一种虚拟对象的生成系统,该计算机终端可以包括AR/VR设备、服务器、客户端,该AR/VR设备可以是AR/VR设备群中的任意一个AR/VR设备。可选地,该计算机终端设备包括:处理器,用于运行程序;存储器,与处理器相连接,用于为处理器提供处理以下处理步骤的指令:获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
实施例12
本申请的实施例可以提供一种AR/VR设备,该AR/VR设备可以是AR/VR设备群中的任意一个AR/VR设备。可选地,在本实施例中,上述AR/VR设备也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述AR/VR设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述AR/VR设备可以执行虚拟对象生成方法中以下步骤的程序代码:获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
可选地,图14是根据本申请实施例的一种计算机终端的结构框图。如图14所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器1402、存储器1404、存储控制器、以及外设接口,其中,外设接口与射频模块、音频模块和显示器连接。
其中,存储器可用于存储软件程序以及模块,如本申请实施例中的虚拟对象的生成方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的虚拟对象的生成方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
可选的,上述处理器还可以执行如下步骤的程序代码:基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,包括:基于多个视角下的二维姿态图,生成虚拟对象的虚拟网格;基于虚拟网格上的多个顶点,预测得到虚拟场景中与实体平面相关联的目标虚拟平面;基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设部位的接触状态,其中,预设顶点用于表征预设部位对应的顶点。
可选的,上述处理器还可以执行如下步骤的程序代码:基于多个视角下的二维姿态图,生成虚拟对象的虚拟网格,包括:对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征;对多个不同视角下的二维姿态特征进行叠加,得到融合特征;对融合特征进行解码,得到虚拟网格。
可选的,上述处理器还可以执行如下步骤的程序代码:上述处理器还可以执行如下步骤的程序代码:基于虚拟网格上的多个顶点,预测得到虚拟场景中与实体平面相关联的目标虚拟平面,包括:获取虚拟场景中的初始虚拟平面;确定虚拟网格上的多个顶点中,与初始虚拟平面距离最小的第一顶点;对第一顶点进行拟合,生成目标虚拟平面。
可选的,上述处理器还可以执行如下步骤的程序代码:基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设部位的接触状态,包括:基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设顶点的顶点接触状态;对预设顶点的顶点接触状态进行叠加,得到预设部位的接触状态。
可选的,上述处理器还可以执行如下步骤的程序代码:预设部位包含:多个子部位,对预设顶点的顶点接触状态进行汇总,得到预设部位的接触状态,包括:对预设顶点进行分组,得到多个顶点集合,其中,多个顶点集合与多个子部位一一对应;对多个顶点集合包含的顶点的顶点接触状态进行叠加,得到多个子部位的接触状态。
可选的,上述处理器还可以执行如下步骤的程序代码:预设部位包含:多个子部位,基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态,包括:基于多个子部位的接触状态,生成目标运动学树,其中,目标运动学树包含多个节点和连接在两个节点之间的边,多个节点用于表征实体对象的关节点,边用于表征两个节点之间的运动顺序;对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征;对多个不同视角下的二维姿态特征进行叠加,得到融合特征;基于融合特征对目标运动学树进行反向遍历,生成三维姿态。
可选的,上述处理器还可以执行如下步骤的程序代码:基于多个子部位的接触状态,生成目标运动学树,包括:基于多个子部位的接触状态,确定多个子部位中的目标子部位,其中,目标子部位用于表征实体对象上与实体平面接触的子部位;基于目标子部位,生成目标运动学树,其中,目标运动学树的根节点为目标子部位对应的节点。
可选的,上述处理器还可以执行如下步骤的程序代码:基于融合特征对目标运动学树进行反向遍历,生成三维姿态,包括:确定目标运动学树中当前遍历的目标节点;获取目标节点之前的祖先节点的姿态,其中,在目标节点为目标运动学树的根节点的情况下,祖先节点的姿态为空;基于融合特征和祖先节点的姿态进行回归处理,得到目标节点的姿态;在目标运动学树遍历完成的情况下,基于目标运动学树包含的多个节点的姿态,得到三维姿态。
采用本申请实施例,通过获取真实场景中的实体对象在多个视角下的二维姿态图;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。容易注意到的是,可以利用实体对象上的预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态,从而可以使得不仅仅依靠多个视角下的二维姿态图来生成对应的虚拟对象,而是可以通过实体对象的三维姿态和多个视角下的二维姿态图来生成对应的虚拟对象,也即通过两种方式结合,从而能够对通过单独一种方法生成的虚拟对象进行调整,进一步的提高了生成的虚拟对象的精确度,进而解决了基于二维图像生成虚拟对象时,生成的虚拟对象的精确度较低的技术问题。
本领域普通技术人员可以理解,图所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(MobileInternetDevices,MID)、PAD等终端设备。图14并不对上述电子装置的结构造成限定。例如,计算机终端A还可包括比图14中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图14所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例12
本申请的实施例还提供了一种计算机可读存储介质。可选地,在本实施例中,上述计算机可读存储介质可以用于保存上述实施例1所提供的虚拟对象的生成方法所执行的程序代码。
可选地,在本实施例中,上述计算机可读存储介质可以位于AR/VR设备网络中AR/VR设备终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:获取真实场景中的实体对象在多个视角下的二维姿态图,其中,二维姿态图用于表征实体对象上的关节点在多个视角下的位置信息;基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,其中,接触状态用于表征预设部位与实体平面是否接触;基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态;基于三维姿态和多个视角下的二维姿态图,生成实体对象映射至虚拟场景中得到的虚拟对象。
可选的,上述处理器还可以执行如下步骤的程序代码:基于多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,包括:基于多个视角下的二维姿态图,生成虚拟对象的虚拟网格;基于虚拟网格上的多个顶点,预测得到虚拟场景中与实体平面相关联的目标虚拟平面;基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设部位的接触状态,其中,预设顶点用于表征预设部位对应的顶点。
可选的,上述处理器还可以执行如下步骤的程序代码:基于多个视角下的二维姿态图,生成虚拟对象的虚拟网格,包括:对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征;对多个不同视角下的二维姿态特征进行叠加,得到融合特征;对融合特征进行解码,得到虚拟网格。
可选的,上述处理器还可以执行如下步骤的程序代码:上述处理器还可以执行如下步骤的程序代码:基于虚拟网格上的多个顶点,预测得到虚拟场景中与实体平面相关联的目标虚拟平面,包括:获取虚拟场景中的初始虚拟平面;确定虚拟网格上的多个顶点中,与初始虚拟平面距离最小的第一顶点;对第一顶点进行拟合,生成目标虚拟平面。
可选的,上述处理器还可以执行如下步骤的程序代码:基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设部位的接触状态,包括:基于虚拟网格上的预设顶点与目标虚拟平面之间的距离,得到预设顶点的顶点接触状态;对预设顶点的顶点接触状态进行叠加,得到预设部位的接触状态。
可选的,上述处理器还可以执行如下步骤的程序代码:预设部位包含:多个子部位,对预设顶点的顶点接触状态进行汇总,得到预设部位的接触状态,包括:对预设顶点进行分组,得到多个顶点集合,其中,多个顶点集合与多个子部位一一对应;对多个顶点集合包含的顶点的顶点接触状态进行叠加,得到多个子部位的接触状态。
可选的,上述处理器还可以执行如下步骤的程序代码:预设部位包含:多个子部位,基于预设部位的接触状态和多个视角下的二维姿态图,生成实体对象的三维姿态,包括:基于多个子部位的接触状态,生成目标运动学树,其中,目标运动学树包含多个节点和连接在两个节点之间的边,多个节点用于表征实体对象的关节点,边用于表征两个节点之间的运动顺序;对多个视角下的二维姿态图进行特征提取,得到多个视角下的二维姿态特征;对多个不同视角下的二维姿态特征进行叠加,得到融合特征;基于融合特征对目标运动学树进行反向遍历,生成三维姿态。
可选的,上述处理器还可以执行如下步骤的程序代码:基于多个子部位的接触状态,生成目标运动学树,包括:基于多个子部位的接触状态,确定多个子部位中的目标子部位,其中,目标子部位用于表征实体对象上与实体平面接触的子部位;基于目标子部位,生成目标运动学树,其中,目标运动学树的根节点为目标子部位对应的节点。
可选的,上述处理器还可以执行如下步骤的程序代码:基于融合特征对目标运动学树进行反向遍历,生成三维姿态,包括:确定目标运动学树中当前遍历的目标节点;获取目标节点之前的祖先节点的姿态,其中,在目标节点为目标运动学树的根节点的情况下,祖先节点的姿态为空;基于融合特征和祖先节点的姿态进行回归处理,得到目标节点的姿态;在目标运动学树遍历完成的情况下,基于目标运动学树包含的多个节点的姿态,得到三维姿态。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (14)
1.一种虚拟对象的生成方法,其特征在于,包括:
获取真实场景中的实体对象在多个视角下的二维姿态图,其中,所述二维姿态图用于表征所述实体对象上的关节点在所述多个视角下的位置信息;
基于所述多个视角下的二维姿态图,预测得到所述实体对象上的预设部位的接触状态,其中,所述接触状态用于表征所述预设部位与实体平面是否接触;
基于所述预设部位的接触状态和所述多个视角下的二维姿态图,生成所述实体对象的三维姿态;
基于所述三维姿态和所述多个视角下的二维姿态图,生成所述实体对象映射至虚拟场景中得到的虚拟对象。
2.根据权利要求1所述的方法,其特征在于,基于所述多个视角下的二维姿态图,预测得到实体对象上的预设部位的接触状态,包括:
基于所述多个视角下的二维姿态图,生成所述虚拟对象的虚拟网格;
基于所述虚拟网格上的多个顶点,预测得到虚拟场景中与所述实体平面相关联的目标虚拟平面;
基于所述虚拟网格上的预设顶点与所述目标虚拟平面之间的距离,得到所述预设部位的接触状态,其中,所述预设顶点用于表征所述预设部位对应的顶点。
3.根据权利要求2所述的方法,其特征在于,基于所述多个视角下的二维姿态图,生成所述虚拟对象的虚拟网格,包括:
对所述多个视角下的二维姿态图进行特征提取,得到所述多个视角下的二维姿态特征;
对所述多个不同视角下的二维姿态特征进行叠加,得到融合特征;
对所述融合特征进行解码,得到所述虚拟网格。
4.根据权利要求2所述的方法,其特征在于,基于所述虚拟网格上的多个顶点,预测得到虚拟场景中与所述实体平面相关联的目标虚拟平面,包括:
获取所述虚拟场景中的初始虚拟平面;
确定所述虚拟网格上的多个顶点中,与所述初始虚拟平面距离最小的第一顶点;
对所述第一顶点进行拟合,生成所述目标虚拟平面。
5.根据权利要求2所述的方法,其特征在于,基于所述虚拟网格上的预设顶点与所述目标虚拟平面之间的距离,得到所述预设部位的接触状态,包括:
基于所述虚拟网格上的预设顶点与所述目标虚拟平面之间的距离,得到所述预设顶点的顶点接触状态;
对所述预设顶点的顶点接触状态进行叠加,得到所述预设部位的接触状态。
6.根据权利要求1所述的方法,其特征在于,所述预设部位包含:多个子部位,基于所述预设部位的接触状态和所述多个视角下的二维姿态图,生成所述实体对象的三维姿态,包括:
基于所述多个子部位的接触状态,生成目标运动学树,其中,所述目标运动学树包含多个节点和连接在两个节点之间的边,所述多个节点用于表征所述实体对象的关节点,所述边用于表征所述两个节点之间的运动顺序;
对所述多个视角下的二维姿态图进行特征提取,得到所述多个视角下的二维姿态特征;
对所述多个不同视角下的二维姿态特征进行叠加,得到融合特征;
基于所述融合特征对所述目标运动学树进行反向遍历,生成所述三维姿态。
7.根据权利要求6所述的方法,其特征在于,基于所述多个子部位的接触状态,生成目标运动学树,包括:
基于所述多个子部位的接触状态,确定所述多个子部位中的目标子部位,其中,所述目标子部位用于表征所述实体对象上与所述实体平面接触的子部位;
基于所述目标子部位,生成所述目标运动学树,其中,所述目标运动学树的根节点为所述目标子部位对应的节点。
8.根据权利要求6所述的方法,其特征在于,基于所述融合特征对所述目标运动学树进行反向遍历,生成所述三维姿态,包括:
确定所述目标运动学树中当前遍历的目标节点;
获取所述目标节点之前的祖先节点的姿态,其中,在所述目标节点为所述目标运动学树的根节点的情况下,所述祖先节点的姿态为空;
基于所述融合特征和所述祖先节点的姿态进行回归处理,得到所述目标节点的姿态;
在所述目标运动学树遍历完成的情况下,基于所述目标运动学树包含的所述多个节点的姿态,得到所述三维姿态。
9.一种虚拟对象的生成方法,其特征在于,包括:
响应作用于操作界面上的输入,在所述操作界面上显示多个视角下的二维姿态图,其中,所述多个视角下的二维姿态图用于表征所述真实场景中的实体对象的关节点在所述多个视角下的位置信息;
响应作用于所述操作界面上的生成指令,在所述操作界面上显示所述实体对象映射至虚拟场景中得到的虚拟对象,其中,所述虚拟对象是基于所述实体对象的三维姿态和所述多个视角下的二维姿态图生成的,所述三维姿态是基于所述实体对象上的预设部位的接触状态和所述多个视角下的二维姿态图生成的,所述预设部位的接触状态是基于所述多个视角下的二维姿态图预测得到的。
10.一种虚拟对象的生成方法,其特征在于,包括:
在虚拟现实VR设备或增强现实AR设备的呈现画面上展示多个视角下的二维姿态图,其中,所述多个视角下的二维姿态图用于表征所述实场景中的实体对象的关节点在所述多个视角下的位置信息;
基于所述多个视角下的二维姿态图,预测得到所述实体对象上的预设部位的接触状态,其中,所述接触状态用于表征所述预设部位与实体平面是否接触;
基于所述预设部位的接触状态和所述多个视角下的二维姿态图,生成所述实体对象的三维姿态;
基于所述三维姿态和所述多个视角下的二维姿态图,生成所述实体对象映射至虚拟场景中得到的虚拟对象;
驱动所述VR设备或所述AR设备渲染展示所述虚拟对象。
11.一种虚拟对象的生成方法,其特征在于,包括:
通过调用第一接口获取多个视角下的二维姿态图,其中,所述第一接口包括第一参数,所述第一参数的参数值为所述多个视角下的二维姿态图,所述多个视角下的二维姿态图用于表征所述实场景中的实体对象的关节点在所述多个视角下的位置信息;
基于所述多个视角下的二维姿态图,预测得到所述实体对象上的预设部位的接触状态,其中,所述接触状态用于表征所述预设部位与实体平面是否接触;
基于所述预设部位的接触状态和所述多个视角下的二维姿态图,生成所述实体对象的三维姿态;
基于所述三维姿态和所述多个视角下的二维姿态图,生成所述实体对象映射至虚拟场景中得到的虚拟对象;
通过调用第二接口输出所述虚拟对象,其中,所述第二接口包括第二参数,所述第二参数的参数值为所述虚拟对象。
12.一种三维姿态的处理方法,其特征在于,包括:
获取二维图像,其中,所述二维图像是对真实场景中的实体人物进行拍摄得到的图像;
对所述二维图像中的所述实体人物进行二维姿态估计,得到多个视角下的二维姿态特征;
基于所述多个视角下的二维姿态特征,预测得到所述实体对象上的预设部位的接触状态,其中,所述接触状态用于表征所述预设部位与实体平面是否接触;
基于所述预设部位的接触状态和所述多个视角下的二维姿态特征,生成所述实体对象的三维姿态;
将所述三维姿态结果与预设三维姿态进行匹配,得到所述三维姿态结果的处理结果,其中,所述处理结果用于表征所述三维姿态结果与所述预设三维姿态是否相匹配的。
13.一种电子设备,其特征在于,包括:
存储器,存储有可执行程序;
处理器,用于运行所述程序,其中,所述程序运行时执行权利要求1至12中任意一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的可执行程序,其中,在所述可执行程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至12中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310508879.XA CN116523737A (zh) | 2023-05-04 | 2023-05-04 | 虚拟对象的生成方法、三维姿态的处理方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310508879.XA CN116523737A (zh) | 2023-05-04 | 2023-05-04 | 虚拟对象的生成方法、三维姿态的处理方法及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116523737A true CN116523737A (zh) | 2023-08-01 |
Family
ID=87406181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310508879.XA Pending CN116523737A (zh) | 2023-05-04 | 2023-05-04 | 虚拟对象的生成方法、三维姿态的处理方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116523737A (zh) |
-
2023
- 2023-05-04 CN CN202310508879.XA patent/CN116523737A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11270460B2 (en) | Method and apparatus for determining pose of image capturing device, and storage medium | |
US20200051328A1 (en) | Cross reality system | |
JP2021534491A (ja) | クロスリアリティシステム | |
JP2021508869A (ja) | 多段階ブロックメッシュ簡略化 | |
CN113706699B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN113313818B (zh) | 一种三维重建方法、装置及系统 | |
JP2022533207A (ja) | 稠密3d再構築データのキャッシュおよび更新 | |
KR100560464B1 (ko) | 관찰자의 시점에 적응적인 다시점 영상 디스플레이 시스템을 구성하는 방법 | |
CN108230384A (zh) | 图像深度计算方法、装置、存储介质和电子设备 | |
WO2020072972A1 (en) | A cross reality system | |
US20210407125A1 (en) | Object recognition neural network for amodal center prediction | |
US20210181506A1 (en) | Image Display Method, Apparatus, and System | |
CN116188689A (zh) | 辐射场的处理方法、存储介质以及计算机终端 | |
CN114450719A (zh) | 人体模型重建方法、重建系统及存储介质 | |
CN113795863A (zh) | 用于图像的深度图的处理 | |
CN116071551A (zh) | 图像处理方法、计算机可读存储介质及电子设备 | |
CN116523737A (zh) | 虚拟对象的生成方法、三维姿态的处理方法及电子设备 | |
CN114998514A (zh) | 一种虚拟角色的生成方法及设备 | |
CN115131528A (zh) | 虚拟现实场景确定方法、装置及系统 | |
CN114299225A (zh) | 动作图像生成方法、模型构建方法、设备及存储介质 | |
CN116630535A (zh) | 虚拟对象的生成方法、三维姿态的处理方法及电子设备 | |
CN116188698B (zh) | 对象的处理方法和电子设备 | |
CN116128918A (zh) | 姿态估计方法、虚拟对象的驱动方法及电子设备 | |
CN116630491A (zh) | 动画生成方法和存储介质 | |
US20230290101A1 (en) | Data processing method and apparatus, electronic device, and computer-readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |