方案使用专题

专题一:从外向内抓取周转箱

当需要机器人固定朝向进行抓取周转箱时,可先识别周转箱垛心位姿,使用垛心位姿对每个周转箱的位姿进行对称性调整。本文将介绍如何在视觉识别流程中调整周转箱抓取点以满足实际使用需求。

适用场景

  • 周转箱来料时,标签朝外,且后道工序中需要进行标签识别。

  • 无法找到合适的周转箱抓取点,只能使用邻边抱夹式夹具从外向内抓取周转箱。

    topic 1 applicable scene 1

部署Mech-Vision工程

为了实现从外向内抓取周转箱,可改变抓取点某个轴的指向,使其远离垛心。

topic 1 applicable scene 2

为实现上述功能,可在典型工程中调整调整位姿步骤组合相关参数。以调整抓取点 X 轴指向为例,下文将介绍调整方法。

  1. 打开位姿调整工具

  2. 关闭位姿调整处的自定义模式,并设置方向调整指向/指离垛心(拆垛),设置应用场景指离

    topic 1 adjust pose 1
  3. 设置垛心处单击设置,然后在左侧可视化区内根据实际来料情况设置垛心,具体操作方法可参考调整垛心

    topic 1 adjust pose 2

上述操作完成后,即可使周转箱抓取点 X 轴指离垛心。如下图所示,左图为调整前的周转箱抓取点,X 轴指向相同;右图为调整后的周转箱抓取点,X 轴已指离垛心。

topic 1 adjust pose 3

专题二:识别多种规格周转箱

当来料周转箱的规格多样时,需借助深度学习辅助识别周转箱。本文将介绍如何利用深度学习来识别不同规格的周转箱。

适用场景

该专题适用于多种规格周转箱混合摆放的场景。

topic 2 applicable scene 1

同时该专题还适用于周转箱内物料与周转箱上边缘距离较近,导致无法有效提取周转箱上边缘特征点云的场景。

topic 2 applicable scene 2

部署Mech-Vision工程

流程概览

Mech-Vision工程总体流程如下图所示。在该工程中,使用深度学习+多模板匹配的方式对周转箱进行识别。

topic 2 overall

下文将对该流程中的重点步骤进行详细解释。

步骤详解

点云预处理并获取最高层周转箱
  • 功能说明:

    该步骤组合用于提取最高层周转箱点云,并仅保留该层周转箱所在的彩色图区域。

    处理流程如下图所示。

    topic 2 point cloud preprocess overall

    为什么只获取最高层周转箱所在的彩色图区域?

    通常在彩色图上,下层周转箱会被显示出来,这可能会导致最上层单个周转箱在整体图片中所占的像素比例过小,从而导致后续深度学习无法稳定分割出单个周转箱。

  • 需调整的参数:

    参数 参数解释 调节说明 调节效果

    3D ROI

    该参数用于设置 3D 感兴趣区域,感兴趣区域内的点云用于周转箱识别,感兴趣区域外的点云被舍弃。

    设置 3D ROI 时,需只包含周转箱点云,不能包含其他场景点云。如果每次来料位置存在波动,应适当扩大 3D ROI。

    topic 2 3d roi effect

    层高

    该参数用于设置最高层点云的层高范围,在层高范围内的点云将被保留。

    需将该参数设置为实际待识别周转箱的高度。

    topic 2 layer height effect

  • 内部重点步骤介绍:

    步骤 功能说明 参数调节说明 处理结果

    将深度图转换为点云

    该步骤可将相机获取的深度图转化为点云,转换后的点云中包含更加丰富和准确的几何信息,用于后续数据处理。

    无需进行参数调整。

    topic 2 from depth map to point cloud

    点云降采样

    该步骤可以一定的间隔对点云进行采样,降低点云密度,提高后续步骤的运行速度,提升视觉节拍。

    采样间隔越大,点云越稀疏,计算速度越快,但准确性可能会降低。

    topic 2 down sample

    点过滤

    该步骤可根据点云法向,去除侧面的点云,以便后续提取边缘点云并进行点云模板匹配。

    • 使用机器人 Z 轴:勾选该参数后,将使用机器人坐标系的 Z 轴正方向作为参考方向,计算点云法向与参考方向之间的角度差,并删除角度差超过限定值的点云。该功能适用于相机非垂直向下拍摄,并且需去除物体侧面点云的场景。

    • 最小角度差、最大角度差:该参数用于计算点云法向与参考方向之间的角度差,并删除角度差小于最小角度差或大于最大角度差的点。上表面点云计算得到的角度差应接近于 0°,而侧面点云计算得到的角度差应接近于 90°。

    点云聚类

    该步骤可根据点云距离对点云进行分组,相同颜色点云归属为同一组,其他杂点被滤除。

    • 输出类中相邻点最大距离:该参数用于根据点与点之间的距离对点云分类,当点云中的点间距小于该值时,归为同类点云;当点云中的点间距小于该值时,分为不同类点云,并以不同颜色区分。

    • 类的最小点数、类的最大点数:点云聚类后,当点云中的点数小于类的最小点数或大于类的最大点数时,将被过滤,符合数值区间的点云将被保留。

    topic 2 point cloud clustering

    获取最高层点云对应的彩色图

    因下层周转箱有可能被上层周转箱遮挡,存在周转箱误识别的可能,此处通过获取最高层点云,并根据周转箱的高度使顶层周转箱被优先识别。

    topic 2 calc color image for highest layer

