当我们抓住一个物体时,手指和手的多个区域通常会与物体的表面接触。重建这样的接触区域具有挑战性。在这里,我们提出了一种通过将基于标记的运动捕捉与现有的基于深度学习的手网格重建相结合来近似估计接触区域的方法。
为了成功抓住物体,我们必须为我们的手在物体表面上选择合适的接触区域。然而,确定这些区域具有挑战性。本文介绍了一种根据基于标记的跟踪数据估计接触区域的工作流程。参与者抓住真实的物体,而我们跟踪物体和手的3D位置,包括手指的关节。我们首先从位于手背上的一系列跟踪标记中确定联合欧拉角。然后,我们使用最先进的手部网格重建算法来生成参与者在当前姿势和 3D 位置下的手的网格模型。
使用3D打印或3D扫描的对象 – 因此,可以作为真实对象和网格数据 – 允许手和对象网格共同配准。反过来,这允许通过计算手网格和共配准的3D对象网格之间的交点来估计近似接触区域。该方法可用于估计人类在各种条件下抓取物体的位置和方式。因此,研究视觉和触觉感知,运动控制,虚拟和增强现实中的人机交互以及机器人技术的研究人员可能会对该方法感兴趣。
抓取和操纵物体的能力是使人类能够根据自己的需求重塑环境的关键能力。然而,有效地控制多关节手是一项具有挑战性的任务,需要复杂的控制系统。该运动控制系统由多种形式的感官输入引导,其中视觉至关重要。通过视觉,个人可以识别环境中的物体并估计它们的位置和物理特性,然后可以轻松到达、抓取和操纵这些物体。了解将视网膜输入与控制手的运动命令联系起来的复杂系统是感觉运动神经科学的一个关键挑战。为了建模、预测和理解这个系统是如何工作的,我们必须首先能够详细研究它。这需要对视觉输入和手动电机输出进行高保真测量。
过去的运动跟踪技术给人类抓取的研究带来了许多限制。例如,需要将电缆连接到参与者的手1,2的系统倾向于限制手指运动的范围,从而可能改变抓取动作或测量本身。尽管存在这些局限性,但以前的研究已经能够确定影响视觉引导抓取的几个因素。其中一些因素包括物体形状3、4、5、6、表面粗糙度7、8、9 或物体相对于手的方向 4、8、10。然而,为了克服以前的技术限制,大多数先前的研究都采用了简单的刺激和高度受限的任务,因此主要关注单个因素3,4,6,7,10,两位数精密夹具3,4,6,9,11,12, 13、14、15、16、17、18、单个物体19、或非常简单的2D形状20、21。先前的发现如何超越这种减少和人工的实验室条件尚不清楚。此外,手与物体接触的测量通常简化为对数字接触点22的估计。这种简化可能适用于描述只有指尖与物体接触的一小部分抓握。然而,在大多数现实世界的抓握中,手指和手掌的大面积区域与物体接触。此外,最近的一项研究23已经证明,使用触觉手套,可以通过物体表面如何撞击手来识别物体。这突出了研究手与被抓物体之间的延伸接触区域的重要性,而不仅仅是物体与指尖之间的接触点22。
动作捕捉和3D手部建模的最新进展使我们能够超越以前的限制,并研究抓握的全部复杂性。基于被动标记的运动跟踪现在可用于毫米大小的标记,这些标记可以连接到参与者的手背以跟踪关节运动24。此外,用于无源标记系统的自动标记识别算法现在足够强大,几乎消除了对标记数据进行大量手动后处理的需要25,26,27。在视频28 中,无标记解决方案在跟踪动物身体部位方面的性能也达到了令人印象深刻的水平。因此,这些运动跟踪方法最终允许对复杂的多位数手部运动进行可靠且无创的测量24。这种测量可以告诉我们关节运动学,并使我们能够估计手和物体之间的接触点。此外,近年来,计算机视觉社区一直在解决构建人手模型的问题,该模型可以复制物体抓取过程中的软组织变形,甚至在手部之间的自接触过程中29,30,31,32。这种3D网格重建可以从不同类型的数据中得出,例如视频片段33、34、骨骼关节(源自基于标记的35或无标记跟踪36)和深度图像37。该领域的第一个关键进展是由Romero等人提供的,38,他们从31名不同姿势的受试者的1,000多次手部扫描中得出了一个参数化手部模型(MANOs)。该模型包含手部姿势和形状的参数,有助于从不同数据源回归到完整的手部重建。最新的 DeepHandMesh29 解决方案基于这种方法,通过深度学习构建参数化模型并添加穿透避免,从而更准确地复制手部部件之间的物理相互作用。通过将这种手部网格重建与3D跟踪对象网格相结合,现在可以估计不仅物体32表面上的接触区域,而且估计手表面上的接触区域。
在这里,我们提出了一种工作流程,将物体和手关节的高保真3D跟踪与新颖的手部网格重建算法结合在一起。该方法生成手-物体接触表面的详细地图。这些测量将帮助感觉运动神经科学家扩展我们对人类视觉引导抓取的理论理解。此外,该方法可能对相邻领域的研究人员有用。例如,人为因素研究人员可以使用这种方法在虚拟现实和增强现实中构建更好的人机界面系统18。人类抓取行为的高保真测量还可以帮助机器人专家根据交互式感知原理设计受人类启发的机器人抓取系统39,40,41,42,43。因此,我们希望这种方法将有助于推进神经科学和工程领域的抓取研究,从对高度受限任务的稀疏描述到对复杂物体和现实世界任务的自然抓取行为的更全面描述。图 1 概述了总体方法。
图 1:所提出的方法中的关键步骤 。 (A)动作捕捉摄像机从多个角度对工作台进行成像。(B)刺激对象是从三角网格模型3D打印出来的。(C)四个球形反射标记粘在真实物体的表面上。半自动过程标识网格对象表面上的四个相应点。这种对应关系使我们能够将网格模型旋转平移到真实对象的 3D 跟踪位置。(D)使用双面胶带将反光标记贴在参与者手背上的不同地标上。(E)运动捕捉系统在单次试验中获取被跟踪物体和手部标记的3D空间轨迹。(F)使用3D计算机图形软件构建参与者特定的手骨架。然后通过反向运动学估计实验中每个试验的每一帧的骨骼关节姿势。(G)关节姿势被输入到DeepHandMesh29的修改版本,该版本在当前3D姿势和位置中输出估计的3D手部网格。(H)最后,我们使用网格交集来计算手-物体接触区域。 请点击此处查看此图的大图。
我们提出了一种方法,可以在多位数抓取期间估计手与物体相互作用的接触区域。由于目前很难完全跟踪手的整个表面,我们建议使用手网格的重建,其姿势由手上的稀疏关键点决定。为了跟踪这些稀疏的关键点,我们的解决方案采用了基于被动标记跟踪的研究级运动捕捉系统。当然,其他运动捕捉系统也可以与所提出的方法一起使用,前提是它们产生足够准确的3D位置数据。我们建议不要使用主动标记运动捕捉系统(例如流行但已停产的Optotrak Certus),因为这些系统需要在参与者的手上连接电缆和/或电子设备,这可能会限制运动或至少产生不太典型的抓握,因为参与者更加有意识地意识到他们的手的姿势。使用惯性测量单元的运动跟踪手套可能是可能的,即使已知这些系统会遭受漂移,也可能限制手部运动,并且不允许手的表面与物体表面完全直接接触。商业无标记手部跟踪解决方案(例如,Leap Motion46,47,48)也可能是可能的,尽管仅使用这些系统可能无法跟踪物体位置。研究级运动捕捉系统最有前途的替代选择是开源的无标记跟踪解决方案(例如,Mathis等人28)。如果与多个共同注册的相机49一起使用,这种系统可以潜在地在3D中跟踪手关节位置和物体位置,而无需标记,手套或电缆。但是,这些解决方案以及这种基于标记的系统可能会因遮挡而遭受数据丢失问题的影响。
局限和未来方向
由于通过这种方法获得的手工重建不会完全准确,因此应使用该方法的实验类型存在一些限制。手部网格重建与地面实况的偏差将表现为估计的手/物体接触区域的偏差。因此,应用此方法得出绝对测量值需要评估接触区域估计值的保真度。然而,即使是近似估计在参与者内的实验设计中仍然有用,因为该方法的潜在偏差可能会以类似的方式影响参与者内的不同实验条件。因此,统计分析和推断应仅针对诸如条件之间接触面积差异之类的措施进行,其中效应的方向将与各自的基本事实相关。在未来的研究中,我们计划进一步验证我们的方法,例如通过将接触区域估计值与热致变色涂料覆盖的物体上的热指纹进行比较。
从数据收集到最终接触区域估计的大多数处理步骤都是全自动的,因此为手-物体接触区域估计的标准化程序做出了重要贡献。但是,仍然必须手动执行个性化骨骼与跟踪标记的 3D 位置的初始拟合,以获得每个参与者的骨骼定义。随着实验参与者数量的增加,手动拟合的数量也会增加,这是目前过程中最耗时的步骤,需要熟悉 Autodesk Maya 软件中的手动绑定。将来,我们的目标是通过添加自动骨架校准程序来自动化此步骤,以避免人为对程序的影响。
此处描述的工作流程依赖于 Qualisys 硬件和软件(例如,QTM 骨架求解器)。这目前限制了我们的方法对具有类似设置的实验室的可访问性。然而,原则上,该方法可以应用于任何运动捕捉数据源。为了扩大可访问性,在正在进行的工作中,我们正在探索替代方案,这些替代方案应该推广我们的工作流程,并使其减少对特定硬件和软件许可证的依赖。
该方法的另一个重要限制是,以目前的形式,它只能应用于刚性(不可变形)物体。将来,可以使用记录被抓物体变形时表面形状的方法克服这一限制。此外,由于其近似性质,该方法目前不太适合非常小或非常薄的物体。
总之,通过将最先进的运动跟踪与高保真手表面建模相结合,我们提供了一种在抓取和操作过程中估计手-物体接触区域的方法。在未来的研究中,我们计划部署这种方法来研究和模拟人类的视觉引导抓取行为16。我们进一步计划将这些工具与眼动追踪46,50,51,52和虚拟/增强现实系统53,54,55集成,以研究真实和虚拟自然环境中的视觉引导手和眼球运动运动控制18,46,56,57.由于这些原因,所提出的方法可能会引起研究触觉感知58,运动控制和虚拟和增强现实中人机交互的研究人员的兴趣。最后,对人类抓取能力的准确测量可以为基于交互式感知原理的鲁棒机器人系统的设计提供信息39,40,41,42,43,并可能在上肢假肢中具有转化应用。
The authors have nothing to disclose.
这项研究由德国研究协会(DFG,德国研究基金会:项目编号222641018-SFB/TRR 135 TP C1和IRTG-1901“大脑在行动”)和黑森州高等教育,科学,研究和艺术部卓越计划资助的研究集群“适应性思维”资助。作者感谢Qualisys支持团队,包括Mathias Bankay和Jeffrey Thingvold,为开发我们的方法提供帮助。作者还感谢Michaela Jeschke冒充手模。所有用于重现该方法的数据和分析脚本以及手稿中提供的结果均可在Zenodo(doi:10.5281 / zenodo.7458911)上找到。
Anaconda Python distribution | (Anaconda 5.3.1 or later); https://repo.anaconda.com/archive/ | scripts and functions were generated in Python version 3.7 | |
Autodesk Maya | Autodesk, Inc. | Maya2022; https://www.autodesk.com/products/maya/overview | 3D computer graphics application. |
Blender | Blender Foundation | Blender 2.92; https://download.blender.org/release/ | 3D computer graphics application. |
Computer Workstation | N/A | N/A | OS: Windows 10 or higher. |
DeepHandMesh | Meta Platforms, Inc. (Meta Open Source) | https://github.com/facebookresearch/DeepHandMesh | Pre-trained hand mesh generation tool. |
Miqus M5 | Qualisys Ab | https://www.qualisys.com/cameras/miqus/ | Passive marker motion tracking camera (8 units). |
Miqus video camera | Qualisys Ab | https://www.qualisys.com/cameras/miqus-video/ | Color video camera, synchronized with Miquis M5 tracking cameras (6 units). |
Project repository | N/A | Data and Code Repository | Data and code to replicate the current project. The repository is currently under construction, but we provide a private link where reviewers can download the current and most up-to-date version of the repository. The final repository will be made publicly available upon acceptance. |
Python 3 | Python Software Foundation | Python Version 3.7 | Python3 and associated built-in libraries. |
QTM Connect for Maya | Qualisys Ab | https://github.com/qualisys/QTM-Connect-For-Maya | Stream skeleton, rigid bodies and marker data from QTM to Maya |
QTM Qualisys Track Manager | Qualisys Ab | Qualisys Track Manager 2021.2; https://www.qualisys.com/software/qualisys-track-manager/ | Motion capture software |
Qualisys SDK for Python | Qualisys Ab | https://github.com/qualisys/qualisys_python_sdk | Implements communication between QTM and Python |