工件识别

在使用本教程前,你已经在机器人通信配置章节中使用案例工程通用工件识别创建了Mech-Vision方案。

在本教程中,你将先了解工程思路,然后通过调节步骤参数完成工程的部署,从而识别工件的位姿并输出视觉结果。

在本教程,每次运行Mech-Vision工程将输出一个视觉点。

工程思路介绍

工程中各步骤的作用如下表所示。

序号 阶段 步骤 图示 说明

1

采集图像

从相机获取图像

project build understand step function 1

连接相机并采集图像

2

识别工件

3D工件识别

project build understand step function 2

通过3D匹配算法计算工件的位姿(作为抓取点)

3

调整位姿

调整位姿

project build understand step function 3

将抓取点从相机坐标系变换至机器人坐标系

4

输出视觉结果

输出

project build understand step function 4

输出工件的位姿,用于机器人抓取

5

发送场景点云

发送点云到外部服务

project build understand step function 5

将场景点云发送给Mech-Viz,配合Mech-Viz实现工件抓放

抓取点指机器人可以在工件表面进行抓取的点。

步骤参数调节

在本节,你将通过调节各个步骤的参数来完成工程的部署。

从相机获取图像

你需要调节从相机获取图像步骤参数,连接相机。

  1. 选中从相机获取图像步骤,在界面右下角步骤参数处单击选择相机按钮。

    project build click select camera
  2. 在弹出的窗口中单击某相机编号右侧的 image 图标,即可连接至该相机。相机连接成功后, image 图标将变为 image 图标。

    image

    连接相机后,需选择参数组。单击选择参数组按钮,选择标定好的、带有ETH/EIH和日期的参数组。

    image
  3. 连接相机并设置参数组后,相机标定参数组、IP地址和端口等参数将自动获取,其余参数保持默认即可。

    image

此时已成功连接相机。

3D工件识别

3D工件识别步骤内置3D工件识别可视化配置工具,可对工件进行点云预处理、模板匹配,并计算工件的位姿(抓取点)。

选中3D工件识别步骤,在界面右下角步骤参数处单击打开编辑器按钮。

project build open 3d workpiece recognition visual configuration tool

3D工件识别可视化配置工具界面如下图所示。

project build check tool interface

接下来可按照如下操作流程识别工件。

project build 3d workpiece recognition workflow

选择工件

进入3D工件识别可视化配置工具后,需要制作待识别工件的点云模板。

  1. 打开模板编辑器。

    单击3D工件识别可视化配置工具界面右上角的选择工件按钮。

    project build click select workpiece

    在弹出的工件库窗口中单击模板编辑器按钮。

    project build click model editor

    模板编辑器界面如下图所示。

    project build model editor interface
  2. 通过采集点云生成点云模板。

    1. 采集物体深度图。

      单击界面中的采集点云按钮,在弹出的窗口中单击采集点云按钮。

      project build generate point cloud model 1

      由于链轨节工件表面特征较多,所以推荐制作该工件的面点云模板,即取消勾选使用边缘点云选项。然后单击采集物体按钮,采集目标物体的深度图。

      project build generate point cloud model 2

      采集完成后,目标物体和背景的深度图如下图所示。

      project build generate point cloud model 3
    2. 采集背景。

      在界面右上角单击去除背景按钮。

      project build generate point cloud model 4

      然后将物体移出相机视野,再单击采集背景按钮来采集背景。

      project build generate point cloud model 5

      采集背景完成后,如下图所示。然后单击右上角的下一步按钮。

      project build generate point cloud model 7
    3. 去除背景。

      在该窗口中单击去除背景按钮,即可得到去除背景后的物体,再单击右上角的完成按钮,即可将去除背景后的物体导入匹配模板与抓取点编辑器。

      project build generate point cloud model 8
  3. 编辑点云模板。

    生成的点云模板,可能不符合实际使用需求,需要对其进行一些编辑,包括移除杂点和点云降采样。

    1. 移除杂点。

      单击 project build edit point cloud model select icon 图标后,框选需要移除的杂点,然后单击 project build edit point cloud model delete icon 图标,即可移除所选点。

      如下图所示,框选的点为杂点,可通过上述方法进行移除。

      project build edit point cloud model delete point
    2. 点云降采样。

      点云降采样的目的是减少模板点云中点的数量,提高模板匹配效率。

      单击 project build edit point cloud model down sample icon 图标,在弹出的窗口中设置采样间隔。

      project build edit point cloud model down sample

      以3mm为例,降采样前后的点云模板如下图所示。

      project build edit point cloud model down sample result
  4. 添加抓取点。

    单击工具栏中 project build add pose icon 图标,为工件点云模板添加位姿作为抓取点。

    project build click add pose

    添加完成的抓取点如下图所示。

    project build check pose
  5. 保存模板与抓取点。

    关闭模板编辑器,在弹出的窗口中单击是(Y)按钮。

    project build save model and pose
  6. 在工件库中选择工件。

    退出模板编辑器后,在工件库中勾选保存的工件点云模板,单击确定按钮。

    project build select workpiece

    随后,在3D工件识别可视化配置工具右上角将显示等待识别的目标工件。

    project build workpiece select result

