
# 超越手势识别：基于腕部压力传感器阵列的全手姿态与接触力估计

Svetoslav Kolev、Lingni Ma、Michael Goesele、Renzo De Nardi、Jakob Engel、Richard Newcombe

Meta Reality Labs Research

美国

![Image](images/e012554c825f3909fc63cccca1bc4cc2abcce502a62251fefc746b98be65ffc8.jpg)

图1：我们实时运行的端到端系统的五个帧。用户佩戴的腕带中集成了四个压力传感器阵列。用户身后的显示屏从下到上依次显示：腕带的原始压力热图、预测的触觉手套压力图，以及基于个性化模型、由20个手指关节和3个腕关节角度生成的3D手部姿态。

## 摘要

捕捉手部运动与交互力对于交互式计算、虚拟现实以及机器人学习中的高保真触觉演示至关重要。我们提出了一种可穿戴在手腕上的压力传感腕带，能够仅通过这一件可穿戴设备就恢复连续的全手姿态与分布式接触力。该系统由环绕手腕的柔性电容式传感器阵列组成，无需与皮肤直接接触，同时搭配一个循环神经网络，可将产生的压力信号映射为手部状态。我们的核心发现是：肌肉收缩与肌腱位移会产生特定的压力模式，这些模式与手部姿态及交互力存在强相关性。为验证这一点，我们采集了同步记录的手腕压力数据、光学动作捕捉得到的手部姿态数据以及触觉手套测得的交互力数据，涵盖了单个手指的独立运动、指尖受力测试以及自然的手部-物体操控场景。在单个用户的独立运动测试中，该腕带的平均手指关节平均绝对误差（MAE）达到$4.6^{\circ}$；在四名用户操控日常物品时，它能估算出每个手指的接触力，精度达到$R^{2}=0.57$，若结合外部姿态信号，精度还可提升至0.75。我们将这种腕带视为日常可穿戴设备星座中的一个节点——例如与 Egocentric 摄像头配对使用——它能补充视觉无法观测到的接触力信息，并在手部被遮挡时发挥作用。

## 1 引言

未来日常沉浸式计算的发展依赖于捕捉人类手部的全部表达能力——既包括手指运动，也包括手部施加的力。运动与力相结合，能让我们更全面地理解物体交互过程，实现更逼真的虚拟现实与游戏操控体验，也能简化用户输入操作。其中，力尤其能为机器人训练提供更高保真度的人类操作示范。然而，在日常场景中捕捉这些信息仍是一个尚未解决的重大难题。

捕捉人类手部状态的方法有很多。基于视觉的技术在能够看到手部的情况下，能非常有效地捕捉手指运动。但物体交互过程中遮挡现象十分常见，即便使用专用的 Egocentric 摄像头，手部也可能移出视野范围。此外，摄像头与视觉处理需要消耗大量电能。更重要的是，基于视觉的系统本质上无法感知力，因为力是人体内部产生的现象。

手套是另一种获取手部状态的方式。动作捕捉手套的精度很高，但由于其易损坏且佩戴不便，会严重限制手部灵活性，因此不适合全天佩戴。不过手套确实能够帮助我们捕捉手部施加的力。但压力传感器的覆盖范围往往仅限于手指正面，会遗漏日常物体操控中涉及的重要手部表面。

腕部佩戴的设备为感知手部状态提供了一种实用的替代方案。前臂远端（即腕关节附近）是人们通常佩戴手表和手环的位置，这一区域不仅便于佩戴，还能提供丰富的信息。当前臂肌肉和肌腱驱动手部活动时，会在手环与皮肤接触面产生特有的压力变化。因此，腕部佩戴式传感方式既不会干扰日常活动，又易于被社会接受，非常适合日常使用。

我们并不认为腕带能独立发挥作用。我们将其视为众多日常可穿戴设备中的一个节点——它最自然的搭配对象是以用户为中心的摄像头（例如Project Aria $^{[10]}$）。当手部可见时，视觉系统能提供精确的姿态估计；当手部被遮挡或超出画面范围时，腕带则承担起提供姿态估计的任务，同时还能输出视觉系统无法观测到的力量信息。这种互补作用也影响了我们的评估方式：由于配套设备能提供针对特定用户的姿态数据，且实际部署的系统会针对佩戴者进行校准，因此我们将针对单个用户的模型作为主要研究设定，而非将其视为限制条件。我们的“姿态作为输入”的力量实验具体体现了这种协同关系——外部的姿态信号（如来自视觉系统的信号）会被输入腕带，以优化其力量估计结果。

在本文中，我们提出了一种腕部佩戴式压力传感方法，该方法能够测量这些腕部压力模式并学习其与手部姿态及交互力量的映射关系。

---

我们做出的贡献总结如下：

首个通过腕部佩戴式压力带获取的全手部连续姿态；以往要实现全手部姿态的压力传感，需要采用整个前臂的袖套式设备 [^26]。

首次实现基于腕部佩戴式压力阵列的连续力量估计，无论是按手指还是按触觉像素级别划分——在以往的腕部压力研究中，仅能估计整体握力或离散手势。

- 实验证明，以外界提供的手部姿态为条件来估计力量，能显著降低腕部佩戴式力量肌电成像技术的力量平均绝对误差；这一优势此前仅在基于肌电图的力量估计中被证实 [^40]，如今我们将其拓展到了压力传感领域。

## 2 相关工作

手部状态传感可分为三类物理特性截然不同的类型，它们的测量对象各不相同：肌电图用于测量驱动手部的肌肉激活情况，另外两类则用于观测其结果——要么直接在源头观测，要么通过前臂组织的形变间接观测。直接观测方式——如视觉、带传感器的手套、压力板——能在源头测量手指形态和接触力，但受视线遮挡和仪器干扰的限制。肌电图通过电信号测量肌肉活动，适用于没有外部位移发生的固有活动和等长活动场景；依托庞大的公开数据集 [^16] [^38] [^43]，它属于与我们方法互补的信号源，而非竞争对手。我们瞄准的间接观测类别——腕部形态测量——则是通过测量手部活动对手臂组织产生的形变来实现，其测量深度范围涵盖从体积成像（CT、MRI）、部分穿透式方法（超声、近红外光谱、电阻抗断层扫描）到纯表面力学测量（力量肌电成像）等多个层次。

对于可穿戴设备而言，这一频谱实际上会大幅缩减。超声波确实能够清晰呈现肌肉和肌腱的内部结构，或许能提供最丰富的信号，但代价是设备体积增大以及声学耦合问题 [^3] [^9]。我们推测，在用于手部状态识别的紧贴手腕的可穿戴系统中，电阻断层成像与电容式传感所获取的任务相关信号，往往会被压力导致的接触阻抗变化以及表皮下组织形变所主导；而这些现象正是磁通门传感器直接测量的对象，尽管不同传感方式对其的转化机制各不相同 [^24] [^44] [^51] [^53]。

我们采用磁通门传感器，它能通过机械方式感知这种表面形变，且无需皮肤与电极之间的耦合。我们利用它在单一可穿戴设备上实现连续的全手姿态及分布式接触力测量，并展示它如何补充其他已能覆盖其余手部状态信息的传感方式。表1总结了各类传感方式下的代表性系统；下文各小节将依次探讨各个层面。

### 2.1 腕部佩戴式传感与连续姿态识别

相关调研涵盖了多种用于手部识别的腕部佩戴式传感方式 [^14] [^57]：表面肌电、电阻断层成像、超声波以及主动声学传感 [^21]。相比之下，磁通门传感器利用压阻式传感器 [^7]、气压传感器 [^42] 或电容阵列 [^44] 来检测肌肉收缩和肌腱位移引起的皮肤表面机械形变；它具有低功耗、低成本的特点，且不受汗液影响 [^41]。GestureWrist [^32]

<div style="text-align: center;">Table 1: Representative wearable forearm/wrist systems for hand pose and interaction force estimation. Metrics and protocols differ across sources, so values are not directly comparable; per-row operating points and metric definitions are given in Sec. A.1.3.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>System</td><td style='text-align: center; word-wrap: break-word;'>Year</td><td style='text-align: center; word-wrap: break-word;'>Modality</td><td style='text-align: center; word-wrap: break-word;'># Ch</td><td style='text-align: center; word-wrap: break-word;'>Pose Err</td><td style='text-align: center; word-wrap: break-word;'>Force Err</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>emg2pose [^38]</td><td style='text-align: center; word-wrap: break-word;'>2024</td><td style='text-align: center; word-wrap: break-word;'>sEMG</td><td style='text-align: center; word-wrap: break-word;'>16</td><td style='text-align: center; word-wrap: break-word;'>15.8 mm</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>NeuroPose [^23]</td><td style='text-align: center; word-wrap: break-word;'>2021</td><td style='text-align: center; word-wrap: break-word;'>sEMG</td><td style='text-align: center; word-wrap: break-word;'>8</td><td style='text-align: center; word-wrap: break-word;'>$6.2^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Rahimi et al. [^31]</td><td style='text-align: center; word-wrap: break-word;'>2024</td><td style='text-align: center; word-wrap: break-word;'>HD-sEMG</td><td style='text-align: center; word-wrap: break-word;'>320</td><td style='text-align: center; word-wrap: break-word;'>11.0 mm</td><td style='text-align: center; word-wrap: break-word;'>0.8 N</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Li et al. [^22]</td><td style='text-align: center; word-wrap: break-word;'>2024</td><td style='text-align: center; word-wrap: break-word;'>HD-sEMG</td><td style='text-align: center; word-wrap: break-word;'>192</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}=0.80$</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}=0.85$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EtherPose [^18]</td><td style='text-align: center; word-wrap: break-word;'>2022</td><td style='text-align: center; word-wrap: break-word;'>EF</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>11.6 mm</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EITPose [^20]</td><td style='text-align: center; word-wrap: break-word;'>2024</td><td style='text-align: center; word-wrap: break-word;'>EIT</td><td style='text-align: center; word-wrap: break-word;'>8</td><td style='text-align: center; word-wrap: break-word;'>11.1 mm</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Zadok et al. [^54]</td><td style='text-align: center; word-wrap: break-word;'>2022</td><td style='text-align: center; word-wrap: break-word;'>Ultrasound</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>$4.9^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Bimbraw et al. [^4]</td><td style='text-align: center; word-wrap: break-word;'>2023</td><td style='text-align: center; word-wrap: break-word;'>Ultrasound</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>$7.4^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Bimbraw &amp; Zhang [^3]</td><td style='text-align: center; word-wrap: break-word;'>2023</td><td style='text-align: center; word-wrap: break-word;'>Ultrasound</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>0.2 N</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EchoWrist [^21]</td><td style='text-align: center; word-wrap: break-word;'>2024</td><td style='text-align: center; word-wrap: break-word;'>Acoustic</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>4.8 mm</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SleevePose [^26]</td><td style='text-align: center; word-wrap: break-word;'>2026</td><td style='text-align: center; word-wrap: break-word;'>FMG</td><td style='text-align: center; word-wrap: break-word;'>117</td><td style='text-align: center; word-wrap: break-word;'>14.0 mm</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Sakr et al. [^37]</td><td style='text-align: center; word-wrap: break-word;'>2019</td><td style='text-align: center; word-wrap: break-word;'>FMG</td><td style='text-align: center; word-wrap: break-word;'>60</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}=0.77$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PiMForce [^40]</td><td style='text-align: center; word-wrap: break-word;'>2024</td><td style='text-align: center; word-wrap: break-word;'>sEMG/cam</td><td style='text-align: center; word-wrap: break-word;'>8</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}=0.89$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Wrist2Finger [^50]</td><td style='text-align: center; word-wrap: break-word;'>2025</td><td style='text-align: center; word-wrap: break-word;'>sEMG/ring</td><td style='text-align: center; word-wrap: break-word;'>1+1</td><td style='text-align: center; word-wrap: break-word;'>5.7 mm</td><td style='text-align: center; word-wrap: break-word;'>0.21 N</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>2026</td><td style='text-align: center; word-wrap: break-word;'>FMG</td><td style='text-align: center; word-wrap: break-word;'>720</td><td style='text-align: center; word-wrap: break-word;'>7.2 mm</td><td style='text-align: center; word-wrap: break-word;'>0.59 N</td></tr></table>

确立了腕带式设备的形态，而WristFlex [^7] 则证明了压阻式传感可用于全天候输入；更密集的气压传感器 [^42] [^59] 与电容阵列 [^44] [^47] 则进一步提升了手势分类的准确率。不过，这类研究的共同点是仅针对离散手势。

连续姿态识别则更具挑战性。环境安装的摄像头设定了精度基准，以MANO [^34] 等参数化模型为核心，但这类方法需要特定的仪器化空间；腕部佩戴的摄像头 [^19] [^49] 则需要视线能直接触及手部。基于表面肌电 [^38]、电阻断层成像/射频技术 [^18] [^20] 以及声学原理 [^21] 的方法已实现无需视觉辅助的姿态识别。在基于压力的方法中，仅有少数尝试实现连续运动学测量 [^15] [^17] [^42]，且这些方式只能还原部分手部信息（如每个手指的标量值或少数关节数据）；能够基于压力还原完整关节姿态的技术直至近期才出现，且采用的是整个前臂袖套而非腕带 [^26]。我们通过腕部佩戴的电容式压力阵列来回归完整的手部姿态；表1显示，在相同用户操作条件下，密集电容式压力传感在无需视觉辅助的传感方式中表现优异。

### 2.2 力觉与姿态-力觉联合估计

迄今为止，每个手指的受力测量都需要复杂的传感技术：高密度表面肌电信号的运动单元分解 [^35] 或前臂超声波检测 [^3]。视觉技术可通过手部与物体的跟踪来推断接触力 [^28]，但在限制视觉姿态识别的遮挡情况下，该方法会失效。相比之下，基于磁通门传感器的力觉研究仅聚焦于整体握力或前臂带式设备测得的多轴力/扭矩 [^37] [^48]。据我们所知，尚无先前研究能从腕部佩戴的压力阵列中还原出每个手指的受力——更不用说空间分辨的每个传感单元的受力情况。

有些系统会同时估计姿态和力。多任务HD-EMG模型能够预测腕部角度或全身关节位置，同时还能估算握力[^22] [^31]，不过这类模型需要依赖密集的电极网格（前臂周围有192到320个通道），这显然不符合可穿戴设备的实用要求。PiMForce[^40]的研究表明，若以三维手部姿态为条件来估计力，预测精度会有显著提升；该方案利用外部摄像头获取姿态信息，通过表面肌电信号来测量力——我们的力模型也采用了相同的姿态条件化策略。

---

Wrist2Finger[^50]将环形惯性测量单元与手表式表面肌电传感器结合，而WristP²[^49]则能恢复手部姿态及每个顶点的压力数据，但二者都需要持续的可视线条件。相比之下，我们的系统仅采用单个腕戴式电容阵列，就能同时获取全手姿态和每个触觉单元的受力数据，还可选择以外部提供的姿态信号作为力的条件输入。

### 3 基于压感腕带的手部状态检测 3.1 研究动机

我们研究了前臂远端周围的压力信号，将其作为解码人类手部状态的高保真数据源——包括手部姿态以及手掌内侧表面的接触力分布。

我们的方法基于前臂肌肉-肌腱单元与手-物体交互之间的生物力学耦合关系。由于手指和腕部的运动由前臂的外在肌肉驱动，因此手部姿态或交互力的任何变化，都会引发这些组织内部载荷的相应改变。肌肉收缩、肌腱位移时，会改变前臂远端的局部刚度和轮廓，进而通过筋膜将机械变化径向传递至皮肤。因此，腕带测量的表面压力可作为神经肌肉系统运动学（姿态）和动力学（力）结果的替代指标。这一方法存在一个直接局限：腕部以上的内在手部肌肉几乎无法被检测到，这就限制了仅靠腕部佩戴设备所能观测到的纯内在肌肉活动——包括部分拇指运动——的范围[^38]；我们在附录A.1.1中详细阐述了相关解剖学基础。

我们将手部状态视为三个相互关联但彼此独立的组成部分：运动学姿态、外部接触力，以及无外部接触时的共收缩或等长负荷下的内部肌肉张力。本文重点研究前两者；第三种状态既无法通过动作捕捉系统也无法通过触觉手套直接获取，我们将在讨论部分进一步探讨。

我们选择压力传感并非偶然。我们假设，对于用于手部状态推断的紧贴手腕的系统而言，与任务相关的电阻断层成像信号和电容信号往往受压力相关的接触效应及近表面变形的主导。压力传感可直接测量这一机械成分，无需经过电极-皮肤界面（详见附录A.1.2）；我们在附录A.11中通过匹配协议的电阻断层成像对比实验，对这一假设进行了实证检验。

为了研究这种耦合关系，我们定制的腕带中嵌入了密集的电容压力传感器阵列；为了进行监督学习，我们将腕带的测量数据与OptiTrack动作捕捉系统获取的手部姿态数据，以及PPS触觉手套测得的交互力数据同步。

### 3.2 传感硬件

本节我们将介绍用于测量前臂远端周围压力的定制腕带，以及提供手部姿态和交互力监督数据的基准系统。

3.2.1 定制压感腕带。为了测量前臂远端的压力，我们采用了市面上可购得的

![Image](images/ade319b32332cef17a4c4712ff384c2d7e35e2fc042b4b79abb77d26c62c4cf3.jpg)

<div style="text-align: center;">Figure 2: Sensing hardware. From left to right: a single PPS #6383 pressure-sensor array; our large customized pressure wristband with four embedded sensor arrays (visible as indentations under the fabric) and the ADC base station; and dorsal and palmar views of the pressure wristband worn on the distal forearm.</div>

我们采用了Pressure Profile Systems（PPS）公司生产的电容式压力传感器阵列[^30]。具体使用的是PPS #6863阵列，该阵列可测量$39 \times 68 \, mm^2$，其有效感应区域面积为$30 \times 56 \, mm^2$。每个阵列包含由$10 \times 18$构成的感应元件网格，每个感应单元的面积约为$3 \times 3 \, mm^2$（参见图2中展示的单个阵列）。每个传感器都带有一个用于安装放大电路的接线端，所有接线端通过线缆连接到中央集线器，以便进行模数转换并通过USB与主机通信。PPS集线器的持续数据流传输速率取决于所连接的阵列数量：配备3个阵列的小型腕带的数据传输速率约为50 Hz，而配备4个阵列的大型腕带则约为45 Hz。每帧数据都包含设备内部时间戳，集线器还会在传感器帧之间发送周期性的时间同步数据包。这些信号共同帮助我们把腕带时钟与主机时间对齐。

行带状伪影。#6863阵列存在轻微的行间基线差异——在原始热图中表现为水平条纹（见图10）——我们认为这是由每行电路的差异导致的。我们并未对此进行校正，而是将其视为传感器的固有特性，依靠基于学习的模型来补偿这种影响。

为了将传感器阵列封装成可穿戴设备，我们设计了一款薄型织物腕带，腕带上设有专用口袋用以固定每个传感器。该腕带采用锥形结构，能更好地贴合前臂远端，并配有带魔术贴的矩形环扣。为适应不同前臂尺寸，我们制作了配备3个阵列（共540个感应单元）的小型腕带，以及配备4个阵列（共720个感应单元）的大型腕带。图2展示了平铺状态的腕带，以及参与者佩戴腕带后的手背和手掌视角图像。

3.2.2 基于动作捕捉系统得到的手部姿态真值。我们使用OptiTrack动作捕捉系统来获取手部姿态真值，该系统在一个$4 \times 4 \times 3$米大小的捕捉区域内安装了50台红外动作捕捉摄像头。系统的内参和外参已按照标准动作捕捉流程完成校准。为捕捉手部运动，我们在一只薄型动作捕捉手套上放置了19个反光光学标记（见图3）。随后将标记位置半自动地匹配到3D手部模型中。数据采集期间，动作捕捉摄像头会追踪这些标记，再通过[^11]提出的算法，将参与者的UmeTrack手部模型进行拟合，从而计算出手部姿态。该手部追踪算法还会输出手部相对于动作捕捉系统的6自由度全局变换参数。不过，这并非我们用于监督所需的旋转参数。

---

![Image](images/2aaea522dba93526109ac9c0b8333a97a032f53781f5290326c4404d14ad3bad.jpg)

<div style="text-align: center;">Figure 3: Ground-truth collection setup. From left to right: the OptiTrack-based MoCap system to capture hand and wrist poses; the thin MoCap glove with 19 reflective markers attached for hand tracking; the rigid marker tree mounted on the proximal forearm to recover wrist rotation; the PPS tactile glove; and the 65-taxel layout of the PPS glove.</div>

我们需要的是前臂远端相对于肘部的3D旋转参数。为获取这一参数，我们在前臂近端安装了另一套刚性标记装置（见图3）。结合前臂近端的姿态与手部的全局根变换参数，我们就能得到所需的旋转结果。我们使用OptiTrack提供的标准时间码同步协议，将动作捕捉数据与主机时钟对齐，进而实现与腕带记录数据的同步。图3也展示了动作捕捉实验室的场景。

3.2.3 来自触觉手套的真实交互力。我们使用PPS触觉手套[^30]来测量交互力。每只手套在手指和手掌上共提供65个传感单元（具体布局见图3）。每个手指至少有8个传感单元：其中4个位于指尖垫，另外4个分布在两个中间指垫上。拇指和食指在指甲附近各有一个额外的远端传感单元，而食指在靠近拇指的一侧还有3个侧向传感单元。其余传感单元则分布在手掌以及手的尺骨侧边缘。每个传感单元会检测垂直于手套表面的压力，再通过传感单元面积将其转换为力值；我们可以按单个传感单元、单个手指（该手指所有传感单元的力值之和）或单个指尖（指尖垫上所有传感单元的力值之和）来报告这些力值。这些力纯粹是法向力（无切向分量），但由于同一手指上的传感单元朝向不同，因此求和后得到的是总力的大小，而非单一方向的力。

PPS触觉手套通过蓝牙以100 Hz的频率传输数据。虽然手套自带内部时间戳，但我们观察到存在显著的延迟（约35毫秒）和时钟漂移现象。这种漂移类似于随机游走，在10分钟的录制过程中累计可达约1秒。为了补偿这一问题，我们通过反复将手套按压在腕带上，对齐两路数据流中的峰值力事件来估算固定延迟；同时，我们在录制过程中持续跟踪并校正手套的时钟，以避免出现错位。

### 3.3 手部状态学习流程

在本研究中，我们的目标是学习前臂远端周围的压力传感器阵列与手部状态之间的映射关系。我们将这一学习过程建模为序列到序列预测任务，以便充分利用测量数据与预测结果的时间相关性。

3.3.1 符号说明。压力阵列测量序列用$P := \{P_i\}$表示，其中i为时间戳，$P_i \in \mathbb{R}^{w \times h}$表示以$w \times h$空间分辨率测量的压力值。手部状态包括运动学和动力学信息。运动学部分由一系列参数化的手部姿态$\boldsymbol{q} := \{q_i\}$来表示。我们采用UmeTrack手部格式[^12]，该格式包含由20个自由度（DoF）关节角度$\beta \in \mathbb{R}^{20}$定义的20个关节，以及三维手腕旋转信息$\omega \in \mathbb{R}^3$（屈曲-伸展、桡侧-尺侧偏移以及旋前-旋后；这些手腕运动的定义详见第A.1.1节）。这些信息共同构成了完整的运动学状态$q_i = (\beta_i, \omega_i) \in \mathbb{R}^{23}$。我们忽略了与压力信号无关的全局平移和朝向信息，仅追踪手腕相对于肘部的朝向。按照UmeTrack的规定，手部姿态会通过线性混合蒙皮（LBS）技术驱动对应的手部网格模型。动力学部分则由一系列手部施加的交互力$\boldsymbol{\eta} := \{\eta_i\}$来表示。理论上，手与物体的交互会在手部接触面上产生连续的空间力分布，但捕捉这种连续场极具挑战性且在实际中难以实现。实践中，我们将手部内部接触面离散为多个传感区域，这些区域与用于获取真实值的触觉手套的传感单元布局相对应。在本研究中，我们采用$\eta_i \in \mathbb{R}^{65}$（关于传感单元布局以及按手指、指尖汇总的力值信息，详见3.2.3节）。

3.3.2 问题表述。给定手腕压力测量数据，我们探讨了多种学习变体，以研究手腕压力与手部状态之间的相关性。首先，我们分别分析压力数组到手部姿态以及交互力的映射关系，即分别学习$\widetilde{\boldsymbol{q}} = f_{\theta}(\boldsymbol{P})$和$\widetilde{\boldsymbol{\eta}} = f_{\theta}(\boldsymbol{P})$。这些变体的成功促使我们进一步探索手部姿态与力的同时估计，也就是学习$\widetilde{\boldsymbol{q}}, \widetilde{\boldsymbol{\eta}} = f_{\theta}(\boldsymbol{P})$。由于许多基于视觉的手部跟踪算法已经取得了令人瞩目的成果[^12] [^55]，而基于视觉的方案在估计交互力方面存在难题且相关研究较少，因此我们也研究了以已知的手部姿态为条件是否能提升力估计的性能。这种表述将学习过程定义为$\widetilde{\boldsymbol{\eta}} = f_{\theta}(\boldsymbol{P}, \boldsymbol{q})$。

3.3.3 神经网络架构。为了支持所有学习变体，我们采用了一种统一的时间建模神经架构，如图4所示。给定输入序列$\{P_i\}$后，我们首先计算其时间导数。原始信号及其导数会分别通过线性投影层，每层之后都接LayerNorm和激活函数：原始分支使用GeLU激活函数，导数分支则使用Tanh激活函数。Tanh非常适合导数信号，因为它以零为中心且值域有界，这与有限差分所呈现的对称、零均值分布特征相匹配。两个分支中的LayerNorm会自动调整输入到GRU的各通道缩放比例，从而消除了每次记录中的变异来源，也无需手动进行特征归一化。尽管压力数组具有明确的空间布局$w \times h$，但我们并未采用二维卷积；而是将每个映射展平为一位向量。在实践中，这种设计在我们的场景下表现良好，且便于进行消融实验（例如删除某些传感器行或列）。此前的实验中，引入时间导数有助于动态建模，因此我们将其设为默认配置。两个处理后的分支会被拼接起来，经过Dropout层后再输入循环神经网络（RNN）。在本研究中，我们选用门控循环单元（GRU）[^6]作为序列处理的核心组件。GRU的隐藏状态会被线性投影到任务特定的输出维度：手部姿态对应23维（q），交互力对应65维（$\eta$），预测任务则对应88维。

