ECCV 2026 · 灵巧手 · 参考动作跟踪 · 约束强化学习

ConTrack:带在线权衡的约束式手部动作跟踪

Constrained Hand Motion Tracking with Adaptive Trade-off Control

Yutong Liang, Quanquan Peng, Ri-Zhao Qiu, Xiaolong Wang · UC San Diego arXiv 2606.03177 (v3) 项目主页 代码 EmptyBlueBox/ConTrack @ f5efe18
一句话:ConTrack 把"物体沿参考轨迹运动"当作约束,把剩下的优化压力交给手的关节动作和接触方式;两者的权重由一个对偶变量在每次 PPO 更新后自动调整,长片段则靠一个按参考帧索引、只存策略真正到达过的仿真状态的重置库来训练。13 个片段、每片段 5000 次更新的固定预算下,平均进度 0.899,高于 ManipTrans 的 0.743。
证据标注:论文 正文附录 论文附录主页 项目主页代码 开源代码,附文件与行号推断 本文的推断或推算
0.899
平均进度,13 个片段
ManipTrans 0.743(表 2)
+0.172
重置库比均匀中途重置高出的进度
0.899 对 0.727(表 5)
0.784
接触 F1
ManipTrans 0.620,DexMachina 0.708

关键方法

任务是让机器人手(xArm7 + XHand,单手或双手)在仿真里复现一段人手操作物体的演示。参考给出逐帧的关节轨迹(人手重定向得到)、物体位姿和手–物接触标注。策略输出关节残差,关节目标 = 参考关节 + 残差。奖励分三路:任务 \(r_g\)(物体位姿),风格 \(r_s\)(臂与手指关节、接触),惩罚 \(r_p\)(速度与加速度)。每个片段单独训练一个策略。论文

  1. 物体跟踪是约束,风格是目标。在任务回报不低于近期最好水平的 α 倍的前提下,最大化风格回报。一个标量对偶变量 λ 在每次 PPO 更新后按约束满足程度调整,混合权重取 \(w_{\text{task}}=\sigma(\lambda)\)。
  2. 重置库。参考的每一帧 k 存一个仿真状态,来源是策略自己跑到过的状态:某个回合经过第 k 帧后坚持得比以往都久,就用它覆盖。起点按存活比 \(u_k\) 采样,越常失败的帧越常被选中;另有一半概率从"失败边界"前 100 帧开始。
  3. 接触先验。把数据集的接触标注合并到 XHand 的 10 个连杆上,奖励"参考有接触时仿真也接触",并在双方都接触时奖励接触点靠近标注点。
\[\max_\pi\ J_s(\pi)\quad\text{s.t.}\quad J_g(\pi)\ \ge\ \alpha\,J_g^\star\tag{1}\]
\[\lambda\leftarrow\lambda+\eta\Big(\alpha-\frac{\hat J_g}{J_g^\star}\Big),\qquad w_{\text{task}}=\sigma(\lambda),\qquad A_{\text{mix}}=w_{\text{task}}A_g+(1-w_{\text{task}})A_s+A_p\tag{2}\]
\[u_k=\frac{\bar\ell_k}{T-k},\qquad p(k)\propto\exp(-u_k/\tau)\tag{3}\]
符号
  • \(J_g,J_s\):任务、风格的折扣回报;\(\hat J_g\):任务回报的在线估计;\(J_g^\star\):\(\hat J_g\) 的近期最大值;α = 0.9,η = 0.05。
  • \(A_g,A_s,A_p\):三路奖励各自的优势估计;σ:logistic 函数。
  • \(\bar\ell_k\):从第 k 帧起平均还能跟多少帧(指数滑动平均);T:片段长度(动作步);τ = 1。
回合结束:把经过的帧写回重置库 回合结束:逐帧写回到达过的状态,更新平均续航与最佳续航 重置库 每个参考帧存一个 策略到达过的仿真状态 采样起点帧 k 50%:按存活比 uk​ 加权 50%:失败边界前移 100 帧 并行仿真采样 关节目标 = 参考 + 残差 物体偏离超阈值即终止 奖励拆成三路 rg​ 物体位姿 rs​ 关节与接触 rp​ 惩罚 两路 critic 与 GAE 任务路 rg​+rp​ 风格路 rs​+rp​ 混合优势,PPO 更新 A = wAg​ + (1−w)As​ + Ap​ 裁剪目标,10 轮小批量 对偶控制器 λ ← λ + η(α − Ĵg​/J*g​) w = σ(λ) 混合权重 w w 更新后的策略继续采样 新策略 最近 100 个回合的任务回报均值 Ĵg​:最近 100 个回合的任务回报均值;J*g​:最近 20 次更新中 Ĵg​ 的最大值 评估另行规定: 一律从第 0 帧开始
图 A。训练循环(据论文算法 1、2 与代码整理)。橙色是重置库,蓝色是对偶控制器。库的写入与采样细节见全程第 3 步和第 4 步。

实验结果

方法进度 ↑物体位置 (m) ↓物体旋转 (rad) ↓手指误差 (rad) ↓接触 F1 ↑接触点 (m) ↓
ConTrack0.899 ± 0.1950.026 ± 0.0060.272 ± 0.1050.163 ± 0.0140.784 ± 0.0720.018 ± 0.005
ManipTrans0.743 ± 0.2920.012 ± 0.0090.207 ± 0.0780.277 ± 0.0890.620 ± 0.0680.030 ± 0.010
DexMachina0.246 ± 0.0520.038 ± 0.0180.348 ± 0.1210.147 ± 0.0160.708 ± 0.0410.024 ± 0.003
SPIDER0.444 ± 0.3410.201 ± 0.1131.104 ± 0.5990.157 ± 0.0190.191 ± 0.2250.036 ± 0.011

论文表 2。13 个片段(GRAB 5、ARCTIC 4、DexterHand 4)的均值 ± 标准差,每片段 5000 次 PPO 更新。评估一律从第一帧开始,物体平移误差超过 0.10 m 或旋转误差超过 1.00 rad 即终止;进度 = 终止帧 / (T − 1)。蓝色为各列最好。ManipTrans 为作者重新实现,DexMachina 只移植了其虚拟物体控制器。论文

0 0.25 0.5 0.75 1 平均进度(13 个片段,越高越好) 重置库(ConTrack) 重置库(ConTrack):0.899 ± 0.195 0.899 ± 0.195 均匀中途重置 均匀中途重置:0.727 ± 0.348 0.727 ± 0.348 总从第一帧开始 总从第一帧开始:0.700 ± 0.270 0.700 ± 0.270
图 B。重置方式消融(论文表 5),三者训练步数相同。物体位置误差分别为 0.026、0.033、0.039 m,接触 F1 为 0.784、0.714、0.739。标准差是 13 个片段之间的离散度。

结论