论文精读笔记:InvariantCloud
1. 核心判断
论文:arXiv 2605.25216
核心问题:视觉触觉 sensor 的局部接触面积小,marker 会受剪切和滑移;逐帧 LK / ICP correspondence 会误匹配并积累漂移,尤其难恢复绕 sensor normal 的 yaw。
核心回答:先在 sensor frame 固化一个带唯一 ID 的稠密 marker-derived point cloud;每次接触只改变哪些全局点被激活以及它们的高度。直接按 ID 配对解 roll / pitch,以接触轮廓 PCA 解绝对 yaw,以质心解平移。
我的判断:论文最好的思想是把 correspondence 从“每帧估计”改成“初始化时定义”。它显著改善 return repeatability 与弱轮廓 yaw,但所谓 6D pose 是对象相对局部触觉面的接触 pose;可观性受接触轮廓、连续接触和传感器标定强约束。
2. 任务边界
系统不需要:
对象 CAD;
外部 RGB / depth camera;
在线 motion capture;
object-specific learning。
系统需要:
GelSight 类、带稳定 intrinsic marker 的 vision-based tactile sensor;
已知球压入标定;
无接触时的全局 marker reference;
接触期间可提取稳定轮廓和高度;
frame tracking 时保持连续接触。
输出的坐标系是 sensor frame。它适合夹持器内局部接触跟踪,并不直接给出对象在机器人 base / 世界坐标中的全局 pose;要用于操作还需已知 sensor–gripper kinematics。
3. Height map 与全局参考点云
3.1 球压标定
已知直径的球在多个位置压入 elastomer。对每个像素提取:
RGB;
归一化像素坐标;
intrinsic marker 的嵌入信息。
MLP 预测局部 surface normal 的倾角;得到 gradient field 后,用 DCT 求 Poisson equation,积分成 height map H H H 。像素 ( x , y ) (x,y) ( x , y ) 经 image center 与 pixel-to-mm scale s s s 映射到
P = ( ( x − c x ) s , ( c y − y ) s , h ( x , y ) s ) . P=((x-c_x)s,(c_y-y)s,h(x,y)s). P = (( x − c x ) s , ( c y − y ) s , h ( x , y ) s ) .
这一步决定 Z translation 与 Kabsch 3D 点的精度。对象无需训练,但传感器必须先训练 / 标定 ,所以它是 object-agnostic,不是 calibration-free。
3.2 永久 ID
无接触图像中检测 N m a r k e r s N_{\mathrm{markers}} N markers 个 marker,并按其矩形行列结构排序。作者在相邻 marker 之间做双线性插值,把稀疏网格扩为更密的 lattice;每个网格位置以
g = r ( n + 1 ) + c + 1 g=r(n+1)+c+1 g = r ( n + 1 ) + c + 1
获得全局唯一 ID。实验常用 19×25,即 475 点;跨接触表面重建时增至 31×41。
原论文 Figure 2–3:绿色稠密 lattice 的坐标和 ID 在 sensor frame 中一次定义;当前 contact mask 只选择其子集,同 ID 直接构成 Kabsch 对应。来源:InvariantCloud 原论文 。图片版权归论文作者所有,本站仅作学术解读展示。
关键不是点数更密,而是 identity 不再由 frame-to-frame nearest neighbor 决定。只要接触区域重新覆盖同一全局位置,系统能回到相同 ID 集合,因此 return-to-start 不累积此前匹配误差。
每帧融合 color difference 与 height depression 的双阈值,再经 dilation / erosion 得到 contact mask C t C_t C t 。在全局 lattice 的整数像素位置采样 mask,筛出当前激活点,并用当前 height map 将其提升为 3D。
这意味着全局 grid 是 sensor-fixed reference,真正随对象 motion 变化的是:
contact silhouette 覆盖哪些 IDs;
对应 grid 点的高度;
contact centroid 与主轴。
marker 本身在 elastomer 上可能发生剪切 / 滑移,算法不把局部 marker displacement 当作对象 yaw 的唯一证据,这正是其区别于 LK+ICP 的地方。
5. 6D 分解求解
5.1 Kabsch 解 roll / pitch
前后帧 contact subcloud 取公共 IDs,得到一一对应的 3D 点集 { p i } , { q i } \{p_i\},\{q_i\} { p i } , { q i } 。去质心后构造
H = ∑ i p ~ i q ~ i ⊤ = U Σ V ⊤ , H=\sum_i\tilde p_i\tilde q_i^\top=U\Sigma V^\top, H = i ∑ p ~ i q ~ i ⊤ = U Σ V ⊤ ,
并以标准 Kabsch
R ⋆ = V diag ( 1 , 1 , sign det ( V U ⊤ ) ) U ⊤ R^\star=V\,\operatorname{diag}(1,1,\operatorname{sign}\det(VU^\top))\,U^\top R ⋆ = V diag ( 1 , 1 , sign det ( V U ⊤ )) U ⊤
求最优刚体旋转。
论文把这里称为 X / Y rotation estimation:它主要利用接触 surface height / normal 变化恢复相对 sensor plane 的 roll、pitch。yaw 另行处理,因为 elastomer 上的 torsional slip 会让局部 marker-based registration 对绕 Z 旋转失效。
5.2 PCA 解 yaw
对当前接触内的 2D 全局点集
S t = { p i ∈ P ∣ C t ( p i ) = 1 } S_t=\{p_i\in\mathcal P\mid C_t(p_i)=1\} S t = { p i ∈ P ∣ C t ( p i ) = 1 }
计算 covariance M t M_t M t ,取第一主轴 a t a_t a t ,并定义
θ t = atan2 ( a t , y , a t , x ) . \theta_t=\operatorname{atan2}(a_{t,y},a_{t,x}). θ t = atan2 ( a t , y , a t , x ) .
除理想圆形外,物体 yaw 会改变 contact silhouette 及其覆盖的全局 IDs;PCA 主轴因此成为 sensor-frame 中的绝对方向,而不是把相邻帧小旋转不断相乘。
原论文 Figure 4:marker 会相对对象剪切 / 滑移,NormalFlow 的局部方向逐步漂移;InvariantCloud 每帧都从全局 ID 子集的轮廓主轴重新计算 yaw,返回时恢复初始方向。来源:InvariantCloud 原论文 。图片版权归论文作者所有,本站仅作学术解读展示。
PCA 也有明确几何边界:
完全圆形 / 球形接触的 covariance 两个特征值相同,yaw 不可观;
近圆轮廓的主轴会对 mask noise 高度敏感;
主轴天然有 180° 符号歧义,连续实现需要用上一帧保持方向符号一致;
压力改变 contact patch 形状时,主轴变化可能混入“变形”而非刚体 yaw。
5.3 质心解 XYZ
对 contact mask 做 morphological closing,取最大 contour 的 area-moment centroid;利用 height map 提升为 3D。前后帧 centroid 的 XY 差给平面平移,contact region height 给 Z。
这个设计低成本且不漂移,但隐含“contact centroid 的变化等价于对象 translation”。若对象在曲面上滚动、接触 patch 因压力扩张或发生非刚性变形,centroid motion 不完全等于刚体平移。
6. 跨接触 tactile SLAM
连续 tracking 中断、重新接触时,不能直接按相邻 frame IDs 延续。作者利用每个 contact patch 的 PCA absolute yaw:
计算两个 contact clouds 的 Z rotation difference;
做 XY alignment 与 geometric centering;
再用 ICP refinement;
以 overlap ratio 判断 registration 是否可信;
成功后融合点云。
这里 ICP 没有消失,而是从“每帧 pose 主求解器”降级为“有绝对 yaw 初值后的跨接触 refinement”。这解释了论文标题中的 globally invariant 并不意味着所有 registration 都完全不用 ICP。
7. 一分钟静止漂移
实验使用 320×240、约 25 Hz 的 GelSight Mini。静止接触一分钟,五段序列平均:
方法 Δx / Δy / Δz (mm) Δθx / Δθy / Δθz (°) InvariantCloud 0.22 / 0.14 / 0.11 0.62 / 0.69 / 0.84NormalFlow 0.41 / 0.38 / 0.28 1.42 / 0.97 / 0.78 LK + ICP 2.52 / 3.14 / 2.29 10.89 / 8.15 / 7.19
完整方法不是每一个单元格都最好:静止 yaw MAE 0.84° 略高于 NormalFlow 0.78°。它的优势主要是 XYZ、roll / pitch 以及后续动态 / return yaw 的稳定性,而不是把 Table I 说成六项全胜。
8. Return repeatability
四个对象在保持接触时随机平移 / 旋转,再返回与初始轮廓高度重合的位置;每对象、每方法重复 5 次。
原论文 Figure 6:四种家庭物体各进行五次 return test;InvariantCloud(绿)在全部对象的总体六自由度误差最低。NormalFlow 对 egg 的 Z rotation return error 接近 20°,ICP 在平移和旋转上均明显漂移。来源:InvariantCloud 原论文 。图片版权归论文作者所有,本站仅作学术解读展示。
scissors 和 sensor box 有明显非对称轮廓,NormalFlow 尚能估 yaw;egg 与 utility knife 的椭圆 / 弱差异 contact patch 更难,局部 normal optimization 无法从滑移 marker 恢复绝对方向。全局 ID + silhouette PCA 的 return property 在这里最有说服力。
9. 0→−90° 动态 yaw
实验在对象上贴三个荧光 marker,以 motion-capture 保证实际旋转达到约 −90°。论文将 NormalFlow 与 InvariantCloud 的 yaw 曲线对比:
原论文 Figure 8:scissors / sensor box 上两法都能跟随;NormalFlow 在 egg 上近乎停滞,在 utility knife 上明显滞后且末段停滞,InvariantCloud 在两者上仍向 −90°推进。来源:InvariantCloud 原论文 。图片版权归论文作者所有,本站仅作学术解读展示。
图中没有逐对象数值表,因此不宜从曲线人工读出高精度小数。可可靠得出的结论是:
明显轮廓对象:两种方法都能追踪;
弱轮廓对象:NormalFlow 的局部法向 / marker cue 不足;
InvariantCloud 对非圆 contact silhouette 更稳;
完全球形仍不可解,作者在结论中明确承认。
10. Tactile SLAM 演示
作者仅用 GelSight Mini 多次离散扫描 scissors,不借助外部 motion capture,将多个局部 patch 注册为较大的表面轮廓。实验说明 absolute yaw 可作为跨接触 registration 初值,但它仍是单对象、定性 surface reconstruction demo,没有 Chamfer distance、闭环误差或大规模 CAD 对比。
11. 局限与复现清单
完全球 / 圆接触的 yaw 不可观,近圆时也应监控 PCA eigenvalue ratio。
连续 frame pose 依赖持续接触;脱离后只能进入跨接触 registration,而非无观测传播。
height-map MLP、球压数据、marker 排序和 pixel-to-mm scale 都要单独校准并版本化。
contact mask 的阈值、morphology 与 pressure 变化会同时影响 PCA 和 centroid,应做压力分层消融。
31×41 grid 可改善 reconstruction fidelity,但论文没有系统报告 grid density 对 latency / noise 的曲线。
实验只有四个家庭物体与少量 hand-operated trials;需要机器人控制、不同材料 / 曲率和长序列 benchmark。
sensor marker 脱落、老化或 elastomer creep 会破坏“全局稳定 reference”,应设计在线 reference health check。
截至本站整理时未发现官方实现仓库,论文仅公开预印本。
12. 方法启发
InvariantCloud 的可迁移价值在于重新设计 correspondence 的来源:当传感器自身存在稳定、可编号的结构时,与其每帧重新搜索局部特征,不如把 identity 固化在 sensor coordinate system,再让当前观测选择 active subset。它把长期漂移从一个优化调参问题变成一个表示问题;但可观性没有被魔法消除,yaw 最终仍依赖非圆接触几何,这个边界同样重要。