← 返回知识体系
14 机器人 抓取 多传感器 系统标定

Robot Transform Chains & System Calibration

从相机 pose 到
机器人可执行坐标

视觉输出的 CTO 只是机器人系统中的一条边。真正可执行的 BTO 还依赖 frame 方向、手眼外参、机器人运动学、TCP、时间同步、安装刚性和误差预算。

01 · Frame Contract

位姿矩阵首先是一条有方向、有版本、有时间的 frame graph 边

沿用坐标系专题的列向量约定:上标是输出 frame,下标是输入 frame。相邻 frame 名能消去时才允许相乘。

Source

谁产生这条边?

robot FK、camera calibration、PnP、SLAM、TCP file 还是人工配置。

→
Semantics

ATB · B → A

parent/child、active/passive、row/column convention 必须写清。

→
State

unit · timestamp · covariance

m/mm、rad/deg、clock domain、valid interval、source version。

→
Validation

range · closure · task

数值范围、loop closure、留出姿态和真实接触结果。

Transform contract and composition
Ap=ATB Bp,ATC=ATB BTC{}^{A}\mathbf p = {}^{A}\mathbf T_{B}\,{}^{B}\mathbf p,\qquad {}^{A}\mathbf T_{C} = {}^{A}\mathbf T_{B}\,{}^{B}\mathbf T_{C}
矩阵从右往左作用;中间的 B 必须首尾相接。命名为 camera_pose、extrinsic、world_T_cam 都不够,仍需明确 map direction。
符号物理含义系统边界时间属性主要来源
B · base机器人基座控制器正运动学的参考系;不一定等于工位 world / map通常静态机器人控制器 / cell calibration
E · flange法兰 / 末端链节机器人厂商定义的最后一个机械接口,不等于工具尖端随关节运动forward kinematics
U · tool / TCP工具中心点抓取、焊接、探针或吸盘真正执行任务的点/轴刚性随 ETCP / tool calibration
C · camera optical相机光学坐标系6D estimator 常输出 ᶜTₒ;RGB、depth 可各有一个 C随安装拓扑intrinsic + extrinsic
T · calibration target标定板 / fiducial提供已知几何观测;可能固定在 base,也可能装在 flange由采集方案决定target detector / PnP
O · object目标物体系模型点、对称性与 grasp relation 的基准;在线视觉输出所在端点场景相关pose estimator
G · grasp候选抓取坐标系由 O 通过 object-to-grasp 变换派生,可有多个等价候选随 Ograsp generator
W / M工位 world / map多机器人、多相机、SLAM 或测量系统的共同参考可静态或漂移survey / SLAM / robot-world calibration
重复性 ≠ 准确度。 机器人可以每次回到同一个错误位置;hand–eye 也可能在同一局部工位内“吸收”一部分 robot model bias。系统标定必须区分 repeatability、absolute accuracy、固定外参和随姿态/负载变化的非刚性误差。

02 · Eye-in-Hand, Eye-to-Hand & Hybrid

先画物理连接图,再决定未知量和方程

相机固定在哪个刚体、target 固定在哪个刚体,决定哪些 transform 应当跨样本保持常量。相同 API 名称不能替代物理建模。

Eye-in-hand

C 刚性安装在 E;未知 X = ᴱT꜀

Target
T 通常固定在工位 / base
Online chain
ᴮTₒ(t) = ᴮTₑ(q,tᵣ) · ᴱT꜀ · ᶜTₒ(t꜀)
Calibration
多个静止采样的 Gᵢ X Oᵢ = ᴮTₜ,消去常量得到 AᵢⱼX = XBᵢⱼ
Strength
近距离、多视角、遮挡少;能随手腕主动观察
Risk
动态时强依赖机器人插值、曝光时间、线缆/支架刚性和 wrist motion excitation

Eye-to-hand

C 固定在 B / W;未知 X = ᴮT꜀

