机器视觉中的九点标定

记录第一次在CSDN博客写文章,今天开始,作为一个职场技术人,把自己的工作经验和积累记录/整理,写成文章,相互学习和交流


前言

          九点标定是机器视觉领域中的一种标定方法,机器视觉的一些应用中,会用到运动机构或机械手和相机搭配,实现引导,对位,纠偏的功能,这个过程需要将机械手的坐标和图像的坐标进行转换。九点标定就是为了求出这个转换关系所用到的一种简单标定方式。


场景:以相机引导机械手tool工具取放料为应用场景,介绍标定实施方法

一、眼在手上

        顾名思义,相机和机械手相对位置固定,机械手会带着相机运动到固定位置拍照。一般情况下会事先示教机械手tool工具取放料的坐标,示教完成后,保持产品姿态不变,相机走到固定拍照位置,拍下带有取放料点位(产品)的照片作为标准位置。由于产品或载具的公差,每一批产品在同样的位置拍照后,计算该照片中取放料点位(产品)坐标和标准位置照片中取放料点位(产品)坐标的差值(即是常说的纠偏值),机械手tool示教坐标加上该差值即为当前位置产品的机械手tool取放料坐标。

           其中,在当前位置和标准位置作差过程中,均是先将图片中取放料点位(产品)坐标先转换为物理坐标。在这之前就需要做九点标定:在某一个固定拍照位置,视野中贴一个Mark圆点,然后机械手带着相机走九个点,也就是九宫格形状,记下机械手在每个点的坐标,且机械手在每个点时相机拍摄图片保存,通过图像处理计算出每个Mark圆点的圆心像素坐标。然后运用Halcon相关算子,或者其他图像处理工具,将九个点的机械坐标和对应像素坐标输入,得出转换矩阵。就可以把图像坐标转换成物理坐标。

二、眼在手外

          与之相反,眼在手外表示相机固定在机械手之外,不随着机械手运动。这种情况下不需要事先示教取放料点位(产品)坐标,因为需要的是相机的引导:拍照之后给出取放料点位(产品)坐标。所以这种情形下也不需要拍摄标准位置照片。

         九点标定的过程:在相机视野中贴上九个Mark圆点(成九宫格排列),并且拍下这张图片保存,然后将机械手tool的中心依次移动到对准这九个Mark的中心,并记下tool对准每个Mark点中心时的机械手坐标,接下来就是通过图像处理计算出每个Mark圆点的圆心像素坐标。然后运用相关图像处理工具,计算出像素坐标和机械手坐标的转换矩阵。或者另外一种标定方式:让机械手tool蘸取颜料,依次走九宫格的九个点位,并在视野中铺上一张白纸,在白纸上拓出来九个点,这种方法也可以得到九对点位。

         最后,每次取放料前,拍下产品照片,计算其像素坐标,然后转换为机械手坐标,引导机械手完成取放料。


总结

          九点标定就是通过一组机械手坐标和对应的一组像素坐标来计算两个坐标系下坐标的转换关系,眼在手上的情况一般用于纠偏(需要得到一组相对于标准位的偏差值),眼在手外一般用于引导(需要得到一组坐标值)。需要注意的是:

1):眼在手上的结构,一般用于取放料的位置相对固定,有机械硬限位,此时这种手眼结构就是用来纠偏,弥补硬限位误差;在取放料位置随机的情形下,也可以采用这种眼在手上的结构,此时就不需要示教取放料坐标和做标准位,但是另需要校出相机和机械手的相对位置,才能计算出引导坐标,所以取放料位置随机的情况下一般不宜采用眼在手上的结构。

2):由上可知,眼在手外的结构,一帮用于取放料位置随机的情形,当然也适用于取放料位置相对固定的情形,此时这种结构的功能就是引导;当取放料位置相对固定时也可以示教取放料和做标准位,但一般不增加这两个步骤,因为眼在手外可以直接计算出引导坐标。

        所以实际应用中,根据相机视野大小能否一次拍全,和机械结构的设计,采用不同的手眼安装方式计算出坐标的转换关系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值