一杯清酒邀明月
天下本无事,庸人扰之而烦耳。
  下面以康耐视的3D点云相机举例,由于相机出厂默认校准过,所以以下忽略内参推导(后面有机会可以专门做一篇分享),只对外参部分做分享。

1. 手眼标定的意义:

  所谓标定,就是求解坐标系之间相对位置关系的变换矩阵的过程。

2. 眼在手外:

  这里我们可以讲A坐标系理解为机械臂的底座坐标系,B坐标系为相机坐标系,P点可以理解为需要引导抓取的物体。
  只要求出B在A上的变换矩阵,我们就可以知道零件在机械臂上的位置。

  上面可以看出,End在Board上、Base在Camera上这两个变换矩阵是未知的,但是End和Board上是相对位置固定的,所以可以通过移项将其消除,不参与运算,这样未知变换就只剩Base到Camera了,下面是方程组移项过程。

  接下来让End抓着Board,走n个不同的位置和姿态(记录End在Base上的位置),同时让相机拍照(记录Board在Camera上的位置)。对于n张图片,End在Board的位置是固定不变的,联立方程组后可以得到,下图等号两边相等的关系。其中Base到Camera就是需要求的结果。

  得到Base在Camera下的变换矩阵之后,通过连乘,就能得到最终零件在Base下的坐标位置。

3. 眼在手上:

  与眼在手外不同,这里的相机坐标系C是移动的,机械手末端坐标系B也是移动的,但是坐标系B的位置是已知,并且与相机坐标系C永远保持一致,所以只有求得C在B上的变换矩阵,通过矩阵连乘仍然可以得到点P在A坐标系下的位置。

  这里仍然有两个未知的变换关系,Base在Board、End在Camera。可以将Base在Board的变换矩阵消除,之求解End在Camera的变换矩阵。

  和前面一样,经过n次的走位取图联立方程组,我们就可以求出End在Camera上的变换矩阵。

  和前面一样,经过n次的走位取图联立方程组,我们就可以求出End在Camera上的变换矩阵。

  最终通过矩阵连乘,我们就可以得到零件在Base上的位置。

posted on   一杯清酒邀明月  阅读(494)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
历史上的今天:
2022-08-25 Qt 'QApplication'file not found 解决办法
2021-08-25 OpenCV .直方图均衡 CLAHE算法学习
2021-08-25 OpenCV 直方图均衡化原理
2021-08-25 OpenCV 直方图绘制以及直方图均衡化
2021-08-25 OpenCV 图像锐化处理、提高图像对比度
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示