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上的位置。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全网最简单!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 图像锐化处理、提高图像对比度