悉灵杯”课题研究进展(二)-基于三维模型/场景点云的虚拟仿真数据生成
基于深度学习方法的工件实例分割方法依赖于大量的训练数据,但现实场景下的训练数据制作过程面临以下两个问题:(1)场景单一:同样的工件场景在不同的光照、背景、相机设置下存在差异,单一场景的数据训练的模型在其他场景中可能会出现性能的下降。(2)标注成本高:工件的实例分割场景常常有着一定数量的工件,需要逐一标注分割目标的掩膜,每一帧图像的标注都是非常耗时的。因此本课题中我们设计了一种通用工件场景虚拟仿真数据生成管道,结合blender物理仿真引擎和工件的三维模型(或者从单帧场景点云中重建的工件模型)生成虚拟RGBD数据和数据标签用于模型的训练。

1.环境介绍

Linux 16.04.7 LTS :                 代码开发平台

Visual Studio Code 1.78.2:         IDE代码撰写调试工具

Meshlab v2022.02:                     工件模型编辑工具,用于模型的重建和后处理

Blender   3.3.1                            物理仿真和渲染引擎

BlenderProc 2.5.0                        基于blender的python接口开发的仿真渲染工具箱,用于与blender实现指令交互

2.场景介绍

    虚拟数据的生成依赖于工件的三维模型,其获取方式一般有以下两种方法:

    1.手工建模:使用3D建模软件(SolidWorks、blender、3dsMax等)手工创建目标物体的网格模型。

    2.三维扫描:利用三维扫描设备(RGBD相机、激光扫描仪、结构光扫描仪)对目标物体进行扫描,获取其表面点云数据。然后,通过点云数据处理算法,如点云配准、表面重建等,生成目标物体的网格模型。

    同时工件的摆放类型也主要分为杂乱堆叠摆放和阵列有序摆放,本课题选取的三个场景类别详情如表1所示:

表1 实验场景详情

场景名称

模型类型

场景类型

连杆场景

完整模型

杂乱堆叠

薄片场景

手工重建单面点云

杂乱堆叠

转子场景

手工重建单面点云

阵列

    本课题研究过程中将根据实际的场景类型生成对应的虚拟数据。

3. 虚拟仿真数据生成管道

3.1工件模型生成

    对于连杆场景,我们已有手工制作的CAD模型,因此可以直接使用。而薄片场景和转子场景我们需要基于单帧点云进行重建,以薄片为例,在Meshlab中的制作流程如图1所示:


图1 从场景点云重建工件表面模型

      主要步骤包括:

        (1)使用裁剪工具从场景中采取一个完整的工件点云。

        (2)拟合点云法相,用于表面重建。

        (3)使用Ball Pivoting算法对点云进行表面重建

        (4)通过Laplacian平滑对工件表面进行平滑处理得到重建的工件模型

      最终我们得到的三种模型示例(图2):


图2 工件网格模型示例

3.2 虚拟数据生成

    得到工件模型后,我们就可以结合使用BlenderProc实现场景的渲染,其流程如图3:


图3 虚拟数据渲染流程

    (1) 为工件模型添加随机的金属材质,用于泛化现实场景图像和虚拟图像的工件表面差异。


    (2) 如果是有序摆放的阵列场景,我们按照其阵列布局的一般规律(例如n行m列)进行摆放并固定其位姿,如果是杂乱堆叠场景我们会初始化其位姿为一定空间范围并通过物理仿真引擎施加重力加速度模拟随机调用后的摆放位姿。

    (3) 初始化相机、灯光、背景等环境内容,渲染相机视角下的图像。

    工件仿真场景示例(图4):


图4 工件仿真场景示例

    生成图像示例(图5):


图5 虚拟仿真数据与现实场景数据对比

    为了模拟现实场景中的抓取过程,我们在每一帧渲染后都会减少场景中的工件数目。考虑到阵列场景中的抓取策略的差异,我们对阵列场景采用随机减少和有序减少两种方案,而杂乱堆叠场景则直接使用随机减少的方法(图6)。


图6 模拟抓取过程的工件减少方案示例


版权声明:本文为V社区用户原创内容,转载时必须标注文章的来源(V社区),文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:v-club@hikrobotics.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
上一篇

悉灵杯”课题研究进展(一)-实例分割网络模型搭建与实验场景介绍

下一篇

悉灵杯”课题研究报告-基于深度学习方法和虚拟仿真数据的机械臂引导方案