Target
在线直接看 O;标定时 T 可装在 E
Online chain
ᴮTₒ(t) = ᴮT꜀ · ᶜTₒ(t꜀)
Calibration
若 T 固定于 E:X Oᵢ = Gᵢ Y,其中 Y = ᴱTₜ;需同时求 base↔camera 与 flange↔target
Strength
外参在机器人运动时保持静态;可覆盖大工位并观测多个机器人
Risk
远距离分辨率、遮挡、固定支架漂移、base/world 不一致与 robot-world gauge

Multi-camera / hybrid

多个 Cₖ,部分固定、部分随 E

Target
共享 target、自然特征或重叠物体轨迹
Online chain
沿 frame graph 选择有时间戳的最短可信路径,并保留每条边 covariance / version
Calibration
联合 intrinsic、camera–camera、hand–eye、robot–world 和 time offset;或分块标定后全局 refinement
Strength
视野互补、遮挡恢复、冗余 closure 与在线漂移检测
Risk
gauge、相关误差、RGB-depth 时间错位、错误 loop edge 会污染全图
Eye-in-hand

B ← E(q,tᵣ) ← C ← O(t꜀)

camera 边随 robot FK 父节点运动;动态链需要同一物理时刻。

vs
Eye-to-hand

B ← C ← O(t꜀)

camera 是 base 的静态子节点;robot E 是标定 target 或执行链的另一分支。

+
Tool chain

B ← E(q,tᵣ) ← U

TCP 独立于 camera/object 链;视觉正确不保证 tool frame 正确。

03 · Derive AX=XB

AX=XB 不是起点,而是把同一个静态世界量在两次采样中消去的结果

以下使用 eye-in-hand:Gᵢ = ᴮTₑᵢ、X = ᴱT꜀、Oᵢ = ᶜTₜᵢ,且 target T 固定在 base。

Per-view physical closure
BTT=BTEi⏟GiETC⏟XCTTi⏟Oi,∀i{}^{B}\mathbf T_{T}=\underbrace{{}^{B}\mathbf T_{E_i}}_{\mathbf G_i}\underbrace{{}^{E}\mathbf T_C}_{\mathbf X}\underbrace{{}^{C}\mathbf T_{T_i}}_{\mathbf O_i},\qquad \forall i
每个样本都应给出同一个 ᴮTₜ。先检查 G、O 的方向,再构造相对运动;否则 AX=XB 即便求出数值也无物理意义。
Pairwise relative-motion equation under this convention
Gj−1Gi⏟Aij X=X OjOi−1⏟Bij\underbrace{\mathbf G_j^{-1}\mathbf G_i}_{\mathbf A_{ij}}\,\mathbf X=\mathbf X\,\underbrace{\mathbf O_j\mathbf O_i^{-1}}_{\mathbf B_{ij}}
A/B 的具体逆序取决于你的 G/O 定义和 i,j 顺序。可靠做法是从上一行逐步消元,而不是把某篇论文或 API 示例原样抄进另一套记号。
SE(3) residual used by a joint optimizer
rij(X)=Log⁡ ⁣[(AijX)−1(XBij)]∈R6\mathbf r_{ij}(\mathbf X)=\operatorname{Log}\!\left[\left(\mathbf A_{ij}\mathbf X\right)^{-1}\left(\mathbf X\mathbf B_{ij}\right)\right]\in\mathbb R^6
旋转和平移量纲不同;应根据 measurement covariance、task scale 或明确的 normalization 加权。直接把 rad 和 m 等权只是一个建模选择。
Eye-to-hand with target on flange

X Oᵢ = Gᵢ Y

X = ᴮT꜀ 与 Y = ᴱTₜ 都未知。这是 simultaneous robot-world / hand–eye family;不能假装只剩一个 X。

Robot-world / hand-eye

Aᵢ X = Z Bᵢ

论文常写 AX=YB、AX=ZB 或其他排列。符号字母不是语义;必须列出每个量连接的 frame 并固定 gauge。

Multi-sensor graph

loop products ≈ I

每个独立 loop 都提供 closure;共享边产生相关误差,不能默认 covariance 独立相加。

Interactive Lab

亲手改变拓扑、运动激励和动态条件

三个实验分别回答:链路怎么算、什么时候能唯一求 X、哪一项误差最先耗尽任务容差。所有 preset 都能继续拖动参数。

