分享

手眼标定的两种方式

 西北望msm66g9f 2021-08-19
机器视觉课堂
OpenCV、Halcon等机器视觉专业学习交流平台,服务于工业自动化、先进机器人技术、人工智能等相关专业技术人才。定期发布最新机器视觉相关新闻、应用案例、技术资料、展会信息等信息。
55篇原创内容
公众号

一 手眼标定的两种情形

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


第一种情况:相机移动

第二种情况:相机固定

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

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


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


坐标系示意图

其中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,也就是我们要求的。

机器视觉课堂
机器视觉课堂
OpenCV、Halcon等机器视觉专业学习交流平台,服务于工业自动化、先进机器人技术、人工智能等相关专业技术人才。定期发布最新机器视觉相关新闻、应用案例、技术资料、展会信息等信息。
55篇原创内容
公众号

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多