---

![Image](images/4708e100e085b115b6e94d16ae455661956daafa6516f911ce1859d44d1079fe.jpg)

<div style="text-align: center;">Figure 4: Learning pipeline. All variants are formulated as sequence-to-sequence prediction using the same GRU-based architecture. The input at each timestamp is the pressure array concatenated with its temporal derivative. The output can be hand poses (20 finger joint angles and 3 wrist angles), interaction forces, or both. We also study conditioning force estimation on known hand poses, in which case the hand pose is concatenated with the pressure array as input.</div>

同时估计手部姿态和力。对于基于姿态条件的力估计，我们将手部姿态与压力输入拼接起来，其余流程保持不变。

为了训练网络，我们采用均方误差（MSE）作为监督学习的损失函数。对于手部姿态与交互力的同时估计，损失函数会根据模态进行加权，将运动学状态$q_i = (\beta_i, \omega_i)$拆分为手指和手腕两项：

 $$ \mathcal{L}=\frac{1}{T}\sum_{i=1}^{T}\left(\lambda_{\beta}\left\|\widetilde{\boldsymbol{\beta}}_{i}-\boldsymbol{\beta}_{i}\right\|_{2}^{2}+\lambda_{\omega}\left\|\widetilde{\boldsymbol{\omega}}_{i}-\boldsymbol{\omega}_{i}\right\|_{2}^{2}+\lambda_{\eta}\left\|\widetilde{\boldsymbol{\eta}}_{i}-\boldsymbol{\eta}_{i}\right\|_{2}^{2}\right) $$

其中$\beta_{i}$和$\omega_{i}$即为上文定义的手指和手腕关节角度。将两者分开是为了能够独立设置权重，因为手腕旋转在压力数组中产生的信号远比手指活动强得多。

我们采用滑动窗口机制在压力序列上训练并运行该架构；上下文长度、监督策略以及窗口平均的细节将在4.1.2节中详细说明。该模型足够轻量，能够保持实时性能。

### 3.4 数据采集

我们收集了三组数据以支持实验。表2中提供了相关摘要。每次记录对应一次佩戴过程：参与者在开始时戴上腕带，之后取下，因此连续记录中的腕带位置和松紧度会有所不同。佩戴腕带时，我们会将D形环置于前臂背侧远端中央，并通过视觉和触觉检查来调整绑带松紧度。我们要求参与者在各次实验中保持一致的腕带松紧度，且每次记录的时长也大致相同。下文将介绍其中两组主要数据集；第三组辅助性指尖力（FF）数据集则作为额外训练数据用于多项消融实验，其详情见附录（第A.2节）。数据采集完成后，所有传感器数据流都会进行时间对齐，并重新采样至统一的50 Hz时间轴，同时对手套触觉力数据进行逐触点校准和基线校正。代表性样本、各数据集的完整记录协议以及这些处理步骤也均在附录中予以说明。

3.4.1 专注于手部姿势的数据采集（HP）。第一组数据集为针对单个参与者的、专注于手部姿势的数据集。数据采集期间，参与者需佩戴压力腕带、薄款标记手套以及用于动作捕捉的前臂标记装置（见3.2.2节）；由于HP研究仅关注手部姿势，因此不佩戴触觉手套。表2汇总了所收集的数据集：HP（手部姿势）、FF（指尖力）和HOM（手-物体操作）。对于每组数据，我们均标注了可用的手部姿势（hp.）和力基准值，并列出了参与者（ppl.）、实验次数及总时长。下方表格按参与者细分了HOM数据；而HP/FF的单一参与者即为HOM中的P4。

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>dataset</td><td style='text-align: center; word-wrap: break-word;'>hp.</td><td style='text-align: center; word-wrap: break-word;'>force</td><td style='text-align: center; word-wrap: break-word;'># ppl.</td><td style='text-align: center; word-wrap: break-word;'># session</td><td style='text-align: center; word-wrap: break-word;'>dur. (min)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HP</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>1 (P4)</td><td style='text-align: center; word-wrap: break-word;'>20</td><td style='text-align: center; word-wrap: break-word;'>415</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FF</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>finger tip</td><td style='text-align: center; word-wrap: break-word;'>1 (P4)</td><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>348</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>full hand</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>55</td><td style='text-align: center; word-wrap: break-word;'>1160</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P1</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>full hand</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>19</td><td style='text-align: center; word-wrap: break-word;'>366</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P2</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>full hand</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>11</td><td style='text-align: center; word-wrap: break-word;'>285</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P3</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>full hand</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>271</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P4</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>full hand</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>238</td></tr></table>

此类数据仅涉及手部姿势。参与者的手部运动由动作捕捉系统记录。我们特别注重手指运动的多样性以及不同的手腕旋转情况，因为研究发现手腕旋转会在腕部压力中产生强烈信号。总共我们收集了20组记录，数据总量达415分钟，每组记录的时长在16至24分钟之间。

3.4.2 专注于手-物体操作的数据采集（HOM）。在第三组数据中，我们重点关注所有可用的传感模式以及手-物体操作场景。共有四名参与者贡献了这组数据。他们需佩戴压力腕带以及装有光学标记点的PPS触觉手套，以便通过动作捕捉系统追踪手部运动。每次记录包含两个活动环节：在桌面上进行日常物品的拾取与放置，以及物体操作。我们选取了多种日常物品，如罐头、水瓶、玩具、盒子、电钻、锤子等。物体操作遵循其自然功能，例如拧开或拧紧瓶盖、手持物品检查、模拟工具使用等。数据采集期间，要求参与者保持牢固稳定的抓握状态，并做出自然随意的动作。

## 4 实验与结果

我们将结果分为两部分呈现：手部姿势估计和力估计，所用数据均来自3.4节所述内容。对于手部姿势估计，我们报告了在HP和HOM数据集上的结果；力估计结果则在HOM数据集上得出；辅助性的FF数据集（见A.2.2节）也在下述分析中作为参考基线。

---

跨用户泛化。本节中的所有结果均采用逐用户模型（见4.1节）——这一做法部分出于设计考量（配套设备会提供用户特定的姿态数据），部分是因为我们的样本量太小，无法开展迁移学习测试：四名HOM用户中有一人佩戴的是不同型号的传感带，因此只能采用“用两份数据训练、用一份数据测试”的方式。在此条件下，在其他用户数据上的预训练既无法直接提升性能，也无法作为逐用户适配的初始条件。我们认为这是样本量小且硬件配置混杂所致，而非该模态本身的局限性；关于大样本量、硬件配置一致条件下的预训练与适配研究，将留待后续开展。

### 4.1 评估协议

4.1.1 评估指标。我们对每个估计的标量量——单个关节角度、手腕角度或力通道——采用三种互补的指标进行评估。平均绝对误差（MAE）反映了预测误差的平均幅度，其中关节角度以度为单位，力以牛顿为单位，压电传感器压力以PSI为单位。决定系数（$R^{2}$）衡量预测结果能解释的真实值方差占比，其取值范围为0到1，1表示完美拟合，0则表示预测结果等同于直接取均值（若预测效果比均值还差，该值会为负）。最后，真实值的标准差（$\sigma(GT)$）反映了信号本身的离散程度，可作为MAE的参考基准：若MAE接近$\sigma(GT)$，说明模型除了能捕捉信号的边缘分布外，无法获取更多有效信息。相关正式定义详见附录（A.4节）。

位置误差。对于手部姿态，我们还会报告位置误差（单位：毫米），该数值是通过运动捕捉系统提供的骨骼模型，根据预测的关节角度通过正运动学计算得出的。我们分别报告指尖位置误差和平均关节位置误差（MPJPE，即手部骨骼上各标志点之间的平均欧几里得距离）；具体的关节定义详见附录（A.4节）。这两类指标均有两种变体：“无手腕”组以真实的手腕朝向作为根节点，用于分离手指关节误差与手腕预测误差；“有手腕”组则以预测得到的手腕朝向作为根节点，用于反映完整的端到端误差。这些位置指标仅在手指级别的粒度下才有意义。

多自由度指标的聚合。在聚合这些多自由度的指标时需格外注意，以避免产生偏差；相关规则细节详见附录（A.4.3节）。

4.1.2 训练与评估。除非另有说明，我们均按照上述思路训练和评估逐用户模型。

在大多数实验中，我们在每个数据集内采用留一录音交叉验证法：针对每一份被保留的录音，我们用其余所有录音进行训练，再报告所有保留录音对应的平均误差。由于每次录音对应一次传感带的佩戴操作（录音之间需取下传感带，详见3.4节），每份保留录音的评估所采用的佩戴/取下会话都与训练时使用的不同；因此所有报告的数字均为跨会话结果，能够反映重新佩戴设备时产生的放置差异和绑带张力变化。我们采用每个输出任务的L2损失均值，并为各任务分配相应的权重；损失函数的具体形式详见3.3.3节。

除非另有说明，训练过程采用Adam优化器（学习率为$3 \times 10^{-4}$，权重衰减为$10^{-2}$），dropout比例为0.3，批量大小为128，上下文长度为$N = 100$个样本（采样频率为50 Hz时对应2秒），迭代次数为5万次。监督信号仅应用于每个时间窗口的最后$N/2$个输出，因此

<div style="text-align: center;">Table 3: Joint-angle and position errors for the combined wrist-and-finger model on the single-user Hand Pose (HP) dataset. See Sec. 4.1.1 for metric details; the three wrist DOFs (pronation, flexion, deviation) are defined in Sec. A.1.1.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Category</td><td style='text-align: center; word-wrap: break-word;'>DOF</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>MAE $^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td><td colspan="2">Tip / MPJPE (mm)</td></tr><tr><td rowspan="4">Wrist</td><td style='text-align: center; word-wrap: break-word;'>Pronation</td><td style='text-align: center; word-wrap: break-word;'>21.62</td><td style='text-align: center; word-wrap: break-word;'>6.39</td><td style='text-align: center; word-wrap: break-word;'>0.851</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Flexion</td><td style='text-align: center; word-wrap: break-word;'>19.07</td><td style='text-align: center; word-wrap: break-word;'>4.04</td><td style='text-align: center; word-wrap: break-word;'>0.919</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Deviation</td><td style='text-align: center; word-wrap: break-word;'>9.05</td><td style='text-align: center; word-wrap: break-word;'>3.83</td><td style='text-align: center; word-wrap: break-word;'>0.684</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>19.48</td><td style='text-align: center; word-wrap: break-word;'>4.75</td><td style='text-align: center; word-wrap: break-word;'>0.863</td><td style='text-align: center; word-wrap: break-word;'>No Wrist</td><td style='text-align: center; word-wrap: break-word;'>With Wrist</td></tr><tr><td rowspan="6">Finger</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>15.51</td><td style='text-align: center; word-wrap: break-word;'>4.64</td><td style='text-align: center; word-wrap: break-word;'>0.802</td><td style='text-align: center; word-wrap: break-word;'>10.8 / 6.0</td><td style='text-align: center; word-wrap: break-word;'>20.7 / 13.9</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>21.47</td><td style='text-align: center; word-wrap: break-word;'>4.61</td><td style='text-align: center; word-wrap: break-word;'>0.846</td><td style='text-align: center; word-wrap: break-word;'>10.8 / 7.7</td><td style='text-align: center; word-wrap: break-word;'>21.3 / 17.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>23.41</td><td style='text-align: center; word-wrap: break-word;'>4.58</td><td style='text-align: center; word-wrap: break-word;'>0.886</td><td style='text-align: center; word-wrap: break-word;'>11.3 / 8.1</td><td style='text-align: center; word-wrap: break-word;'>20.6 / 16.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>23.27</td><td style='text-align: center; word-wrap: break-word;'>4.53</td><td style='text-align: center; word-wrap: break-word;'>0.878</td><td style='text-align: center; word-wrap: break-word;'>11.0 / 8.0</td><td style='text-align: center; word-wrap: break-word;'>19.1 / 15.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>21.81</td><td style='text-align: center; word-wrap: break-word;'>4.45</td><td style='text-align: center; word-wrap: break-word;'>0.854</td><td style='text-align: center; word-wrap: break-word;'>9.5 / 6.6</td><td style='text-align: center; word-wrap: break-word;'>18.2 / 14.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>21.65</td><td style='text-align: center; word-wrap: break-word;'>4.56</td><td style='text-align: center; word-wrap: break-word;'>0.859</td><td style='text-align: center; word-wrap: break-word;'>10.7 / 7.2</td><td style='text-align: center; word-wrap: break-word;'>20.0 / 15.3</td></tr></table>

该模型拥有充足的预热上下文。在推理阶段，我们采用步长为1的滑动窗口，并对每个时间戳的预测结果取平均值；所报告的结果是对最后1万次迭代中20个检查点进行集成的结果。更多训练细节详见附录（第A.3节）。

4.1.3 数据增强。尽管我们将腕带上的触觉传感器视为独立的通道，但原始信号仍易受实际记录过程中的变异影响，尤其是不同会话间的佩戴位置和绑带松紧度差异。为提高模型的鲁棒性，我们在训练期间对腕带输入应用五种增强方式。

这五种变换分别对应会话间的干扰因素：微小的垂直和水平位移（近端-远端位置差异及周向旋转）、平面内旋转（传感器对齐偏差）、各向同性缩放（每日手腕轮廓的变化）以及全局强度缩放（绑带松紧度变化）。推理阶段不应用任何增强处理。具体的参数数值和重采样细节详见附录（第A.10节）。

后续所有实验结果均采用了这种增强方式。关于有无增强时性能的详细对比，以及对增强参数范围的逐目标搜索结果，均可在附录（第A.10节）中查看。

### 4.2 手部姿态估计

针对这一问题，我们使用了两个数据集：Hand-Pose（HP）和Hand-Object Manipulation（HOM）。如前所述，我们仅进行针对单个用户的训练与测试；HP数据集仅包含一名用户，该用户恰好也是HOM数据集的用户之一。此外，这两个数据集的分布差异显著（前者涉及物体操控和力施加，后者为手指/手腕的自由运动），因此我们针对每个数据集分别训练和评估模型。我们将相对手腕角度损失的权重设为0.4，以平衡手腕和手指的预测精度（相关权重消融实验见第A.9节）。

4.2.1 在Hand Pose数据集上的评估。表3列出了每个手腕角度的平均绝对误差（MAE）和$R^{2}$、每个手指四个关节的平均关节角度误差，以及指尖位置的毫米级误差。附录中进一步给出了每个手指的逐关节详细分解结果（表7），以及不同模型变体——仅估计手腕、仅估计手指、以及基于手腕条件估计手指——的对比情况。

---

![Image](images/3363fcd9a4d03e2451908994dc616fea0cb80bb11a024ae0d406c92e432aa303.jpg)

<div style="text-align: center;">Figure 5: Sample visualization of hand poses (blue = ground truth, orange = prediction). The last column (highlighted) shows examples where the estimate diverges more noticeably from the ground truth. A larger set with per-vertex error heat maps is given in Fig. 15.</div>

这些模型变体包括：手腕与手指联合估计、单独估计手腕、单独估计手指，以及基于手腕条件估计手指（表8）。

值得注意的是，拇指的$R^{2}$略低一些（0.802，而手指平均值为0.859）。一个合理的解释是：拇指的运动更多依赖于手部的内在肌/鱼际肌，这些肌肉在 forearm 远端的可观测性不如外在的手指屈肌和伸肌。

图5展示了具有代表性的姿态配置（蓝色为真实值，橙色为预测值）。预测结果通常较为接近，但偶尔会出现明显的误差——如未检测到屈曲动作或手指归属错误——这类情况往往发生在手指运动过程中伴随手腕旋转时，因为手腕旋转产生的压力信号比手指关节活动更强。当训练数据中手腕的运动范围覆盖不足时，此类误差尤为明显：此时模型必须对手腕朝向进行插值处理，但只能做到部分拟合（见第A.5.7节）。

我们也在HOM数据集上评估了手部姿态估计性能。由于该数据集使用的触觉手套更厚且存在物体交互带来的干扰，Motion Capture得到的真实值噪声较大（标记点被遮挡、帧丢失）；即便如此，模型仍能在该场景下恢复手部姿态并同时估算作用力。这些针对单个用户的结果详见附录（第A.5.2节）：表6总结了每个用户在HOM数据集上的运动学指标，表9则给出了每个用户、每个自由度的详细分解数据。

### 4.3 力估算结果

4.3.1 在手部物体操控数据集上的评估。该数据集包含4名用户，每人有10至20段录音，评估时按用户分别进行。表4总结了不同目标（整个手指及每个触觉单元）和各用户的力估计误差。

表4对比了两种配置：Force+Pose（同时预测力和姿态）以及Pose Input（以姿态作为输入来进行力估计）。整个手指的力以牛顿为单位报告，完整触觉传感器的回归结果则以PSI为单位表示。相对力损失权重$\lambda_{F}$是根据第A.9节中的扫描结果，按不同粒度选取的（对于整个手指，$\lambda_{F}=0.4$；

<div style="text-align: center;">Table 4: Force prediction error across model configurations and users on the HOM dataset, for the per-finger and per-taxel granularities (with augmentation). We compare two configurations: Force+Pose (estimating force and joint angles together) and Pose Input (force estimation with joint angles as input). The final row (FF) reports the auxiliary Fingertip-Force dataset as a reference (single user P4; per-finger force in N, estimated from pressure without pose), so its Pose-Input entry is empty; see Tab. 5 for the per-finger breakdown.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Type</td><td rowspan="2">User</td><td rowspan="2">$\sigma$(GT)</td><td colspan="2">Force+Pose</td><td colspan="2">Pose Input</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MAE</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td><td style='text-align: center; word-wrap: break-word;'>MAE</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td></tr><tr><td rowspan="5">Finger (N)</td><td style='text-align: center; word-wrap: break-word;'>P1</td><td style='text-align: center; word-wrap: break-word;'>2.86</td><td style='text-align: center; word-wrap: break-word;'>0.83</td><td style='text-align: center; word-wrap: break-word;'>0.42</td><td style='text-align: center; word-wrap: break-word;'>0.57 –31%</td><td style='text-align: center; word-wrap: break-word;'>0.70</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P2</td><td style='text-align: center; word-wrap: break-word;'>2.16</td><td style='text-align: center; word-wrap: break-word;'>0.52</td><td style='text-align: center; word-wrap: break-word;'>0.67</td><td style='text-align: center; word-wrap: break-word;'>0.45 –13%</td><td style='text-align: center; word-wrap: break-word;'>0.76</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P3</td><td style='text-align: center; word-wrap: break-word;'>1.83</td><td style='text-align: center; word-wrap: break-word;'>0.60</td><td style='text-align: center; word-wrap: break-word;'>0.64</td><td style='text-align: center; word-wrap: break-word;'>0.44 –27%</td><td style='text-align: center; word-wrap: break-word;'>0.79</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P4</td><td style='text-align: center; word-wrap: break-word;'>1.62</td><td style='text-align: center; word-wrap: break-word;'>0.31</td><td style='text-align: center; word-wrap: break-word;'>0.77</td><td style='text-align: center; word-wrap: break-word;'>0.28 –10%</td><td style='text-align: center; word-wrap: break-word;'>0.81</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>2.12</td><td style='text-align: center; word-wrap: break-word;'>0.59</td><td style='text-align: center; word-wrap: break-word;'>0.57</td><td style='text-align: center; word-wrap: break-word;'>0.45 –24%</td><td style='text-align: center; word-wrap: break-word;'>0.75</td></tr><tr><td rowspan="5">Taxel (PSI)</td><td style='text-align: center; word-wrap: break-word;'>P1</td><td style='text-align: center; word-wrap: break-word;'>3.02</td><td style='text-align: center; word-wrap: break-word;'>0.69</td><td style='text-align: center; word-wrap: break-word;'>0.30</td><td style='text-align: center; word-wrap: break-word;'>0.53 –23%</td><td style='text-align: center; word-wrap: break-word;'>0.55</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P2</td><td style='text-align: center; word-wrap: break-word;'>1.96</td><td style='text-align: center; word-wrap: break-word;'>0.25</td><td style='text-align: center; word-wrap: break-word;'>0.53</td><td style='text-align: center; word-wrap: break-word;'>0.22 –12%</td><td style='text-align: center; word-wrap: break-word;'>0.62</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P3</td><td style='text-align: center; word-wrap: break-word;'>2.29</td><td style='text-align: center; word-wrap: break-word;'>0.53</td><td style='text-align: center; word-wrap: break-word;'>0.54</td><td style='text-align: center; word-wrap: break-word;'>0.42 –21%</td><td style='text-align: center; word-wrap: break-word;'>0.67</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P4</td><td style='text-align: center; word-wrap: break-word;'>1.35</td><td style='text-align: center; word-wrap: break-word;'>0.18</td><td style='text-align: center; word-wrap: break-word;'>0.64</td><td style='text-align: center; word-wrap: break-word;'>0.16 –11%</td><td style='text-align: center; word-wrap: break-word;'>0.70</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>2.15</td><td style='text-align: center; word-wrap: break-word;'>0.43</td><td style='text-align: center; word-wrap: break-word;'>0.44</td><td style='text-align: center; word-wrap: break-word;'>0.35 –19%</td><td style='text-align: center; word-wrap: break-word;'>0.61</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FF (N)</td><td style='text-align: center; word-wrap: break-word;'>P4</td><td style='text-align: center; word-wrap: break-word;'>1.28</td><td style='text-align: center; word-wrap: break-word;'>0.33</td><td style='text-align: center; word-wrap: break-word;'>0.70</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'></td></tr></table>

对于单个手指而言，$\lambda_{F}=1.2$；对于每个触觉单元/手套而言则如此）。这些力误差的逐用户、逐手指细分数据见附录（表10）。

表格显示，外部提供的运动学线索能够改善力的解码效果。这一发现具有实际意义，因为手部姿态通常可以通过视觉管道获取，而仅凭视觉很难恢复出力信息。相比之下，同时预测关节角度和力——或者让模型根据自身推导出的压力相关姿态来估计力——并不能显著改善力估计效果；而将外部提供的姿态作为模型输入却能带来明显益处。这表明显式的运动学输入有助于区分手指运动效应与真实的力产生效应。

图6通过展示预测的手套映射投影与真实值及各映射误差，提供了这些HOM力估计结果的定性视图；图7则展示了每个手指的典型力预测的图形化时间序列示例。尽管估计值并非与真实值完全吻合，但它能一致地追踪真实值的升降变化。我们在整个数据集及不同任务中均观察到了这一现象。

4.3.2 力误差与真实力大小的关系。为了补充表4中的总体HOM力MAE结果（以及表5中的辅助FF结果），我们按真实力大小对力误差进行了分解。针对每组（用户、配置），我们根据真实力的大小对样本进行分组，并计算每组内的平均$|pred - GT|$。

图8显示了三种一致的变化规律：(i) 当力小于$\sim$0.3 N时，曲线接近y = x基线：腕部压力信号携带的关于极小力的信息很少，且触觉手套本身也无法清晰区分“轻微触碰”与“未触碰”状态，因此这一下限是模态-参考配对本身的特性，而非模型缺陷所致。(ii) 从约0.3 N到约5 N范围内，MAE呈亚线性增长，即相对精度大致保持恒定，且姿态条件作用在整个区间内均能改善估计效果。(iii) 当力超过约5 N时，曲线变得陡峭，由于尾部样本量较少，用户间的差异也会增大。在所有力水平上，用户的排序保持稳定（P4最优，其次是P3、P2、P1）。

---

![Image](images/98d376b1acb7462b8fb48206c3d4b6a722d5896fee5b75559e4ac1f2f663501b.jpg)

<div style="text-align: center;">Figure 6: Sample visualization of force predictions on the HOM dataset. Each row is one timestep; columns, from left to right: (1) RGB image of the scene; (2) MoCap-extracted 3D hand shape; (3) ground-truth tactile-glove pressure map; (4) predicted pressure map and the corresponding error map (pred - GT) for the pressure-wristband-only model; and (5) the same prediction-error pair for the wristband + pose model. In the error maps, maximum red and maximum blue correspond to -1 N and +1 N of error, respectively. Note the substantial improvement of the pose-conditioned model in several scenes.</div>

模型存在缺陷。(ii) 当力值从约0.3 N到约5 N时，平均绝对误差呈次线性增长，即相对精度大致保持恒定，而姿态调节能持续改善这一情况。(iii) 力值超过约5 N后，曲线变得更加陡峭，且由于尾部样本支持减少，用户间的差异也会增大。在所有受力水平下，各用户的排序均保持稳定（P4最优，其次是P3、P2、P1）。

### 4.4 数据规模

我们通过使用可用录音的子集进行训练，来衡量预测质量对训练数据量的依赖程度。针对每项任务（FF上的力估计、HP上的运动学估计、HOM上的逐用户力估计），我们采用了多个保留的测试集（每个约占录音总量的20%）；针对每个测试集，我们从剩余数据中随机抽取k条录音作为训练子集，且每个子集的抽取次数相同。

![Image](images/63f336e5f9816e8244957f4d79fe1a1756c604d7ae15d184a15d1f887decb9b4.jpg)

<div style="text-align: center;">Figure 7: Sample time-series visualization of per-finger force prediction over a 10-second window of typical manipulation behavior. The predicted waveform tracks the overall shape of the ground-truth waveform, even when the absolute accuracy is imperfect.</div>

![Image](images/25ad02030d28f5be074b8799a36796a3202b286a7d971f1161a7ce0a4d02f99d.jpg)

![Image](images/770b8ccdea4fc1ccf9e096de27a62e838168ca10db5962d3a52b6cc392359ee8.jpg)

<div style="text-align: center;">Figure 8: Per-bin force-prediction MAE versus ground-truth force, for the four HOM participants and the FF baseline. For HOM the pose-conditioned variant (pose input) is drawn thick and saturated, and the pressure-only variant (no pose input) thin and lightened in the same hue.</div>

k的大小即为子集规模。每次运行均按照第4.1.2节的标准评分，并相对于完整的训练运行结果进行归一化处理；图中每个点汇总了固定k下的所有抽取结果，在x轴上标注为其平均总训练时长。

