方案使用专题

专题一:识别麻袋正反和朝向

在自动化麻袋抓取的场景中,为了麻袋放置时统一朝向,需识别每个麻袋的正反面和袋口朝向,以便机器人可根据识别结果来调整抓取位姿。

如下图所示,麻袋整垛来料时,各个麻袋袋口的朝向不一致,在将麻袋放置到流水线上时,需使袋口统一朝向同一方向。

本节将介绍如何在麻袋识别流程中识别麻袋正反和袋口朝向。

topic 1 applicable scene 1

适用场景

该专题适用于具有明显图案或文字特征的麻袋,以便深度学习识别麻袋朝向。

topic 1 applicable scene 2

该专题不适用于表面特征较少或特征对称的麻袋,深度学习难以准确判断麻袋朝向。

topic 1 applicable scene 3

部署Mech-Vision工程

流程概览

机器人抓取麻袋时,由于吸盘长边和麻袋长边是平行的,所以只需通过深度学习判断位姿是否需绕 Z 轴旋转 180°即可确保麻袋统一朝向放置。

为实现上述功能,可在典型工程的调整位姿步骤组合中增加以下三个步骤组合,用于“识别朝向”和“矫正位姿”。

  • 将单个的麻袋彩色图变换至 2D 图中心位置

  • 通过深度学习识别麻袋朝向

  • 根据标签矫正位姿方向

topic 1 vis overview

下文将对新增的步骤组合进行详细解释。

步骤详解

将单个的麻袋彩色图变换至 2D 图中心位置
  • 功能说明:

    由于麻袋掩膜提取结果多样,为了方便后续进行目标检测,需使用麻袋位姿将彩色图统一变换至整张图像的水平中心位置。

    如下图所示,图 1 为将竖直摆放的麻袋变换至 2D 图水平中心位置,图 2 为将倾斜摆放的麻袋变换至 2D 图水平中心位置。

    topic 1 transform image
  • 内部重点步骤介绍:

    步骤 功能说明 处理结果

    提取掩膜中对应的图像

    该步骤前接将3D点云投影为2D图像步骤后,可将每个麻袋的点云转化为掩膜,然后在原始彩色图上根据掩膜提取单个的麻袋彩色图像。

    topic 1 apply masks to image

    获取基于工件位姿的四个顶点(步骤组合)

    在物体坐标系下,该步骤可根据输入的麻袋位姿生成边长为 20 mm 的矩形顶点位姿,这四个顶点位姿在转换为 2D 位姿后,可为透视变换处理提供足够的自由度,来确定麻袋彩色图像的起始位置和方向。

    -

    设置基准位姿(步骤组合)

    该步骤可将麻袋位姿的 X、Y 值设置为 0,同时将四元数设置为单位四元数,得到在当前高度下的相机中心位姿。

    -

    获取基于基准位姿的四个顶点(步骤组合)

    使用新的位姿在物体坐标系下生成边长为 20 mm 的矩形顶点位姿,这四个顶点位姿在转换为 2D 位姿后,为透视变换处理提供足够的自由度,来确定麻袋彩色图像的目标位置和方向。

    -

    透视变换

    根据输入的透视变换前的点和透视变换后的点获得变换矩阵,然后利用此变换矩阵,将输入的彩色图变换至目标位置,即变换到 2D 图水平中心位置。

    -

识别麻袋朝向
  • 功能说明:

    该步骤组合可根据透视变换后的麻袋彩色图进行目标检测,然后判断麻袋朝向。

  • 内部重点步骤介绍:

    步骤 功能说明 处理结果

    缩放2D ROI内的图像

    该步骤可对麻袋彩色图像进行缩放(缩放比例=1024/麻袋彩色图像的最小外接矩形长度),以便提高图像分辨率,减少尺寸干扰,从而提高目标检测的稳定性。

    topic 1 scale image in 2d roi

    深度学习模型包推理

    该步骤可使用目标检测对单个麻袋彩色图进行麻袋朝向判断。

    topic 1 deep learning model package inference

根据标签矫正位姿方向
  • 功能说明:

    该步骤组合可根据麻袋朝向标签来矫正麻袋位姿方向,一般分为以下三种情况:

    • 标签为 0:麻袋正面朝上且袋口朝左,需将位姿绕 Z 轴旋转 180°。

    • 标签为 1:麻袋正面朝上且袋口朝右,无需旋转位姿。

    • 标签为 2:麻袋反面朝上,无法识别袋口朝向,无需旋转位姿,或可根据实际需求作报警处理。

    topic 1 correct pose direction

专题二:拆垛完成后识别并抓取托盘

在自动化麻袋抓取的场景中,拆垛完成后需要识别并抓取托盘。本节将介绍如何进行托盘的识别和抓取。

适用场景

该专题适用于识别并抓取平面托盘,如下图所示。

topic 2 applicable scene 1

该专题不适用于识别并抓取非平面托盘,如下图所示。

topic 2 applicable scene 2

部署Mech-Vision工程

流程概览

Mech-Vision工程总体流程如下图所示。在该工程中,主要依靠点云预处理计算托盘位姿调整位姿步骤组合进行托盘识别。

topic 2 vis overview

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

步骤详解

点云预处理
  • 功能说明:

    该步骤组合可根据相机采集的深度图生成点云,然后通过设置感兴趣区域、获取最高层点云等方式,去除其他场景点云,只输出托盘点云,以便后续准确计算托盘位姿。

    如下图所示,左图为预处理前的点云,包含场景点云和托盘点云;右图为预处理后的点云,只包含托盘点云。

    topic 2 point cloud preprocessing