Interactive · Transform Graph, AX=XB & Deployment Budget

机器人坐标链、手眼可观测性与时空误差预算实验室

不是背一条矩阵乘法:先在 frame graph 上找路径,再用真实 SE(3) 约束求手眼外参,最后把静态、运动和成像误差换算到 TCP / 目标点。
ATB maps B → A frame + direction + unit + timestamp calibrate on train motions · validate on held-out poses
active composition path independent TCP branch online observation 画布是 top-view;数值计算始终使用完整 4×4 SE(3)

Active path

—

—相邻上下标必须消去,不能靠“看起来像”决定乘法顺序

Object in base

BTO translation

——

TCP in base

BTU translation

—TCP 是工具链分支,不是相机光心或 flange 原点

Round trip

T · T−1 closure

—只能证明数值求逆自洽,不能证明 frame 语义写对

Contract audit

—

——

04 · Solvers & Observability

solver 选择影响噪声表现,运动设计决定问题是否可解

Tsai、Park、Horaud、Daniilidis 或 nonlinear refinement 都不能从纯平移、共同旋转轴、错误方向或弯曲 target 中创造信息。

方法族核心思路适用点工程警告
Tsai–Lenz · separable先旋转、后平移;经典线性构造实现简单、速度快、适合良好激励和低噪声初值旋转噪声会传给平移;必须核对论文与 API 的 A/B、gripper↔base、target↔camera 方向
Park–Martin · Lie group在 SO(3) / SE(3) 上构造精确与最小二乘 AX=XB几何解释清晰、旋转可用 Lie algebra 处理log branch、角度接近 π、加权和单位尺度需明确
Horaud–Dornaika · quaternion / nonlinear比较线性、quaternion 与同时优化旋转平移可作为经典 solver family 与 nonlinear refinement 入口quaternion 符号、左/右乘约定和 rotation/translation 权重易错
Daniilidis · dual quaternion用 dual quaternion 同时表示旋转和平移并经 SVD 求解同时求解,避免完全分离两部分仍不能修复退化运动、错误观测或 robot kinematics bias
Andreff et al. · online / SfMKronecker / linear结构并可扩展到无已知 target motion适合 online 与更一般观测关系参数尺度、噪声模型、结构恢复 gauge 需要额外约束
Nonlinear joint refinement直接最小化 target reprojection、3D residual、kinematic / time model 与 robust loss能加入 distortion、rolling shutter、time offset、covariance 和 outlier初值、gauge、相关参数 trade-off;train residual 下降不代表 held-out accuracy
01

旋转轴多样性

至少包含两个不平行的相对旋转轴;最好覆盖多个空间方向

只绕同一轴旋转时,共轴方向的部分平移/旋转约束不可观或病态
02

相对转角

在安全、target 可见和 PnP 稳定范围内使用足够大的正负转角

大量 1° 小动作不如少量清晰的大角度;角点/PnP 噪声会淹没差分
03

平移基线与工作空间

改变 camera–target 距离、横向位置、腕部姿态和 lever arm

只在小局部标定会把 robot kinematic bias 与外参混合,并在远端外推失败
04

观测几何

标定板占据足够像素、倾角多样、不过曝、不强反光、角点分布完整

正视平面、远小靶标、模糊或弯曲纸板使 camera/PnP 与 hand–eye 共同偏
05

静态采样

停止后等待机械振动与自动曝光稳定;记录 exposure 中心时间和 robot pose

边运动边把 arrival time 当 exposure time,会把时间偏差拟合进空间外参
06

反向与负载

在代表速度、负载、线缆姿态下做正反向路径与重复采样

回程间隙、重力挠曲、温漂和线缆力不是一个固定 X 能解释
07

数据划分

按 robot poses / workspace / session 留出,不从同一停点复制帧做验证

