Facebook论文详细分享Oculus Quest手部追踪技术细节
已经能够相当精确地追踪手部和手指的快速运动
(映维网 2020年09月11日)在今年6月举行的2020年计算机视觉和模式识别大会中,Facebook Reality Labs的首席科学家迈克尔·亚伯拉什通过视频介绍了团队的研究及相关进展。
其中,亚伯拉什展示了优化的手部追踪功能,并表示现在Facebook研发的系统已经能够相当精确地追踪手部和手指的快速运动。另外,他指出光学手部和手指追踪将成为空间计算机范式的重要组成要素。
相关团队在8月举行的SIGGRAPH大会展示了所述研究,并发布了具体论文。
以前大部分关于手部追踪的研究都集中在外部深度摄像头或RGB摄像头。深度摄影头可以提供2.5D点云的手部几何图像。然而,深度摄像头对硬件设计和电量使用提出了额外的要求。相比之下,RGB摄像头更容易集成,而随着深度学习技术的进步,它们的实用性同样在不断提高。所以,利用单一RGB摄像头和神经网络来预测手部姿态已经成为一个热门的研究课题。
Facebook Reality Labs主要提出了用于驱动虚拟现实和增强现实体验的实时手部追踪系统。利用四个鱼眼单色摄像头,系统能够生成精确和低抖动的三维手部。研究人员主要是通过用于检测手部和估计手部关键点位置的神经网络架构来实现这一点。
相关论文:MEgATrack: Monochrome Egocentric Articulated Hand-Tracking for Virtual Reality
手部检测网络能够可靠地处理各种真实世界的环境,而关键点估计网络则利用追踪历史来产生时空一致的姿态。团队同时设计了可扩展的半自动机制,通过手动注释和自动追踪相结合的方式来收集大量不同的ground truth数据。
另外,研究人员引入了一种追踪检测的方法,在降低计算成本的同时提高了平滑度。优化后的系统在PC端能够以60Hz的速度运行,而移动处理器则是30Hz。
使用单色摄像头进行手部追踪
下图概述了Facebook研发的手部追踪系统。团队从四个单色摄像头的图像开始,检测每个图像中的左手和右手,并生成一组边界框。然后,从图像中裁剪出每个包围盒(bounding box),并将其传递给能够检测21个关键点的网络。相关的手部模型分为两部分:一个是手部骨架S;另一个是网格模型M。手部骨骼S由26个自由度组成,其中6个自由度代表全局变换,4个旋转自由度代表手指关节。
具体而言,手部检测的任务是在每个输入图像中寻找每只手的包围盒。一个关键的挑战是确保对各种真实世界环境的鲁棒性。为了应对这一挑战,团队使用半自动标记方法收集了大量不同的手部检测数据集,并提出了一个简单而高效的CNN架构:DetNet
由于任何输入都有固定数量的输出(最多两只手),团队将DetNet设计成直接从VGA分辨率输入图像中回归出每只手的2D中心和标量半径,并经过各种算法函数来预测相关的包围盒。
然后,关键点估计网络KeyNet根据手部检测步骤中预测的包围盒来从图像中预测出关于手部的21个关键点。
先前关于关键点估计的研究通常是独立地处理每个图像。对于实时多摄像头系统来说,这存在几个缺点。首先,当手在重叠的摄影头视图之间移动时,预测的质量会降低,因为每个视图都是独立处理;第二,关键点容易抖动,因为时间一致性不是强制执行。为了解决这两个问题,研究人员将网络设计成显式地将推断出的关键点纳入为一个额外的网络输入。
研究使用了四个VGA同步全局快门摄像头来驱动手部追踪系统。每个摄像头的视场范围为150度(宽)、120度(高)和175度(对角线)。右侧的中心区域由两个或多个摄像头(立体、红色/橙色/绿色)覆盖,从而确保区域内的追踪最为准确。
为了给KeyNet训练生成关键点标签,研究人员使用基于深度的手动追踪系统生成groundtruth关键点注释,并将生成的关键点投影到数个已校准的单色视图中。
如上图所示,六个60Hz的单色鱼眼摄像头放置在一个刚性框架之上,而一个50Hz的单色深度摄像头则用来捕捉和标记手部运动。摄像头在空间和时间方面都相互注册,所以手部追踪器生成的关键点可以重新投影和插值到单色视图中。另外,由于这一捕获装置具备移动性,从而能够快速捕捉光线和环境的变化。
包围盒标签对于训练一个精确的数据网络而言十分重要。为了最大化标记任务的吞吐量和效率,研究人员使用了一个创新的半自动解决方案来标记包围盒。在手动标记初始帧的手部包围盒之后,团队使用一个经过训练的KeyNet和一个追踪管道来传输手势。如果注意到追踪器失败,注释器只需注释一个新盒,被追踪的手部就会自动更新。
研究人员分别使用通用的、校准的和扫描的方法来描述默认的手部模型。表1的中间部分使用了通过扫描系统获得的手部模型。我们可以看到,团队研发的KeyNet所生成的MKPE与基线Keynet-S相似,但MKA在立体和单目图像方面都显著降低。这表明,所述的KeyNet架构能够有效地提高时间平滑度。
表1中的底部部分说明了解析手部比例的重要性。与使用扫描系统获得的手部模型相比,使用通用手部模型时的系统精度大大降低。当追踪器在单目模式下运行时,这种问题更为严重,因为在单一视图中解析深度模糊严重依赖于手部模型比例的准确性。利用团队提出的手部比例分解方法,追踪精度接近于通过三维扫描获得的手部模型。
当然,上述解决方案依然存在失败的情况,例如在进行复杂的手-手交互和手-对象交互时,以及出现不常见的手部视图时。研究人员承认,手-手交互和手-对象交互的失败反映了系统的设计依然存在局限性。展望未来,团队将继续致力于提升追踪系统的精确性和鲁棒性。