方案使用专题

专题一:不使用深度学习方法定位轴棒

在实际项目中,若不考虑使用深度学习方法,可使用点云预处理+3D 匹配的方法来识别轴棒。

  • 点云预处理:通过点云预处理分割出单个轴棒点云。

  • 3D 匹配:使用“3D匹配”方法定位轴棒。

适用场景

该专题适用于轴棒表面不反光、轴棒点云完整无变形,且无同轴轴棒紧密贴合的场景。

如下图所示,左图为不反光的轴棒,右图为点云完整无变形的轴棒。

topic 1 applicable scene

部署Mech-Vision工程

流程概览

确定思路后,即可开始部署Mech-Vision工程,总体流程如下图所示。

topic 1 overall

本工程与典型工程的主要区别是:

  • 本工程不使用深度学习方法识别轴棒,删除了典型工程中的通过深度学习分割出单个轴棒掩模使用深度学习提高定位精度步骤组合。

  • 本工程在典型工程的料筐识别步骤组合基础上,增加处理轴棒点云的步骤,实现了分割出单个轴棒点云的功能。

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

步骤详解

料筐识别并处理工件点云
  • 功能说明:

    • 识别料筐,然后输出料筐中心位姿。

    • 处理并提取轴棒点云,然后使用点云聚类的方式,分割出单个轴棒点云。

  • 内部重点步骤介绍:

    序号 参数 功能说明 效果图示

    1

    料筐识别

    输出料筐中心位姿。

    output bin pose

    2

    处理工件点云

    提取轴棒点云。使用提取长方体内点云步骤,根据料筐中心位姿和料筐尺寸信息,提取轴棒点云,去除料筐点云和其他场景点云。

    extract shafts point cloud

    分割点云。使用点云聚类步骤,分割出单个轴棒点云。

    segment single shaft point cloud

根据工件点云尺寸和点云数量进行防错
  • 功能说明:

    根据轴棒点云尺寸和轴棒数量对轴棒位姿进行防错。

  • 内部重点步骤介绍:

    序号 参数 功能说明

    1

    根据工件点云尺寸进行防错

    使用根据点云尺寸进行分类步骤,判断轴棒点云尺寸是否符合要求,只输出符合要求的点云。

    2

    根据工件点云数量进行防错

    使用滤除点数超限的点云步骤组合,去除点数不符合要求的轴棒点云。

使用 3D 匹配定位工件
  • 功能说明:

    使用“3D匹配”方法对轴棒进行定位。

  • 内部重点步骤介绍:

    序号 参数 功能说明 效果图示

    1

    3D精匹配

    输出轴棒的精确位姿。需注意置信阈值不需要固定为 0,可根据实际需求调整。

    3d fine matching

    2

    调整位姿使指定轴与参考方向夹角最小

    确保 X 轴固定,将位姿 Z 轴尽量指向正上方,用于保证后续去压叠效果正常。

    z axis point upward

    3

    去除被压叠的物体

    去除下层被压叠的轴棒。

    remove overlapped objects

专题二:使用双相机定位轴棒

在实际项目中,还可将两个相机垂直安装(如下图所示),使两个相机的视野覆盖整个料筐,从而实现轴棒识别和定位。

two cameras mounted vertically

适用场景

该专题适用于轴棒来料方向不唯一,主要存在以下两种情况:

  • 轴棒长边方向和相机长边方向平行。

  • 轴棒长边方向和相机长边方向垂直。

topic 2 applicable scene

部署Mech-Vision工程

流程概览

确定思路后,即可开始部署Mech-Vision工程,总体流程如下图所示。

topic 2 overall

本工程的重点思路为:

  • 将双相机采集到的轴棒点云进行合并,然后进行 3D 匹配,初步确定轴棒位姿,识别轴棒朝向。

    idea 1
  • 根据轴棒朝向的不同,分别使用主相机和副相机各自比较工件点云,然后进行 3D 匹配。

    如下图所示,左图为主相机采集到的点云的 3D 匹配效果,右图为副相机采集到的点云的 3D 匹配效果。

    idea 2
  • 将主相机和副相机识别到的轴棒位姿合并并输出。

    idea 3

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

步骤详解

点云预处理
  • 功能说明:

    合并主、副相机采集到的轴棒点云,然后对合并后的点云进行去除噪点等操作。

  • 内部重点步骤介绍:

    序号 参数 功能说明 效果图示

    1

    合并主副相机点云

    将主相机、副相机采集到的轴棒点云进行合并。

    merge point clouds from two cameras

使用合并后的点云进行 3D 匹配
  • 功能说明:

    提取深度学习掩膜对应的轴棒点云,然后使用合并后的点云进行 3D 匹配。

  • 内部重点步骤介绍:

    序号 参数 功能说明 效果图示

    1

    提取深度学习掩膜对应的工件点云

    根据深度学习掩膜,将合并后的轴棒点云分割成单个的轴棒点云。

    segment single shaft point cloud from two cameras

    2

    使用合并后的工件点云进行 3D 匹配

    使用3D 匹配的方式定位轴棒,同时对两种朝向的轴棒进行点云模板匹配。

    3d matching using merged artifact point clouds

使用主/副相机点云进行 3D 匹配
  • 功能说明:

    • 提取深度学习掩膜对应的主相机或副相机点云。

    • 使用主相机或副相机采集到的轴棒点云进行3D精匹配。

  • 内部重点步骤介绍:

    序号 参数 功能说明 效果图示

    1

    使用主相机点云进行3D匹配

    提取深度学习掩膜对应的主相机采集到的轴棒点云。如图所示,左侧点云较完整,右侧点云有明显缺失。

    extract main camera point cloud

    使用主相机采集到的轴棒点云进行3D精匹配。因为左侧点云较好,右侧点云较差,只使用较完整的左侧工件点云进行3D匹配。

    3d fine matching using main camera point cloud

    2

    使用副相机点云进行3D匹配

    提取深度学习掩膜对应的副相机采集到的轴棒点云。如图所示,右侧点云较完整,左侧点云有明显缺失。

    extract vice camera point cloud

    使用副相机采集到的轴棒点云进行3D精匹配。因为右侧点云较好,左侧点云较差,只使用较完整的右侧工件点云进行3D匹配。

    3d fine matching using vice camera point cloud

合并数据并去除被压叠的物体
  • 功能说明:

    将主相机下识别的位姿和副相机下识别的位姿进行合并,然后对合并的位姿和物体点云进行去除压叠操作。下图为去除压叠后,输出的轴棒位姿。

    remove overlapped objects according to merging

我们重视您的隐私

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