相邻帧泄漏会让 closure 和 reprojection 显得异常稳定
Held-out static-target closure
Z^i=GiX^Oi,ei=Log⁡ ⁣(Z‾−1Z^i)\widehat{\mathbf Z}_i=\mathbf G_i\widehat{\mathbf X}\mathbf O_i,\qquad \mathbf e_i=\operatorname{Log}\!\left(\overline{\mathbf Z}^{-1}\widehat{\mathbf Z}_i\right)
在未参与求解的 robot poses 上报告 translation / rotation dispersion、P90、方向和工作空间位置;只报训练 AX=XB residual 会漏掉过拟合和退化。
不要把所有 i,j 两两组合当独立样本。 N 个绝对采样可生成 O(N²) 个 pair,但它们共享原始 pose 和噪声。统计有效样本数仍由独立停点 / 轨迹 / session 决定;pair weighting 还会让某些原始帧被重复放大。

05 · Calibration Stack

“做完手眼标定”不等于“系统已经标定”

把参数分块,给每一块独立观测、验证和版本。联合优化可以提高一致性,但不能省略 gauge、先验和 held-out 验收。

参数块包含什么估计策略独立验证
Camera intrinsicK、distortion、resolution、focus / zoom / temperature平面标定多倾角 + nonlinear reprojection;保存图像尺寸与模型重投影、边缘区域、留出视图、板平整度
Target geometry / detector点坐标、tag size、板翘曲、角点亚像素和 PnP测量实体 target;冻结 detector / dictionary / corner convention逐点 residual、正反面 / ID、不同距离姿态
Hand–eyeᴱT꜀ 或等价固定刚体边AX=XB / joint refinement;运动激励先于 solver 选择held-out static-target closure、不同 solver agreement
Robot-world / base-cameraᴮT꜀ 与可能的 ᵂTᴮ、ᴱTₜ同时求 AX=ZB / X Oᵢ = GᵢY,显式固定 gauge跨机器人/相机 loop closure、独立测量点
TCP / target mountᴱTᵤ、ᴱTₜ 的 tip translation 与工具方向pivot 求 tip;多平面/姿态或已知轴求 orientationtouch fixture、不同 approach direction / payload
Robot kinematicsjoint zero、link geometry、encoder、compliance、backlashfactory / metrology calibration;不能全塞进 hand–eye Xpose accuracy vs repeatability、workspace map、ISO-style path tests
RGB–depth / multi-cameraCᵣ↔C_d、C₁↔C₂、depth scale / bias同步多视图 target / 3D plane;联合或全局 graph refinement彩深边缘、3D plane residual、跨相机 closure
Temporal calibrationclock offset/skew、latency、jitter、rolling shutter readout硬触发/PTP;否则联合 time–extrinsic estimation并使用可激励运动不同速度/方向的 held-out dynamic residual
Pivot calibration

只靠固定尖端求 TCP translation

让工具尖端固定在 base 中同一点并改变 flange orientation。每个姿态满足:

Pivot linear relation
Bppivot=RBEi Eptip+tBEi{}^{B}\mathbf p_{\mathrm{pivot}}=\mathbf R_{BE_i}\,{}^{E}\mathbf p_{\mathrm{tip}}+\mathbf t_{BE_i}
联合解 E 系 tip 坐标和 B 系 pivot 点。它不自动给出 tool orientation;要标定轴方向还需平面、直线或多特征约束。
Robot kinematic boundary

固定 X 解释不了姿态相关误差

joint zero、link length、encoder、backlash、compliance 和 thermal drift 会让 ᴮTₑ 的误差随 q / load / direction 变化。若 residual 在 workspace 呈结构化场,应处理机器人运动学或补偿模型,而非继续给 hand–eye 增加自由度。

static edge:      ᴱT꜀, ᴱTᵤ, ᴮT꜀
configuration:    ᴮTₑ(q; θ_kin)
dynamic nuisance: flex(q, load, T), backlash(direction)
temporal state:   q(t), exposure(t), latency / jitter

06 · Temporal Calibration & Error Propagation

动态机器人链的每条时变边必须在同一个物理时刻求值

camera message 到达时间、exposure 开始/中心/结束时间、机器人控制器 sample time 和主机 clock 可能不同。静止时看不见的 Δt,会在运动时变成毫米和角度。

texposure

