3D平铺抓取
该场景适用于工作空间内同种物体平铺有序摆放,且拥有物体 STL 模型的情况。目前广泛应用于汽车零件、机加工件等多种场景,场景要求如下。
相机为结构光相机
已知工件的三维模型
本章节描述的相关配置仅供参考,具体操作请以实际项目为准。
基本配置
配置前,请依次完成 新建项目、 添加工作空间,并使用 3D平铺抓取 模板创建视觉服务,请参见 创建流图。创建完成之后会在左上角生成节点树,如下图所示。
根据需求,依次配置这四个模块。
步骤1. 配置相机模块 (请参见 连接相机。)
步骤2. 配置加载标定信息模块 (请参见 手眼标定。)
提示
对3D相机进行标定时,推荐进行点云标定。
步骤3. 配置去除料筐外点云模块
单击左侧节点树中的 去除料筐外点云 模块,然后在右侧配置点云切割参数。
![]()
X方向收缩长度:料筐沿X方向的收缩长度,负值则意味着扩张。
Y方向收缩长度:料筐沿Y方向的收缩长度,负值则意味着扩张。
底部抬升高度:料筐底部抬升高度,负值则意味着下降。
顶部下降高度:料筐顶部下降高度,负值则意味着抬升。
单击 触发 拍照后可获取点云。需要注意的是,这里设置的参数使得工作空间中完整包含工件点云即可,点云不是越多越好,点的数量过多会影响计算速度。
在预览视图中移动料框模型,使之与点云中的料筐位置吻合。
在 可视化显示 区域选择需要查看的图像。
未切割点云图:仅显示未去除料筐外点云的图像。
![]()
切割对比图:对比显示切割前后的图像,被切割的点云用白色显示。
![]()
切割完点云图:仅显示去除料筐外点云的图像。
![]()
步骤4. 配置3D模板匹配模块
单击 创建模板,在弹出窗口单击 选择模板,选择模板文件,并输入模板名称。工件类型必须和注册抓取时使用的工件名称一致。
![]()
提示
在右下角 属性 页签下,将 是否使用已创建的模板 设置为true,再次打开Max时会自动读取已创建的模板,不必重新创建。
根据需要设置模板参数,单击 确认,完成参数设置。
提示
根据需要选择 特征类型,如果模型表面有棱有角或者整体较扁平,建议尝试edge-I/edge-II模式。限制物体朝向 建议使用no_limit。
根据需要设置检测参数。模板匹配时,小于 最小分数 的结果将被过滤。
设置不同检测阶段的参数,系统会根据物体模型在点云中寻找匹配结果,单击 执行检测,然后在左侧查看检测结果。如下图所示,检测出的工件上有分数显示则表明检测成功。
流图详解
视觉流图的配置是Max中的高级用法,对于一般用户而言,配置完节点树中的模块即可运行整个视觉流程,无需再配置视觉流图。视觉流图中包含了节点树中没有的模块,可以配置一些高级参数,如有需要可以按照以下内容操作。
单击“视图 > 节点视图”可查看创建成功的视觉流图,3D平铺抓取 场景的流图如下。
3D平铺抓取场景的流图可大致分成四个功能组:图像获取、图像预处理、图像计算处理和图像输出,各模块的配置及使用流程如下。
获取待处理图像。
相机 模块完成内参标定,并获取彩色图。
加载标定信息 模块完成相机和工作空间的标定。
对图像进行预处理。
使用 变换点云坐标系 和 去除料筐外点云 模块,将点云从相机坐标系转换到工作空间坐标系,并去除料筐以外的点云。
基于上一步得到的料筐内点云,配置 变换点云坐标系 模块,将点云从工作空间坐标系转换到相机坐标系。
对图像进行计算处理,结合步骤1.b得到的彩色图和步骤2.b得到的点云,配置 3D模板匹配 模块,根据物体模型在点云中寻找匹配结果。
针对步骤3的计算结果,输出或保存图像。
配置 变换工件位姿3D 模块,将物体位姿从相机坐标系转换到世界坐标系。然后配置 输出结果 模块,查看3D物体位姿。
也可使用 保存图像 模块保存结果,或使用 可视化图像 模块查看可视化彩色图。
重复上述步骤,完成其它料筐的视觉流图的设置。