常见工业机器标定方式和方法:

一 手眼标定的两种情形

首先讲一下在工业应用中,手和眼(摄像机)的两种位置关系,第一种是将摄像机(眼)固定在机械手(手)上面,眼随手移动;第二种是摄像机(眼)和机械手(手)分离,眼的位置相对于手是固定的,下面用网上的两张图来说明下:

第一种情况:相机移动

第二种情况:相机固定

从上面两副示意图可以看出,第一种情况中我们要求的是相机坐标系和机械手坐标系的转化关系;第二种情况中要求的是相机坐标系和基础坐标系的关系;下面分别阐述其求解过程。

二 相机移动时,标定求解过程

在推导过程中,我们会用到四个坐标系,分别是基础坐标系,机械手坐标系,相机坐标系,以及标定物坐标系,下面先给出示意图:

坐标系示意图

其中baseHcal表示基础坐标系到标定物坐标系的转化关系,包括旋转矩阵和平移向量;camHtool表示相机坐标系到机械手坐标系的转化关系;这两个转化关系在机械手移动过程中是不变的;camHcal可以由相机标定求出;baseHtool可以由机器人系统中得出。

接下来控制机器手从位置 1 移动到位置 2:

base = baseHtool (1)* tool(1)

tool(1) = inv(camHtool)*cam(1)

cam(1) = camHcal(1)*obj

联合上面三个公式:

base = baseHtool (1)* inv(camHtool)* camHcal(1)*obj

移动到机械手臂到位置2后:

base = baseHtool (2)* inv(camHtool)* camHcal(2)*obj

因为base和obj是固定的所以:

baseHtool (1)* inv(camHtool)* camHcal(1)=baseHtool (2)* inv(camHtool)* camHcal(2)

其中只有camHtool是未知量,具体求解过程将放在下篇文章。

三 相机固定时,标定求解过程

坐标系示意图


对于固定相机的情况,还是控制机械手从位置1移动到位置2:

obj(1) = inv(camHcal(1)) *cam
cam = camHbase *base
base = baseHtool(1) * tool(1)
合并上面三个公式:
obj(1) = inv(camHcal(1))  * camHbase* baseHtool(1) *tool(1)
移动到位置2后:
obj(2) = inv(camHcal(2))  * camHbase* baseHtool(2) *tool(2)
因为obj和tool的相对位置是不变的,所以不管怎么移动:
inv(camHcal(1))  * camHbase* baseHtool(1)= inv(camHcal(2))  * camHbase* baseHtool(2)
其中变量只有camHbase,也就是我们要求的。

Eye in hand And eye on hand calibration相关推荐

  1. 【机器人手眼标定AX=XB(eye to hand和eye in hand)及平面九点法标定】

    一.背景 Calibration是机器人开发者永远的痛.虽然说方法说起来几十年前就有,但每一个要用摄像头的人都还是要经过一番痛苦的踩坑,没有轻轻松松拿来就效果好的包.其实人类不就是个手眼协调的先进&q ...

  2. Java图片文本识别工具Eye实现(不支持中文)

    Eye 是一个使用 Java 开发的文字识别工具(OCR),该工具主要用来识别屏幕上的文字,不支持中文. 网址:http://eyeocr.sourceforge.net/ 工程引入:eye.jar和 ...

  3. numpy.eye详解

    numpy.eye 用例: numpy.eye(N, M=None, k=0, dtype=<class 'float'>, order='C') 功能: 返回一个二维数组,其对角线元素为 ...

  4. PyTorch | 通过torch.eye创建单位对角矩阵 | torch.eye()如何使用?torch.eye()例子 | torch.eye()使用方法

    在公众号[计算机视觉联盟]后台回复[9076]获取独家200页手推AI笔记:我的微信:PursueWin:    --by Sophia 中科院学霸 | 上市AI算法工程师 | CSDN博客专家 t ...

  5. MATLAB中eye()函数的用法

    MATLAB中eye()函数返回的是单位矩阵. eye(N),返回N*N大小的单位矩阵: eye(M,N).eye([M,N]),返回M*N的单位矩阵: eye(size(A))返回和矩阵A一样大小的 ...

  6. 推荐一款护眼插件 Night Eye

    目录 1.下载 Night Eye 插件 2.插件安装 3.Night Eye 下载链接 电脑看久了,眼睛会酸痛,尤其时对我们这种长期坐在电脑前的程序员来说,经常需要查资料,浏览网站,更是苦不堪言.不 ...

  7. AR中的Eye Box是什么

    AR中的Eye Box是什么 Eye Box是什么 Eye Box尺寸 Eye Box与FOV的相互制约 参考链接 Eye Box是什么     Eye Box指的是近眼显示光学模组与眼球之间的一块锥 ...

  8. eye blink detect眨眼检测算法

    眨眼检测算法有很多种,但准确率都有很大提高空间.此摘录几种简单的判断方法: 一:基于阀值的 http://www.cpe.ku.ac.th/~jeab/papers/chinnawat_JCSSE20 ...

  9. 机器人抓取(五)—— 手眼标定 hand eye calibration

    1. 原理篇 参考:机器人手眼标定的基础理论分析 3D视觉之手眼标定 胡春旭:"手眼"结合完成物体抓取应用 在实际应用中,我们通常需要将相机观察到的外界环境中物体的姿态从相机坐标系 ...

最新文章

  1. 最新大脑图谱研究表明,手部的运动区域也与整个身体相连
  2. tabBar的图标不被系统渲染
  3. 聚焦 | 阿里灵杰AI工程化峰会来了
  4. Application.DoEvents
  5. 蔬菜大棚成本_蔬菜大棚种植成本和利润究竟如何?种植户有话说
  6. AutoML 与 Bayesian Optimization 概述
  7. 【React深入】深入分析虚拟DOM的渲染原理和特性
  8. MySQL String Types
  9. Mybatis-SpringBoot集成/配置
  10. JS删除两个数组中相同的某个对象值
  11. LeetCode 303. 区域和检索 - 数组不可变(动态规划)
  12. ffmpeg音视频同步原理
  13. vue中打印表格功能(重点是表格制作)
  14. 螺旋桨RNA结构预测竞赛第10名方案
  15. 最新版UI视频解析单页源码附带超清接口
  16. 哪些单位可以解决户口?附落户北京渠道
  17. Rockchip_Developer_Guide_USB_FFS usb测试demo
  18. Java课程设计——象棋(201521123042 姚佳希)
  19. Docker_03_彻底搞懂Dockerfile文件
  20. 妥妥的去面试之Android基础(六)

热门文章

  1. 单边带幅度调制matlab
  2. 单水下机器人 主控板设计 硬件设计
  3. 内容理解在新浪微博广告中的应用
  4. python assert函数解析(最清晰的解释)
  5. 我国量子态隐形传输获突破 超时空穿越或成真(求证)
  6. 计算机专业有必要数学竞赛吗,竞赛党必读,五大竞赛学科各有利弊,到底哪科最适合你呢...
  7. 【人工智能AI】MaaS:模型即服务的未来已来
  8. 谈谈关于网页设计中的色彩理论
  9. 解决同时使用antd俩个不同版本的样式错乱问题
  10. 文学常识100条(3)