传感器真正积分光线

global shutter 可用中心时间;rolling shutter 还需逐行 readout。

≠
tdevice

设备时间戳

可能来自 camera clock,需 offset/skew 映射到共同 clock。

≠
tarrival

主机收到消息

含传输、driver、队列和调度 jitter,不能直接当采样时刻。

→
q(t)

robot state interpolation

在 exposure time 插值关节/SE(3),记录插值方法和 extrapolation gate。

First-order temporal displacement
∥δp∥≈∥v∥ ∣Δt∣,∥δθ∥≈∥ω∥ ∣Δt∣\|\delta\mathbf p\|\approx \|\mathbf v\|\,|\Delta t|,\qquad \|\delta\boldsymbol\theta\|\approx \|\boldsymbol\omega\|\,|\Delta t|
例如 500 mm/s 下 8 ms ≈ 4 mm。角误差还会通过相机/目标到任务点的 lever arm 转为位置误差。
Rotation-to-position lever arm
∥δprot∥≈∥ℓ×δθ∥≤∥ℓ∥ ∥δθ∥\|\delta\mathbf p_{\mathrm{rot}}\|\approx \|\boldsymbol\ell\times\delta\boldsymbol\theta\|\le \|\boldsymbol\ell\|\,\|\delta\boldsymbol\theta\|
相同 0.5° 外参误差,在 50 mm 和 800 mm lever arm 上产生完全不同的任务影响。
First-order SE(3) chain perturbation
δξ≈δξ1+Ad⁡T1δξ2,Σ≈Σ1+Ad⁡T1Σ2Ad⁡T1T\delta\boldsymbol\xi \approx \delta\boldsymbol\xi_1+\operatorname{Ad}_{\mathbf T_1}\delta\boldsymbol\xi_2,\qquad \boldsymbol\Sigma \approx \boldsymbol\Sigma_1+\operatorname{Ad}_{\mathbf T_1}\boldsymbol\Sigma_2\operatorname{Ad}_{\mathbf T_1}^{\mathsf T}
该 covariance 形式假设两项独立且采用一致的 left/right perturbation convention。联合标定产生相关参数时必须加入 cross terms,不能机械相加。
Correlated chain covariance
Σ=JΣθJT,Σθ=[Σ11Σ12Σ21Σ22]\boldsymbol\Sigma = \mathbf J\boldsymbol\Sigma_{\boldsymbol\theta}\mathbf J^{\mathsf T},\qquad \boldsymbol\Sigma_{\boldsymbol\theta}=\begin{bmatrix}\Sigma_{11}&\Sigma_{12}\\\Sigma_{21}&\Sigma_{22}\end{bmatrix}
intrinsic、target pose、hand–eye 和 time offset 在 joint optimization 中往往相关。只保存每个 transform 的独立 6×6 covariance 会丢掉这种耦合。
误差源典型表象隔离实验修复方向
Hand–eye rotation远处目标呈位置偏差,且随 lever arm 增大;方向性强δp ≈ [p]×δθ,按距离/工作空间画 vector field重采多轴运动;检查 mount 刚性和 target / PnP bias
Hand–eye translation全局近似常量 shift,但经父级旋转后方向改变静态 target 在 base 中的均值偏移;跨姿态 closure重估固定边,避免把 TCP / base 偏差误归给 X
Clock offset / latency误差与速度同号,反向运动时符号翻转;静止时消失按线/角速度回归 residual;改变速度与方向硬同步、统一时钟、按 exposure 插值、估计 offset/skew
Rolling shutter同一帧上端/下端 residual 相反或随读出方向变化逐行 residual vs row/time;高速转动序列建模 readout time、降低运动或换 global shutter
TCP / target mounting触点或抓取始终偏,视觉 overlay 可能完全正确pivot / touch test;更换 approach direction标定 ᴱTᵤ / ᴱTₜ,不改相机外参
Robot accuracy / flex同一命令可重复但绝对位置偏;负载/姿态/温度相关独立 tracker、正反向与负载切片、workspace error mapkinematic / compliance calibration 或闭环 compensation
Intrinsic / distortion图像中心较好、边缘系统偏;pose 随板在画面位置变化留出视图 per-point reprojection 与 radial plot固定 focus/resolution,重标 K/distortion,更新 crop/resize K
Target / PnP bias不同 target orientation 或 tag ID 产生一致 pose 偏差切换板、点集、PnP method;检查实体尺寸/平整度刚性精密 target、联合 refinement、稳健角点和 uncertainty
Base/world mismatch每台相机内部自洽,跨设备 / 工位坐标不闭合frame graph loop residual 与已知测量点只保留一个权威静态边;标定 ᵂTᴮ 并版本化
External drift上线后缓慢劣化或偶发跳变固定 fiducial heartbeat、closure CUSUM、温度/碰撞日志重新标定 gate、机械定位销、在线状态与安全降级

