关于手眼标定的数学模型及标定流程

手眼标定介绍

在手眼标定中,AX=XB和AX=YB是两种常见的数学模型,用于描述相机和机械臂之间的关系。

手眼标定中的两种情况:眼在手上(Eye-in-Hand)和眼在手外(Eye-to-Hand)

  • 求解略有不同,但基本原理相似。

眼在手外(Eye-to-Hand)

H cam base H_{\text{cam}}^{\text{base}} Hcambase= H tool base H_{\text{tool}}^{\text{base}} Htoolbase* H cal tool H_{\text{cal}}^{\text{tool}} Hcaltool* H cam cal H_{\text{cam}}^{\text{cal}} Hcamcal

在这种配置中,相机固定在工作空间的某个位置,观察整个机械臂的运动。此时,变换矩阵X表示相机相对于机械臂基座的固定变换。

这时候,我们让机械臂两个位置,保证这两个位置都能使得camera看到标定板

假设A= H tool base H_{\text{tool}}^{\text{base}} Htoolbase,B= H cal tool H_{\text{cal}}^{\text{tool}} Hcaltool, C= H cam cal H_{\text{cam}}^{\text{cal}} Hcamcal

那么两个位置的等式如下:

A 1 A_{\text{1}} A1 * B B B * C 1 C_{\text{1}} C1 = A 2 A_{\text{2}} A2 * B B B * C 2 C_{\text{2}} C2

等式转换

A 2 -1 A_{\text{2}}^{\text{-1}} A2-1 * A 1 A_{\text{1}} A1 * B B B = B B B * C 2 C_{\text{2}} C2 * C 2 -1 C_{\text{2}}^{\text{-1}} C2-1

此时就能获得关于AX=XB问题:

AXXB 模型
  • A:表示机械臂在两个不同位置之间的变换矩阵。
  • X:表示相机相对于机械臂末端的固定变换矩阵(手眼变换矩阵)。
  • B:表示标定板在两个不同位置之间的变换矩阵。

这个模型的目标是同时求解变换矩阵X和Y,使得在不同位置下的变换关系成立。

眼在手上(Eye-in-Hand)

公式如下

H tool cam H_{\text{tool}}^{\text{cam}} Htoolcam= H tool base H_{\text{tool}}^{\text{base}} Htoolbase* H base cal H_{\text{base}}^{\text{cal}} Hbasecal* H cal cam H_{\text{cal}}^{\text{cam}} Hcalcam

在这种配置中,相机安装在机械臂的末端执行器上。此时,变换矩阵X表示相机相对于机械臂末端的固定变换。

这时候,我们让机械臂两个位置,保证这两个位置都能使得camera看到标定板

假设A= H tool base H_{\text{tool}}^{\text{base}} Htoolbase,B= H base cal H_{\text{base}}^{\text{cal}} Hbasecal, C= H cal cam H_{\text{cal}}^{\text{cam}} Hcalcam

那么两个位置的等式如下:

A 1 A_{\text{1}} A1 * B B B * C 1 C_{\text{1}} C1 = A 2 A_{\text{2}} A2 * B B B * C 2 C_{\text{2}} C2

等式转换

A 2 -1 A_{\text{2}}^{\text{-1}} A2-1 * A 1 A_{\text{1}} A1 * B B B = B B B * C 2 C_{\text{2}} C2 * C 2 -1 C_{\text{2}}^{\text{-1}} C2-1

此时又能获得关于AX=XB问题:

AX=XB 模型
  • A:表示机械臂在两个不同位置之间的变换矩阵。
  • X:表示相机相对于机械臂末端的固定变换矩阵(手眼变换矩阵)。
  • B:表示相机在两个不同位置之间的变换矩阵。

这个模型的目标是求解变换矩阵X,使得在不同位置下的变换关系成立。

AX = XB问题的求解

  • Y. Shiu, S. Ahmad Calibration of Wrist-Mounted Robotic Sensors by Solving Homogeneous Transform Equations of the Form AX = XB. In IEEE Transactions on Robotics and Automation, 5(1):16-29, 1989.
  • R. Tsai, R. Lenz A New Technique for Fully Autonomous and Efficient 3D Robotics Hand/Eye Calibration. In IEEE Transactions on Robotics and Automation, 5(3):345-358, 1989.
    5
  • Horaud, Radu, and Fadi Dornaika. "Hand-eye calibration." The international journal of robotics research 14.3 (1995): 195-210.
  • Daniilidis, Konstantinos. "Hand-eye calibration using dual quaternions." The International Journal of Robotics Research 18.3 (1999): 286-298.

基本 OpenCV 或者 Matlab 都是采用了张老师的方法:

  • Zhang, Zhengyou. "A flexible new technique for camera calibration." IEEE Transactions on pattern analysis and machine intelligence 22.11 (2000): 1330-1334.
AX=YB 模型

此外,还有AX=YB模型,这种情况会通过迭代优化的方式来求解。

这个模型表示不同位置下,机器人末端执行器和相机之间的变换关系:

  • A:表示机器人末端执行器的变换矩阵。
  • X:表示相机坐标系到机器人末端执行器坐标系的变换矩阵(手眼变换矩阵)。
  • Y:表示相机坐标系到机器人基座坐标系的变换矩阵。
  • B:表示相机的变换矩阵。

通过求解这个方程,可以得到 X 和 Y 矩阵,从而确定相机相对于机器人末端执行器和机器人基座的变换关系。

相关推荐
深圳多奥智能一卡(码、脸)通系统1 分钟前
数据中心机房门禁及智能挡鼠板可联动机器人(AGV)巡检机器狗自动开门过闸详细配置清单采用国密级安全标准,实现AGV/机器狗自主乘梯通行全流程。
机器人·agv·机器狗·门禁·梯控·cpu卡读卡器·国密门禁
C++ 老炮儿的技术栈4 分钟前
Qt 开发机器人客户端程序
c语言·开发语言·c++·windows·qt·机器人
Mr.Winter`31 分钟前
深度强化学习 | 基于Double DQN算法的移动机器人路径规划(附Pytorch实现)
人工智能·pytorch·深度学习·神经网络·机器人·自动驾驶·具身智能
feasibility.10 小时前
AI 爬虫高手养成:Openclaw+Scrapling 手动部署 + 采集策略(以Walmart 电商平台为例)
人工智能·爬虫·科技·机器人·agi·openclaw·scrapling
Mountain and sea14 小时前
从零搭建工业机器人激光切割+焊接产线:KUKA七轴协同+节卡AGV+视觉检测实战复盘
人工智能·机器人·视觉检测
LFly_ice15 小时前
OpenClaw 配置与 QQ Bot接入指南
机器人·openclaw
zh路西法16 小时前
【宇树机器人强化学习】(七):复杂地形的生成与训练
python·深度学习·机器学习·机器人
出门吃三碗饭18 小时前
IsaacSim: 用智能手机在 NVIDIA Isaac Sim 中重建场景
智能手机·机器人
ofoxcoding21 小时前
怎么用 API 搭一个 AI 客服机器人?从零到上线的完整方案
人工智能·ai·机器人
workflower21 小时前
影响用例书写格式的因素
人工智能·机器人·集成测试·ai编程·软件需求