← 返回时间线

个人研究 · 帝国理工

大型持针器的零样本 6-DoF 工具位姿估计

RGB–双目–CAD 推理与评估流程

2026年3月 – 2026年9月

在 968 个有效位姿输出上,对称性感知的几何重排序将 top-1 ADD@5 mm 从 44.11% 提升到 57.75%。

已完成的 MRes 研究

角色: 围绕几何位姿重排序与评估开展的个人 MRes 研究。

  • 6-DoF Pose
  • Stereo Depth
  • CAD
  • Evaluation
Projected pose candidates and geometric reranking evidence
Projected pose candidates and geometric reranking evidence

现实问题

基础位姿模型可能已经生成正确候选,却把几何上不一致的结果排在第一。器械细长、具有对称性、存在遮挡,同时使用严格的 5 mm ADD 阈值评估。

约束

  • 不训练任务专用位姿网络的零样本流程
  • 分割与双目深度误差会向下游传播
  • 对称性造成视觉上合理但几何上有歧义的位姿
  • CAD 单位与坐标约定必须一致

系统表达

推理与评估流程

相机看到了器械,但它在哪、朝向哪边?

位姿就是物体的位置和朝向。这个项目要估计持针器的这两件事。我关注的是最后怎么选:更接近参考答案的姿态可能已经在候选列表里,却没有被选中。

原来排第一的结果橙色是预测,白色是用于评估的参考投影。
从已有候选里重新选择这个案例中,蓝色更接近参考。选择规则没有修改这个姿态本身。

这是已记录的 sym252 第 125 帧案例。其他帧也可能变差;下方保留完整对照。

三类信息,在位姿估计器中汇合

看哪一部分

RGB 图像 → 目标掩膜

Mask R-CNN 标出目标区域的像素。位姿流程使用已有的掩膜预测。

离相机多远

双目图像 → 深度

流程使用数据集提供的、预先计算好的 RAFT-Stereo 深度。

它是什么形状

CAD + 相机标定

CAD 提供几何形状,相机标定描述三维点怎样对应图像像素。

Any6D 生成并排列可能的位置与朝向

RGB、掩膜、深度、CAD 和相机参数共同输入。最终排第一的结果,不一定最接近参考姿态。

用几何条件选择一个已有姿态

按原顺序检查候选,选择第一个满足条件的结果;如果都不满足,保留原来的第一名。

选完以后,才用参考姿态评估

测量三维位置的偏差

ADD 比较同一组 CAD 点在预测姿态和参考姿态下的位置。平均距离小于 5 mm,才通过本项目的阈值。

  1. RGB + 双目 + CAD
  2. 目标分割
  3. 双目深度
  4. Any6D 候选
  5. 几何重排序
  6. 评估 · ADD@5 mm

RGB + 双目 + CAD · 输入与观测

RGB、双目图像与 CAD 进入分割和度量深度估计。流程将 CAD 从毫米转换为米,并以质心居中。

输入:双目 RGB 观测与 Large Needle Driver CAD 模型。

CAD 输入模型——视角 1,共 4 个视角CAD 输入模型——视角 2,共 4 个视角CAD 输入模型——视角 3,共 4 个视角CAD 输入模型——视角 4,共 4 个视角
用于位姿估计的 CAD 模型,展示四个不同视角。

目标分割 · Mask R-CNN

位姿流程使用 Mask R-CNN(ResNet-101 + FPN)生成目标掩膜。GroundingDINO + SAM2 及其局部窗口版本用于对比。

RGB、真值掩膜与不同分割方法输出
在全部 970 帧上,Mask R-CNN IoU 约为 0.889;GroundingDINO + SAM2 约为 0.232;local-window 版本约为 0.496。

双目深度 · RAFT-Stereo

位姿流程读取 RAFT-Stereo 深度。下图以该深度为参考,对比 FoundationStereo;差值表示两种估计之间的差异,并非相对真值深度的误差。

双目深度对比与绝对深度差
在真值掩膜与有效深度的交集上,代表性的最佳、典型与最差误差约为 0.98 mm、19.41 mm 与 123.39 mm。

位姿候选 · Any6D