07 · Validation Ladder

从代数自洽,一层层走到独立测量与真实任务

同一传感器、同一标定板和同一轨迹产生的验证可能共享系统偏差。越靠后的验证,越能打破这种同源自洽。

01

Solver residual

训练运动上 AX=XB / reprojection 是否拟合

必要但不充分;退化数据也能低 residual
02

Static target closure

每个 held-out pose 计算 Zᵢ = Gᵢ X Oᵢ,检查 SE(3) dispersion

直接验证整条 eye-in-hand 静态链
03

Cross-solver / resampling

Tsai/Park/Daniilidis/nonlinear 与 bootstrap subsets 的 X 是否稳定

发现病态、outlier 与实现约定问题
04

Independent touch / tracker

用 TCP 触碰已知点、激光跟踪仪或外部测量系统

避免同一 camera/target 同源误差自洽
05

Dynamic reversal test

同一路径不同速度与相反方向比较 residual

分离空间外参、时间偏差、backlash 与 flex
06

Workspace / load / thermal map

在部署体积、负载、线缆与热稳态上切片

确认固定 X 的适用域和最坏区域
07

Task A/B

开放环 vs visual servo、nominal vs perturbed、真实 grasp/insertion trials

把毫米/度误差映射到任务成功与安全
08

Online heartbeat

固定 target / loop closure、timestamp health、mount shock 与 uncertainty

发现上线漂移并触发 abstain / recalibrate

建议保存的 held-out calibration report

calibration_id / solver / source_commit / frame_convention
camera serial + K/distortion/resolution/focus + target asset hash
robot serial + controller/kinematic version + tool/load + temperature
motion excitation: axis spread / relative-angle distribution / workspace hull
train: reprojection + AX=XB residual + outlier list
held-out: target closure translation_xyz / rotation vector / P50/P90/max
dynamic: clock model / speed bins / direction bins / rolling-shutter config
independent: touch/tracker/task trials + failures + safety margin
valid_from / valid_until / mount event / online heartbeat threshold

08 · Open Loop, Visual Servo & Closed-Loop Operation

闭环能修正一部分误差,但不会让错误 frame 和时间模型自动消失

开放环依赖一次性 ᴮTₒ;视觉伺服把视觉误差放进控制回路。两者都必须处理可见性、延迟、控制频率、速度限制、uncertainty 和安全 interlock。

PBVS · position-based

从 6D pose error 生成 camera / tool twist

轨迹直观、可结合 3D target;依赖 pose 与 hand–eye / robot model

姿态跳模、标定偏差、深度/尺度和大初始误差会造成错误笛卡尔运动
IBVS · image-based

直接用图像特征误差和 interaction matrix 控制

对部分标定偏差较鲁棒、目标更易保持在视野

深度估计、局部稳定域、退化特征与 camera retreat 等问题仍存在
Hybrid / 2.5D

把图像特征与部分 3D pose / rotation 组合

在视野保持与笛卡尔轨迹间折中

控制律、坐标 convention 与切换条件需统一
Closed-loop re-estimation

approach 中反复感知—规划—执行,最后近场校正

能修正部分静态 bias 与目标运动

