4,499
社区成员




检测需求,有3种混料,需要分别定位抓取,这个用SGVision非常简单。
一、检测思路
这个样品因为是圆形的没有角度,使用模板匹配进行定位(如果产品需要区分方形,可以把模板匹配换成形状匹配)。定位之后分别输出各自的坐标点。当然视觉引导定位需要先进行标定,建立相机坐标系和机器人坐标系的关系。在做引导定位之前需要先进行标定。
二、坐标系标定
在SGVision的【配置】页面中【检测】【坐标系标定】打开之后我们更新图像,画面就会显示我们准备的这张棋盘格图。
SGVision采用的是多点标定,每次检测相机位置不变,相机坐标系跟机器人坐标系的关系保持不变。可以批量增加,我这边选择添加3行3列9个点进行标定。
这边添加四个点的相机坐标和机器人坐标的对应关系后,使用【从端点获取图像坐标】和【从端点获取机器坐标】自动生成相对应的坐标点。确认无误之后确定保存。
下来我们测试一下,宿便选择一个点看看对应的机械坐标对不对。在图像中我点击红色点的位置生成坐标点,让后点【获取亚像素点】获取更精确的坐标。
测试(图像——机器)计算出相对应的机械坐标。我们看到有小数点,这个就是误差的问题了。
相对应的再测试(机器——图像)看看计算出的对应坐标是否正确。
在变换类型这里【尝试仿射变换】包括了平移旋转和反转,如果尝试变换失败的话,他会直接使用透射变换。【透射变换】这个是三维坐标系中的图像变化。【全仿射变化】是包括刚才的变化之外缩放剪切之类的仿射变换。
我们【读取变换点】,【获取对照】看看图中的绿色点就是图像的坐标点,红色的是机械的坐标点。通过这个就可以看出来偏差的大小。偏差大的点可以删除后重新添加。
一直到没有问题的话就可以确定保存了。这边就标定完成了。
三、算法设置
1、模板匹配
产品都是圆形的,没有角度,分别对3中样品使用模板匹配,选用圆形模板,最小相似度可以调整到4。
2、机械坐标转换
分别吧检测的到3个样品坐标转换为机械坐标
四、输出设置
1、添加变量
输出转换后的坐标。在【编辑全部算法】——【编辑变量】分别添加变量之后确定保存。
2、输出数据
在【通讯】——【输出数据】中添加需要输出的数据变量。算法设置完成。
设置完成输出的坐标点即为产品在机器人视野内的坐标。
图片挂了