首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

已向开发者开放,Meta身体追踪API如何识别下半身?

多年来,Meta Avatar(前身为Oculus Avatar)没有下半身这件事常常被人吐槽,今年Connect期间虽然Meta演示了全身Avatar,但却被爆料是使用动作捕捉来驱动的全身追踪。为什么Meta一直不推出Vive Tracker那样的身体追踪模块呢?这是因为,Quest策略是降低普通人使用VR的门槛,如果只通过VR头显+手柄就能追踪全身姿态,这对于普通用户更加友好,成本也比加上追踪模块的方案更低。

这也是为什么,Meta Avatar全身版的进展很慢,而目前只能在第三人称视角中为Avatar配备虚拟腿。为了解决这一问题,Meta似乎想要通过机器学习和逆向运动技术来推算下半身动作,而在Connect上公布的Movement SDK,则似乎是这一策略的基础。

据悉,Movement SDK是Meta在Connect 2022发布的眼球、面部和全身姿态追踪开发套件,旨在提升VR的社交存在感。近期,Movement SDK正式对开发者开放,Unity、Unreal、OpenXR开发者均可使用Movement SDK。

Body Tracking API

为了让Avatar看起来更加自然,能够拥有全身形象,Meta想出了两种方案,一种是在第三人称模式下为Avatar添加虚拟腿,也就是说你看别人是有腿的,但你看不到自己的腿。另一种方案,则是Body Tracking API,通过VR手柄和手,以及VR头显的位置,来推算出用户全身动作。

Movement SDK的一大亮点,就是包含了Body Tracking API,也就是身体追踪API,其功能是可通过追踪用户双手/手柄和头显的位置来实现三点追踪,并通过算法来实现逆向运动学模拟,控制全身Avatar。

Meta表示:Body Tracking API在手势识别模式和手柄模式中均可使用,这两种模式均可模拟完整的上身骨架,无需开发人员进行额外的逻辑处理。细节方面,Body Tracking API使用一系列抽象的节点来代表用户全身姿态,并且将这些节点映射到虚拟化身的关节上。这将允许Quest用户实时控制Avatar的全身动作。硬件方面,则支持Quest和Quest Pro,不过并未明确是Quest 1还是2,猜测前期大概率先支持Quest 2,后续也许会支持Quest 1。

Body Tracking API主要由三个部分组成:OVR Body、OVR Skeleton和OVR Custom Skeleton,这三个组件可通过手部/手柄位置和头显位置,来控制虚拟化身的骨架动作。简单来讲,Body Tracking API不仅可以控制Meta Avatar,更重要的是允许开发者在VR游戏中加入全身追踪功能,允许游戏角色的全身动作反映出玩家的实际动作。

1)OVR Body

OVR Body可访问实时的身体追踪数据,并推算出全身70个关键节点的位置和旋转角度,还会为这些节点评估追踪可信度。全身追踪支持开启后,OVR Body便会实时更新身体追踪脚本属性BodyState。其中可信度评估可用于优化全身追踪效果,在追踪丢失期间可以使用IK方案来推算并覆盖节点的位置。Meta指出,这是一个高级功能,大多数情况不需要。

2)OVR Skeleton和OVR Custom Skeleton和OVR

Body Tracking API包含了两个互相排斥的骨架系统:Skeleton和Custom Skeleton,这两个骨架都可以控制VR游戏角色,使用哪个将取决于角色绑定。如果需要将OVR追踪节点映射到所有的身体关节,或是未映射的骨骼不影响虚拟化身的动画质量,则可以选择OVR Custom Skeleton。

简单来讲,OVR Skeleton负责初始化和更新OVR Body捕捉到的身体追踪数据,并将这些数据转化为OVRBone骨骼。

开发者可以将VR角色的骨架设定为与OVR BoneId对应值相同的名称,以将现有的虚拟化身骨架与OVR兼容。而不兼容的骨骼则需要使用OVR Skeleton组建,重新将骨骼节点定位到OVRBone数据。骨骼映射部分,可选择手动或自动。在一些场景可能需要重新映射骨骼,Meta表示:由于许多自定义角色会有不同的装备,他们不能直接使用OVRSkeleton和OVRBody。这需要重新定位。

目前,骨骼重新定位仅限于人形角色,还尚未在非人形角色上进行测试。

非真正全身追踪

值得注意的是,尽管Body Tracking API从名字来看是身体追踪的意思,但实际上它并不能准确追踪下半身,只能预测。从Movement SDK示意图来看,Meta Avatar似乎可以支持全身追踪,但如果更仔细看,会发现图片中的细节主要集中在面部追踪部分。

Meta发言人证实,Body Tracking API目前只能模拟VR用户的上半身骨架,并不能追踪下半身。该技术结合了逆向运动学(IK)和机器学习(ML)技术,由于Unity、Unreal引擎内置IK,开发者不需要学习IK原理即可应用在全身虚拟化身中。

目前,Quest的手势追踪功能已经做得足够稳定,通过Quest Pro的传感器,也开始支持眼球和面部追踪。尽管还不支持真正的全身追踪,但相信面部追踪只是Movement SDK的起点,未来还有望扩展到全身。Meta也指出,未来几年Body Tracking API的功能还将继续改进,从现在就开始采用该API,意味着之后使用升级的全身追踪功能无需切换不同的界面。

不过,除非VR用户使用定位模块来追踪全身节点,否则仅依赖IK很难准确追踪VR用户的全身(每种头部和手部位置组合,都可能推算出不同的下半身位置),因此全身Avatar动作可能会与实际动作有出入。相比于市面上的IK技术,Meta的Body Tracking API号称可通过机器学习技术来提升预测的准确性。从早前Reality Labs公布的方案来看,Meta已经在相关研究上取得进展。

关于QuestSim

早在今年9月,Reality Labs就公布了一项由神经网络驱动的全身追踪系统:QuestSim,该系统的特点是可根据Quest 2头显和手柄的数据来预测全身姿态,无需额外的追踪器或外部传感器。从Meta的演示视频来看,QuestSim预测结果足够接近,尤其是VR使用者的腰部方向比较准确。

Reality Labs称,QuestSim生成的全身动作与真实动作非常接近,其准确性和抖动方面甚至优于穿戴式IMU追踪器。不过,QuestSim系统延迟达160毫秒,追踪速度似乎并不是很快。

应用场景方面,QuestSim不仅可以模拟第三人称视角的全身Avatar,未来也可以通过硬件升级来实现更准确的追踪,比如在VR手柄上加入额外的摄像头,也许可以更好的捕捉下半身数据。考虑到Quest Pro手柄内置追踪摄像头,未来也许会用来扩展下半身追踪和预测的效果。参考:Meta

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20221025A06IX600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券