Any6D 根据 RGB、目标掩膜、深度和 CAD 生成位姿假设并评分。

几何重排序 · z2 / z1 / y1

几何约束对 Any6D 候选重新排序。叠加图将原始 top-1 与重排序选中位姿分别与 GT 对照,展示被挽救、被损害和保持成功的案例。

被挽救、被损害和保持成功的位姿案例
在 sym252 下,仅 z2 达到 52.17%;z2 + z1 为 53.82%;z2 + y1 为 55.27%;三项约束达到 57.75%。

核心思想 / 原理导读

先理解原理,再看实现

外观、深度与几何

RGB 提供视觉观测,双目深度提供观测到的度量几何,CAD 提供器械模型。掩膜限定目标区域,其误差可能传播到候选排序。

初始旋转配置

sym252 与 sym126 描述 Any6D 的初始旋转配置。评估使用普通 ADD,比较对应 CAD 点,而非忽略轴向旋转差异。

几何重排序:z2 / z1 / y1

消融实验比较单项与组合几何约束,三项组合获得了更高的 top-1 得分。

Top-1、oracle 与 ADD@5 mm

Top-1 评估选中的假设;oracle 上限检查候选中是否存在正确结果。ADD@5 mm 使用严格的 5 mm 位姿评估阈值。

技术决策与权衡

目标分割

实验验证
所选方法
Mask R-CNN
备选方案
GroundingDINO + SAM2; local-window variant
权衡 / 原因
同一组 970 帧上的已记录 IoU 更高。
对比结果
IoU ≈ 0.889 / 0.232 / 0.496

候选排序

实验验证
所选方法
三项几何约束重排序
备选方案
原始 Any6D top-1;单项及双项约束
权衡 / 原因
sym252 下已记录的 top-1 ADD@5 mm 更高,同时保留有害重排序案例。
对比结果
44.11% → 57.75% · 968 valid outputs

初始旋转配置

工程决策
所选方法
sym252 与验证过的 126 对称性子集
权衡 / 原因
调整 Any6D 的初始旋转网格;评估仍使用普通 ADD。

评估 · ADD@5 mm

评估使用 sym252 下的 top-1 ADD@5 mm,报告 970 帧中 968 个有效输出,并将选中位姿与 oracle 候选上限比较。

top-1 ADD@5 mm

57.75% triple geometric reranking

sym252; default top-1 versus triple geometric reranking

评估详情
样本量
968 valid pose outputs / 970 frames
协议
sym252 · ADD@5 mm
基线
44.11% default top-1

valid Any6D outputs

968 / 970

frames 1261 and 1262 failed

oracle candidate ceiling

86.36%

sym252; a valid candidate existed but was not always ranked first

runtime per frame

8.92 s

8,652 seconds total; peak GPU memory 4.25 GiB

Any6D top-1 及几何重排序预测与 GT 的对比
Any6D 预测在几何重排序前后与 GT 的对比,以 ADD@5 mm 评估。

失败模式

上游掩膜失败

空掩膜或不准确分割会改变观测到的物体支持区域。

明确报告空输出,并区分上游失败与候选排序失败。

双目深度异常值

细长反光几何和遮挡会破坏匹配。

在掩膜范围内诊断,并同时保留最佳、典型与最差案例。

有害重排序

带噪几何线索可能把原本正确的 top-1 候选降级。

同时展示 rescued、harmed 与 unchanged,而不是只报总体提升。

职责边界

设计

设计模块化 RGB–双目–CAD 研究流程。

实现

实现流程与几何候选重排序,保留用于诊断的中间输出。

评估

比较分割、双目深度、对称性处理和重排序,分析量化结果及失败案例。

研究背景与支持

Hamlyn Centre 的个人 MRes 研究,由 Dr Stamatia (Matina) Giannarou 指导;Project 332 提供数据与研究场景。

工程细节
  • RTX 5060 上的 PyTorch 2.8.0 + CUDA 12.8
  • CAD 从毫米转换为米并以质心居中
  • 252 对称性评估集与经过验证的 126 对称性子集
  • 保留分割、深度、候选与诊断的模块化中间输出