此时即完成了工件的选择,单击3D工件识别可视化配置工具底部的下一步按钮进入预处理流程。

project build click next step 1

预处理

预处理的目的是通过设置识别区来去除不必要的点云,仅保留工件点云,提升工程运行效率。

预处理界面如下图所示。

project build preprocess interface
  1. 设置识别区。

    单击设置按钮。

    project build click set 3d roi

    在设置识别区界面中设置3D识别区。按住Ctrl键,然后鼠标左键长按3D ROI选框顶点,拖动3D选框至合适的大小即可。3D识别区设置完成后如下图所示。

    project build set 3d roi
  2. 保存识别区。

    单击保存并使用按钮,保存识别区。

    project build click save and use

此时即完成了预处理流程,单击3D工件识别可视化配置工具底部的下一步按钮,进入识别工件流程。

project build click next step 2

识别工件

在本流程中,可以通过可视化方式调整3D匹配相关参数,输出工件的位姿。

识别工件界面如下图所示。

project build recognize workpiece interface
  1. 由于机器人需要根据返回的视觉结果完成一个工件的抓取和放置,所以在本工程中,需将输出个数上限修改为1。

    project build set output number
  2. 查看可视化输出结果

    单击运行步骤(Shift+R)按钮。

    project build click run step

    即可在可视化区域中查看可视化输出结果。如下图所示,输出了1个工件的位姿。

    project build check recognize workpiece result
  3. 保存配置。

    单击3D工件识别可视化配置工具底部的完成按钮。

    project build click finish

    然后在弹出的窗口中单击保存按钮。

    project build click save

    此时已完成了工件的识别,并计算出了抓取点。

调整位姿V2

3D工件识别步骤输出的抓取点位于相机坐标系下,为了方便机器人抓取,还需调整工件位姿,将位姿从相机坐标系变换到机器人坐标系。

  1. 打开位姿调整工具。

    选中调整位姿V2步骤,在步骤参数处单击打开编辑器按钮。

    project build click open pose editor

    位姿调整工具界面如下图所示。

    project build pose editor interface
  2. 调整坐标系变换类型。

    在位姿调整工具右上角处,在坐标系设置下方勾选将位姿转换至机器人坐标系选项。

    project build set transform type
  3. 查看坐标系变换效果。

    单击位姿调整工具右下角的下一步按钮。

    可在位姿调整工具中心区域的场景视角中看到变换后的抓取点。

    project build transform pose
  4. 保存配置。

    关闭位姿调整工具,在弹出的窗口中单击保存按钮。

    project build save pose editor set

此时即完成了抓取点的坐标系变换。

输出

输出步骤可将当前工程的结果发送给后台服务。

发送点云到外部服务

发送点云到外部服务步骤可将点云发送给Mech-Viz,可用于工程调试或查看工程实际效果。

至此,你已完成了Mech-Vision工程的部署。

我们重视您的隐私

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