通过深度学习分割出单个周转箱掩模
  • 功能说明:

    该步骤组合可使用深度学习准确区分周转箱之间的边界,辅助识别周转箱。

    处理流程如下图所示。

    topic 2 segment mask overall

    处理结果如下图所示。

    topic 2 segment mask effect
  • 内部重点步骤介绍:

    步骤 功能说明 参数调节说明 处理结果

    计算周转箱边框的掩膜(步骤组合)

    为了减少周转箱内物料的干扰,并防止误识别其他周转箱,需利用周转箱掩膜提取最外层轮廓,进行膨胀处理,再与深度学习分割出的掩膜进行交集运算,得到周转箱边框的掩膜。

    轮廓绘制数值:该参数用于控制掩膜轮廓膨胀的宽度,设置的轮廓宽度应当包含完整的周转箱边框,并删除无用的周转箱内点云,以提高数据有效性。

    topic 2 mask processing effect

3D匹配
  • 功能说明:

    该步骤组合可使用多个模板对场景点云中的周转箱点云进行匹配,输出准确的周转箱位姿。

    处理流程如下图所示。

    topic 2 3d matching overall
  • 需调整的参数:

    参数 参数解释 调节说明

    调节效果

    模板选择

    该参数用于选择制作好的点云模板。

  • 内部重点步骤介绍:

    步骤 功能说明 处理结果

    3D匹配与分类(多模板)

    该步骤可使用多个模板对场景点云中的周转箱点云进行匹配,输出准确的周转箱位姿。

    topic 2 matching multi model effect

    去除被压叠的物体

    由于场景中包含堆叠的周转箱点云,因此可能会误匹配到下一层周转箱,此时需进行去压叠操作,排除因叠压而不适合抓取的周转箱位姿。

    topic 2 remove step

    保存点云模板

    该步骤用于保存点云模板文件。工程运行时,面点云模板文件会保存在工程目录下,以便于现场快速制作点云模板。每次工程运行时均会保存,最终仅保留最后一次运行时的点云模板文件。

调整位姿并排序

  • 功能说明:

    该步骤组合可对周转箱位姿进行排序、调整和过滤。

    • 将相机坐标系下的位姿转换到机器人坐标系下。

    • 将物体的位姿方向按照 180° 对称性旋转至指定方向。

    • 根据设置的参考点方向对位姿进行 “Z”形平面排序。

    • 根据位姿是否在感兴趣区域(ROI)内以及 Z 轴指向是否朝上,过滤不合格的位姿。

    处理流程如下图所示。

    topic 2 adjust pose overall

    位姿调整结果如下图所示。

    topic 2 adjust pose effect

判断漏识别

  • 功能说明:

    该步骤组合可判断是否存在周转箱漏识别的情况,如果存在漏识别,则不允许输出周转箱位姿。

    处理流程如下图所示。

    topic 2 judgment missed identification overall
  • 处理流程:

    通过比较匹配得到的位姿数量和深度学习输出的掩膜数量,可判断是否存在周转箱漏识别的问题。

    如果不存在漏识别问题,则将经过最终处理的位姿传输给Mech-Viz;如果存在漏识别问题,则不输出周转箱位姿信息。

我们重视您的隐私

我们使用 cookie 为您在我们的网站上提供最佳体验。继续使用该网站即表示您同意使用 cookie。如果您拒绝,将使用一个单独的 cookie 来确保您在访问本网站时不会被跟踪或记住。