评论请先登录 登录
全部评论 0
Lv.0
0
关注
4
粉丝
3
创作
7
获赞
所属专题
  • 使用3D相机MV-EB435i基于OpenCV的客流检测与异常识别的实现
  • 悉灵杯”课题研究进展(一)通过海康RGB-D相机获取带RGB信息的点云
  • “悉灵杯”课题研究-基于RGB_D相机的物品位置计算
  • “悉灵杯”课题研究-对RGB_D相机采集的三维点云处理
  • “悉灵杯”课题研究-RGB_D相机SDK集成及Open3d点云基本处理
  • “悉灵杯”课题研究-集成RGB_D相机SDK的Open3d点云可视化
  • “悉灵杯”课题研究-集成RGB_D相机SDK的Open3d点云功能UI项目开发(项目demo)
  • “悉灵杯”课题研究-RGB_D相机SDK三维点云存储
  • “悉灵杯”课题研究-OpenNI集成及示例代码开发
  • 悉灵杯”课题研究-MV-EB435i立体相机基于opencv图像处理使用yolov5的物体识别
  • “悉灵杯”课题研究-基于opecv的集成RGB_D相机SDK的基础小样物品颜色检测及人脸识别
  • OpenCV中利用knn进行数字(0-9)识别--RGB-D相机采集
  • “悉灵杯”课题研究-基于MV-EB435i的落差边缘检测算法开发记录
  • 悉灵杯”课题研究-LabVIEW集成及示例代码开发
  • “悉灵杯”课题研究-MV-EB435i立体相机集成Apriltags发布相机位姿
  • “悉灵杯”课题研究-MV-EB435i立体相机图像处理UI界面开发
  • “悉灵杯”课题研究-基于ROS1的RGB-D相机SDK集成及示例代码开发
  • 第二届“悉灵杯”课题移动机器人感知研究进展
  • “悉灵杯”课题研究—手眼标定方案
  • 第二届“悉灵杯”课题研究-基于RGB_D相机的室内环境建模
  • 悉灵杯”课题研究进展(二)-基于三维模型/场景点云的虚拟仿真数据生成
  • 悉灵杯”课题研究进展(一)-实例分割网络模型搭建与实验场景介绍
  • “悉灵杯”课题研究报告-基于RGB-D相机的2D和3D抓取定位方案研究
  • “悉灵杯”课题研究-基于点云配准算法GICP的3D抓取方案研究
  • “悉灵杯”课题研究-基于YOLO和GGCNN的物品平面抓取方案研究
  • 动态手势控制音频播放器-成果物
  • 第二届“悉灵杯”课题研究报告-动态手势控制音频播放器设计
  • 动态手势控制音频播放器(五)动态手势控制音频播放器exe
  • 动态手势控制音频播放器(四)动态手势识别系统的设计
  • 动态手势控制音频播放器(三)音频播放器设计
  • 动态手势控制音频播放器(二)动态手势识别系统的设计
  • 动态手势控制音频播放器(一)总体方案设计
  • 悉灵杯”课题研究进展(四)RGB-D相机引导机械臂分拣物料
  • 悉灵杯”课题研究进展(三)RGB-D相机引导机械臂分拣物料
  • 悉灵杯”课题研究进展(二)RGB-D相机引导机械臂分拣物料
  • ”悉灵杯”课题研究报告-基于RGB-D相机的机械臂物料分拣系统研究
  • 悉灵杯”课题研究报告-基于深度学习方法和虚拟仿真数据的机械臂引导方案
  • 第二届“悉灵杯”课题研究机械臂引导研究报告
  • 第二届“悉灵杯”课题研究机械臂引导研究进展(二)
  • 第二届“悉灵杯”课题研究机械臂引导研究进展(一)
相关阅读
  • VM4.4更新亮点
    2024-04-12 浏览 0
  • 探寻机器视觉新星|第二届“启智杯”机器视觉设计大赛获奖名单公布
    2024-04-08 浏览 0
  • 第二届启智杯—光伏电池片质检视觉方案设计
    2024-04-15 浏览 0
  • 第二届启智杯-锂电外壳外观检测3D视觉方案设计
    2024-04-15 浏览 0
  • 第二届启智杯-无监督异常检测算法
    2024-04-16 浏览 0

请升级浏览器版本

您正在使用的浏览器版本过低,请升级最新版本以获得更好的体验。

推荐使用以下浏览器