方案使用专题
专题一:从外向内抓取周转箱
当需要机器人固定朝向进行抓取周转箱时,可先识别周转箱垛心位姿,使用垛心位姿对每个周转箱的位姿进行对称性调整。本文将介绍如何在视觉识别流程中调整周转箱抓取点以满足实际使用需求。
部署Mech-Vision工程
为了实现从外向内抓取周转箱,可改变抓取点某个轴的指向,使其远离垛心。
为实现上述功能,可在典型工程中调整调整位姿步骤组合相关参数。以调整抓取点 X 轴指向为例,下文将介绍调整方法。
-
打开位姿调整工具。
-
关闭位姿调整处的自定义模式,并设置方向调整为指向/指离垛心(拆垛),设置应用场景为指离。
-
在设置垛心处单击设置,然后在左侧可视化区内根据实际来料情况设置垛心,具体操作方法可参考调整垛心。
上述操作完成后,即可使周转箱抓取点 X 轴指离垛心。如下图所示,左图为调整前的周转箱抓取点,X 轴指向相同;右图为调整后的周转箱抓取点,X 轴已指离垛心。
专题二:识别多种规格周转箱
当来料周转箱的规格多样时,需借助深度学习辅助识别周转箱。本文将介绍如何利用深度学习来识别不同规格的周转箱。
部署Mech-Vision工程
步骤详解
点云预处理并获取最高层周转箱
-
功能说明:
该步骤组合用于提取最高层周转箱点云,并仅保留该层周转箱所在的彩色图区域。
处理流程如下图所示。
为什么只获取最高层周转箱所在的彩色图区域?
通常在彩色图上,下层周转箱会被显示出来,这可能会导致最上层单个周转箱在整体图片中所占的像素比例过小,从而导致后续深度学习无法稳定分割出单个周转箱。
-
需调整的参数:
参数 参数解释 调节说明 调节效果 3D ROI
该参数用于设置 3D 感兴趣区域,感兴趣区域内的点云用于周转箱识别,感兴趣区域外的点云被舍弃。
设置 3D ROI 时,需只包含周转箱点云,不能包含其他场景点云。如果每次来料位置存在波动,应适当扩大 3D ROI。
层高
该参数用于设置最高层点云的层高范围,在层高范围内的点云将被保留。
需将该参数设置为实际待识别周转箱的高度。
-
内部重点步骤介绍:
步骤 功能说明 参数调节说明 处理结果 将深度图转换为点云
该步骤可将相机获取的深度图转化为点云,转换后的点云中包含更加丰富和准确的几何信息,用于后续数据处理。
无需进行参数调整。
点云降采样
该步骤可以一定的间隔对点云进行采样,降低点云密度,提高后续步骤的运行速度,提升视觉节拍。
采样间隔越大,点云越稀疏,计算速度越快,但准确性可能会降低。
点过滤
该步骤可根据点云法向,去除侧面的点云,以便后续提取边缘点云并进行点云模板匹配。
-
使用机器人 Z 轴:勾选该参数后,将使用机器人坐标系的 Z 轴正方向作为参考方向,计算点云法向与参考方向之间的角度差,并删除角度差超过限定值的点云。该功能适用于相机非垂直向下拍摄,并且需去除物体侧面点云的场景。
-
最小角度差、最大角度差:该参数用于计算点云法向与参考方向之间的角度差,并删除角度差小于最小角度差或大于最大角度差的点。上表面点云计算得到的角度差应接近于 0°,而侧面点云计算得到的角度差应接近于 90°。
点云聚类
该步骤可根据点云距离对点云进行分组,相同颜色点云归属为同一组,其他杂点被滤除。
-
输出类中相邻点最大距离:该参数用于根据点与点之间的距离对点云分类,当点云中的点间距小于该值时,归为同类点云;当点云中的点间距小于该值时,分为不同类点云,并以不同颜色区分。
-
类的最小点数、类的最大点数:点云聚类后,当点云中的点数小于类的最小点数或大于类的最大点数时,将被过滤,符合数值区间的点云将被保留。
获取最高层点云对应的彩色图
因下层周转箱有可能被上层周转箱遮挡,存在周转箱误识别的可能,此处通过获取最高层点云,并根据周转箱的高度使顶层周转箱被优先识别。
-
通过深度学习分割出单个周转箱掩模
-
功能说明:
该步骤组合可使用深度学习准确区分周转箱之间的边界,辅助识别周转箱。
处理流程如下图所示。
处理结果如下图所示。
-
内部重点步骤介绍:
步骤 功能说明 参数调节说明 处理结果 计算周转箱边框的掩膜(步骤组合)
为了减少周转箱内物料的干扰,并防止误识别其他周转箱,需利用周转箱掩膜提取最外层轮廓,进行膨胀处理,再与深度学习分割出的掩膜进行交集运算,得到周转箱边框的掩膜。
轮廓绘制数值:该参数用于控制掩膜轮廓膨胀的宽度,设置的轮廓宽度应当包含完整的周转箱边框,并删除无用的周转箱内点云,以提高数据有效性。
3D匹配
-
功能说明:
该步骤组合可使用多个模板对场景点云中的周转箱点云进行匹配,输出准确的周转箱位姿。
处理流程如下图所示。
-
需调整的参数:
参数 参数解释 调节说明 调节效果
模板选择
该参数用于选择制作好的点云模板。
-
内部重点步骤介绍:
步骤 功能说明 处理结果 3D匹配与分类(多模板)
该步骤可使用多个模板对场景点云中的周转箱点云进行匹配,输出准确的周转箱位姿。
去除被压叠的物体
由于场景中包含堆叠的周转箱点云,因此可能会误匹配到下一层周转箱,此时需进行去压叠操作,排除因叠压而不适合抓取的周转箱位姿。
保存点云模板
该步骤用于保存点云模板文件。工程运行时,面点云模板文件会保存在工程目录下,以便于现场快速制作点云模板。每次工程运行时均会保存,最终仅保留最后一次运行时的点云模板文件。