两个图表均显示出一种单调的边际收益递减趋势：单次采集的数据（约20分钟）能产生相当于完整训练损失的1.5–1.8倍；两次采集就能弥补大部分差距；而在高性能计算平台上，一旦采集到约4–5次数据（约100分钟），损失值便仅比完整训练高出约5%。关键在于，即便在数据量最大的情况下，曲线仍呈下降趋势而非趋于平稳——说明模型性能尚未收敛，因此更多数据仍会继续提升准确率。这一规律在不同任务和用户群体中均成立，且基本上与HOM配置（有/无姿势信息、手指/触觉传感器）无关。这种现象与大规模sEMG研究关于参与者数量扩展的结论一致 [^16] [^38]，不过需要注意的是，我们的实验中数据变化仅限于单一用户内部。由于单用户数据无法使模型达到饱和状态，因此整合多用户数据并适配新用户，便成了填补剩余差距的自然途径——尽管如上文所述，我们在当前样本中并未观察到这种跨用户迁移现象。

---

![Image](images/9a5f143c023b075c460182fae4396299171451b68e93a092526c71e73d460c75.jpg)

![Image](images/dbc4922222191b160908f1cd6c5640a2950e6d24842f807a179c663b06fcd3c2.jpg)

<div style="text-align: center;">Figure 9: Data-scaling curves.  y is validation  $\ell_1$ loss normalised by the full-training run for the same held-out set;  x is training data in minutes. Left: three tasks – FF fingertip force, HP finger-joint kinematics, and HP wrist kinematics. Right: the four HOM users (P1–P4), each averaged across the four HOM configurations. The dashed line at  $y = 1$ is the full-training baseline.</div>

## 5 讨论

我们证明了可穿戴于手腕的电容式压力阵列能够在一件可穿戴设备上同时恢复连续的全手姿态以及分布式的接触力。核心发现在于：前臂远端的压力信号能够以具有竞争力的精度单独或共同实现这两个目标（见第4.2节和4.3节）。这款腕带本身即可作为独立的力传感器；当外部姿态源——例如视觉系统——提供视觉技术所能获取但手腕压力传感器无法直接测得的运动学信息时，它便能成为更强大的力信号通道。仅靠预测力、同时预测姿态和力，或是基于模型自身从压力数据得出的姿态估计来进行条件化，都无法复现因姿态条件化带来的约25%的力平均绝对误差降低效果——只有独立的姿态信号才能起到这种作用。因此，这种性能提升反映的是对姿态信息的获取，而非多任务学习或表征学习的效果。

最难预测的目标——手指屈曲和单指接触力——主要由在前臂内纵向滑动的肌腱驱动；而纵向运动在环形压力带上产生的特征信号极弱（滑动的棒状物沿其长度方向的横截面几乎保持不变）。腕带实际测量到的是伴随这种运动产生的次级效应：肌肉膨隆、负载下软组织变硬、手腕处骨骼旋转，以及紧绷的肌腱横向挤压韧带滑车。正是这些横向及整体形变效应使得手腕处的肌电图信号得以发挥作用，同时也限制了其性能——与底层运动耦合较远的信号在空间上更为分散且易受噪声干扰。其中手腕旋转的影响最为显著，因此也会造成干扰：当手指屈曲和接触力的模式同时存在时，手腕旋转所产生的信号可能会掩盖后者更细微的特征。实际上，手指预测误差在手腕运动范围的中心区域最小，而在采样较少的极端位置则明显增大（见附录A.5.7节）。

我们评估的一个显著特点是，力是在使用触觉手套进行自然物体操作的过程中测量的，而不是像大多数可穿戴测力研究那样，在固定姿势下对测力传感器或测力计进行等长发力 [^31] [^37]。这更能代表真实使用，但也更难、且具有不同的边界：日常手–物体接触位于一个低维、结构化的流形上，因此我们按 taxel 的准确率有一部分反映的是该结构，而非一个完全通用的力学模型。该参考同样构成一个边界：触觉手套的外侧、背侧和指蹼表面未布置传感器，我们也没有将其与独立参考（带传感器的物体、力板或带扭矩传感器的手指）交叉核验；这些因素共同给按 taxel 的 $R^{2}$ 设定了上限，且与模型容量无关。此外，以姿势为条件的结果使用由 MoCap 导出的手部姿势作为输入——在同种遮挡下，真实的第一人称视觉管线只能逼近这种近预言机输入——因此，这里报告的 ~25% MAE 降低最好被解读为一个现实姿势管线应当追求而非立即达到的上界；而在由视觉提供姿势的条件下缩小这一差距，是自然的下一步实验。姿势也不是视觉唯一能提供的信息。粗略的上下文线索——手是否正握着物体、是哪一个物体、采用的是何种抓握方式——在遮挡下比精确的 3D 姿势更容易被可靠恢复；它们既约束合理的接触几何，也约束模型必须覆盖的力范围。以这类上下文而非仅凭姿势作为条件，是同时改进手部与物体状态估计以及力估计的一条可行路径。

我们的腕带采用的是FMG传感器：它测量的是伴随手部动作产生的机械负荷，而非产生这些动作的肌肉活动[^57]。表面肌电传感器可直接感知这种激活情况，因此能记录静态姿势、等长保持以及协同收缩等几乎无外部运动的动作——而这恰恰是FMG的机械信号最弱的场景。FMG并非对这些情况毫无反应——它们仍会使前臂发生形变，因此仍会产生一定信号——但同位置的表面肌电通道能更直接地捕捉到这些信息，肌电与FMG融合后的效果优于单独使用任一模态[^33]。

许多下游应用并不需要每个触觉像素点的重建数据。任务层面的抽象信息——如接触起始时刻、各手指所受力、抓取阶段、握持刚度——比完整的每个触觉像素点力数据更接近腕带能够观测到的内容，且这些数据自然是在模型表现最佳的连续时间窗口内进行评估的。因此，最有用的后续数据集或许并非抽象意义上的“规模更大、更贴近自然场景”，而是围绕具体应用场景收集的数据——比如上下文手部状态分类器、模仿学习策略或遥操作流程[^45]——这样我们采集到的行为才能匹配模型的实际应用需求。朝着跨用户部署的方向发展，遵循近期肌电研究采用的“大规模预训练加简短校准”路径[^16] [^38]，是自然的选择。

---

## 参考文献

[^1]: Rochel L. Abboudi, Carey A. Glass, Nicki A. Newby, James A. Flint, and William Craelius. 1999. A Biomimetic Controller for a Multifinger Prosthesis. IEEE Transactions on Rehabilitation Engineering 7, 2 (1999), 121–129. doi:10.1109/86.769411 pages 12

[^2]: Manfredo Atzori, Arjan Gijsberts, Claudio Castellini, Barbara Caputo, Anne-Gabrielle Mittaz Hager, Simone Elsig, Giorgio Giatsidis, Franco Bassetto, and Henning Müller. 2014. Electromyography data for non-invasive naturally-controlled robotic hand prostheses. Scientific Data 1 (2014), 140053. doi:10.1038/sdata.2014.53 pages 13

[^3]: Keshav Bimbraw et al. 2023. Estimating Force Exerted by the Fingers Based on Forearm Ultrasound. In Proc. IEEE International Ultrasonics Symposium (IUS). doi:10.1109/IUS51837.2023.10306652 pages 2, 13

[^4]: Keshav Bimbraw, Christopher J. Nycz, Matt Schueler, Ziming Zhang, and Haichong K. Zhang. 2023. Simultaneous Estimation of Hand Configurations and Finger Joint Angles using Forearm Ultrasound. IEEE Transactions on Medical Robotics and Bionics 5, 1 (2023), 120–132. doi:10.1109/TMRB.2023.3237774 pages 2, 13

[^5]: Zhouping Chen and Hong Wang. 2024. Continuous Finger Joint Angle Estimation by a sEMG-FMG-Driven Explainable Gated-Recurrent-Unit Network with Cross-Modality Multihead Attention. In 5th International Conference on Artificial Intelligence and Computer Engineering (ICAICE). doi:10.1109/ICAICE63571.2024.10864100 pages 12

[^6]: Junyoung Chung, Çaglar Gülçehre, KyungHyun Cho, and Yoshua Bengio. 2014. Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling. CoRR abs/1412.3555 (2014). arXiv:1412.3555 <http://arxiv.org/abs/1412.3555> pages 4

[^7]: Artem Dementyev and Joseph A. Paradiso. 2014. WristFlex: Low-Power Gesture Input with Wrist-Worn Pressure Sensors. In Proc. ACM Symposium on User Interface Software and Technology (UIST). doi:10.1145/2642918.2647396 pages 2, 12

[^8]: Ananya S. Dhawan, Biswarup Mukherjee, Shriniwas Patwardhan, Nima Akhlaghi, Guoqing Diao, Gyorgy Levay, Rahsaan Holley, Wilsaan M. Joiner, Michelle Harris-Love, and Siddhartha Sikdar. 2019. Proprioceptive Sonomyographic Control: A novel method for intuitive and proportional control of multiple degrees-of-freedom for individuals with upper extremity limb loss. Scientific Reports 9 (2019), 9499. doi:10.1038/s41598-019-45459-7 pages 13

[^9]: Susannah M Engdahl et al. 2024. Sonomyography for control of upper-limb prostheses: Current state and future directions. Journal of Prosthetics and Orthotics 36, 3 (2024), 174–184. <https://journals.lww.com/jpojournal/fulltext/2024/07000/sonomyography_for_control_of_upper_limb.6.aspx> pages 2

[^10]: Jakob Engel, Kiran Somasundaram, Michael Goesele, Albert Sun, Alexander Gamino, Andrew Turner, Arjang Talatfof, Arnie Yuan, Bilal Souti, Brighid Meredith, Cheng Peng, Chris Sweeney, Cole Wilson, Dan Barnes, Daniel DeTone, David Caruso, Derek Valleroy, Dinesh Ginjupalli, Duncan Frost, Edward Miller, Elias Mueggler, Evgeniy Oleinik, Fan Zhang, Guruprasad Somasundaram, Gustavo Solaira, Harry Lanaras, Henry Howard-Jenkins, Huixuan Tang, Hyo Jin Kim, Jaime Rivera, Ji Luo, Jing Dong, Julian Straub, Kevin Bailey, Kevin Eckenhoff, Lingni Ma, Luis Pesqueira, Mark Schwesinger, Maurizio Monge, Nan Yang, Nick Charron, Nikhil Raina, Omkar Parkhi, Peter Borschowa, Pierre Moulon, Prince Gupta, Raul Mur-Artal, Robbie Pennington, Sachin Kulkarni, Sagar Migliani, Santosh Gondi, Saransh Solanki, Sean Diener, Shangyi Cheng, Simon Green, Steve Saarinen, Suvam Patra, Tassos Mourikis, Thomas Whelan, Tripti Singh, Vasileios Balntas, Vijay Baiya, Wilson Dreewes, Xiaqing Pan, Yang Lou, Yipu Zhao, Yusuf Mansour, Yuyang Zou, Zhaoyang Lv, Zijian Wang, Mingfei Yan, Carl Ren, Renzo De Nardi, and Richard Newcombe. 2023. Project Aria: A New Tool for Egocentric Multi-Modal AI Research. arXiv:2308.13561 [cs.HC] pages 1

[^11]: Shangchen Han, Beibei Liu, Robert Wang, Yuting Ye, Christopher D. Twigg, and Kenrick Kin. 2018. Online optical marker-based hand tracking with deep labels. ACM Trans. Graph. 37, 4, Article 166 (July 2018), 10 pages. doi:10.1145/3197517.3201399 pages 3

[^12]: Shangchen Han, Po-Chen Wu, Yubo Zhang, Beibei Liu, Linguang Zhang, Zheng Wang, Weiguang Si, Peizhao Zhang, Yujun Cai, Tomas Hodan, Randi Cabezas, Luan Tran, Muzaffer Akbay, Tsz-Ho Yu, Cem Keskin, and Robert Wang. 2022. UmeTrack: Unified multi-view end-to-end hand tracking for VR. In SIGGRAPH Asia 2022 Conference Papers (Daegu, Republic of Korea) (SA '22). Association for Computing Machinery, New York, NY, USA, Article 50, 9 pages. doi:10.1145/3550469.3555378 pages 4

[^13]: Muhammad Raza Ul Islam, Asim Waris, Ernest Nlandu Kamavuako, and Shaoping Bai. 2019. A comparative study of motion detection with FMG and sEMG methods for assistive applications. Journal of Rehabilitation and Assistive Technologies Engineering 6 (2019). doi:10.1177/2055668319862354 pages 12

[^14]: Shuo Jiang et al. 2022. Emerging Wearable Interfaces and Algorithms for Hand Gesture Recognition: A Survey. IEEE Reviews in Biomedical Engineering 15 (2022). doi:10.1109/RBME.2021.3078190 pages 2

[^15]: Anita Kadkhodayan, Xianta Jiang, and Carlo Menon. 2016. Continuous prediction of finger movements using force myography. Journal of Medical and Biological

《工程学》第36卷第4期（2016年），第594–604页。第2、12页

[^16]: Patrick Kaifosh, Thomas R Reardon, et al. 2025. A generic non-invasive neuromotor interface for human-computer interaction. Nature 644 (2025), 1–8. pages 2, 8, 9, 13

[^17]: Vinay Kammarchedu, Monther Alsiyabi, and Aida Ebrahimi. 2024. Real-time Hand-Tracking with Skin-Conformal Force Myography based on Wrist-Worn Laser Induced Graphene Strain Sensor Arrays. TechRxiv (2024). doi:10.36227/techrxiv.171746891.18626881/v1 pages 2, 12

[^18]: Daehwa Kim and Chris Harrison. 2022. EtherPose: Continuous hand pose tracking with wrist-worn antenna impedance characteristic sensing. In Proceedings of the 35th Annual ACM Symposium on User Interface Software and Technology. 1–12. <https://dl.acm.org/doi/10.1145/3526113.3545665> pages 2, 13

[^19]: David Kim, Otmar Hilliges, Shahram Izadi, Alex D Butler, Jiawen Chen, Iason Oikonomidis, and Patrick Olivier. 2012. Digits: freehand 3D interactions anywhere using a wrist-worn gloveless sensor. In Proceedings of the 25th annual ACM symposium on User interface software and technology. 167–176. pages 2, 13

[^20]: A Kyu, H Mao, J Zhu, M Goel, and K Ahuja. 2024. Eitpose: Wearable and practical electrical impedance tomography for continuous hand pose estimation. In Proceedings of the CHI Conference on Human Factors in Computing Systems. 1–15. <https://dl.acm.org/doi/10.1145/3613904.3642663> pages 2, 12, 13

[^21]: Chi-Jung Lee et al. 2024. Echowrist: Continuous hand pose tracking and hand-object interaction recognition using low-power active acoustic sensing on a wristband. In Proceedings of the CHI Conference on Human Factors in Computing Systems. 1–16. <https://dl.acm.org/doi/10.1145/3613904.3642910> pages 2, 13

[^22]: Dongxuan Li et al. 2024. Graph-Driven Simultaneous and Proportional Estimation of Wrist Angle and Grasp Force via High-Density EMG. IEEE Journal of Biomedical and Health Informatics 28, 5 (2024). doi:10.1109/JBHI.2024.3373432 pages 2, 13

[^23]: Yilin Liu, Shijia Zhang, and Mahanth Gowda. 2021. NeuroPose: 3D hand pose tracking using EMG wearables. In Proceedings of the Web Conference 2021. 1471–1482. <https://dl.acm.org/doi/10.1145/3442381.3449890> pages 2, 13

[^24]: Z Lou et al. 2024. Advancing sensing resolution of impedance hand gesture recognition devices. IEEE Sensors Journal (2024). <https://ieeexplore.ieee.org/document/10568331/> pages 2, 12, 13

[^25]: Kian Mahmoodi et al. 2025. EchoForce: Continuous Grip Force Estimation from Skin Deformation Using Active Acoustic Sensing on a Wristband. In Proceedings of the 2025 ACM International Symposium on Wearable Computers. <https://dl.acm.org/doi/10.1145/3715071.3750405> pages 13

[^26]: Mengting Niu, Yufan Xiong, Ziyu Wu, Ying Qiu, Fangting Xie, Boyan Liu, Qijun Ying, and Xiaohui Cai. 2026. SleevePose: Elastic Resistive Pressure Sensing Sleeve for Continuous Hand Pose Estimation. Proceedings of the ACM on Interactive Mobile, Wearable and Ubiquitous Technologies (IMWUT) 10, 1 (2026). doi:10.1145/3789683 pages 2, 12

[^27]: Francesca Pennati, Alessandra Angelucci, Letizia Morelli, Susanna Bardini, Elena Barzanti, Federico Cavallini, Antonello Conelli, Gaia Di Federico, Chiara Paganelli, and Andrea Aliverti. 2023. Electrical Impedance Tomography: From the Traditional Design to the Novel Frontier of Wearables. Sensors 23, 3 (2023), 1182. doi:10.3390/s23031182 pages 12, 13

[^28]: Tu-Hoa Pham, Nikolaos Kyriazis, Antonis A Argyros, and Abderrahmane Kheddar. 2018. Hand-object contact force estimation from markerless visual tracking. IEEE transactions on pattern analysis and machine intelligence 40, 12 (2018), 2883–2896. pages 2

[^29]: Scott L. Phillips and William Craelius. 2005. Residual Kinetic Imaging: A Versatile Interface for Prosthetic Control. Robotica 23, 5 (2005). doi:10.1017/S0263574704001298 pages 12

[^30]: PressureProfile Systems. 2026. Body Pressure Mapping. <https://pressureprofile.com/applications/body-pressure-mapping>. Accessed: 2026-03-28. pages 3, 4

[^31]: Farnaz Rahimi et al. 2024. Simultaneous Control of Human Hand Joint Positions and Grip Force via HD-EMG and Deep Learning. arXiv preprint arXiv:2410.23986 (2024). pages 2, 9, 13

[^32]: Jun Rekimoto. 2001. GestureWrist and GesturePad: Unobtrusive Wearable Interaction Devices. In Proc. IEEE International Symposium on Wearable Computers (ISWC). doi:10.1109/ISWC.2001.962092 pages 2, 12

[^33]: Maurice Rohr et al. 2025. On the Benefit of FMG and EMG Sensor Fusion for Gesture Recognition Using Cross-Subject Validation. IEEE Transactions on Neural Systems and Rehabilitation Engineering 33 (2025). doi:10.1109/TNSRE.2025.3543649 pages 9

[^34]: Javier Romero, Dimitrios Tzionas, and Michael J. Black. 2017. Embodied Hands: Modeling and Capturing Hands and Bodies Together. ACM Transactions on Graphics 36, 6 (2017). doi:10.1145/3130800.3130868 pages 2, 13

[^35]: Noah Rubin, Yang Zheng, He Huang, and Xiaogang Hu. 2022. Finger force estimation using motor unit discharges across forearm postures. IEEE Transactions on Biomedical Engineering 69, 9 (2022), 2826–2834. <https://ieeexplore.ieee.org/document/9721578/> pages 2

## [^36]: Salwa Sahnoun, Mahdi Mnif, Bilel Ghoul, Mohamed Jemal, Ahmed Fakhfakh, and Olfa Kanoun. 2025. Hybrid Solution Through Systematic Electrical Impedance Tomography Data Reduction and CNN Compression for Efficient Hand Gesture Recognition on Resource-Constrained IoT Devices. Future Internet 17, 2 (2025), 89. doi:10.3390/fi17020089 pages 24

---

[^37]: Maram Sakr, Xianta Jiang, and Carlo Menon. 2019. Estimation of User-Applied Isometric Force/Torque Using Upper Extremity Force Myography. Frontiers in Robotics and AI 6 (2019). doi:10.3389/frobt.2019.00120 pages 2, 9

[^38]: S Salter et al. 2024. emg2pose: A Large and Diverse Benchmark for Surface Electromyographic Hand Pose Estimation. In Advances in Neural Information Processing Systems. <https://arxiv.org/abs/2412.02725> pages 2, 3, 8, 9, 12, 13

[^39]: T. Scott Saponas, Desney S. Tan, Dan Morris, and Ravin Balakrishnan. 2008. Demonstrating the Feasibility of Using Forearm Electromyography for Muscle-Computer Interfaces. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI). 515–524. doi:10.1145/1357054.1357138 pages 13

[^40]: Kyungjin Seo, Junghoon Seo, Hanseok Jeong, Sangpil Kim, and Sang Ho Yoon. 2024. Posture-Informed Muscular Force Learning for Robust Hand Pressure Estimation. In Proc. Conference on Neural Information Processing Systems (NeurIPS). pages 2, 13

[^41]: Omar Sherif et al. 2024. A Survey on the State of the Art of Force Myography Technique (FMG): Analysis and Assessment. Medical & Biological Engineering & Computing (2024). doi:10.1007/s11517-024-03019-w pages 2

[^42]: Peter B Shull, Shuo Jiang, Yuhui Zhu, and Xiangyang Zhu. 2019. Hand gesture recognition and finger angle estimation via wrist-worn modified barometric pressure sensing. IEEE Transactions on Neural Systems and Rehabilitation Engineering 27, 4 (2019), 724–732. <https://ieeexplore.ieee.org/document/8668695/> pages 2, 12