计算托盘位姿
  • 功能说明:

    该步骤组合可计算托盘位姿,并根据托盘尺寸进行位姿防错。

  • 内部重点步骤介绍:

    步骤 功能说明 处理结果

    计算平面点云的位姿和尺寸

    该步骤用于计算托盘位姿。

    -

    翻转位姿的坐标轴方向

    由于计算平面点云的位姿和尺寸步骤输出的位姿 Z 轴可能向下,所以需使用该步骤翻转位姿的坐标轴方向来确保 Z 轴向上。

    topic 2 calc poses and dimensions

    验证箱子尺寸是否有效

    根据读取物体尺寸步骤输出的托盘尺寸,该步骤可判断当前输出的托盘尺寸是否符合要求。当尺寸不符合要求时,不输出托盘位姿。

    -

计算托盘位姿
  • 功能说明:

    该步骤组合可对托盘位姿进行调整和防错。

  • 内部重点步骤介绍:

    步骤 功能说明 处理结果

    调整位姿V2

    该步骤可对托盘位姿进行方向调整和防错。

    • 方向调整:统一托盘位姿方向,避免机器人抓取托盘时有过多的旋转。

    • 位姿防错:确保托盘位姿 Z 轴角度在合理范围内,且在 3D ROI 内。

    topic 2 adjust pose v2

    防错-判断托盘上有无工件

    该步骤组合可提取托盘上方场景点云,通过比较点云点数和阈值的大小关系来进行防错。

    • 如果点云点数低于阈值,认为托盘上方无麻袋,输出托盘位姿。

    • 如果点云点数高于阈值,认为托盘上方有麻袋,不输出托盘位姿。

    topic 2 determine whether there is

专题三:使用双夹爪桁架机器人进行麻袋拆垛

在双夹爪桁架机器人抓取麻袋的场景中,为实现一次抓取多个麻袋,需识别全部麻袋并按照规则对位姿进行排序,以便两个夹爪可同时抓取麻袋。本文将介绍双夹爪桁架机器人如何进行麻袋拆垛。

topic 3 applicable scene 2

适用场景

该专题适用于来料规整,且只有两种垛型的麻袋。桁架机器人拆垛时,每个夹爪可绕 Z 轴旋转。

topic 3 applicable scene 1
topic 3 applicable scene 3

在满垛情况下,桁架机器人获取到一层麻袋的位姿和标签后,,将根据标签顺序先用双夹爪抓取标签 1 和标签 2 对应的麻袋,再用双夹爪抓标签 3 和标签 4 对应的麻袋,最后用单夹爪抓取标签 5 对应的麻袋。

部署Mech-Vision工程

流程概览

双夹爪桁架机器人进行麻袋拆垛时,需识别全部麻袋并按照规则对位姿进行排序,本专题在典型工程的基础上,修改了调整位姿步骤组合,删除了二维排序提取麻袋上表面点云重新计算调整麻袋位姿至上表面点云中心步骤组合,增加了以下三个步骤组合:

  • 移动位姿至麻袋短边中心

  • 判断位置标签并对位姿排序

  • 防错—判断是否有漏识别

topic 3 vis overview

下文将对新增的步骤组合进行详细解释。

步骤详解

移动位姿至麻袋短边中心
  • 功能说明:

    该步骤组合可将麻袋的位姿移动至远离垛心的短边中心,用于后续准确判断位姿标签,并减少麻袋位置波动所产生的影响。

    topic 3 move pose
  • 内部重点步骤介绍:

    步骤 功能说明

    使位姿的轴旋转至指定方向

    该步骤可矫正位姿的 Z 轴,使 Z 轴竖直朝上。

    计算平面点云的位姿和尺寸

    该步骤可根据整垛的麻袋点云计算垛心位姿。

    使位姿的轴指向参考点

    该步骤可将麻袋中心位姿的 X 轴按 180° 对称性旋转至垛心方向。

    围绕指定轴旋转位姿

    该步骤可将位姿绕 Z 轴旋转 180°,使位姿的 X 轴指离垛心。

    沿指定方向移动位姿

    该步骤可将位姿从麻袋中心移动至麻袋短边中心。

判断位置标签并对位姿排序
  • 功能说明:

    该步骤组合可基于两种垛型设置五个 3D ROI,判断位姿是否在 3D ROI 内,并根据判断结果给 ROI 内的有效位姿添加相应的位姿标签。然后将位姿从麻袋短边中心移回至麻袋中心,并根据索引对位姿和位姿标签重新排序。

  • 内部重点步骤介绍:

    步骤 功能说明 处理结果

    判断位姿是否在3D ROI内

    该步骤可根据来料垛型设置五个 3D ROI,判断位姿是否在对应的 3D ROI 内,并根据结果给 ROI 内的有效位姿添加位姿标签。

    topic 3 validate lable

    沿指定方向移动位姿

    该步骤可将位姿从麻袋短边中心移回至麻袋中心。

    -

    使位姿的轴指向参考点

    该步骤可将麻袋中心位姿的 X 轴按 180° 对称性旋转指向机器人原点。

    -

    按照索引对元素重排序

    该步骤可按照索引列表对麻袋位姿和位姿标签重新排序。

    -

防错-判断是否有漏识别
  • 功能说明:

    该步骤组合可根据麻袋位姿提取对应麻袋上方的点云,并判断点云点数是否超过阈值。如果某个位姿对应的点云点数超过阈值,则说明存在漏识别,需剔除所有位姿。

我们重视您的隐私

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