22 标定系统 · 支点标定、重力姿态与 Quest-标记标定

返回 00 - 项目总览与学习路线 | 前置 21 标定系统 - 手眼标定

为什么学这个(项目关联)

这三种方法是本毕设最有”研究味”的部分:没有公认最优的控制器→工具标定方案,作者自研两种方法并与经典方法系统对比。学习重点不只是方法本身,而是”如何为自己的传感器系统发明并验证一个标定方法”。

知识点清单

1. 支点标定(Pivot Calibration)——经典方法(来自医疗机器人/超声探头标定)

  • 原理:刚体绕空间固定点 p 旋转 → 控制器位姿序列满足 t_i = −R_i · p_ctrl + p_world(线性最小二乘可解 p_ctrl,即支点在控制器系的坐标 = 平移量)
  • 旋转怎么解:单个支点只给平移;≥3 个不共线支点联合求解(每个支点给出旋转的约束)
  • 原文实践:夹爪 5 个角点分别压在防滑胶带上,绕每个点大角度旋转;重复 10 次
  • 关键经验:
    • 旋转幅度越大越好(原文三主轴平均转动幅度数值见原文)
    • 精度最差方向 = 支点间距最小的方向(几何基线短 → 角度解算弱)
    • 误差来源:角点陷入胶带、3D 打印公差 → 解出支点间距系统性偏小
    • 改进方向:专用工装 + 尖锐木螺钉支点 + 三维拉开距离
  • 结果:平移精度在所有方法中最优

2. 重力姿态标定——自研,只解旋转

  • 原理:控制器 IMU 输出重力向量(世界系已知方向:竖直向下);把 UMI 的三个法向已知平面分别贴平水平台面 → 每个姿态下重力在控制器系中的读数给出工具系一根轴的方向约束
  • 最少两个轴即可解旋转;第三轴冗余,提升精度 + 正交性校验(原文校验偏差落在 3D 打印公差内)
  • 前提:水平仪校准台面(水平误差控制在小量级)
  • 结果:旋转精度在所有方法中最优
  • 启发:利用一个免费的、全局一致的方向基准(重力)来锚定姿态——零硬件成本

3. Quest-标记标定——自研,最终采用

  • 原理:UMI 固定不动,移动头显;机体上贴 6 个 CAD 坐标已知的 ArUco;头显双目相机检测标记(头显内参预先标定)+ 控制器持续输出自身位姿(头显与控制器同在追踪系)
  • 联合优化:最小化标记重投影误差,解 T_ctrl_tool(本质是把”手眼标定”反过来:相机动、标定物不动,且用双目多帧多标记冗余)
  • 原文参数:10 轮 × ~37 组拍摄 × 左右两眼 ≈ 每轮 176 次标记检测
  • 结果:单次平移误差最大,但交叉验证一致性最好:
    • 平移与手眼标定吻合
    • 旋转与重力姿态吻合
    • → 最终变换矩阵采用它的输出

4. 方法间交叉验证的决策逻辑(本节灵魂)

原文的最终决策不是”谁误差棒最小”,而是:

单方法统计离散(bootstrap 99 分位) ≠ 方法学偏差
不同方法之间的互相偏差 > 各自离散范围 → 存在系统性 bias
→ 找"被多个独立原理佐证"的结果(Quest-标记:平移被手眼佐证、旋转被重力佐证)
→ 再加可视化校验(CAD 渲染 vs 实物照片四视角)
  • 可视化校验做法:用 Claude 从 Unity SDK 提取控制器网格 → CAD 复现 → 按各方法结果摆放坐标系 → 四视角渲染对照
  • 没有方法在全部视角全对 → 接受”数据分析综合最优”的工程决策

5. 各方法速查表

方法解什么硬件需求强项弱项
手眼平移+旋转ChArUco 棋盘标准、信息量大链路长、依赖内参与相机→工具转换
支点平移(+3支点解旋转)防滑垫平移最准手动操作繁琐、异常值
重力姿态仅旋转水平台+水平仪旋转最准、零成本不给平移
Quest-标记平移+旋转6 个 ArUco双重佐证、一次性拟合单次平移误差最大、需 HMD 移动

学习资源

资源用途
检索 “pivot calibration ultrasound probe”支点标定经典文献
OpenCV solvePnP + 非线性优化(Ceres/scipy least_squares)Quest-标记联合拟合实现
原文数值表(见原文网页)各方法误差定量对比

实践任务

  1. 💻 仿真支点标定:生成带噪声的绕点旋转位姿序列,最小二乘解支点,观察噪声/旋转幅度/支点数对精度的影响
  2. 💻 重力姿态仿真:手机传感器 App 读重力向量,把手机三个面贴桌面,解手机”工具系”旋转,与 IMU 姿态对拍
  3. 💻(复刻进阶)在真机上实现 Quest-标记标定的联合拟合(重投影误差最小化)
  4. ✍️ 写一页:如果是你,会怎么组合四种方法的结果?(如:支点平移+重力旋转)并论证
  5. ✍️ 整理”误差预算表”:从零件公差→装配→追踪→标定链路,列出每个误差源量级

掌握标准(自测)

  • 能推导支点标定的线性方程(t_i 与 R_i、p 的关系)
  • 能解释重力姿态标定为什么需要”三个互相垂直的平面”以及第三个面的校验作用
  • 能描述 Quest-标记标定的优化目标(重投影误差)与观测构成
  • 能复述”方法间偏差 > 各自离散 → 选交叉验证一致结果”的决策逻辑

关联笔记

实践记录

(学习时在这里追加:日期 / 做了什么 / 踩坑 / 疑问)