[^43]: Viswanath Sivakumar, Jeffrey Seely, Alan Du, Sean R. Bittner, Adam Berenzweig, Anuoluwapo Bolarinwa, and Alexandre Gramfort. 2024. emg2qwerty: a large dataset with baselines for touch typing using surface electromyography. In Proceedings of the 38th International Conference on Neural Information Processing Systems (Vancouver, BC, Canada) (NIPS '24). Curran Associates Inc., Red Hook, NY, USA, Article 2899, 17 pages. pages 2, 12, 13

[^44]: Hoang Truong, Xiang Zhang, Ufuk Müller, Binh Nguyen, Nam Bui, Cam Luong, Dong Chen, and Tam Vu. 2018. CapBand: Battery-free successive capacitance sensing wristband for hand gesture recognition. In Proceedings of the 16th ACM Conference on Embedded Networked Sensor Systems. 54–67. <https://dl.acm.org/doi/10.1145/3274783.3274854> pages 2, 12

[^45]: Sagar Verma et al. 2025. emg2tendon: From sEMG Signals to Tendon Control in Musculoskeletal Hands. arXiv preprint arXiv:2508.08269 (2025). pages 9, 13

[^46]: Tiantong Wang, Yunbiao Zhao, and Qining Wang. 2022. Hand Gesture Recognition With Flexible Capacitive Wristband Using Triplet Network in Inter-Day Applications. IEEE Transactions on Neural Systems and Rehabilitation Engineering 30 (2022), 2876–2885. doi:10.1109/TNSRE.2022.3212705 pages 12

[^47]: Tiantong Wang, Yunbiao Zhao, and Qining Wang. 2023. A flexible iontronic capacitive sensing array for hand gesture recognition using deep convolutional neural networks. Soft Robotics 10, 3 (2023), 443–453. doi:10.1089/soro.2021.0209 pages 2, 12

[^48]: Michael Wininger et al. 2008. Pressure Signature of Forearm as Predictor of Grip Force. Journal of Rehabilitation Research & Development 45, 6 (2008). doi:10.1682/JRRD.2007.11.0187 pages 2

[^49]: Z Xi et al. 2026. WristP2: A Wrist-Worn System for Hand Pose And Pressure Estimation. arXiv preprint arXiv:2603.00606 (2026). <https://arxiv.org/abs/2603.00606> pages 2, 3, 13

[^50]: Y Xiao et al. 2025. Wrist2Finger: Sensing Fingertip Force for Force-Aware Hand Interaction with a Ring-Watch Wearable. In Proceedings of the 38th Annual ACM Symposium on User Interface Software and Technology. <https://dl.acm.org/doi/10.1145/3746059.3747767> pages 2, 3, 13

[^51]: Zhen Gang Xiao and Carlo Menon. 2019. A review of force myography research and development. Sensors 19, 20 (2019), 4557. pages 2

[^52]: Xingchen Yang, Xueli Sun, Dalin Zhou, Yuefeng Li, and Honghai Liu. 2018. Towards Wearable A-Mode Ultrasound Sensing for Real-Time Finger Motion Recognition. IEEE Transactions on Neural Systems and Rehabilitation Engineering 26, 6 (2018), 1199–1208. doi:10.1109/TNSRE.2018.2829913 pages 13

[^53]: Jiafeng Yao, Huaijin Chen, Zifei Xu, Jingshi Huang, Jianping Li, Jiabin Jia, and Hongtao Wu. 2020. Development of a Wearable Electrical Impedance Tomographic Sensor for Gesture Recognition With Machine Learning. IEEE Journal of Biomedical and Health Informatics 24, 6 (2020). doi:10.1109/JBHI.2019.2945593 pages 2, 12, 13

[^54]: Dean Zadok, Oren Salzman, Alon Wolf, and Alex M. Bronstein. 2022. Towards Predicting Fine Finger Motions from Ultrasound Images via Kinematic Representation. arXiv preprint arXiv:2202.05204 (2022). doi:10.48550/arXiv.2202.05204 pages 2, 13

[^55]: Fan Zhang, Valentin Bazarevsky, Andrey Vakunov, Andrei Tkachenka, George Sung, Chuo-Ling Chuo, and Matthias Gruenstein. 2020. Mediapipe hands: On-device real-time hand tracking. arXiv preprint arXiv:2006.10214 (2020). pages 4

[^56]: Yang Zhang and Chris Harrison. 2015. Tomo: Wearable, low-cost electrical impedance tomography for hand gesture recognition. In Proceedings of the 28th Annual ACM Symposium on User Interface Software & Technology. 167–173. pages 13

[^57]: Zhuo Zheng et al. 2022. A Review of EMG-, FMG- and EIT-Based Biosensors and Relevant Human-Machine Interactivities and Biomedical Applications. Biosensors 12, 7 (2022). doi:10.3390/bios12070516 pages 2, 9

[^58]: Junyi Zhu, Tianyu Xu, Jiayu Wang, Emily Guan, JaeYoung Moon, Stiven Morvan, D Shin, Andrea Colaço, Stefanie Mueller, Karan Ahuja, Yiyue Luo, and Ishan Chatterjee. 2025. EI-Lite: Electrical Impedance Sensing for Micro-gesture Recognition and Pinch Force Estimation. In Proceedings of the 38th Annual ACM Symposium on User Interface Software and Technology (UIST '25). doi:10.1145/3746059.3747671 pages 13, 21

### [^59]: Yuhui Zhu, Shuo Jiang, and Peter B Shull. 2018. Wrist-worn hand gesture recognition based on barometric pressure sensing. In 2018 IEEE 15th International Conference on Wearable and Implantable Body Sensor Networks (BSN). IEEE, 1–4. doi:10.1109/BSN.2018.8329688 pages 2, 12

---

### 附录

#### A.1 补充背景

A.1.1 生物力学背景。从解剖学层面来看，手指和手腕的运动是由前臂的外在肌肉以及手部的内在肌肉共同驱动的。每个自由度都由成对的肌‑腱群来调节，这些肌‑腱群的不同激活方式会在绑带与皮肤接触面产生特定的压力模式。手腕具有三个旋转自由度，这些在我们研究结果中反复出现：屈伸运动（手掌向前臂内侧弯曲，或手背向 forearm外侧弯曲）、桡尺偏运动（手掌在掌心平面内向拇指侧或小指侧倾斜），以及旋前旋后运动（前臂旋转使手掌分别朝下或朝上）。外在肌‑腱路径通常会跨越多个关节，其产生的应力会通过筋膜径向传递到皮肤，进而被腕带检测到；前臂的旋前旋后运动还会因桡骨和尺骨的相对运动而改变手腕轮廓，而手腕的屈伸运动和桡尺偏运动则主要由肌‑腱的收缩而非骨骼结构的改变来驱动。除了旋前旋后情况外，骨骼和韧带对局部压力变化的影响很小。相比之下，内在肌肉的活动在手腕以上区域几乎无法被察觉，这就决定了仅靠前臂佩戴的设备所能观测到的纯粹内在肌肉激活模式——包括部分拇指运动——存在根本性局限 [^38]。不过在实际生活中，日常手部动作很少能单独孤立出内在肌肉的活动，因此多种肌肉的共同激活模式仍能在前臂远端产生可测量的机械特征。

A.1.2 为何选择压力？腕部设备的表面形变机制。除了推动我们采用前臂佩戴传感器的生物力学因素外（见第3.1节），还有第二个原因促使我们选择压力作为传感方式——这与第A.11节中的EIT对比研究相关。在早期使用基于电信号的腕带的实验中，比如EIT和sEMG [^20] [^38] [^43]，我们观察到一个一致的现象：这些设备依靠弹簧式金属电极来保证与皮肤的紧密接触，而其测量结果会随着施加在传感器上的物理压力而变化。这促使我们提出如下假设：在用于手部状态推断的紧贴式腕部EIT系统中，与任务相关的测量结果往往主要受压力依赖的电极‑皮肤接触阻抗以及表层形变的影响，而不仅仅是前臂深处的电导率变化。以往的研究虽然未断言这种主导性普遍存在，但支持了上述机制：Yao等人 [^53] 指出接触阻抗会受到压力和接触面积的影响，会随皮肤形变而改变，且能提升手势识别效果；Lou等人 [^24] 将测量到的阻抗描述为接触阻抗变化、内部组织形变以及外部形状形变共同作用的结果。更一般地说，接触阻抗较高且易受运动影响，能够导致EIT重建误差 [^27]。

根据这一假设，紧贴手腕的EIT和电容式系统包含一个与力肌电图（FMG）直接测量的表面形变相重叠的机械成分；它们并非物理等效，因为EIT还会对内部电导率变化作出响应。因此，测量压力能够分离出机械成分，而无需受电极-皮肤界面的干扰。我们推测这一成分包含了解码手部状态所需的大部分信息，第A.11节中采用相同协议的EIT对比提供了直接的实验依据：在同一受试者、同一解剖结构和同一协议下，密集压力传感在每一个姿态轴上的表现都优于EIT传感器阵列。

A.1.3 腕部及前臂佩戴式手部传感的发展历程。第2节中的简明分类法按照传感物理原理对以往的研究进行了归类。此处我们将给出更完整、按时间顺序叙述的内容——正文本篇幅有限无法涵盖——追溯每种传感方式的发展历程，以及我们的方法——即由密集电容式压力带获取的连续全手姿态及空间分辨力数据——在这一发展脉络中的位置。我们将逐一介绍各种传感方式，首先从力肌电图（FMG）开始，我们的系统便属于这一类别。

力肌电成像技术：从假肢控制到连续传感。FMG——通过前臂组织的机械形变来推断手部状态——这一概念的出现早于其名称本身。它起源于假肢领域：Abboudi等人[^1]利用残肢肌腱上方的压力垫，成功解码了截肢者的单个手指意图；Phillips和Craelius[^29]将这一方法推广为残肢运动成像技术，证实前臂上的环形压力传感器能够捕捉到每个手指的相关信息。与此同时，GestureWrist[^32]率先采用了腕带式交互形态。进入2010年代后，该技术主要借助压阻式力传感器（FSR）得以发展：WristFlex[^7]实现了低功耗且全天候可用的手势输入功能；Menon及其团队也开展了大量关于FMG在假肢及手势控制中应用的研究。随后，传感器类型日益多样化——气压传感器与柔性电容阵列[^44] [^47]——它们均能生成更丰富的前臂压力“图像”。其中两项气压传感器相关研究对我们的稀疏性发现尤为重要：Zhu等人[^59]证明仅需十个传感器即可捕捉到独特的肌腱-肌肉轮廓；Shull等人[^42]则达到了94%的手势识别准确率——仅用五个最佳位置的传感器便可实现90%的准确率，且手腕屈肌肌腱下方被确定为最具信息量的区域。不过，这类研究绝大多数针对的是离散手势，能实现连续回归的案例较为少见：Kakkhodayan等人[^15]利用八个前臂FSR传感器预测三个手指的指尖位移（其相关性甚至超过了同时期的表面肌电信号）；Shull等人[^42]还进一步将每个手指的角度表示为单一标量（$R^{2}=0.79$）；而更近期的研究则通过融合FMG信号来估算手指关节角度[^5] [^17]。但所有这些方法都只能恢复单个关节角度或每个手指的标量值；唯一能从压力数据反推完整关节手模型（MANO）的系统SleevePose[^26]，虽采用了包含117个触觉单元的整个前臂纺织袖套，却仅能获取手部姿态，且在不同用户间的表现差异显著。此类研究中一个反复出现的实际问题是不同使用场景下的信号稳定性——FMG信号会因佩戴方式和皮肤状态的变化而产生漂移[^13] [^46]——这促使我们采用了严格的跨会话、留一佩戴模式协议。目前尚无任何系统能同时恢复完整的关节手模型以及空间分布的接触力信息，而这正是本研究旨在填补的空白。

---

肌电图：综合性能最佳的竞品。表面肌电图（sEMG）能够感知肌肉收缩产生的电信号，是目前最为成熟的手腕佩戴式传感方式。以交互为导向的研究始于Saponas等人[^39]的工作，他们将前臂sEMG确立为用于识别手指手势的肌肉-计算机接口；随后，该领域通过公开基准测试——尤其是Ninapro[^2]——得以进一步发展，这些基准测试为深度学习手势识别研究提供了重要支撑。基于sEMG的连续姿态重建技术也随之出现：NeuroPose[^23]利用八通道前臂肌电臂环来重建三维手部姿态，该模型针对每个用户均能有效工作，且在不同传感器安装方式和不同日期下均保持稳定；近期，大规模数据集进一步推动了该技术向通用化方向发展，emg2pose[^38]和emg2qwerty[^43]提供了数百小时的数据，而通用神经运动解码器也展现出了跨用户迁移能力[^16]。sEMG是记录不产生外部组织位移的内在肌活动和等长肌活动的天然通道，我们认为它与表面形变传感技术属于互补关系而非竞争关系；其主要的实际应用难点在于电极漂移和皮肤条件敏感性[^16] [^38]。

电阻抗与生物阻抗。电阻抗断层成像（EIT）通过边界电流注入来重建内部电导率图谱。Tomo[^56]率先将手腕佩戴式EIT应用于手势识别，随后又出现了分辨率更高、支持三维重建的变体；EITPose[^20]进一步将该技术拓展至连续姿态重建领域。相关的生物阻抗与射频反射传感技术（如EtherPose[^18]、EI-Lite[^58]）主要用于姿态识别，最近也被用于捏合力测量。正如我们在第A.1.2节中所述，压力依赖型接触阻抗和组织形变对手腕EIT测量结果的影响不容小觑[^24] [^27] [^53]。我们推测，在紧贴手腕的传感设备中，这种由机械作用介导的成分往往占据了任务相关信号的主要部分，因此EIT可作为验证我们的压力测量结果的理想对照指标；第A.11节中的同协议对比实验正是为了检验这一解释，而非想当然地认为这两种传感方式在物理特性上完全相同。

超声和声学。超声是唯一一种能够真正穿透组织并解析肌肉与肌腱结构的手腕形态学检测方式。A模式超声可通过四个前臂传感器对离散的手指动作进行分类[^52]，而声肌图控制则能提供成比例且连续的输出[^8]；接触式超声已被用于检测各手指的受力情况[^3]、关节角度估计[^4]以及精细手指动作解码[^54]，上述应用均基于在同一用户身上测试的前臂探头。不过这种高精度检测方式存在体积大、功耗高，且需要传感器与皮肤之间实现声学耦合的缺点。另一类非成像类的声学方法则完全避开了这种耦合需求：这类方法并非向组织内发射声波，而是让小型扬声器发出人耳无法察觉的空气传播信号（通常为频率在20–29 kHz范围内的调频连续波），这些信号会穿过并环绕手腕，在外部皮肤轮廓处反射或衍射，再由附近的麦克风捕捉产生的回波轮廓。因此，这类系统测量的是手部和前臂不断变化的表面几何形状——而非内部结构——其原理与我们使用的压力带类似，只不过是通过空气而非机械接触来感知信号。EchoWrist [^21] 能以这种方式追踪20个手指关节（关节误差均值仅为4.8毫米），而EchoForce [^25] 则能通过屈肌引起的表面形变来推算持续的握力。由于少量空气耦合回波所携带的空间细节远不如密集的接触式阵列，它们只能还原较为粗略的目标信息——比如关节集合或总体受力情况，而非每个触觉单元的接触情况——但换来的却是更轻便且无接触的检测方式。

视觉技术。安装在环境中的摄像头仍是手部追踪领域精度最高的方案，其中MANO [^34] 之类的参数化模型更是作为代表性工具；不过这类方案需要特定的受控环境。可佩戴在手腕上的摄像头则将这一技术带到了人体上——Digits [^19] 配备了红外摄像头，而最新的WristP $^{2}$ [^49] 则采用了鱼眼摄像头，实现了目前 wrist-worn 设备中最先进的姿态追踪效果；但这两款设备都依赖于通往手指的无遮挡光路，而这恰恰是表面传感技术所无需面对的限制条件。

融合姿态与力估计，以及我们的定位。与我们系统最接近的方案会同时估计运动学与动力学参数。多任务HD-EMG模型能够预测腕关节角度或完整关节位置，同时还能估算握力[^22] [^31]，但这类模型依赖密集的电极网格，远不符合可穿戴设备的实用要求；而emg2tendon[^45]则通过基于16通道emg2pose手环的肌肉骨骼模型将两者关联起来。PiMForce[^40]的研究表明，以三维手部姿态为条件来估计力能显著提升预测精度，该方法利用外部摄像头获取的姿态数据以及表面肌电信号对应的力数据；我们在自身的力模型中采用了同样的姿态条件化策略。Wrist2Finger[^50]可通过手表和带传感器的戒指来恢复每个手指的姿态与力数据，而Wrist2[^49]虽能获取每个顶点的压力数据，却需要视线畅通。从数值上看（表1），腕部佩戴式全手姿态估计的MPJPE误差范围相差约一个数量级：从具备直接视线的鱼眼相机（约3毫米），到无需视线的声学传感技术（约5毫米），再到我们的电容式手环（7.2毫米）、电阻断层成像技术（约11–12毫米），以及大规模跨用户场景下的表面肌电信号方案（约16毫米）。这些数值并非严格对照测试结果——不同研究的协议与评估指标存在差异，包括单用户与跨用户评估、数据集规模以及关节集合的不同（例如NeuroPose是基于单用户校准的中位数结果；emg2pose和EITPose的数据取自保留用户及同会话操作点；Li等人报告的仅为单个腕关节角度的皮尔逊相关系数R，此处以R²表示；Wrist2Finger的力数据仅针对拇指的最佳情况；Rahimi的力估计为离线计算；Sakr的结果是综合6自由度数据的R²；而我们自己的数据则将单用户的手部姿态与四用户的HOM力数据配对）——但这些数据足以说明，在相同的单用户操作条件下，密集电容式压力传感技术在无需视线的方案中表现优异；而且我们的系统还能在同一可穿戴设备上还原出空间分辨的单个触觉单元接触力。

### A.2 数据集

A.2.1 记录协议。本节记录了第3.4节中总结的各数据集的记录协议。所有数据集中，每次记录时均需佩戴和取下腕带。佩戴时，我们会将D形环置于前臂背侧远端中心位置，并通过视觉与触觉检查来调整绑带松紧度；要求参与者在各次实验中保持松紧度一致。对于使用动作捕捉手套和前臂标记簇的数据集，我们会采用同样的视觉定位方法，将前臂标记簇臂环置于肘部下方。腕带的佩戴位置与松紧度会影响测量信号，我们在训练过程中会通过数据增强来抵消这种差异性。标记簇的放置位置也可能对旋前/旋后角度的估计产生偏差；与腕带佩戴位置/松紧度带来的影响不同，这种误差并未被明确修正。

---

手部姿态（HP）。参与者需佩戴动作捕捉手套、前臂标记簇（用于采集20个手指关节角度及3个腕关节角度数据）以及压力腕带。该数据集着重于手指与腕部的联合运动，旨在区分二者对腕带信号的重叠影响——其中腕部运动往往占据主导地位。实验协议涵盖完全及部分手指屈曲（至掌指关节远端）、不同腕部姿态下的多手指组合运动、拇指与手指敲击动作、微手势（拇指滑动）以及伴随主动腕部旋转的静态手部姿态。为了充分测试算法的解歧能力，这些动作均经过刻意夸张处理且不符合自然运动模式。该数据集包含20组录音，每组时长16–24分钟，总时长为6小时55分钟。示例画面如图10所示。

指尖力（FF）。参与者需同时佩戴PPS触觉手套和压力感应腕带。由于未使用动作捕捉技术，该数据集不包含真实的运动学信息：仅记录腕带压力输入与触觉手套的力目标值。该数据集是一种压力测试，最大限度地涵盖了指尖力、手部姿态及手腕姿态，旨在迫使模型在强烈的运动学干扰下（尤其是对手腕信号影响显著的手腕运动）仍能准确预测指尖力。记录的行为包括抓取并握持形状与重量各异的日常物品（胶带卷、耳机盒、纸杯和MacBook）、点击电脑鼠标，以及在硬质和软质表面（桌子和椅子）上进行敲击/按压操作。在物体交互过程中，使用者会通过不同的手指组合（通常是拇指加一个或多个手指）施加挤压力，以实现对特定手指所产生力的区分。实验协议还包括在旋转手腕的同时保持恒定力抓取的过程，旨在帮助模型学会对手腕运动的不变性。大多数动作均经过刻意夸张处理，并非自然动作。该数据集包含18组录音，每组时长约20分钟，总时长为5小时48分钟。示例画面如图11所示。

手-物操控（HOM）。参与者需佩戴三种传感设备：装有动作捕捉标记点的PPS触觉手套、前臂标记簇以及压力腕带。由此可获得同步的手部姿态、手腕姿态、触觉力和腕带压力数据流。每组录音包含两个活动阶段：（1）在两张桌子之间搬运日常物品；（2）在移动物品的过程中使用/操控物品，参与者会在整个录音过程中交替进行这两项活动。我们选用了约40种不同类型的物品，包括铝罐、水瓶、毛绒玩具、棋盘游戏盒、电钻、锤子和胶带卷等家居及办公用品。操控行为包括拧开/拧紧可重复使用瓶盖、阅读标签时的手部重新定位、模拟锤击动作、饮水手势，以及其他手部旋转与 repositioning 任务。研究人员要求参与者保持稳固且稳定的抓握状态，避免使用过于夸张或不自然的力量。该数据集涵盖4名用户共55组录音（总时长19小时19分钟）。大多数录音时长在21至28分钟之间；少数录音时长不足15分钟，这是由于触觉手套的连接问题导致需要重启手套所致。示例画面如图12所示。

A.2.2 辅助指尖力（FF）数据集与结果。FF数据集是针对单名参与者、无动作捕捉技术的指尖力压力测试

![Image](images/26531eb7a3f7adfcb947accccc0d40fd1b85b15b26ace4bed4fbac791f26247c.jpg)

<div style="text-align: center;">Figure 10: Hand-pose dataset (HP). Top row: a fixed finger configuration under varying wrist orientations. Bottom row: diverse finger articulations at a neutral wrist orientation. Each panel shows the ground-truth hand pose alongside the corresponding wristband pressure map.</div>

![Image](images/3775c7d8de818c82c3104d99b83fd38e40be038712653a44cca1820f70602945.jpg)

<div style="text-align: center;">Figure 11: Fingertip-force dataset (FF). Each panel shows the RGB scene frame (left), the ground-truth 2D taxel layout (top right), and the wristband pressure map (bottom right) captured at the same instant. Top row: grasping a can with various finger combinations and grip forces. Bottom row: diverse everyday object interactions.</div>

该测试在强烈的运动学干扰下进行（完整协议见上文）。它并非主论文中的重点研究成果，而是作为辅助训练数据使用，并出现在多个消融实验环节（如A.8节和4.4节）。其独立的力估计结果则在A.5.1节中报告。

### A.2.3 数据集样本。图10至图12展示了来自这三个数据集的典型样本

A.2.4 数据处理。我们现在简要讨论数据采集后的处理步骤。对于 MoCap 手部姿态，我们对缺失数据进行线性插值，以填补短于 200 ms 的数据缺口。这些缺口是由于日常物体操作过程中的标记点遮挡造成的。由于 MoCap 以 60 Hz 运行，我们发现线性插值是有效的。对于较大的缺口，以及在传感器预热期间，我们会排除相应的训练窗口。对于触觉手套数据，我们首先应用出厂校准，以获得以 PSI 为单位的每个 taxel 的压力，然后按照 Sec. 3.2.3 所述将其转换为每个 taxel 的法向力。我们观察到，基线在长时间记录过程中可能会漂移。为补偿这一点，我们估计每个 taxel 的时变基线并

---

![Image](images/1e6d79016aaca8791b0d47312c1c35e343273843b029e193ef248cd5a69923cf.jpg)

将其从测量值中减去。由于 taxels 在长期使用后可能失效，我们还会检测每个 taxel 的故障记录，并在训练和评估期间掩蔽无效的 ground truth。最后，我们将所有传感器流进行时间对齐，并通过线性插值将其映射到 50 Hz 采样率的统一均匀时间轴上。为此，我们首先采用前向和后向滤波进行零相位指数平滑。对于在不规则时间 $\boldsymbol{x}(t)$ 采样的信号 $t_1 < t_2 < \cdots$，前向过程计算

<div style="text-align: center;">Figure 12: Hand-object manipulation dataset (HOM). Representative scenarios showing the wristband pressure map, the ground-truth hand pose with glove taxel readings, and the corresponding RGB scene frame captured at the same instant.</div>

 $$ \bar{x}_{k}=\left(1-\alpha_{k}\right)\bar{x}_{k-1}+\alpha_{k}x_{k},\quad\alpha_{k}=1-e^{-\left(t_{k}-t_{k-1}\right)/\tau} $$

其中 $\tau$ 是控制平滑带宽的时间常数。后向过程以相反顺序应用相同的递推，从而产生保持信号时序的零相位（非因果）滤波器。我们令 $\tau = 1/(2F_{target})$，取 $F_{target} = 50$ Hz，以确保滤波器衰减高于目标采样率的频率，同时保留较慢的生理动态。平滑后，我们通过线性插值将所有流重采样到均匀的 50 Hz 时间轴上。

### A.3 模型与训练细节

我们在此详细阐述第4.1.2节中总结的训练与推理机制。上下文长度设为$N = 100$个样本（在50 Hz采样率下对应2秒），批量大小为128，一次优化步骤可处理256秒的上下文数据，相当于每个训练轮次约80次迭代，经过50k次迭代后可完成大约600个有效训练轮次。

GRU每输入一个步骤就会产生一个输出，但仅对最后$N/2$个输出施加监督，以便递归状态能有充足的预热上下文；无论是训练还是测试阶段，隐藏状态均初始化为零，且训练与测试阶段的上下文长度保持一致。推理时，每个长度为N的窗口会预测其最后的$N/2$个步骤，因此当步长为1时，每个时间戳通常会被多个重叠窗口覆盖（最多可达$N/2$个预测结果）；在计算指标前，我们会先对每个时间戳的所有有效预测结果取平均值。

### A.4 评估指标

A.4.1 标量误差指标。我们使用以下指标来评估每个估计的标量量——单个关节角度、腕部角度或力通道。对于一个包含N个样本的预测序列$\hat{y}_i$和真实值$y_i$，平均绝对误差为

 $$  MAE=\frac{1}{N}\sum_{i=1}^{N}\left|y_{i}-\hat{y}_{i}\right|, $$

关节角度以度为单位报告，力以牛顿为单位，触觉单元压强则以PSI为单位。对于每个自由度（DOF），决定系数用于衡量预测结果所能解释的真实值方差的比例，

 $$ R^{2}=1-\frac{\sum_{i=1}^{N}(\hat{y}_{i}-y_{i})^{2}}{\sum_{i=1}^{N}(y_{i}-\bar{y})^{2}}, $$

其中$\bar{y}$是该自由度的真实均值；$R^{2} = 1$表示预测完全准确，$R^{2} = 0$意味着预测值等于均值，而负值则表明预测效果比直接取均值还要差。真实值的标准差$\sigma(GT)$即为$y_{i}$的标准差，该数值被用作平均绝对误差的参考尺度。

A.4.2 姿态位置指标。对于手部姿态，我们报告指尖位置误差以及平均关节位置误差（MPJPE），两者均以毫米为单位，这些数值是通过从预测的关节角度进行正运动学计算得出的。MPJPE是指预测的三维骨骼关节位置与真实位置之间的平均欧几里得距离。如图13所示，手部骨骼包含22个节点：每个手指四个节点，加上腕部根节点和手掌节点。我们报告两种变体。仅手指版本（图13中的绿色关节）以真实的腕部方向作为根节点，评估16个关节——不包括四个掌指关节基节点（索引6、10、14、18），这些节点在腕部旋转时保持固定位置——因此能够分离出手指关节活动误差与腕部预测误差。含腕部版本则采用预测的腕部方向，并包含掌指关节基节点（图13中的黄色节点），评估全部20个手指骨骼节点，从而捕捉完整的端到端误差。腕部根节点和手掌（红色）在两种版本中均被排除在外。每位用户的MPJPE先按手指分别计算，再根据每根手指的骨骼节点数量进行加权平均。

A.4.3 $R^{2}$、$\sigma(GT)$ 和 MAE的聚合。在报告多个自由度（DOF）上的聚合指标时——例如，用于总结四种关节类型的单根手指$R^{2}$，或用于总结五根手指的单种关节类型$R^{2}$——必须注意避免由于不同自由度间的均值差异导致的指标膨胀。

合并$R^{2}$的问题。一种简单的方法是将所有自由度合并为一个向量来计算$R^{2}$：

 $$ R_{\mathrm{p o o l e d}}^{2}=1-\frac{\sum_{j}\sum_{i}(\hat{y}_{i j}-y_{i j})^{2}}{\sum_{j}\sum_{i}(y_{i j}-\bar{y})^{2}}, $$

其中$\bar{y}$是所有样本i和所有自由度j的全局均值。分母$SS_{tot}$同时包含了自由度内的方差以及不同自由度间的均值差异。例如，如果某个关节角度

---

![Image](images/7d6fdd32250830309cf1f3190ddf29bd30dd243c4a435b47cc7f3b6dbab08797.jpg)

<div style="text-align: center;">Figure 13: Hand skeleton joints used for the position metrics. Green joints are included in both variants (finger-only and with-wrist). Yellow joints (MCP base) are included only in the with-wrist variant, as they remain at fixed positions without wrist rotation. Red joints (wrist root and palm) are excluded from both.</div>

集中在$5^\circ$附近，而另一个关节角度集中在$40^\circ$附近，那么$35^\circ$的差异就会使$SS_{tot}$增大，从而人为地抬高$R^2$，即便各自由度的预测结果并不理想。

基于方差加权的$R^{2}$。我们改为先按自由度分别计算$R^{2}$，使用每个自由度自身的均值，再结合方差加权进行整合：

 $$ R_{j}^{2}=1-\frac{S S_{\mathrm{r e s},j}}{S S_{\mathrm{t o t},j}},\quad R_{\mathrm{a g g}}^{2}=1-\frac{\sum_{j}S S_{\mathrm{r e s},j}}{\sum_{j}S S_{\mathrm{t o t},j}}=\frac{\sum_{j}S S_{\mathrm{t o t},j}\cdot R_{j}^{2}}{\sum_{j}S S_{\mathrm{t o t},j}}. $$

这相当于对各个自由度的$R^2$值取加权平均，其中每个自由度的权重由其真实方差（$SS_{tot,j} \propto \sigma_j^2$）决定。方差越大的自由度贡献越大。关键在于，不同自由度间的均值差异不会再影响分母，因为每个$SS_{tot,j}$都是相对于该自由度自身的均值$\tilde{y}_j$计算的。

基于方差加权的标准差$\sigma(GT)$。为了保持一致性，聚合后的真实标准差也采用方差加权的方式：

 $$ \sigma_{\mathrm{a g g}}(\mathrm{G T})=\frac{\sum_{j}\sigma_{j}^{2}\cdot\sigma_{j}}{\sum_{j}\sigma_{j}^{2}}=\frac{\sum_{j}\sigma_{j}^{3}}{\sum_{j}\sigma_{j}^{2}}, $$

这样方差较大的自由度对报告中的离散程度的影响也相应更大。

基于样本数量加权的MAE。与$R^{2}$和$\sigma(GT)$不同，MAE不会因不同自由度间的均值差异而产生偏差，因为它衡量的是绝对预测误差，与每个自由度的取值范围无关。我们仍需确定如何在不同自由度上合并MAE，尤其是当各自由度的有效样本数量不同时（例如某个传感器通道存在缺失或掩码处理的帧）。我们采用基于样本数量加权的均值来进行聚合：

 $$ MAE_{agg}=\frac{\sum_{j}n_{j}\cdot MAE_{j}}{\sum_{j}n_{j}}, $$

<div style="text-align: center;">Table 5: Per-finger force prediction error (Newtons) on the Fingertip Force (FF) dataset.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Finger</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)$ (N)</td><td style='text-align: center; word-wrap: break-word;'>MAE (N)</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>0.950</td><td style='text-align: center; word-wrap: break-word;'>0.503</td><td style='text-align: center; word-wrap: break-word;'>0.268</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>1.696</td><td style='text-align: center; word-wrap: break-word;'>0.489</td><td style='text-align: center; word-wrap: break-word;'>0.661</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>1.518</td><td style='text-align: center; word-wrap: break-word;'>0.430</td><td style='text-align: center; word-wrap: break-word;'>0.718</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>0.985</td><td style='text-align: center; word-wrap: break-word;'>0.245</td><td style='text-align: center; word-wrap: break-word;'>0.730</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>0.308</td><td style='text-align: center; word-wrap: break-word;'>0.087</td><td style='text-align: center; word-wrap: break-word;'>0.588</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>1.277</td><td style='text-align: center; word-wrap: break-word;'>0.328</td><td style='text-align: center; word-wrap: break-word;'>0.696</td></tr></table>

<div style="text-align: center;">Table 6: Per-user kinematics estimation on the HOM dataset for the multi-task Force+Pose model, which simultaneously estimates per-taxel glove force ( $\lambda_{F}=1.2$, see Sec. A.9) and joint angles.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">User</td><td colspan="3">Finger</td><td colspan="3">Wrist</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>MAE $^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>MAE $^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P1</td><td style='text-align: center; word-wrap: break-word;'>22.19</td><td style='text-align: center; word-wrap: break-word;'>12.14</td><td style='text-align: center; word-wrap: break-word;'>0.260</td><td style='text-align: center; word-wrap: break-word;'>26.47</td><td style='text-align: center; word-wrap: break-word;'>8.97</td><td style='text-align: center; word-wrap: break-word;'>0.755</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P2</td><td style='text-align: center; word-wrap: break-word;'>21.01</td><td style='text-align: center; word-wrap: break-word;'>9.10</td><td style='text-align: center; word-wrap: break-word;'>0.431</td><td style='text-align: center; word-wrap: break-word;'>25.12</td><td style='text-align: center; word-wrap: break-word;'>9.16</td><td style='text-align: center; word-wrap: break-word;'>0.716</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P3</td><td style='text-align: center; word-wrap: break-word;'>19.67</td><td style='text-align: center; word-wrap: break-word;'>8.76</td><td style='text-align: center; word-wrap: break-word;'>0.445</td><td style='text-align: center; word-wrap: break-word;'>28.80</td><td style='text-align: center; word-wrap: break-word;'>8.50</td><td style='text-align: center; word-wrap: break-word;'>0.779</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P4</td><td style='text-align: center; word-wrap: break-word;'>17.88</td><td style='text-align: center; word-wrap: break-word;'>7.19</td><td style='text-align: center; word-wrap: break-word;'>0.582</td><td style='text-align: center; word-wrap: break-word;'>19.66</td><td style='text-align: center; word-wrap: break-word;'>6.75</td><td style='text-align: center; word-wrap: break-word;'>0.763</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>20.19</td><td style='text-align: center; word-wrap: break-word;'>9.30</td><td style='text-align: center; word-wrap: break-word;'>0.430</td><td style='text-align: center; word-wrap: break-word;'>25.01</td><td style='text-align: center; word-wrap: break-word;'>8.35</td><td style='text-align: center; word-wrap: break-word;'>0.753</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>P4 (HP)</td><td style='text-align: center; word-wrap: break-word;'>21.81</td><td style='text-align: center; word-wrap: break-word;'>4.56</td><td style='text-align: center; word-wrap: break-word;'>0.859</td><td style='text-align: center; word-wrap: break-word;'>19.48</td><td style='text-align: center; word-wrap: break-word;'>4.75</td><td style='text-align: center; word-wrap: break-word;'>0.863</td></tr></table>

其中$n_{j}$是自由度j的有效样本数（即排除了因数据缺失导致的各自由度掩码处理后的样本）。当所有自由度的$n_{j}$相同时，该公式便简化为未加权的算术平均值；当样本数量不同时（例如某个传感器在某个通道上出现部分故障），数据量更多的自由度在聚合结果中占据的权重也相应更大。

### A.5 详细结果

本节汇总了各关节、各用户以及各手指的详细结果，这些结果是对第4节中汇总表的进一步补充，同时还包括高分辨率的定性可视化结果。

A.5.1 指尖力（FF）结果。表5展示了在辅助FF数据集上各手指的力估计精度（详见第A.2.2节）。拇指的表现始终比其他手指差，这一方面源于生理差异（拇指所依赖的内在手部肌肉在前臂处更难被观测到），另一方面是因为训练数据较少：采集过程中拇指传感器出现故障，导致仅有约34%的拇指样本有效。

A.5.2 HOM姿态估计。在HOM数据集上，由于触觉手套体积较大且物体交互情况复杂，运动捕捉得到的真实姿态数据噪声更大（存在标记点遮挡、帧丢失等情况），因此姿态估计质量低于在HP数据集上的表现。尽管如此我们仍开展了相同实验；表6总结了多任务力+姿态模型中各用户的运动学参数，其中P4对应的单用户HP结果作为参考。表9则给出了各用户、各手指的详细分解数据。

---

<div style="text-align: center;">Table 7: Per-finger per-joint estimation error ( $^{\circ}$) for the combined wrist and finger model on the Hand Pose (HP) dataset.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Finger</td><td style='text-align: center; word-wrap: break-word;'>Joint</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>$MAE^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td></tr><tr><td rowspan="5">Thumb</td><td style='text-align: center; word-wrap: break-word;'>CMC FE</td><td style='text-align: center; word-wrap: break-word;'>16.15</td><td style='text-align: center; word-wrap: break-word;'>3.63</td><td style='text-align: center; word-wrap: break-word;'>0.897</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CMC AA</td><td style='text-align: center; word-wrap: break-word;'>10.11</td><td style='text-align: center; word-wrap: break-word;'>3.61</td><td style='text-align: center; word-wrap: break-word;'>0.758</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP FE</td><td style='text-align: center; word-wrap: break-word;'>17.06</td><td style='text-align: center; word-wrap: break-word;'>5.49</td><td style='text-align: center; word-wrap: break-word;'>0.790</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>IP FE</td><td style='text-align: center; word-wrap: break-word;'>15.21</td><td style='text-align: center; word-wrap: break-word;'>5.84</td><td style='text-align: center; word-wrap: break-word;'>0.731</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>15.51</td><td style='text-align: center; word-wrap: break-word;'>4.64</td><td style='text-align: center; word-wrap: break-word;'>0.802</td></tr><tr><td rowspan="5">Index</td><td style='text-align: center; word-wrap: break-word;'>MCP AA</td><td style='text-align: center; word-wrap: break-word;'>5.37</td><td style='text-align: center; word-wrap: break-word;'>2.63</td><td style='text-align: center; word-wrap: break-word;'>0.559</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP FE</td><td style='text-align: center; word-wrap: break-word;'>23.48</td><td style='text-align: center; word-wrap: break-word;'>6.32</td><td style='text-align: center; word-wrap: break-word;'>0.852</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PIP FE</td><td style='text-align: center; word-wrap: break-word;'>22.74</td><td style='text-align: center; word-wrap: break-word;'>6.11</td><td style='text-align: center; word-wrap: break-word;'>0.863</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DIP FE</td><td style='text-align: center; word-wrap: break-word;'>11.31</td><td style='text-align: center; word-wrap: break-word;'>3.37</td><td style='text-align: center; word-wrap: break-word;'>0.810</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>21.47</td><td style='text-align: center; word-wrap: break-word;'>4.61</td><td style='text-align: center; word-wrap: break-word;'>0.846</td></tr><tr><td rowspan="5">Middle</td><td style='text-align: center; word-wrap: break-word;'>MCP AA</td><td style='text-align: center; word-wrap: break-word;'>5.09</td><td style='text-align: center; word-wrap: break-word;'>2.43</td><td style='text-align: center; word-wrap: break-word;'>0.577</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP FE</td><td style='text-align: center; word-wrap: break-word;'>26.09</td><td style='text-align: center; word-wrap: break-word;'>6.37</td><td style='text-align: center; word-wrap: break-word;'>0.886</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PIP FE</td><td style='text-align: center; word-wrap: break-word;'>23.68</td><td style='text-align: center; word-wrap: break-word;'>5.61</td><td style='text-align: center; word-wrap: break-word;'>0.886</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DIP FE</td><td style='text-align: center; word-wrap: break-word;'>19.45</td><td style='text-align: center; word-wrap: break-word;'>3.89</td><td style='text-align: center; word-wrap: break-word;'>0.904</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>23.41</td><td style='text-align: center; word-wrap: break-word;'>4.58</td><td style='text-align: center; word-wrap: break-word;'>0.886</td></tr><tr><td rowspan="5">Ring</td><td style='text-align: center; word-wrap: break-word;'>MCP AA</td><td style='text-align: center; word-wrap: break-word;'>6.95</td><td style='text-align: center; word-wrap: break-word;'>2.62</td><td style='text-align: center; word-wrap: break-word;'>0.736</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP FE</td><td style='text-align: center; word-wrap: break-word;'>26.00</td><td style='text-align: center; word-wrap: break-word;'>6.61</td><td style='text-align: center; word-wrap: break-word;'>0.869</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PIP FE</td><td style='text-align: center; word-wrap: break-word;'>24.60</td><td style='text-align: center; word-wrap: break-word;'>5.49</td><td style='text-align: center; word-wrap: break-word;'>0.897</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DIP FE</td><td style='text-align: center; word-wrap: break-word;'>14.91</td><td style='text-align: center; word-wrap: break-word;'>3.38</td><td style='text-align: center; word-wrap: break-word;'>0.889</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>23.27</td><td style='text-align: center; word-wrap: break-word;'>4.53</td><td style='text-align: center; word-wrap: break-word;'>0.878</td></tr><tr><td rowspan="5">Pinky</td><td style='text-align: center; word-wrap: break-word;'>MCP AA</td><td style='text-align: center; word-wrap: break-word;'>10.34</td><td style='text-align: center; word-wrap: break-word;'>3.05</td><td style='text-align: center; word-wrap: break-word;'>0.795</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP FE</td><td style='text-align: center; word-wrap: break-word;'>27.38</td><td style='text-align: center; word-wrap: break-word;'>6.57</td><td style='text-align: center; word-wrap: break-word;'>0.865</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PIP FE</td><td style='text-align: center; word-wrap: break-word;'>15.83</td><td style='text-align: center; word-wrap: break-word;'>4.44</td><td style='text-align: center; word-wrap: break-word;'>0.832</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DIP FE</td><td style='text-align: center; word-wrap: break-word;'>16.49</td><td style='text-align: center; word-wrap: break-word;'>3.76</td><td style='text-align: center; word-wrap: break-word;'>0.865</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>21.81</td><td style='text-align: center; word-wrap: break-word;'>4.45</td><td style='text-align: center; word-wrap: break-word;'>0.854</td></tr><tr><td colspan="2">Overall Mean</td><td style='text-align: center; word-wrap: break-word;'>21.65</td><td style='text-align: center; word-wrap: break-word;'>4.56</td><td style='text-align: center; word-wrap: break-word;'>0.859</td></tr></table>

<div style="text-align: center;">Table 8: Comparison of kinematics estimation approaches on the Hand Pose (HP) dataset. Mean MAE,  $R^2$, and fingertip position error across all DOFs. Ground-truth standard deviations: Finger  $\sigma(GT)=21.81^\circ$, Wrist  $\sigma(GT)=19.48^\circ$.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Experiment</td><td colspan="2">Finger</td><td colspan="2">Wrist</td><td style='text-align: center; word-wrap: break-word;'>Tip</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MAE $^{o}$</td><td style='text-align: center; word-wrap: break-word;'>R $^{2}$</td><td style='text-align: center; word-wrap: break-word;'>MAE $^{o}$</td><td style='text-align: center; word-wrap: break-word;'>R $^{2}$</td><td style='text-align: center; word-wrap: break-word;'>(mm)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Both wrist &amp; finger joints</td><td style='text-align: center; word-wrap: break-word;'>4.56</td><td style='text-align: center; word-wrap: break-word;'>0.860</td><td style='text-align: center; word-wrap: break-word;'>4.75</td><td style='text-align: center; word-wrap: break-word;'>0.863</td><td style='text-align: center; word-wrap: break-word;'>10.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Only finger joints</td><td style='text-align: center; word-wrap: break-word;'>4.54</td><td style='text-align: center; word-wrap: break-word;'>0.862</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>10.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Only wrist joints</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>4.35</td><td style='text-align: center; word-wrap: break-word;'>0.884</td><td style='text-align: center; word-wrap: break-word;'>—</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Finger w/ pronation input</td><td style='text-align: center; word-wrap: break-word;'>4.46</td><td style='text-align: center; word-wrap: break-word;'>0.865</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>10.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Finger w/ all wrist inputs</td><td style='text-align: center; word-wrap: break-word;'>4.26</td><td style='text-align: center; word-wrap: break-word;'>0.879</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>9.9</td></tr></table>

A.5.3 各关节手部姿态误差（HP）。表7在第3节汇总结果的基础上，进一步细分了每个手指上各个关节的HP误差。

A.5.4 手部姿态方法对比（HP）。表8在同等设置下对比了HP相关的不同模型变体——包括同时估计手指和手腕、分别单独估计二者，以及基于手腕输入来估计手指姿态的情况。

<div style="text-align: center;">Table 9: Per-user joint angle estimation error ( $^{\circ}$) on the HOM dataset for the combined wrist and finger model.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td colspan="5">P1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>DOF</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{{o}}$</td><td style='text-align: center; word-wrap: break-word;'>$MAE^{{o}}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{{2}}$</td></tr><tr><td rowspan="4">Wrist</td><td style='text-align: center; word-wrap: break-word;'>Pronation</td><td style='text-align: center; word-wrap: break-word;'>31.5</td><td style='text-align: center; word-wrap: break-word;'>9.2</td><td style='text-align: center; word-wrap: break-word;'>0.860</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Flexion</td><td style='text-align: center; word-wrap: break-word;'>20.9</td><td style='text-align: center; word-wrap: break-word;'>8.3</td><td style='text-align: center; word-wrap: break-word;'>0.728</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Deviation</td><td style='text-align: center; word-wrap: break-word;'>14.9</td><td style='text-align: center; word-wrap: break-word;'>7.8</td><td style='text-align: center; word-wrap: break-word;'>0.543</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>26.5</td><td style='text-align: center; word-wrap: break-word;'>8.4</td><td style='text-align: center; word-wrap: break-word;'>0.783</td></tr><tr><td rowspan="6">Finger</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>17.4</td><td style='text-align: center; word-wrap: break-word;'>9.5</td><td style='text-align: center; word-wrap: break-word;'>0.266</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>20.9</td><td style='text-align: center; word-wrap: break-word;'>12.4</td><td style='text-align: center; word-wrap: break-word;'>0.160</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>22.1</td><td style='text-align: center; word-wrap: break-word;'>12.7</td><td style='text-align: center; word-wrap: break-word;'>0.195</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>24.7</td><td style='text-align: center; word-wrap: break-word;'>14.2</td><td style='text-align: center; word-wrap: break-word;'>0.210</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>23.1</td><td style='text-align: center; word-wrap: break-word;'>13.3</td><td style='text-align: center; word-wrap: break-word;'>0.212</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>22.2</td><td style='text-align: center; word-wrap: break-word;'>12.4</td><td style='text-align: center; word-wrap: break-word;'>0.205</td></tr><tr><td rowspan="5">Joint</td><td style='text-align: center; word-wrap: break-word;'>MCP Abd.</td><td style='text-align: center; word-wrap: break-word;'>10.1</td><td style='text-align: center; word-wrap: break-word;'>7.0</td><td style='text-align: center; word-wrap: break-word;'>0.142</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP Flex.</td><td style='text-align: center; word-wrap: break-word;'>22.6</td><td style='text-align: center; word-wrap: break-word;'>12.8</td><td style='text-align: center; word-wrap: break-word;'>0.287</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PIP Flex.</td><td style='text-align: center; word-wrap: break-word;'>23.7</td><td style='text-align: center; word-wrap: break-word;'>15.3</td><td style='text-align: center; word-wrap: break-word;'>0.171</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DIP Flex.</td><td style='text-align: center; word-wrap: break-word;'>22.8</td><td style='text-align: center; word-wrap: break-word;'>14.6</td><td style='text-align: center; word-wrap: break-word;'>0.180</td></tr><tr><td colspan="4">P3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>DOF</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{{o}}$</td><td style='text-align: center; word-wrap: break-word;'>$MAE^{{o}}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{{2}}$</td></tr><tr><td rowspan="4">Wrist</td><td style='text-align: center; word-wrap: break-word;'>Pronation</td><td style='text-align: center; word-wrap: break-word;'>34.2</td><td style='text-align: center; word-wrap: break-word;'>9.3</td><td style='text-align: center; word-wrap: break-word;'>0.878</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Flexion</td><td style='text-align: center; word-wrap: break-word;'>19.6</td><td style='text-align: center; word-wrap: break-word;'>9.1</td><td style='text-align: center; word-wrap: break-word;'>0.594</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Deviation</td><td style='text-align: center; word-wrap: break-word;'>13.6</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>0.532</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>28.8</td><td style='text-align: center; word-wrap: break-word;'>8.4</td><td style='text-align: center; word-wrap: break-word;'>0.778</td></tr><tr><td rowspan="6">Finger</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>13.0</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.405</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>19.2</td><td style='text-align: center; word-wrap: break-word;'>9.3</td><td style='text-align: center; word-wrap: break-word;'>0.357</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>18.1</td><td style='text-align: center; word-wrap: break-word;'>8.3</td><td style='text-align: center; word-wrap: break-word;'>0.456</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>20.9</td><td style='text-align: center; word-wrap: break-word;'>9.2</td><td style='text-align: center; word-wrap: break-word;'>0.484</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>22.3</td><td style='text-align: center; word-wrap: break-word;'>10.3</td><td style='text-align: center; word-wrap: break-word;'>0.458</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>19.6</td><td style='text-align: center; word-wrap: break-word;'>8.8</td><td style='text-align: center; word-wrap: break-word;'>0.440</td></tr><tr><td rowspan="4">Joint</td><td style='text-align: center; word-wrap: break-word;'>MCP Abd.</td><td style='text-align: center; word-wrap: break-word;'>7.8</td><td style='text-align: center; word-wrap: break-word;'>4.7</td><td style='text-align: center; word-wrap: break-word;'>0.327</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP Flex.</td><td style='text-align: center; word-wrap: break-word;'>19.7</td><td style='text-align: center; word-wrap: break-word;'>8.6</td><td style='text-align: center; word-wrap: break-word;'>0.575</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PIP Flex.</td><td style='text-align: center; word-wrap: break-word;'>21.0</td><td style='text-align: center; word-wrap: break-word;'>11.2</td><td style='text-align: center; word-wrap: break-word;'>0.388</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DIP Flex.</td><td style='text-align: center; word-wrap: break-word;'>20.0</td><td style='text-align: center; word-wrap: break-word;'>10.6</td><td style='text-align: center; word-wrap: break-word;'>0.390</td></tr></table>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td colspan="5">P2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>DOF</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{{o}}$</td><td style='text-align: center; word-wrap: break-word;'>$MAE^{{o}}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{{2}}$</td></tr><tr><td rowspan="4">Wrist</td><td style='text-align: center; word-wrap: break-word;'>Pronation</td><td style='text-align: center; word-wrap: break-word;'>29.8</td><td style='text-align: center; word-wrap: break-word;'>11.2</td><td style='text-align: center; word-wrap: break-word;'>0.771</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Flexion</td><td style='text-align: center; word-wrap: break-word;'>19.9</td><td style='text-align: center; word-wrap: break-word;'>8.7</td><td style='text-align: center; word-wrap: break-word;'>0.709</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Deviation</td><td style='text-align: center; word-wrap: break-word;'>13.7</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>0.606</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>25.1</td><td style='text-align: center; word-wrap: break-word;'>8.9</td><td style='text-align: center; word-wrap: break-word;'>0.734</td></tr><tr><td rowspan="6">Finger</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>14.5</td><td style='text-align: center; word-wrap: break-word;'>7.2</td><td style='text-align: center; word-wrap: break-word;'>0.458</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>24.9</td><td style='text-align: center; word-wrap: break-word;'>8.9</td><td style='text-align: center; word-wrap: break-word;'>0.453</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>18.1</td><td style='text-align: center; word-wrap: break-word;'>8.9</td><td style='text-align: center; word-wrap: break-word;'>0.417</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>20.1</td><td style='text-align: center; word-wrap: break-word;'>9.0</td><td style='text-align: center; word-wrap: break-word;'>0.488</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>21.7</td><td style='text-align: center; word-wrap: break-word;'>10.8</td><td style='text-align: center; word-wrap: break-word;'>0.397</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>20.6</td><td style='text-align: center; word-wrap: break-word;'>9.0</td><td style='text-align: center; word-wrap: break-word;'>0.440</td></tr><tr><td rowspan="4">Joint</td><td style='text-align: center; word-wrap: break-word;'>MCP Abd.</td><td style='text-align: center; word-wrap: break-word;'>9.9</td><td style='text-align: center; word-wrap: break-word;'>6.3</td><td style='text-align: center; word-wrap: break-word;'>0.257</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP Flex.</td><td style='text-align: center; word-wrap: break-word;'>21.5</td><td style='text-align: center; word-wrap: break-word;'>10.2</td><td style='text-align: center; word-wrap: break-word;'>0.538</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PIP Flex.</td><td style='text-align: center; word-wrap: break-word;'>24.1</td><td style='text-align: center; word-wrap: break-word;'>11.8</td><td style='text-align: center; word-wrap: break-word;'>0.452</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DIP Flex.</td><td style='text-align: center; word-wrap: break-word;'>15.0</td><td style='text-align: center; word-wrap: break-word;'>7.6</td><td style='text-align: center; word-wrap: break-word;'>0.286</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td colspan="4">P4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>DOF</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{{o}}$</td><td style='text-align: center; word-wrap: break-word;'>$MAE^{{o}}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{{2}}$</td></tr><tr><td rowspan="4">Wrist</td><td style='text-align: center; word-wrap: break-word;'>Pronation</td><td style='text-align: center; word-wrap: break-word;'>22.9</td><td style='text-align: center; word-wrap: break-word;'>10.4</td><td style='text-align: center; word-wrap: break-word;'>0.705</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Flexion</td><td style='text-align: center; word-wrap: break-word;'>17.9</td><td style='text-align: center; word-wrap: break-word;'>5.0</td><td style='text-align: center; word-wrap: break-word;'>0.866</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Deviation</td><td style='text-align: center; word-wrap: break-word;'>13.5</td><td style='text-align: center; word-wrap: break-word;'>3.9</td><td style='text-align: center; word-wrap: break-word;'>0.860</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>19.7</td><td style='text-align: center; word-wrap: break-word;'>6.4</td><td style='text-align: center; word-wrap: break-word;'>0.783</td></tr><tr><td rowspan="6">Finger</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>13.4</td><td style='text-align: center; word-wrap: break-word;'>6.4</td><td style='text-align: center; word-wrap: break-word;'>0.467</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>16.4</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>0.578</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>17.4</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>0.626</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>18.9</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>0.668</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>20.4</td><td style='text-align: center; word-wrap: break-word;'>8.0</td><td style='text-align: center; word-wrap: break-word;'>0.628</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>17.8</td><td style='text-align: center; word-wrap: break-word;'>6.9</td><td style='text-align: center; word-wrap: break-word;'>0.607</td></tr><tr><td rowspan="4">Joint</td><td style='text-align: center; word-wrap: break-word;'>MCP Abd.</td><td style='text-align: center; word-wrap: break-word;'>9.9</td><td style='text-align: center; word-wrap: break-word;'>4.9</td><td style='text-align: center; word-wrap: break-word;'>0.493</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MCP Flex.</td><td style='text-align: center; word-wrap: break-word;'>21.0</td><td style='text-align: center; word-wrap: break-word;'>8.3</td><td style='text-align: center; word-wrap: break-word;'>0.689</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PIP Flex.</td><td style='text-align: center; word-wrap: break-word;'>17.7</td><td style='text-align: center; word-wrap: break-word;'>7.9</td><td style='text-align: center; word-wrap: break-word;'>0.581</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DIP Flex.</td><td style='text-align: center; word-wrap: break-word;'>15.5</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>0.538</td></tr></table>

A.5.5 各手指HOM运动学参数。表9给出了HOM数据集上各用户、各自由度（DOF）的关节角度误差，这些数据是第6节汇总结果的详细支撑。

A.5.6 各手指HOM力数据。表10给出了各用户、各手指的力数据分解结果，这些数据是第4节汇总结果的支撑；在所有用户中，拇指和小指的$R^{2}$数值最低。

A.5.7 腕部角度分布与手指误差。由于腕部旋转对压力信号的影响最大，我们研究了手指误差随腕部运动范围的变化情况。图14左侧显示了HP数据集中腕部角度的分布，右侧则展示了平均手指关节误差随腕部角度的变化关系：误差在腕部角度分布的中心区域最小，越靠近极端值误差越大，这类情况在桡尺偏斜运动中尤为明显，因为该区域的训练数据更为稀少。

A.5.8 定性可视化结果。图15展示了更多手部姿态预测结果（是图5的完整配套图表），图16则展示了完整的HOM力可视化结果（是图6的配套图表）。

## A.6 模型容量消融实验

我们遍历一个由网络宽度构成的$10 \times 10$网格，改变输入缩减层（即用于压缩原始压力特征的第一层全连接层）以及RNN隐藏层（紧随其后的循环层）的参数。这两个轴的取值范围均为{32, 40, 48, 64, 80, 96, 128, 160, 192, 256}，每种消融实验对应100种配置。其余超参数均遵循……

---

<div style="text-align: center;">Table 10: Per-user per-finger force prediction error (Newtons) on the HOM dataset at finger granularity, with data augmentation. Across all users, the thumb and pinky carry the lowest  $R^{2}$ relative to the middle three fingers.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">User</td><td rowspan="2">Finger</td><td rowspan="2">$\sigma(GT)$ (N)</td><td colspan="2">Pressure Input Only</td><td colspan="2">Pose Input</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MAE (N)</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td><td style='text-align: center; word-wrap: break-word;'>MAE (N)</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td></tr><tr><td rowspan="6">P1</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>3.607</td><td style='text-align: center; word-wrap: break-word;'>1.805</td><td style='text-align: center; word-wrap: break-word;'>0.458</td><td style='text-align: center; word-wrap: break-word;'>1.427</td><td style='text-align: center; word-wrap: break-word;'>0.613</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>2.207</td><td style='text-align: center; word-wrap: break-word;'>0.981</td><td style='text-align: center; word-wrap: break-word;'>0.511</td><td style='text-align: center; word-wrap: break-word;'>0.715</td><td style='text-align: center; word-wrap: break-word;'>0.717</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>2.321</td><td style='text-align: center; word-wrap: break-word;'>1.216</td><td style='text-align: center; word-wrap: break-word;'>0.250</td><td style='text-align: center; word-wrap: break-word;'>0.723</td><td style='text-align: center; word-wrap: break-word;'>0.737</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>1.748</td><td style='text-align: center; word-wrap: break-word;'>0.928</td><td style='text-align: center; word-wrap: break-word;'>0.190</td><td style='text-align: center; word-wrap: break-word;'>0.549</td><td style='text-align: center; word-wrap: break-word;'>0.719</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>0.297</td><td style='text-align: center; word-wrap: break-word;'>0.166</td><td style='text-align: center; word-wrap: break-word;'>0.177</td><td style='text-align: center; word-wrap: break-word;'>0.125</td><td style='text-align: center; word-wrap: break-word;'>0.442</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>2.860</td><td style='text-align: center; word-wrap: break-word;'>0.875</td><td style='text-align: center; word-wrap: break-word;'>0.393</td><td style='text-align: center; word-wrap: break-word;'>0.572</td><td style='text-align: center; word-wrap: break-word;'>0.669</td></tr><tr><td rowspan="6">P2</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>1.992</td><td style='text-align: center; word-wrap: break-word;'>0.686</td><td style='text-align: center; word-wrap: break-word;'>0.529</td><td style='text-align: center; word-wrap: break-word;'>0.559</td><td style='text-align: center; word-wrap: break-word;'>0.683</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>2.086</td><td style='text-align: center; word-wrap: break-word;'>0.641</td><td style='text-align: center; word-wrap: break-word;'>0.708</td><td style='text-align: center; word-wrap: break-word;'>0.537</td><td style='text-align: center; word-wrap: break-word;'>0.794</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>2.555</td><td style='text-align: center; word-wrap: break-word;'>0.756</td><td style='text-align: center; word-wrap: break-word;'>0.752</td><td style='text-align: center; word-wrap: break-word;'>0.669</td><td style='text-align: center; word-wrap: break-word;'>0.808</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>1.270</td><td style='text-align: center; word-wrap: break-word;'>0.381</td><td style='text-align: center; word-wrap: break-word;'>0.659</td><td style='text-align: center; word-wrap: break-word;'>0.330</td><td style='text-align: center; word-wrap: break-word;'>0.758</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>0.284</td><td style='text-align: center; word-wrap: break-word;'>0.113</td><td style='text-align: center; word-wrap: break-word;'>0.431</td><td style='text-align: center; word-wrap: break-word;'>0.106</td><td style='text-align: center; word-wrap: break-word;'>0.469</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>2.160</td><td style='text-align: center; word-wrap: break-word;'>0.527</td><td style='text-align: center; word-wrap: break-word;'>0.676</td><td style='text-align: center; word-wrap: break-word;'>0.448</td><td style='text-align: center; word-wrap: break-word;'>0.768</td></tr><tr><td rowspan="6">P3</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>1.948</td><td style='text-align: center; word-wrap: break-word;'>0.952</td><td style='text-align: center; word-wrap: break-word;'>0.401</td><td style='text-align: center; word-wrap: break-word;'>0.812</td><td style='text-align: center; word-wrap: break-word;'>0.541</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>1.913</td><td style='text-align: center; word-wrap: break-word;'>0.743</td><td style='text-align: center; word-wrap: break-word;'>0.582</td><td style='text-align: center; word-wrap: break-word;'>0.509</td><td style='text-align: center; word-wrap: break-word;'>0.796</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>1.890</td><td style='text-align: center; word-wrap: break-word;'>0.693</td><td style='text-align: center; word-wrap: break-word;'>0.682</td><td style='text-align: center; word-wrap: break-word;'>0.506</td><td style='text-align: center; word-wrap: break-word;'>0.821</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>1.713</td><td style='text-align: center; word-wrap: break-word;'>0.570</td><td style='text-align: center; word-wrap: break-word;'>0.726</td><td style='text-align: center; word-wrap: break-word;'>0.425</td><td style='text-align: center; word-wrap: break-word;'>0.840</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>0.710</td><td style='text-align: center; word-wrap: break-word;'>0.282</td><td style='text-align: center; word-wrap: break-word;'>0.627</td><td style='text-align: center; word-wrap: break-word;'>0.220</td><td style='text-align: center; word-wrap: break-word;'>0.743</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>1.834</td><td style='text-align: center; word-wrap: break-word;'>0.594</td><td style='text-align: center; word-wrap: break-word;'>0.590</td><td style='text-align: center; word-wrap: break-word;'>0.438</td><td style='text-align: center; word-wrap: break-word;'>0.742</td></tr><tr><td rowspan="6">P4</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>0.968</td><td style='text-align: center; word-wrap: break-word;'>0.303</td><td style='text-align: center; word-wrap: break-word;'>0.656</td><td style='text-align: center; word-wrap: break-word;'>0.268</td><td style='text-align: center; word-wrap: break-word;'>0.721</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>2.030</td><td style='text-align: center; word-wrap: break-word;'>0.562</td><td style='text-align: center; word-wrap: break-word;'>0.781</td><td style='text-align: center; word-wrap: break-word;'>0.496</td><td style='text-align: center; word-wrap: break-word;'>0.825</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>1.404</td><td style='text-align: center; word-wrap: break-word;'>0.421</td><td style='text-align: center; word-wrap: break-word;'>0.736</td><td style='text-align: center; word-wrap: break-word;'>0.373</td><td style='text-align: center; word-wrap: break-word;'>0.787</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>1.433</td><td style='text-align: center; word-wrap: break-word;'>0.309</td><td style='text-align: center; word-wrap: break-word;'>0.836</td><td style='text-align: center; word-wrap: break-word;'>0.280</td><td style='text-align: center; word-wrap: break-word;'>0.866</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>0.442</td><td style='text-align: center; word-wrap: break-word;'>0.117</td><td style='text-align: center; word-wrap: break-word;'>0.737</td><td style='text-align: center; word-wrap: break-word;'>0.102</td><td style='text-align: center; word-wrap: break-word;'>0.794</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>1.624</td><td style='text-align: center; word-wrap: break-word;'>0.312</td><td style='text-align: center; word-wrap: break-word;'>0.770</td><td style='text-align: center; word-wrap: break-word;'>0.277</td><td style='text-align: center; word-wrap: break-word;'>0.815</td></tr></table>

![Image](images/d56df7052cfb9799b16448816fc2c6037807a75f001b947ce9bc6a0a83bc64df.jpg)

![Image](images/f7dda096e429d9128b32eb8315a040bdb618544fa0db9cf14962f7985f5aef9e.jpg)

<div style="text-align: center;">Figure 14: Left: distribution of the three wrist angles in the HP dataset. Right: mean finger-joint MAE as a function of wrist angle; error rises toward the sparsely-sampled extremes of the range of motion.</div>

第4.1.2节中设定的默认值，且随机种子固定不变。每种配置的平均L1验证误差会先对该数据集下所有可用记录求平均值，再表示为相对于两层宽度均为128的基准配置的百分比变化（黑色边框框出的单元格；正值表示性能比基准更差，负值则表示性能更好）。颜色标尺在两侧均以$\pm10\%$为饱和度上限。

图17中的四个子图在不同预测任务中呈现了一致的变化规律，尽管这些任务本身存在较大差异。

RNN隐藏层大小起着主导作用。在每个图表中，沿水平轴（RNN隐藏层大小）的误差梯度明显比沿垂直轴（输入缩减层）更陡峭。在HP任务中，将RNN隐藏层从32增大到256所减少的误差大约是相同范围内增大输入缩减层的两倍；在FF任务中，这一比例也类似。这是最具实用价值的发现：在参数预算固定的情况下，应优先将计算能力分配给循环层。一个典型的例子是(64,256)配置，它在所有数据集上的表现仅比(256,256)配置差1–2个百分点，而所需的参数却少得多。

超过基准水平后，性能提升会迅速减弱。在每个图表中，(128, 128)基准配置已经接近右下角的绿色阴影区域。在HP和FF任务中，单个单元所能取得的最佳改进幅度被限制在$\approx$ 7–8%以内；在合并后的HOM表格中，这一数值为3–4%。相反，若将配置降至(64, 64)或更小，损失会增加6–15%，因此从绝对意义上讲，该基准配置是一个合理的默认选择。

任务难度并不会改变响应面的形状。HOM/glove图表中的动态范围远小于HOM/finger图表（glove目标的绝对误差大约低$5-10\times$）；但相对响应面——即最佳单元的位置、平台区的起始点，以及对RNN隐藏层大小的敏感度高于对输入缩减宽度的敏感度——基本上是一致的。这表明这种不对称性源于网络本身的结构，而非某一特定任务的特性。

默认配置。我们采用(128, 128)作为默认配置。它在所有四个任务中都位于平台区；考虑到我们拥有的训练数据有限，更大模型带来的边际收益并不值得承担额外的过拟合风险。

### A.7 上下文长度消融实验

在所有三个数据集中，验证误差会随着上下文窗口大小的增加而单调下降，直到大约100个样本为止，之后收益便会显著递减（见图18）。将窗口从100增大到200，在各种条件下误差降低幅度都不到$\sim$ 2%；若进一步将窗口扩大到400，根据推测，其效果将完全被记录过程中的随机噪声所掩盖。因此，我们将100作为合理的操作点：它既能充分利用时间上下文的优势，又能控制训练和推理成本。

跨数据集比较（图18左侧面板）显示，尽管两个HP输出和FF输出测量的物理量截然不同（角度与力），但它们对上下文长度的响应却十分相似；这表明该现象是由压力输入的时间动态特性驱动的，而非回归目标本身的属性所致。

在HOM数据集中，图18的中间和右侧面板揭示了输入丰富度与上下文窗口收益之间的明显交互作用。去除姿态通道后，更长上下文带来的增益几乎翻倍：例如，在没有姿态信息的情况下，P1从blk-16到blk-100的改进幅度达到$\sim$ 13%，而有姿态信息时仅为$\sim$ 7%。换句话说，更长的上下文可以部分弥补缺失的运动学输入；一旦有了这类输入，模型便无需依赖更长的历史信息就能达到相同的性能水平。仅在仅包含压力信息的情况下，受试者间的差异更大，这也与更长的历史信息相关。

---

顶点距离误差

#### 真实值预测叠加误差叠加顶点距离真实值/预测值顶点距离真实值手腕真实值手腕

真实值手腕叠加

真实值手腕

顶点距离

![Image](images/9ec3978cb919d0a8598a24d41d66b8f9bca7f1164a4f092b077fea2a0da77368.jpg)

真实值/预测值

叠加显示

真实值/预测值

叠加显示

真实值

顶点距离误差

叠加显示

真实腕部位置

顶点距离

真实值

<div style="text-align: center;">Figure 15: Sample visualization on 20 hand poses, blue = ground truth, orange = prediction. Col. 1–2: GT and prediction shown side-by-side, both rendered with the predicted wrist orientation. Col. 3: GT and prediction overlaid in the predicted wrist orientation — the full end-to-end result. Col. 4: predicted hand mesh color-coded by per-vertex distance to GT (yellow = larger). Col. 5: GT and prediction overlaid in the ground-truth wrist orientation, isolating finger-estimation errors from wrist errors. Col. 6: per-vertex distance heat map under the ground-truth wrist orientation. The two heat-map columns use different saturation scales chosen per column to make the dynamic range visible. The last 4 rows are highlighted as examples where the estimate diverges significantly from the ground truth.</div>

---

![Image](images/acc16f27bf6ac9d9273ae7b7451bc6e6e04ced37dc87c6653de5b4f5d505af87.jpg)

<div style="text-align: center;">Figure 16: Sample visualization of force predictions, showing two example timesteps side by side with identical column layout. Left to right within each half: (1) RGB image of the scene; (2) MoCap-extracted 3D hand shape; (3) ground-truth tactile-glove pressure map; (4) predicted pressure map and the corresponding error map (pred - GT) for the pressure-wristband-only model; (5) the same prediction-error pair for the wristband + pose model. In the error maps, maximum red and maximum blue correspond to -1 N and +1 N of error, respectively. Focus on the substantial improvement of the pose-conditioned models in some scenes.</div>

---

![Image](images/5f73b832322b9403195c488dbf1cda4f8947fce9a438366b6019ff88a56e43d0.jpg)

<div style="text-align: center;">Figure 17: Validation-error sensitivity to network width across our four datasets/tasks. Each cell is the per-configuration L1 error expressed as a percent change from the (128, 128) baseline (outlined in black); green cells are better than baseline, red cells are worse, with color saturating at  $\pm10\%$. (Top-left) HP dataset: per-channel percentages for the finger and wrist joint targets (degrees) are computed against their own baselines and then averaged. (Top-right) FF dataset: single-task fingertip force regression (Newtons), averaged over 18 recordings. (Bottom-left, bottom-right) HOM dataset: per-task models for finger force and per-taxel force (Newtons), averaged equally across four users.</div>

当网络用于歧义消除的线索较少时，这一点的影响更为显著。

#### A.8 传感器子集消融实验

我们手环中使用的PPS #6863压力传感器阵列（见3.2.1节）可提供$18 \times 10$个压电单元的网格。我们通过沿三个轴向进行消融来探究是否必须使用该完整覆盖区域：(i)用作输入的连续行数；(ii)行窗口在前臂上的位置；(iii)行长度与列下采样的组合。

A.8.1 窗口长度对回归误差的影响。我们改变用作模型输入的连续压力窗口的长度$L \in \{3, 4, \ldots, 18\}$，该窗口在18行区域内所有可能的起始偏移量$s \in \{0, 1, \ldots, 18-L\}$上取值，同时保持完整的10列分辨率。本文中所有行索引均以0为起点，手环沿前臂佩戴时的解剖学约定为：行0对应手环的肘侧，行17对应腕侧。每种$(L, s)$配置均在三个数据集的每条记录上独立训练，按照4.1.2节的协议评分，再将得到的平均绝对误差（MAE）对s和记录取平均值，从而得到每个L对应的单一MAE值。图19中的每条曲线都以其自身在$L = 18$处的MAE为基准进行归一化，这样比较才具有无量纲性，且每条曲线都在右端锚定在0%处。

这三个数据集表现出相同的定性特征：随着窗口长度增加，MAE单调下降，其中大部分可恢复的精度由$L \approx 10-12$捕获，此后仅能取得微小的额外提升。这种在异质输出模态——以度为单位表示的关节角度、以牛顿为单位的指尖力以及每个手指和每个压电单元的HOM力——中普遍存在的饱和模式表明，它反映了输入信号本身的特性：即“每增加一行所包含的信息量”大致恒定，一旦压力条的空间带宽达到饱和，该信息量便会趋于平缓，而非特定于被回归的量。

不同估计任务的损失幅度存在差异。FF指尖任务对窗口长度的相对敏感性最强（见图19左侧，当L=4时误差降低15%，$\approx$）。有两种合理且不互斥的解释：指尖压力特征可能局限于一小部分前臂肌肉，短窗口可能会遗漏这些信息；此外，力估计可能更依赖腕部姿势的歧义消除，而更宽的手环能提供更好的条件。HP估计任务的误差下降较为平缓（10–13%），其中腕部通道在绝对单位下对精度要求更高。

HOM面板构成了最具实用性的设计点。当网络仅以压力作为输入时（图19中间，无姿态信息），减小L会导致所有四位用户的损失增加5–15%。若将真实的手指和手腕角度加入输入（图19右侧，有姿态信息），则消融损失在整个范围内仅相差几个百分点——曲线几乎呈水平状态。一旦能获取精确的关节角度，压力传感器条在力预测方面就基本不再必要，逐步移除其中的行也只会带来极小的损失。这种二分法正是我们提出“最小占用面积传感器”论点的依据：只要推理流程中能获得某种独立的姿态信号，一小段压力传感器条便已足够。

A.8.2 前臂上的哪个位置对窗口设置最为关键？上述的长度扫描确定了所需的行数，但并未指明窗口在前臂上的具体位置。我们重新分析相同的实验数据，将每个$(L, s)$结果作为单个点绘制在其窗口的空间中心——即行轴上的$x = s + (L - 1)/2$位置（从0开始计数）——并用曲线连接长度固定的所有起始位置。需记住解剖学上的约定：第0行位于传感器条的肘部一侧，第17行位于手腕侧，因此下方的x轴表示前臂近端$\rightarrow$远端。

对于每一项估计任务而言，极短的窗口（L = 3）会留下较大空隙，其表现明显逊于较长的窗口——根据数据集不同，误差通常比使用完整传感器条的情况高出10–30%；但具体哪种短窗口的误差最小，仍取决于估计任务类型。手指关节和指尖力估计任务都倾向于选择中心位于传感器条手腕侧的窗口（行索引较大），这与解剖学规律一致：驱动手指活动的肌腱分布在前臂上，但用于判断指尖活动的最具区分度的压力信号往往来自更靠近手腕的传感器条远端一半区域。在另一种相关研究中也发现了类似的手腕侧优势：EI-Lite [^58]发现，将4电极生物阻抗带放置在

---

![Image](images/005bee8fd2ad0767f8a4f27b0801e18ec5a035adcc121bd339a415ef95b47d0b.jpg)

![Image](images/d5f16163954d3dbb389b42d2583dff4b6cf70ecb657c92b902e5ccfdb1a940b5.jpg)

![Image](images/33d176314723985cbee6b6ee4605d709767dfccb8f70276acc79109b3ae4423c.jpg)

<div style="text-align: center;">Figure 18: Effect of training context window on validation  $L_1$ error, expressed as percent change relative to the model trained with a context window of 100 samples. Left: HP and FF datasets, single subject (P4) — one curve per regression target. Middle: HOM dataset with pressure-only input, four subjects; each curve is the per-subject average percent change across the Finger, Fingertip, and Taxel output tasks. Right: same as middle, but with pose features concatenated to the pressure input. Shrinking the window to 16 samples increases error by 8–16% on HP/FF and 10–13% on HOM pressure-only; extending it past  $\approx$ 100 buys back only 1–6%, so all curves enter a diminishing-returns regime well before the longest setting. Adding the pose channel (right) more than halves the gain from longer context (e.g. P1 drops from  $\sim$ 13% to  $\sim$ 7% head-room), consistent with longer history partly compensating for missing kinematic input.</div>

![Image](images/04609d40f6f7722e1d9bad506806dc031e3435f111861f59411ead1c924b8181.jpg)

![Image](images/9d0347bd8663d11223d34bd5d0316f7d431a59271d024680c5e1a1b4d86d8aeb.jpg)

![Image](images/d5c924961e71edee1d31a8547505312ac005b624a4eaf2f0b33df61736a86eb9.jpg)

<div style="text-align: center;">Figure 19: Pressure-window length ablation across the three datasets. Each panel plots one or more estimation tasks as a function of the contiguous-row window length L used as model input. Y-axis is per-curve MAE expressed as percent change relative to the same model trained on the full $L = 18$ strip, so every curve is anchored at 0% on the right edge. X-axis is the window length $L \in \{3, 4, \ldots, 18\}$. For each L we sweep every valid start offset $s \in \{0, 1, \ldots, 18-L\}$ and average the resulting MAE across s and across all recordings of the dataset before computing the percent change. All runs use the full 10-column resolution. Left: HP and FF datasets — three estimation tasks on a single axis (HP finger and wrist joint angles in degrees; FF fingertip force in Newtons). Middle: HOM, no-pose input. Each curve is one HOM user (P1–P4), averaged over the finger and glove estimation tasks. Right: HOM, pose input (sensor strip plus ground-truth finger and wrist angles). Same four users, averaged over the same two estimation tasks.</div>

桡尺骨远端关节处时，跨用户关键点误差相较于近端的腕骨列可降低约一半（MPJPE分别为13.09毫米和25.35毫米）。我们将此视为跨模态证据，证明前臂远端一半区域是手部状态解码的信息密度更高的区域。手腕关节回归任务（图20中的HP—手腕关节）不出所料是三项任务中偏差最大的：$L \in \{3, 6\}$对应的曲线在靠近手腕侧时急剧下降，而当窗口中心位于传感器条的肘部一侧时又迅速上升。随着L增大，曲线会逐渐变平——一旦窗口长度足以覆盖该信息区域，起始位置便不再重要。四位HOM用户的数据（图21）呈现出相同的总体趋势，较大的绝对波动反映了居家数据中更高的记录方差；尤其是P4的基线噪声最为明显。曲线本身明显呈锯齿状。这由两个非互斥的因素造成。首先，每个数据点都是基于较少有效$(L, s)$组合进行的单次训练结果，因此各点间的波动应被视为围绕平滑趋势的多次运行产生的噪声，而非实质性结构。其次，#6863阵列本身存在轻微的行间基线差异（即3.2.1节所述的行带状伪影）；由于此处x轴为行索引，任何残留的每行偏差都会保留在平均值中，

---

![Image](images/6e3e291adc2821911c11d8037474c392deb32173c25d9b7fdf2ed9514c543a2d.jpg)

![Image](images/09db8c4dbe1095bf21a2525a3e7f204ab60d43ddd33087bf7ba8d7574dc6a792.jpg)

![Image](images/a4c94b2542aba932c91e79d7341cde7a10b7dfb7bcc4c678060d8f4269e4afe3.jpg)

<div style="text-align: center;">Figure 20: Window-position ablation for the two higher-grade datasets: Left: HP – finger joint angles, Middle: HP – wrist joint angles, Right: FF – fingertip force. Each colored curve is one window length  $L \in \{3, 6, 9, 12, 15\}$; each marker is one start offset s positioned at the window's spatial centre. X-axis is the 0-based row index of the window centre (0 = elbow side, 17 = wrist side). Y-axis is MAE as percent change vs. the full  $L = 18$ strip (dashed line at 0%). All runs use the full 10-column resolution.</div>

![Image](images/932a982e309b3f8477fcde6d37bb55d4f7aba7a14a6d2ce329718943ddca2644.jpg)

![Image](images/1f8d794ae297f21fce841255b76ea550b305f1ab693ded12109f5d95430d8d25.jpg)

![Image](images/bc6d99917b7273f6c2fbac042b3878456536c1d260adf10d26860ebd221d3894.jpg)

![Image](images/1b488469d84ba2a9a20d2d84c8590a369a51a1b253eda4d72756e19616883d21.jpg)

<div style="text-align: center;">Figure 21: Window-position ablation for the four HOM users P1–P4 (no-pose / finger configuration). Each colored curve is one window length  $L \in \{3, 6, 9, 12, 15\}$; each marker is one start offset s positioned at the window's spatial centre  $(x = s + (L - 1)/2, 0$-based), and starts of the same length are connected by a line. X-axis is the 0-based row index of the window centre (0 = elbow side, 17 = wrist side); the strip is worn so that this axis reads forearm-proximal  $\rightarrow$ distal. Y-axis is MAE as percent change vs. the full  $L = 18$ strip (dashed line at 0%); the legend in each panel reports the corresponding  $L = 18$ MAE in Newtons. All runs use the full 10-column resolution. One panel per HOM user in the order P1, P2, P3, P4.</div>

表现为叠加在平滑曲线上的微小重复性凸起。

A.8.3 组合长度 $\times$ 列采样表。为了完整呈现结果，我们同时扫描两个空间消融轴。除了用作模型输入的连续行窗口 $L \in \{3, 6, 9, 12, 15, 18\}$ 外，我们还对10个压力列进行采样，仅保留每第k列的数据，其中 $k \in \{1, 2, 3, 4, 5\}$；保留的列数分别为10、5、4、3、2。单元格的颜色根据相对于同一数据集的 $(L = 18, \text{cols} = 10)$ 基线的百分比变化来设定（采用表格专用的viridis色彩方案，对应 $0\% \rightarrow$ 表格的最大值）。

在这七张表中可以观察到三种规律。首先，长度和列数带来的惩罚效应大致是可叠加的：沿对角线分布的单元格（窗口短且列数少）受影响最严重，而仅减少行或仅减少列的情况影响则明显较小。其次，在中等程度的采样下，列方向比行方向更宽容——将列数从10减少到5时，HP和FF任务的性能损失仅约1–2%（而将行数从18减少到9时的损失则为5–10%）；即便列数降至4，对运动学任务的影响也几乎可以忽略不计。不过这种不对称性在极端列采样时会显现出来：当列数降至3或2时，HP/手腕和FF任务的性能损失会达到6–16%（见图23左侧两个面板）。部分原因在于其结构差异：行删除是连续的，会切除整块解剖区域；而列删除是间隔进行的，仅会稀疏地去掉空间上相邻的样本，这些样本携带的信号冗余度很高，因为软组织起到了空间低通滤波器的作用。

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td colspan="6">HP – finger joint angles (deg)</td><td colspan="5">HP – wrist joint angles (deg)</td><td colspan="5">FF – fingertip force (N)</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>colls + rows i</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>colls + rows i</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>colls + rows i</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>+14.7</td><td style='text-align: center; word-wrap: break-word;'>+16.4</td><td style='text-align: center; word-wrap: break-word;'>+19.0</td><td style='text-align: center; word-wrap: break-word;'>+23.8</td><td style='text-align: center; word-wrap: break-word;'>+28.7</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>+18.5</td><td style='text-align: center; word-wrap: break-word;'>+24.9</td><td style='text-align: center; word-wrap: break-word;'>+21.8</td><td style='text-align: center; word-wrap: break-word;'>+30.3</td><td style='text-align: center; word-wrap: break-word;'>+36.1</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>+23.9</td><td style='text-align: center; word-wrap: break-word;'>+32.7</td><td style='text-align: center; word-wrap: break-word;'>+34.5</td><td style='text-align: center; word-wrap: break-word;'>+41.5</td><td style='text-align: center; word-wrap: break-word;'>+56.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>+8.8</td><td style='text-align: center; word-wrap: break-word;'>+12.5</td><td style='text-align: center; word-wrap: break-word;'>+12.3</td><td style='text-align: center; word-wrap: break-word;'>+16.0</td><td style='text-align: center; word-wrap: break-word;'>+20.4</td><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>+13.8</td><td style='text-align: center; word-wrap: break-word;'>+17.9</td><td style='text-align: center; word-wrap: break-word;'>+15.1</td><td style='text-align: center; word-wrap: break-word;'>+22.1</td><td style='text-align: center; word-wrap: break-word;'>+28.1</td><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>+13.1</td><td style='text-align: center; word-wrap: break-word;'>+20.4</td><td style='text-align: center; word-wrap: break-word;'>+21.4</td><td style='text-align: center; word-wrap: break-word;'>+28.6</td><td style='text-align: center; word-wrap: break-word;'>+42.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>+5.2</td><td style='text-align: center; word-wrap: break-word;'>+8.9</td><td style='text-align: center; word-wrap: break-word;'>+8.3</td><td style='text-align: center; word-wrap: break-word;'>+13.1</td><td style='text-align: center; word-wrap: break-word;'>+15.8</td><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>+9.8</td><td style='text-align: center; word-wrap: break-word;'>+15.0</td><td style='text-align: center; word-wrap: break-word;'>+9.7</td><td style='text-align: center; word-wrap: break-word;'>+22.5</td><td style='text-align: center; word-wrap: break-word;'>+22.3</td><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>+8.2</td><td style='text-align: center; word-wrap: break-word;'>+14.5</td><td style='text-align: center; word-wrap: break-word;'>+12.4</td><td style='text-align: center; word-wrap: break-word;'>+20.6</td><td style='text-align: center; word-wrap: break-word;'>+32.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>+2.0</td><td style='text-align: center; word-wrap: break-word;'>+5.4</td><td style='text-align: center; word-wrap: break-word;'>+4.4</td><td style='text-align: center; word-wrap: break-word;'>+8.8</td><td style='text-align: center; word-wrap: break-word;'>+12.4</td><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>+6.5</td><td style='text-align: center; word-wrap: break-word;'>+9.4</td><td style='text-align: center; word-wrap: break-word;'>+6.5</td><td style='text-align: center; word-wrap: break-word;'>+13.8</td><td style='text-align: center; word-wrap: break-word;'>+19.5</td><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>+4.3</td><td style='text-align: center; word-wrap: break-word;'>+10.4</td><td style='text-align: center; word-wrap: break-word;'>+7.6</td><td style='text-align: center; word-wrap: break-word;'>+14.2</td><td style='text-align: center; word-wrap: break-word;'>+25.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>+0.9</td><td style='text-align: center; word-wrap: break-word;'>+2.6</td><td style='text-align: center; word-wrap: break-word;'>+1.9</td><td style='text-align: center; word-wrap: break-word;'>+6.4</td><td style='text-align: center; word-wrap: break-word;'>+9.1</td><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>+3.9</td><td style='text-align: center; word-wrap: break-word;'>+7.8</td><td style='text-align: center; word-wrap: break-word;'>+8.2</td><td style='text-align: center; word-wrap: break-word;'>+13.0</td><td style='text-align: center; word-wrap: break-word;'>+15.1</td><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>+1.2</td><td style='text-align: center; word-wrap: break-word;'>+6.8</td><td style='text-align: center; word-wrap: break-word;'>+5.4</td><td style='text-align: center; word-wrap: break-word;'>+9.1</td><td style='text-align: center; word-wrap: break-word;'>+17.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>+1.4</td><td style='text-align: center; word-wrap: break-word;'>+1.4</td><td style='text-align: center; word-wrap: break-word;'>+6.4</td><td style='text-align: center; word-wrap: break-word;'>+6.3</td><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>+0.1</td><td style='text-align: center; word-wrap: break-word;'>+1.3</td><td style='text-align: center; word-wrap: break-word;'>+10.1</td><td style='text-align: center; word-wrap: break-word;'>+12.4</td><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>+2.4</td><td style='text-align: center; word-wrap: break-word;'>+3.4</td><td style='text-align: center; word-wrap: break-word;'>+5.2</td><td style='text-align: center; word-wrap: break-word;'>+18.1</td></tr></table>

<div style="text-align: center;">Figure 22: Combined length × column-subsampling tables for the two higher-grade datasets: HP — finger joint angles, HP — wrist joint angles, FF — fingertip force. Each cell shows the percent change in MAE relative to that dataset's own ( $L = 18$,  $cols = 10$) full-strip baseline. Rows correspond to the pressure-window length  L; columns correspond to the number of pressure columns retained after subsampling (out of 10). Cells are averaged over all valid start offsets and over all recordings of the dataset. Colour is viridis on a per-table scale from 0% to the table's own maximum increase; the absolute baseline MAE and the table-specific  $v_{max}$ are annotated below each table.</div>

这种空间低通滤波作用体现在肌肉与皮肤之间。适度的列采样主要会丢弃这些冗余信息；只有当

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td colspan="8">HOM - no-joints / finger (N)</td><td colspan="4">HOM - no-joints / glove</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>cols → rows i</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>cols → rows i</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>+17.2</td><td style='text-align: center; word-wrap: break-word;'>+25.5</td><td style='text-align: center; word-wrap: break-word;'>+25.2</td><td style='text-align: center; word-wrap: break-word;'>+27.6</td><td style='text-align: center; word-wrap: break-word;'>+33.5</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>+12.4</td><td style='text-align: center; word-wrap: break-word;'>+17.3</td><td style='text-align: center; word-wrap: break-word;'>+16.7</td><td style='text-align: center; word-wrap: break-word;'>+20.0</td><td style='text-align: center; word-wrap: break-word;'>+22.5</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>+9.1</td><td style='text-align: center; word-wrap: break-word;'>+15.9</td><td style='text-align: center; word-wrap: break-word;'>+16.7</td><td style='text-align: center; word-wrap: break-word;'>+23.2</td><td style='text-align: center; word-wrap: break-word;'>+24.2</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>+7.4</td><td style='text-align: center; word-wrap: break-word;'>+11.6</td><td style='text-align: center; word-wrap: break-word;'>+11.4</td><td style='text-align: center; word-wrap: break-word;'>+16.4</td><td style='text-align: center; word-wrap: break-word;'>+17.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>+3.7</td><td style='text-align: center; word-wrap: break-word;'>+9.8</td><td style='text-align: center; word-wrap: break-word;'>+9.9</td><td style='text-align: center; word-wrap: break-word;'>+17.6</td><td style='text-align: center; word-wrap: break-word;'>+17.4</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>+2.9</td><td style='text-align: center; word-wrap: break-word;'>+7.9</td><td style='text-align: center; word-wrap: break-word;'>+8.4</td><td style='text-align: center; word-wrap: break-word;'>+13.1</td><td style='text-align: center; word-wrap: break-word;'>+13.9</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>-0.2</td><td style='text-align: center; word-wrap: break-word;'>+5.2</td><td style='text-align: center; word-wrap: break-word;'>+6.0</td><td style='text-align: center; word-wrap: break-word;'>+11.2</td><td style='text-align: center; word-wrap: break-word;'>+13.4</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>+1.7</td><td style='text-align: center; word-wrap: break-word;'>+5.5</td><td style='text-align: center; word-wrap: break-word;'>+5.5</td><td style='text-align: center; word-wrap: break-word;'>+10.8</td><td style='text-align: center; word-wrap: break-word;'>+9.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>-2.0</td><td style='text-align: center; word-wrap: break-word;'>+3.1</td><td style='text-align: center; word-wrap: break-word;'>+5.0</td><td style='text-align: center; word-wrap: break-word;'>+8.6</td><td style='text-align: center; word-wrap: break-word;'>+9.8</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>+0.5</td><td style='text-align: center; word-wrap: break-word;'>+5.0</td><td style='text-align: center; word-wrap: break-word;'>+4.4</td><td style='text-align: center; word-wrap: break-word;'>+10.1</td><td style='text-align: center; word-wrap: break-word;'>+7.8</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>+2.0</td><td style='text-align: center; word-wrap: break-word;'>+5.3</td><td style='text-align: center; word-wrap: break-word;'>+6.4</td><td style='text-align: center; word-wrap: break-word;'>+8.2</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>+2.3</td><td style='text-align: center; word-wrap: break-word;'>+3.8</td><td style='text-align: center; word-wrap: break-word;'>+6.6</td><td style='text-align: center; word-wrap: break-word;'>+8.6</td></tr><tr><td colspan="7">HOM - joints / finger (N)</td><td colspan="6">HOM - joints / glove</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>cols → rows i</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>cols → rows i</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>+1.7</td><td style='text-align: center; word-wrap: break-word;'>+1.7</td><td style='text-align: center; word-wrap: break-word;'>+1.4</td><td style='text-align: center; word-wrap: break-word;'>+2.2</td><td style='text-align: center; word-wrap: break-word;'>+1.6</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>-0.4</td><td style='text-align: center; word-wrap: break-word;'>-0.7</td><td style='text-align: center; word-wrap: break-word;'>-0.2</td><td style='text-align: center; word-wrap: break-word;'>-0.7</td><td style='text-align: center; word-wrap: break-word;'>-1.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>+1.5</td><td style='text-align: center; word-wrap: break-word;'>+1.7</td><td style='text-align: center; word-wrap: break-word;'>+1.3</td><td style='text-align: center; word-wrap: break-word;'>+1.9</td><td style='text-align: center; word-wrap: break-word;'>+1.5</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>+0.1</td><td style='text-align: center; word-wrap: break-word;'>-0.4</td><td style='text-align: center; word-wrap: break-word;'>+0.5</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>-0.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>+0.3</td><td style='text-align: center; word-wrap: break-word;'>+0.9</td><td style='text-align: center; word-wrap: break-word;'>+0.9</td><td style='text-align: center; word-wrap: break-word;'>+1.4</td><td style='text-align: center; word-wrap: break-word;'>+1.2</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>+0.1</td><td style='text-align: center; word-wrap: break-word;'>+0.2</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>-0.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>-0.4</td><td style='text-align: center; word-wrap: break-word;'>-0.5</td><td style='text-align: center; word-wrap: break-word;'>-0.3</td><td style='text-align: center; word-wrap: break-word;'>+1.3</td><td style='text-align: center; word-wrap: break-word;'>+0.3</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>-0.5</td><td style='text-align: center; word-wrap: break-word;'>-0.8</td><td style='text-align: center; word-wrap: break-word;'>-0.4</td><td style='text-align: center; word-wrap: break-word;'>+0.9</td><td style='text-align: center; word-wrap: break-word;'>-1.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>+0.2</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>-1.0</td><td style='text-align: center; word-wrap: break-word;'>+0.5</td><td style='text-align: center; word-wrap: break-word;'>+0.7</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>-0.1</td><td style='text-align: center; word-wrap: break-word;'>-0.2</td><td style='text-align: center; word-wrap: break-word;'>+0.2</td><td style='text-align: center; word-wrap: break-word;'>+1.2</td><td style='text-align: center; word-wrap: break-word;'>-0.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>-1.0</td><td style='text-align: center; word-wrap: break-word;'>-0.1</td><td style='text-align: center; word-wrap: break-word;'>+1.2</td><td style='text-align: center; word-wrap: break-word;'>-0.1</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>+0.0</td><td style='text-align: center; word-wrap: break-word;'>-0.1</td><td style='text-align: center; word-wrap: break-word;'>-0.5</td><td style='text-align: center; word-wrap: break-word;'>+0.3</td><td style='text-align: center; word-wrap: break-word;'>-1.2</td></tr></table>

<div style="text-align: center;">Figure 23: Combined length × column-subsampling tables for the four HOM configurations (averaged across the four users P1–P4 and across all recordings and start offsets). Top row: no-pose input (pressure strip alone), for the finger and glove estimation tasks respectively. Bottom row: pose input (pressure strip concatenated with ground-truth finger and wrist joint angles), again for finger and glove. Axes, baseline-cell convention, and colour scale match Fig. 22: rows are window length L, columns are pressure-columns kept after subsampling, cells show percent change vs. the per-table ( $L = 18$,  $cols = 10$) baseline, and each table uses its own viridis scale from 0% to its table-specific maximum.</div>

采样间距接近自然相关长度时，被删除的列才会真正带走有用信息。Sahnoun等人 [^36] 在EIT研究中也报告了类似的性能渐进式下降现象（将边界电压通道从40个减半至20个时，分类准确率仅下降1.4–6.4%），这表明腕部传感中皮肤-带层界面的空间冗余是一种结构性特性，而非某种特定传感方式的特有现象。第三点对于最小化系统占用空间的论证最为重要：图23清晰地展示了有姿态输入与无姿态输入时的对比——右侧两个面板（有姿态输入）中的单元格颜色几乎一致，与基线值的偏差均在几个百分点以内，即便是(L = 3, cols = 2)这一极端情况也是如此；而若没有侧边通道数据（左侧两个面板，尤其是无姿态/手指情况），同样的激进采样会导致平均性能损失超过30%。

我们还尝试在列采样前进行空间预平滑处理，旨在减轻因列数减少而产生的信息丢失现象。实际上，平滑处理后的结果与未平滑版本在所有单元格上的差异最多只有几个百分点，因此我们在文中统一报告未平滑的配置结果。

#### A.9 损失权重消融实验

我们的多任务损失函数包含了针对手指角度、手腕角度以及（适用时）力的独立均方误差项。这些项之间的相对权重决定了模型如何在不同任务间分配计算能力。我们重点研究了两个权重参数：姿态损失中手腕/手指比例的权重，以及同时估计力和姿态时力/姿态比例的权重。

A.9.1 手腕与手指（仅姿态）。由于我们分别针对手指和手腕角度计算平均L2损失，且手指角度有20个而手腕角度仅有3个，因此手腕损失的相对权重决定了模型对手腕精度的重视程度。将手腕项的权重设为0.4时，每个手腕角度的相对权重约为0.4/(3/20)=2.66倍于每个手指角度的相对权重。我们在HP平台上将手腕损失权重$\lambda_{W}$在0.01到2.0之间取17个不同值进行扫描。图24（左上）展示了预期的权衡关系：手腕权重过小会导致手腕角度拟合不足，而权重过大则会损害手指角度的性能。0.4的手腕损失权重提供了一个实用的平衡点，被用作所有实验的默认值。

A.9.2 力与姿态（Force+Pose模型）。当网络被训练为同时预测力和关节角度时，总损失由力的MSE项（权重为$\lambda_F$）和上述的姿态MSE项（手腕相对权重为0.4）共同组成。力的相对权重$\lambda_F$决定了模型为了力的精度而在多大程度上牺牲姿态精度。我们针对每位HOM用户，在三种力的粒度（每根手指、每个指尖以及每个触觉单元）下分别扫描$\lambda_F \in \{0.05, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1.0, 1.2, 1.5, 2.0, 3.0\}$，并报告用户间的平均值。图24中的三个力权重面板（右上、左下、右下）在不同粒度下表现一致：当$\lambda_F$非常小时，力的MAE会迅速下降，随后趋于平稳；而关节和手腕的MAE则随着$\lambda_F$的增加而大致呈单调上升趋势——这表明模型正在将能力从姿态预测重新分配到力预测上。我们选取每条曲线拐点处的操作点。对于每根手指和每个指尖的力而言，该点对应$\lambda_F = 0.4$，此时力曲线已接近其渐近值$\sim2\%$，且手腕MAE相对于$\lambda_F = 0.05$极端情况仅恶化了约7%。触觉手套产生的每触觉单元力属于65通道的目标量，其各通道绝对幅度比每根手指力低约$4-5\times$；因此当$\lambda_F$相当时，每个力MSE项的贡献会更小。相应地，需要更高的权重（$\lambda_F = 1.2$）才能使力损失达到同等有效水平，从而获取大部分可实现的力预测改进。相应的姿态惩罚虽较大，但仍可接受。这三个操作点（$\lambda_F = 0.4, 0.4, 1.2$）就是主论文中报告Force+Pose结果时所使用的默认值。

#### A.10 数据增强细节

A.10.1 变换与范围。训练期间我们对腕带输入数据应用五种增强方式，每种均用于模拟不同会话间的干扰因素（参见第4.1.3节）：垂直偏移（上下方向，最多0.5像素），用于模拟近端-远端放置差异；水平偏移（左右方向，最多0.5像素），用于模拟手腕处的周向旋转；平面内旋转（最多$\pm3^{\circ}$），用于修正传感器的轻微…

---

![Image](images/7c698dbd48513e89916f90854aa8c6b9ce20792b04a00d51cd0026828b6e33a0.jpg)

![Image](images/87dfbfb2df027ec393a0fb94a716c271dff517596358739026b79d30d2381c0b.jpg)

![Image](images/50ececb08bdafedda62062934357a4e9fe217a925b050f20b78f044d219870df.jpg)

![Image](images/016d3ecded0734431149ec0f1ce24d04af54f50dfa13614fc462f26aea16c036.jpg)

<div style="text-align: center;">Figure 24: Loss-weight ablations. Top-left: wrist vs. finger trade-off as the relative wrist-loss weight is varied (pose-only model on HP); operating point 0.4. Other three panels: force vs. pose trade-off for the Force+Pose model on HOM (averaged across four users) at three force granularities – top-right per-finger force, bottom-left per-fingertip force, bottom-right per-taxel (glove) force. Each force panel plots force MAE on the left axis and finger/wrist joint MAE on the right axis as  $\lambda_{F}$ varies. Operating points  $\lambda_{F}=0.4$, 0.4, 1.2 are picked at the elbow of each trade-off.</div>

错位现象；针对日常手腕轮廓变化采用各向同性缩放（最高可达 $\pm3\%$）；针对更紧或更松的佩戴状态下的整体压力水平变化则采用全局强度缩放（最高可达 $\pm15\%$）。这些范围是通过实验确定的。同一组扰动参数会独立应用于每个压力数组，采用带截断处理的双线性重采样方法；增强参数在每个小序列中仅采样一次，以保证每个RNN窗口内的时间一致性，而在推理阶段则不进行任何增强处理。

A.10.2 数据增强效果。表11对比了在有无数据增强情况下，不同数据集和目标上的匹配训练结果。MAE在所有目标上均有提升：其中在单用户HP姿态任务上的提升最为显著，因为该场景下佩戴位置和绑带张力变化的影响最大；而在难度更高、方差更大的HOM目标上，提升则相对有限。由于每次记录都是重新佩戴传感器带的过程，我们认为这些提升主要源于对不同会话间佩戴位置和交互差异的敏感性降低，而非通用的正则化效应。因此，我们在所有报告结果中均采用数据增强技术，下文针对各目标的搜索也将探讨能否进一步优化默认配置。

A.10.3 逐目标增强搜索。主论文中使用的标称增强配置 [0.5, 0.5, 3, 3, 0] 是根据少数几次试运行凭经验选定的，且偏向保守幅度（参见第 4.1.3 节）。为检查逐任务细化是否能在此默认设置上带来有意义的改进，我们在五参数配置 $[v, h, r, z, i]$（垂直平移、水平平移、旋转、缩放、强度）上运行贝叶斯优化循环（高斯过程代理模型、Thompson 采样采集函数），覆盖十个目标：FF 和 HP 数据集，以及四位 HOM 用户 P1–P4 的逐用户力和运动学目标。每个候选方案的评分是相对于零增强基线的测试 L1 误差百分比变化。表 12 报告了最佳

<div style="text-align: center;">Table 11: Effect of data augmentation on prediction accuracy (MAE), summarised across datasets and targets. Each row compares matched training runs without and with augmentation; the last column is the relative MAE change (green = improvement). HOM pose is averaged over the four users.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Dataset</td><td style='text-align: center; word-wrap: break-word;'>Target</td><td style='text-align: center; word-wrap: break-word;'>No Aug</td><td style='text-align: center; word-wrap: break-word;'>With Aug</td><td style='text-align: center; word-wrap: break-word;'>$\Delta$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FF</td><td style='text-align: center; word-wrap: break-word;'>Fingertip force (N)</td><td style='text-align: center; word-wrap: break-word;'>0.361</td><td style='text-align: center; word-wrap: break-word;'>0.328</td><td style='text-align: center; word-wrap: break-word;'>-9.3%</td></tr><tr><td rowspan="2">HP</td><td style='text-align: center; word-wrap: break-word;'>Finger angle ( $^{\circ}$)</td><td style='text-align: center; word-wrap: break-word;'>5.32</td><td style='text-align: center; word-wrap: break-word;'>4.56</td><td style='text-align: center; word-wrap: break-word;'>-14.3%</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Wrist angle ( $^{\circ}$)</td><td style='text-align: center; word-wrap: break-word;'>5.67</td><td style='text-align: center; word-wrap: break-word;'>4.75</td><td style='text-align: center; word-wrap: break-word;'>-16.1%</td></tr><tr><td rowspan="2">HOM pose</td><td style='text-align: center; word-wrap: break-word;'>Finger angle ( $^{\circ}$)</td><td style='text-align: center; word-wrap: break-word;'>9.85</td><td style='text-align: center; word-wrap: break-word;'>9.28</td><td style='text-align: center; word-wrap: break-word;'>-5.8%</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Wrist angle ( $^{\circ}$)</td><td style='text-align: center; word-wrap: break-word;'>8.65</td><td style='text-align: center; word-wrap: break-word;'>8.03</td><td style='text-align: center; word-wrap: break-word;'>-7.2%</td></tr><tr><td rowspan="3">HOM force (Force+Pose)</td><td style='text-align: center; word-wrap: break-word;'>Per-finger (N)</td><td style='text-align: center; word-wrap: break-word;'>0.63</td><td style='text-align: center; word-wrap: break-word;'>0.59</td><td style='text-align: center; word-wrap: break-word;'>-6%</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Per-fingertip (N)</td><td style='text-align: center; word-wrap: break-word;'>0.47</td><td style='text-align: center; word-wrap: break-word;'>0.45</td><td style='text-align: center; word-wrap: break-word;'>-4%</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Per-taxel (PSI)</td><td style='text-align: center; word-wrap: break-word;'>0.46</td><td style='text-align: center; word-wrap: break-word;'>0.43</td><td style='text-align: center; word-wrap: break-word;'>-5%</td></tr><tr><td rowspan="3">HOM force (Pose Input)</td><td style='text-align: center; word-wrap: break-word;'>Per-finger (N)</td><td style='text-align: center; word-wrap: break-word;'>0.47</td><td style='text-align: center; word-wrap: break-word;'>0.45</td><td style='text-align: center; word-wrap: break-word;'>-4%</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Per-fingertip (N)</td><td style='text-align: center; word-wrap: break-word;'>0.37</td><td style='text-align: center; word-wrap: break-word;'>0.35</td><td style='text-align: center; word-wrap: break-word;'>-5%</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Per-taxel (PSI)</td><td style='text-align: center; word-wrap: break-word;'>0.36</td><td style='text-align: center; word-wrap: break-word;'>0.35</td><td style='text-align: center; word-wrap: break-word;'>-3%</td></tr></table>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Target</td><td colspan="3">Best config [v, h, r, z, i]</td><td style='text-align: center; word-wrap: break-word;'>Score</td><td style='text-align: center; word-wrap: break-word;'>vs. nominal</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FF dataset</td><td colspan="3">[1.5, 0, 4, 3, 40]</td><td style='text-align: center; word-wrap: break-word;'>-7.48%</td><td style='text-align: center; word-wrap: break-word;'>-2.16 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HP dataset</td><td colspan="3">[0.5, 0.5, 1.5, 3, 5]</td><td style='text-align: center; word-wrap: break-word;'>-11.42%</td><td style='text-align: center; word-wrap: break-word;'>-0.46 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P1-force</td><td colspan="3">[^3] [^5] [^3] [^22] [^0]</td><td style='text-align: center; word-wrap: break-word;'>-6.95%</td><td style='text-align: center; word-wrap: break-word;'>-4.95 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P2-force</td><td colspan="3">[0.5, 0.5, 3, 7, 5]</td><td style='text-align: center; word-wrap: break-word;'>-5.63%</td><td style='text-align: center; word-wrap: break-word;'>-0.21 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P3-force</td><td colspan="3">[0, 0.5, 1, 3, 15]</td><td style='text-align: center; word-wrap: break-word;'>-2.75%</td><td style='text-align: center; word-wrap: break-word;'>-1.23 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P4-force</td><td colspan="3">[0.5, 0.5, 3, 3, 40]</td><td style='text-align: center; word-wrap: break-word;'>-2.50%</td><td style='text-align: center; word-wrap: break-word;'>-0.04 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P1-kinematics</td><td colspan="3">[1.5, 0, 7, 4, 10]</td><td style='text-align: center; word-wrap: break-word;'>-6.81%</td><td style='text-align: center; word-wrap: break-word;'>-1.57 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P2-kinematics</td><td colspan="3">[1, 0.5, 2, 0, 5]</td><td style='text-align: center; word-wrap: break-word;'>-7.56%</td><td style='text-align: center; word-wrap: break-word;'>-1.64 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P3-kinematics</td><td colspan="3">[0.5, 0.5, 0, 3, 40]</td><td style='text-align: center; word-wrap: break-word;'>-5.00%</td><td style='text-align: center; word-wrap: break-word;'>-0.15 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HOM-P4-kinematics</td><td colspan="3">[1.5, 0, 5, 8, 20]</td><td style='text-align: center; word-wrap: break-word;'>-8.46%</td><td style='text-align: center; word-wrap: break-word;'>-1.52 pp</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Average</td><td colspan="3"></td><td style='text-align: center; word-wrap: break-word;'>-6.46%</td><td style='text-align: center; word-wrap: break-word;'>-1.39 pp</td></tr></table>

<div style="text-align: center;">Table 12: Best per-target augmentation configuration (vertical shift, horizontal shift, rotation, zoom, intensity) from Bayesian-optimisation search, compared against the nominal config [0.5, 0.5, 3, 3, 0]. Score is the percent change in L1 error relative to the zero-augment baseline; more negative is better. The “vs. nominal” column reports the additional improvement (in percentage points) the per-target optimum provides over simply using the nominal config. P1–P4 are the four HOM participants.</div>

针对各目标的配置及其相较于默认配置的提升效果。

针对各目标的微调仅在默认配置基础上带来了平均-1.39个百分点的提升。其中两个目标贡献了大部分增益：FF数据集（-2.16个百分点）和HOM-P1的力模型（-4.95个百分点）；其余八个目标的优化后得分与默认得分相差不超过1.5个百分点，其中四个目标的提升不足0.5个百分点。在默认配置附近，目标函数曲面也较为平坦：将高斯过程找到的最优参数四舍五入到0.5单位偏移/整数旋转级别时，性能损失最多约1.5个百分点；而去掉不敏感参数造成的性能损失通常不到1个百分点。考虑到绝对提升幅度较小、默认配置附近的曲面平坦性，

---

以及为避免过度拟合特定场景的需要，我们仍保留单一的默认配置作为标准。

更有趣的现象是不同用户的最优参数差异极大，尤其在力信号目标上表现明显：P1偏好极强的增强效果（$v=3$、$h=5$、$z=22$），P2的参数接近默认值，仅缩放程度稍高；P3则不希望有垂直偏移且旋转角度极小，而P4的参数则在噪声范围内与默认值一致。运动学目标也呈现出类似的广泛差异（P2的缩放系数为0，P3的旋转角度为0，P1和P4则采用较大的旋转/缩放参数）。尽管每个用户选用自身最优参数带来的提升幅度较小（大多数情况为$\leq2$个百分点），但这些最优参数却分布在参数空间的不同区域——说明搜索过程并未收敛到某一种“正确”的设置。因此，数据增强参数很可能只是用于补偿第4.1.3节提到的不同会话间的干扰因素，而非用于调整模型本身。未来研究方向可以是针对每个用户模型进行个性化增强参数调优，或在通用模型基础上针对每个用户做进一步细化。

#### A.11 EIT：一种对比模态

EIT（电阻抗成像）是一种内部对照：它与压力手部姿态（HP）数据集在参与者、解剖结构和记录协议上保持一致，但采用的传感方式不同。这使我们能够在匹配的条件下训练和评估相同的模型架构，从而分离出密集压力传感所起的作用，排除参与者、协议和设置带来的干扰。本节将进行端到端的比较：包括EIT硬件、数据集与协议、与压力HP基线相比的结果，以及用于修正报告工作点的输入预处理扫描。

A.11.1 EIT硬件。为了与我们的压力传感腕带进行比较，我们搭建了电阻抗成像（EIT）系统。采集单元采用Sciospec EIT64型64通道阻抗断层扫描仪，我们从中选用了16个通道。电极阵列是由表面肌电（sEMG）腕带改造而成，上面有三排共16个弹簧加载的黄铜电极，我们仅使用其中一排（最靠近肘部的近端排）（见图25(a)）；Sciospec设备如图25(b)所示。图25(c)展示了佩戴在前臂远端的腕带，前臂近端则佩戴另一块腕带以固定参考标记树。

我们将EIT64配置为每帧进行16次相邻电极对电流注入；每次注入时读取全部16个电极的数据，因此每帧可得到$16 \times 16 = 256$个测量值。注入电流为10 mA，频率为50 kHz，在此配置下设备的帧率为30 Hz。定制的Sciospec模块会读取标准的OptiTrack时间码信号，从而使EIT帧能够按照动作捕捉系统的时钟进行时间戳标记，便于后续同步。

A.11.2 EIT数据集与协议。这个规模较小的数据集是使用EIT对比腕带（见A.11.1节）而非压力腕带采集的，其设立目的纯粹是为了进行跨模态比较：它让我们能够在匹配的协议和解剖结构下，利用不同的传感方式训练和评估相同的模型架构（见A.11.3节）。该数据集是在我们确定压力腕带为主要传感方式之前采集的，我们保留它是为了将压力测量结果与可直接对比的EIT测量结果进行参照。记录协议在手指和手腕方面与HP一致，

![Image](images/cadef2be5f51cab99ad8c5e3d30d3f9037f346c4ebfd3605bc34584b0bc36778.jpg)

<div style="text-align: center;">(a)</div>

![Image](images/2bad37022ec34859d3512524768f0169e511a90deaab11d512f8c8bfe6cc62a0.jpg)

<div style="text-align: center;">(c)</div>

<div style="text-align: center;">Figure 25: EIT hardware. (a) the 16-electrode band; (b) the Sciospec EIT64 unit; (c) the band worn on the distal forearm, with a second band holding the proximal-forearm reference marker tree.</div>

<div style="text-align: center;">Table 13: Joint-angle and position errors for the combined wrist-and-finger model on the EIT dataset (best causal-filtering setting  $\alpha=10^{-2}$, causal high-pass; pooled across 25 recordings  $\times$ 20 random seeds). Same metrics and format as the HP results (Tab. 3, Sec. 4.1.1).</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Category</td><td style='text-align: center; word-wrap: break-word;'>DOF</td><td style='text-align: center; word-wrap: break-word;'>$\sigma(GT)^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>MAE $^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{2}$</td><td colspan="2">Tip / MPJPE (mm)</td></tr><tr><td rowspan="4">Wrist</td><td style='text-align: center; word-wrap: break-word;'>Pronation</td><td style='text-align: center; word-wrap: break-word;'>26.14</td><td style='text-align: center; word-wrap: break-word;'>14.25</td><td style='text-align: center; word-wrap: break-word;'>0.512</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Flexion</td><td style='text-align: center; word-wrap: break-word;'>26.43</td><td style='text-align: center; word-wrap: break-word;'>7.51</td><td style='text-align: center; word-wrap: break-word;'>0.826</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Deviation</td><td style='text-align: center; word-wrap: break-word;'>10.73</td><td style='text-align: center; word-wrap: break-word;'>5.42</td><td style='text-align: center; word-wrap: break-word;'>0.512</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>25.09</td><td style='text-align: center; word-wrap: break-word;'>9.06</td><td style='text-align: center; word-wrap: break-word;'>0.659</td><td style='text-align: center; word-wrap: break-word;'>No Wrist</td><td style='text-align: center; word-wrap: break-word;'>With Wrist</td></tr><tr><td rowspan="6">Finger</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>14.13</td><td style='text-align: center; word-wrap: break-word;'>5.69</td><td style='text-align: center; word-wrap: break-word;'>0.633</td><td style='text-align: center; word-wrap: break-word;'>14.7 / 8.1</td><td style='text-align: center; word-wrap: break-word;'>35.1 / 24.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>18.48</td><td style='text-align: center; word-wrap: break-word;'>5.25</td><td style='text-align: center; word-wrap: break-word;'>0.725</td><td style='text-align: center; word-wrap: break-word;'>12.3 / 8.5</td><td style='text-align: center; word-wrap: break-word;'>35.8 / 28.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>20.14</td><td style='text-align: center; word-wrap: break-word;'>5.46</td><td style='text-align: center; word-wrap: break-word;'>0.766</td><td style='text-align: center; word-wrap: break-word;'>13.1 / 9.2</td><td style='text-align: center; word-wrap: break-word;'>36.9 / 28.8</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>19.50</td><td style='text-align: center; word-wrap: break-word;'>5.54</td><td style='text-align: center; word-wrap: break-word;'>0.732</td><td style='text-align: center; word-wrap: break-word;'>14.3 / 9.9</td><td style='text-align: center; word-wrap: break-word;'>36.9 / 28.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pinky</td><td style='text-align: center; word-wrap: break-word;'>17.34</td><td style='text-align: center; word-wrap: break-word;'>5.41</td><td style='text-align: center; word-wrap: break-word;'>0.696</td><td style='text-align: center; word-wrap: break-word;'>12.4 / 8.5</td><td style='text-align: center; word-wrap: break-word;'>35.6 / 27.5</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean</td><td style='text-align: center; word-wrap: break-word;'>18.32</td><td style='text-align: center; word-wrap: break-word;'>5.47</td><td style='text-align: center; word-wrap: break-word;'>0.719</td><td style='text-align: center; word-wrap: break-word;'>13.4 / 8.8</td><td style='text-align: center; word-wrap: break-word;'>36.1 / 27.5</td></tr></table>

其余设置（动作捕捉系统和触觉手套）也完全相同。总共我们采集了25组录音，总时长398分钟（6小时38分钟），大多数录音时长在15到21分钟之间。

EIT数据集直接沿用了HP的运动协议（见A.2.1节和图10），唯一的不同之处在于用我们的EIT硬件替换了压力腕带，而动作捕捉手套和前臂标记簇则保持不变。

A.11.3 EIT结果。为了与我们的主要压力传感腕带进行比较，我们在EIT数据集上评估了同一款手腕与手指组合模型。该数据集是使用我们的EIT硬件，在与HP相同的手指及手腕运动协议下采集的。结果汇总了20种随机种子下的25组录音数据；表13以与HP结果相同的格式报告了相应指标。

与基于压力的HP结果（表3）相比，EIT模型在各个指标上的表现都更差。手腕误差显著增加——旋前运动的MAE从$6.4^\circ$上升到$14.3^\circ$（此时$R^2$从0.85降至0.51）——手指MAE也上升了约20%（$4.6^\circ \rightarrow 5.5^\circ$），而该数值在$R^2 = 0.72$时并非0.86。指尖和MJPE位置误差也呈现相同趋势：手腕处的MJPE从15.3毫米跃升至27.5毫米，这主要是由于残留的旋前误差导致整个手指链绕前臂轴旋转所致。这种差距与我们之前的观察一致，即接触压力变化是绑带与皮肤界面处的主要信号来源。

---

对同一解剖结构进行的EIT测量所获取的信息量，仅为密集压力阵列直接捕捉到的信息的一小部分。

这种差距部分源于传感器分辨率的限制。我们的EIT腕带配备了16个电极，每个电极宽度约为1厘米，在空间上相当于单个压力传感器阵列中的3行4列。附录A.8显示，即使将压力传感条 aggressively 降采样至相近的尺寸，也会损失相当一部分可实现的精度；在空间降采样条件下，手腕回归误差比手指回归误差的恶化程度更为明显。除此之外，EIT与压力测量之间的剩余差距还反映了EIT技术本身固有的额外误差，而不仅仅是分辨率不匹配所致。

所报告的EIT数据使用了因果高通预滤波器（$\alpha=10^{-2}$）对EIT输入信号进行处理。EIT式电极系统存在一个众所周知的伪影问题：佩戴后会出现15–20分钟的稳定过渡期，且由于皮肤状况的变化（汗液、水分含量等）会导致基线持续缓慢漂移，高通滤波可消除这些干扰；附录A.11.4探讨了不同滤波器强度以及因果与非因果变体的影响。

A.11.4 EIT预处理参数扫描。附录A.11.3中的EIT结果采用了带有$\alpha=10^{-2}$的因果高通滤波器。本节通过扫描滤波器参数$\alpha$，对比因果（实时处理可行）与非因果（离线前后向处理）两种变体的性能，以阐明这一选择的原因。

为何需要滤波？因果与非因果的区别何在？EIT式电极系统佩戴后会出现15–20分钟的稳定过渡期，同时由于皮肤状况变化（汗液、水分含量等）会导致基线持续缓慢漂移，而这些现象并不携带手部姿态信息。对EIT输入信号进行高通滤波即可去除这些干扰成分。具体来说，我们以采样率50 Hz计算，将输入的移动平均值视为一阶指数衰减低通滤波器，平滑参数为$\alpha$（每样本更新量为$\hat{x}_t \leftarrow (1-\alpha)\hat{x}_{t-1} + \alpha x_t$，有效时间常数为$\tau \approx 1/(\alpha f_s)$秒），再从信号中将其减去。我们对比了单侧因果滤波（仅使用过去数据，实时处理可行但会引入相位失真）与双侧非因果前后向滤波（对同一指数衰减过程分别进行正向和反向应用，无相位失真，但需事先获取全部记录数据，因此只能离线处理）。在$\alpha$参数匹配的情况下，非因果变体的性能略优（例如，在最佳工作点下，手腕平均MAE分别为$8.58^\circ$和$9.06^\circ$），但差距较小，因此在需要实时解码时，因果滤波器仍是合理之选。

选择$\alpha$。表14展示了完整的扫描结果。其中呈现出几种规律：(i) 未经滤波的原始数据基线能够较好地追踪手指运动（平均MAE为5.85°），但对手腕旋前运动几乎无法感知（$R^2=0.07$）：输入信号中占主导的是长尾型的稳定/漂移成分，这些成分掩盖了速度慢得多的手腕信号。(ii) 轻度滤波（$\alpha=10^{-4}$、$3\times10^{-4}$）效果并不理想——它未能有效消除缓慢的漂移现象，反而导致手指定位精度相比原始数据略有下降。(iii) 在$\alpha \in [10^{-3}, 10^{-2}]$范围内的滤波效果最佳：因果型$\alpha=10^{-2}$能得到最优的手指定位均值（5.47°）以及最优的手腕定位均值（9.06°）；而非因果型$\alpha=3\times10^{-3}$则是离线处理时的最佳工作点。(iv) 过度滤波（$\alpha=3\times10^{-2}$）除了会消除漂移成分外，还会抑制真实信号，进而导致手腕和手指的定位精度均出现轻微下滑。这种权衡之所以产生，是因为按照我们的实验方案，手腕运动的缓慢成分在频谱上与稳定-漂移伪影相互重叠，因此能去除伪影的滤波器也会同时丢弃部分原本可用于定位的手腕信号。

<div style="text-align: center;">Table 14: EIT sweep: preprocessing settings on the EIT dataset. raw-data disables preprocessing; the remaining 12 settings apply a high-pass filter to the EIT input parameterized by  $\alpha$ (smaller = lighter filtering), in two blocks: causal (real-time) and non-causal (offline only). Per-DOF entries are MAE ( $^{\circ}$); the Mean pair in each section reports (MAE $^{\circ}$,  $R^{2}$) averaged over the wrist and finger DOFs separately. Best value per column in bold.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Setting</td><td colspan="3">Wrist</td><td colspan="2">W. Mean</td><td colspan="5">Finger</td><td colspan="2">F. Mean</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pron.</td><td style='text-align: center; word-wrap: break-word;'>Flex.</td><td style='text-align: center; word-wrap: break-word;'>Dev.</td><td style='text-align: center; word-wrap: break-word;'>MAE</td><td style='text-align: center; word-wrap: break-word;'>$R^{{2}}$</td><td style='text-align: center; word-wrap: break-word;'>Thumb</td><td style='text-align: center; word-wrap: break-word;'>Index</td><td style='text-align: center; word-wrap: break-word;'>Middle</td><td style='text-align: center; word-wrap: break-word;'>Ring</td><td style='text-align: center; word-wrap: break-word;'>Fraky</td><td style='text-align: center; word-wrap: break-word;'>MAE</td><td style='text-align: center; word-wrap: break-word;'>$R^{{2}}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>raw-data</td><td style='text-align: center; word-wrap: break-word;'>20.62</td><td style='text-align: center; word-wrap: break-word;'>9.42</td><td style='text-align: center; word-wrap: break-word;'>5.90</td><td style='text-align: center; word-wrap: break-word;'>11.98</td><td style='text-align: center; word-wrap: break-word;'>0.41</td><td style='text-align: center; word-wrap: break-word;'>6.11</td><td style='text-align: center; word-wrap: break-word;'>5.61</td><td style='text-align: center; word-wrap: break-word;'>5.89</td><td style='text-align: center; word-wrap: break-word;'>5.87</td><td style='text-align: center; word-wrap: break-word;'>5.74</td><td style='text-align: center; word-wrap: break-word;'>5.85</td><td style='text-align: center; word-wrap: break-word;'>0.68</td></tr><tr><td colspan="13">Causal (real-time)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$10^{-{4}}$</td><td style='text-align: center; word-wrap: break-word;'>19.82</td><td style='text-align: center; word-wrap: break-word;'>13.24</td><td style='text-align: center; word-wrap: break-word;'>7.65</td><td style='text-align: center; word-wrap: break-word;'>13.57</td><td style='text-align: center; word-wrap: break-word;'>0.20</td><td style='text-align: center; word-wrap: break-word;'>7.17</td><td style='text-align: center; word-wrap: break-word;'>6.31</td><td style='text-align: center; word-wrap: break-word;'>6.71</td><td style='text-align: center; word-wrap: break-word;'>6.75</td><td style='text-align: center; word-wrap: break-word;'>6.48</td><td style='text-align: center; word-wrap: break-word;'>6.68</td><td style='text-align: center; word-wrap: break-word;'>0.57</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$3 \times 10^{-{4}}$</td><td style='text-align: center; word-wrap: break-word;'>16.86</td><td style='text-align: center; word-wrap: break-word;'>9.99</td><td style='text-align: center; word-wrap: break-word;'>6.41</td><td style='text-align: center; word-wrap: break-word;'>11.09</td><td style='text-align: center; word-wrap: break-word;'>0.45</td><td style='text-align: center; word-wrap: break-word;'>6.78</td><td style='text-align: center; word-wrap: break-word;'>6.12</td><td style='text-align: center; word-wrap: break-word;'>6.58</td><td style='text-align: center; word-wrap: break-word;'>6.64</td><td style='text-align: center; word-wrap: break-word;'>6.45</td><td style='text-align: center; word-wrap: break-word;'>6.52</td><td style='text-align: center; word-wrap: break-word;'>0.57</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$10^{-{3}}$</td><td style='text-align: center; word-wrap: break-word;'>15.19</td><td style='text-align: center; word-wrap: break-word;'>7.97</td><td style='text-align: center; word-wrap: break-word;'>5.57</td><td style='text-align: center; word-wrap: break-word;'>9.58</td><td style='text-align: center; word-wrap: break-word;'>0.58</td><td style='text-align: center; word-wrap: break-word;'>6.13</td><td style='text-align: center; word-wrap: break-word;'>5.62</td><td style='text-align: center; word-wrap: break-word;'>5.91</td><td style='text-align: center; word-wrap: break-word;'>6.00</td><td style='text-align: center; word-wrap: break-word;'>5.90</td><td style='text-align: center; word-wrap: break-word;'>5.91</td><td style='text-align: center; word-wrap: break-word;'>0.65</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$3 \times 10^{-{3}}$</td><td style='text-align: center; word-wrap: break-word;'>14.46</td><td style='text-align: center; word-wrap: break-word;'>7.51</td><td style='text-align: center; word-wrap: break-word;'>5.43</td><td style='text-align: center; word-wrap: break-word;'>9.13</td><td style='text-align: center; word-wrap: break-word;'>0.61</td><td style='text-align: center; word-wrap: break-word;'>5.81</td><td style='text-align: center; word-wrap: break-word;'>5.33</td><td style='text-align: center; word-wrap: break-word;'>5.55</td><td style='text-align: center; word-wrap: break-word;'>5.65</td><td style='text-align: center; word-wrap: break-word;'>5.52</td><td style='text-align: center; word-wrap: break-word;'>5.57</td><td style='text-align: center; word-wrap: break-word;'>0.70</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$10^{-{2}}$</td><td style='text-align: center; word-wrap: break-word;'>14.25</td><td style='text-align: center; word-wrap: break-word;'>7.51</td><td style='text-align: center; word-wrap: break-word;'>5.42</td><td style='text-align: center; word-wrap: break-word;'>9.06</td><td style='text-align: center; word-wrap: break-word;'>0.62</td><td style='text-align: center; word-wrap: break-word;'>5.69</td><td style='text-align: center; word-wrap: break-word;'>5.25</td><td style='text-align: center; word-wrap: break-word;'>5.46</td><td style='text-align: center; word-wrap: break-word;'>5.54</td><td style='text-align: center; word-wrap: break-word;'>5.41</td><td style='text-align: center; word-wrap: break-word;'>5.47</td><td style='text-align: center; word-wrap: break-word;'>0.71</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$3 \times 10^{-{2}}$</td><td style='text-align: center; word-wrap: break-word;'>14.37</td><td style='text-align: center; word-wrap: break-word;'>7.69</td><td style='text-align: center; word-wrap: break-word;'>5.45</td><td style='text-align: center; word-wrap: break-word;'>9.17</td><td style='text-align: center; word-wrap: break-word;'>0.61</td><td style='text-align: center; word-wrap: break-word;'>5.70</td><td style='text-align: center; word-wrap: break-word;'>5.27</td><td style='text-align: center; word-wrap: break-word;'>5.48</td><td style='text-align: center; word-wrap: break-word;'>5.54</td><td style='text-align: center; word-wrap: break-word;'>5.44</td><td style='text-align: center; word-wrap: break-word;'>5.48</td><td style='text-align: center; word-wrap: break-word;'>0.71</td></tr><tr><td colspan="13">Non-causal (offline)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$10^{-{4}}$</td><td style='text-align: center; word-wrap: break-word;'>16.76</td><td style='text-align: center; word-wrap: break-word;'>10.32</td><td style='text-align: center; word-wrap: break-word;'>6.64</td><td style='text-align: center; word-wrap: break-word;'>11.24</td><td style='text-align: center; word-wrap: break-word;'>0.44</td><td style='text-align: center; word-wrap: break-word;'>6.97</td><td style='text-align: center; word-wrap: break-word;'>6.48</td><td style='text-align: center; word-wrap: break-word;'>6.93</td><td style='text-align: center; word-wrap: break-word;'>6.94</td><td style='text-align: center; word-wrap: break-word;'>6.86</td><td style='text-align: center; word-wrap: break-word;'>6.84</td><td style='text-align: center; word-wrap: break-word;'>0.53</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$3 \times 10^{-{4}}$</td><td style='text-align: center; word-wrap: break-word;'>14.85</td><td style='text-align: center; word-wrap: break-word;'>7.46</td><td style='text-align: center; word-wrap: break-word;'>5.33</td><td style='text-align: center; word-wrap: break-word;'>9.21</td><td style='text-align: center; word-wrap: break-word;'>0.61</td><td style='text-align: center; word-wrap: break-word;'>5.93</td><td style='text-align: center; word-wrap: break-word;'>5.49</td><td style='text-align: center; word-wrap: break-word;'>5.74</td><td style='text-align: center; word-wrap: break-word;'>5.91</td><td style='text-align: center; word-wrap: break-word;'>5.83</td><td style='text-align: center; word-wrap: break-word;'>5.78</td><td style='text-align: center; word-wrap: break-word;'>0.67</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$10^{-{3}}$</td><td style='text-align: center; word-wrap: break-word;'>13.85</td><td style='text-align: center; word-wrap: break-word;'>6.96</td><td style='text-align: center; word-wrap: break-word;'>5.14</td><td style='text-align: center; word-wrap: break-word;'>8.65</td><td style='text-align: center; word-wrap: break-word;'>0.65</td><td style='text-align: center; word-wrap: break-word;'>5.61</td><td style='text-align: center; word-wrap: break-word;'>5.21</td><td style='text-align: center; word-wrap: break-word;'>5.40</td><td style='text-align: center; word-wrap: break-word;'>5.55</td><td style='text-align: center; word-wrap: break-word;'>5.43</td><td style='text-align: center; word-wrap: break-word;'>5.44</td><td style='text-align: center; word-wrap: break-word;'>0.71</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$3 \times 10^{-{3}}$</td><td style='text-align: center; word-wrap: break-word;'>13.64</td><td style='text-align: center; word-wrap: break-word;'>6.93</td><td style='text-align: center; word-wrap: break-word;'>5.18</td><td style='text-align: center; word-wrap: break-word;'>8.58</td><td style='text-align: center; word-wrap: break-word;'>0.65</td><td style='text-align: center; word-wrap: break-word;'>5.54</td><td style='text-align: center; word-wrap: break-word;'>5.13</td><td style='text-align: center; word-wrap: break-word;'>5.34</td><td style='text-align: center; word-wrap: break-word;'>5.44</td><td style='text-align: center; word-wrap: break-word;'>5.33</td><td style='text-align: center; word-wrap: break-word;'>5.36</td><td style='text-align: center; word-wrap: break-word;'>0.72</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$10^{-{2}}$</td><td style='text-align: center; word-wrap: break-word;'>13.84</td><td style='text-align: center; word-wrap: break-word;'>7.14</td><td style='text-align: center; word-wrap: break-word;'>5.22</td><td style='text-align: center; word-wrap: break-word;'>8.73</td><td style='text-align: center; word-wrap: break-word;'>0.64</td><td style='text-align: center; word-wrap: break-word;'>5.55</td><td style='text-align: center; word-wrap: break-word;'>5.13</td><td style='text-align: center; word-wrap: break-word;'>5.34</td><td style='text-align: center; word-wrap: break-word;'>5.40</td><td style='text-align: center; word-wrap: break-word;'>5.33</td><td style='text-align: center; word-wrap: break-word;'>5.35</td><td style='text-align: center; word-wrap: break-word;'>0.73</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$3 \times 10^{-{2}}$</td><td style='text-align: center; word-wrap: break-word;'>14.15</td><td style='text-align: center; word-wrap: break-word;'>7.62</td><td style='text-align: center; word-wrap: break-word;'>5.36</td><td style='text-align: center; word-wrap: break-word;'>9.04</td><td style='text-align: center; word-wrap: break-word;'>0.62</td><td style='text-align: center; word-wrap: break-word;'>5.61</td><td style='text-align: center; word-wrap: break-word;'>5.17</td><td style='text-align: center; word-wrap: break-word;'>5.37</td><td style='text-align: center; word-wrap: break-word;'>5.42</td><td style='text-align: center; word-wrap: break-word;'>5.37</td><td style='text-align: center; word-wrap: break-word;'>5.39</td><td style='text-align: center; word-wrap: break-word;'>0.72</td></tr></table>

根据频谱特性，手腕运动的缓慢成分与稳定-漂移伪影存在重叠，因此能去除该伪影的滤波器也会同时丢弃部分原本可用于定位的手腕信号。

我们在正文中选用因果型$\alpha=10^{-2}$，因为它在手腕和手指定位的平均误差方面均表现最优，且能满足实时处理的要求。