不能自动修复时间错位、错误 frame、遮挡失效或不安全动作;必须有速度/置信度 gate
Generic visual-servo control law
vc=−λ L^+(s−s⋆)\mathbf v_c=-\lambda\,\widehat{\mathbf L}^{+}\left(\mathbf s-\mathbf s^\star\right)
s 可是 image feature,也可是 pose-derived feature;interaction matrix L、depth、camera–tool twist mapping、sampling delay 和 saturation 都影响稳定性。
Observe

RGB/RGB-D + timestamp

检查 target visibility、sensor health、pose mode 与 confidence contract。

→
Transform

frame graph @ exposure time

插值 q(t),传播 pose / calibration uncertainty 到 task frame。

→
Gate

reachability · collision · risk

超出 calibration domain、误差预算或视野时 acquire / slow / abstain。

→
Control

bounded twist / replan

执行小步动作,监控 residual 下降、latency 和接触状态。

09 · Failure Taxonomy & Release Gate

先做可证伪的隔离实验,再决定重标哪一块

不要把所有末端偏差都归因于 6D pose。用静止/运动、正向/反向、近/远、中心/边缘、轻载/重载这些对照快速定位误差源。

静止准确,运动偏

优先查 time / rolling shutter

做速度和方向 sweep;若 residual 与 v、ω 同号,空间重标通常治标不治本。

近处准,远处偏

优先查 rotation / K / lever arm

把 position residual 除以距离,并按图像 radius 切片。

视觉 overlay 准,触点偏

优先查 TCP / robot accuracy

用独立 touch fixture 与不同 approach direction,不要改 camera extrinsic。

训练 pose 准,留出工位偏

查 excitation / robot model / flex

画 workspace vector field,检查标定 hull 外推和负载姿态依赖。

每个 camera 自洽,跨 camera 不闭合

查 base/world graph 与共享 gauge

列出唯一权威边,移除重复 static transform publisher。

重启 / 更新后突变

查版本、序列号、单位和 transform direction

对 calibration file、K、tool、controller、mount event 做 hash 与启动断言。

Release gate · 允许机器人使用视觉 pose 之前

  1. 每个 transform 是否明确 parent / child、map direction、列/行向量、右/左手、m/mm、rad/deg?
  2. frame graph 是否只有一个权威静态路径,所有 loop 在 tolerance 内闭合?
  3. Eye-in-hand / Eye-to-hand 的 camera 和 target 是否真的固定在假设的刚体上?
  4. Gᵢ、Oᵢ、Aᵢⱼ、Bᵢⱼ 是否由物理闭合式推导,且 API 输入方向逐轴投影验证?
  5. 运动是否含至少两个不平行旋转轴、足够转角、基线和部署工作空间覆盖?
  6. target 尺寸、平整度、corner / tag convention、PnP、K/distortion 与分辨率是否冻结?
  7. hand–eye、robot-world、TCP、robot kinematics 与 time offset 是否作为不同参数块管理?
  8. timestamp 是否对应 exposure,camera / robot clocks 是否映射,robot pose 是否插值而非取最近包?
  9. 是否在 held-out robot poses 报 static-target closure 的分量、P90/max 和 workspace 分布?
  10. 是否用独立 touch / tracker / fixture 打破同一 camera + target 的同源自洽?
  11. 是否在代表速度、方向、负载、线缆、温度与工作距离上做动态验证?
  12. 误差预算是否把 rotation×lever、vΔt、ωΔt、TCP、成像和相关 covariance 映射到 task tolerance?
  13. 视觉伺服是否有 visibility、uncertainty、latency、速度、workspace、collision 和 emergency gate?
  14. calibration 是否绑定设备 serial、软件/控制器版本、工具/负载、hash、valid interval 与 mount event?
  15. 上线是否有 fixed-target / loop heartbeat、漂移阈值、abstain / recalibrate 和可回滚版本?
  16. 最终是否通过真实 grasp / insertion / placement trials,并保存失败阶段而非只报平均毫米误差?
手眼、时空标定、机器人约定与视觉伺服的原始来源展开查看 Tsai–Lenz、Park–Martin、Horaud、Daniilidis、Shah、Furgale、Zhang、OpenCV、REP-103、视觉伺服与 ISO 9283