论文解读|基于RealSense的三维散乱部件点云分割

news2024/11/25 4:08:26

原创 | 文 BFT机器人 

01

摘要

本文提出了一种针对垃圾拾取系统中点云分割的算法。该算法使用低成本的深度相机RealSense获取点云数据,并对点云数据进行滤波处理和分割,最终将分割后的子块片段独立地连接起来,形成完整的工件模型。通过测试案例验证了该算法的有效性和实用性。

图1 工作台上三通管摆放不整齐。(a)工件的RGB图像。(b)图1(a)三维数据点集。

02

无序点云集合中,识别零件的主要挑战是什么?

从深度相机或激光扫描仪获取的无序点云集合中,识别零件的主要挑战是如何准确地分割出3D物体。由于点云数据的无序性和噪点的存在,需要开发有效的算法来将点云分割成单个物体,并识别出每个物体的边界和形状。这样的分割结果对于机器人准确地抓取和处理零件非常重要。

03

提出的算法如何对点数据集进行滤波处理并将其分割为子块片段?

提出的算法首先对点数据集进行滤波处理,以去除噪点和无关的数据。这样可以将原始的无序点云集合转化为更干净、紧凑的点云数据。接下来,经过滤波处理后的点云数据被分割成多个子块片段。

具体的分割过程可能涉及到使用扩展凸性准则和角度准则来判断点云中的局部凸性和角度信息,从而将点云分割成多个子块片段。这些子块片段可以表示单个工件的3D模型,为后续的物体识别和抓取提供了基础。通过将点云数据进行滤波和分割,算法能够将原始的点云数据转化为更易处理的子块片段,为后续的处理步骤提供了更好的基础。

04

提出的算法中使用了哪两个准则来独立地连接子块片段?

在提出的算法中,使用了两个准则来独立地连接子块片段。这两个准则分别是扩展凸性准则和角度准则。通过这两个准则,算法可以根据点云数据中的局部凸性和角度信息,将分割后的子块片段独立地连接起来,形成更大的组合片段。

扩展凸性准则用于判断子块片段的凸性特征,而角度准则用于判断子块片段之间的角度关系。通过使用这两个准则,算法能够有效地将子块片段连接起来,形成完整的工件模型,为后续的识别和处理提供了基础。

05

论文原理

A. 预处理

在文章的METHOD部分,提到了一种去除噪点的方法。具体步骤如下:

首先,将点云数据进行滤波处理,以去除噪点和无关的数据。这可以通过使用滤波算法来实现,例如高斯滤波或均值滤波等。滤波算法可以平滑点云数据,去除异常值和噪点。

其次,针对工作台上的噪点,可以使用特定的方法进行去除。文章中提到了使用RealSense相机扫描的工作台上的噪点,可以通过识别并去除工作台的噪点来提高分割算法的性能。具体的方法可能涉及到使用图像处理技术或几何分析方法来检测和去除工作台上的噪点。

通过这些步骤,算法能够有效地去除点云数据中的噪点,得到更干净、紧凑的点云数据,为后续的分割和连接步骤提供更准确的输入。

图2 工作台噪声点滤波。(a)噪声点云数据;(b)工作台平面噪声点;(c)过滤干净点云。

B. 分割子块片段

根据扩展凸性准则和角度准则,将点云数据分割成多个子块片段。

具体的分割过程可能涉及到将点云数据划分为多个小的块或区域,并根据凸性和角度准则来判断哪些块或区域属于同一个子块片段。

对于每个子块片段,可以将其表示为单个工件的3D模型。这可以通过提取子块片段中的点云数据,并进行后续的处理和分析来实现。

通过这些步骤,算法能够将点云数据分割成多个子块片段,每个子块片段可以表示单个工件的3D模型。这为后续的物体识别和抓取提供了基础。

C. 独立连接子块片段

将分割后的子块片段独立地连接起来。具体的连接过程可能涉及到将相邻的子块片段进行匹配和对齐,以确保它们之间的凸性特征和角度关系符合连接准则。

连接后的子块片段将形成完整的工件模型。这个工件模型可以用于后续的物体识别和抓取。

通过这些步骤,算法能够将分割后的子块片段独立地连接起来,形成完整的工件模型。

图3 对“边界点”噪声进行滤波:(a) 具有“边界点”的点数据集;(b) 没有“边界点的紧凑点数据;(c) “边界点”;(d) “边界点”被进一步填充为特征点;(e) 图3(d)特征点与图3(b)特征点相加的结果

06

实验效果

文章使用了Intel RealSense SR300相机来获取点云数据,并对该算法进行了测试和验证。实验结果表明,该算法能够有效地将点云数据分割成多个子块片段,并将这些子块片段独立地连接起来,形成完整的工件模型。同时,该算法还能够去除点云数据中的噪点和无关数据,提高了算法的性能和准确性。

图4 分割结果 (a)单一类型零件的S分割结果。(b)多类型零件的S分割结果

文章还使用了一些定量指标来评估算法的效果,例如成功分割率和错误分割率等。实验结果表明,该算法在不同的测试场景下都能够取得较好的效果,成功分割率高达95%以上,错误分割率低于5%。这表明该算法具有较高的准确性和鲁棒性,可以应用于实际的垃圾拾取系统中。

根据文章的实验结果和描述,该算法在点云分割和工件识别方面表现出较好的性能和效果。因此,该算法具有广阔的应用前景,特别是在垃圾拾取系统和相关领域中。

首先,该算法可以应用于垃圾拾取系统中,用于自动化地分割和识别散乱的3D物体。通过使用低成本的深度相机,如RealSense,可以获取点云数据,并使用该算法对点云数据进行分割和连接,从而实现对散乱物体的自动识别和抓取。这将大大提高垃圾拾取系统的效率和准确性。

此外,该算法还可以应用于其他领域,如工业自动化、机器人视觉和物体识别等。通过对点云数据进行分割和连接,可以实现对复杂物体的识别和分析。这对于自动化生产线、智能仓储系统和机器人导航等应用场景非常有价值。

总的来说,该算法在点云分割和工件识别方面具有较高的准确性和鲁棒性,可以应用于垃圾拾取系统和其他相关领域,为实现自动化和智能化提供了有力的技术支持。

参考资料:[1] Gong X , Chen M , Yang X .Point cloud segmentation of 3D scattered parts sampled by RealSense[C]//2017 IEEE International Conference on Information and Automation (ICIA).IEEE, 2017.DOI:10.1109/ICInfA.2017.8078881.

更多精彩内容请关注公众号:BFT机器人
本文为原创文章,版权归BFT机器人所有,如需转载请与我们联系。若您对该文章内容有任何疑问,请与我们联系,将及时回应。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/668139.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

spark 数据倾斜处理

spark优化总结: 一、spark 代码优 六大代码优化: 避免创建重复的RDD 尽可能复用同一个RDD 对多次使用的RDD进行持久化 尽量避免使用shuffle类算子 使用map-side预聚合的shuffle操作 使用高性能的算子 广播大变量 使用Kryo优化序列化性能 优化数据结构 使用高性能的库fa…

怎么通过电商数据分析选择好货源?

什么样的货源才算好货源?自然是拿货成本低、销售前景(趋势)好、利润度高、去库存快的。这就需要综合销售、库存、财务、采购等多部门环节的数据进行分析挖掘,最终才能找到符合需求的供货商以及商品清单。在这个过程中,…

vue3引入uview-plus3.0移动组件库

vue3引入uview-plus3.0移动组件库 引入流程 导入插件到项目 项目地址:https://ext.dcloud.net.cn/plugin?nameuview-plus 在main.js引入uview // main.js import uviewPlus from /uni_modules/uview-plus// #ifdef VUE3 import { createSSRApp } from vue expor…

红日ATTCK系列靶场(-)简记

Step 1>》信息收集 nmap 发现80、 3306 nmap -T4 -O 192.168.92.100 访问80端口 dirsearch(御剑)扫描 发现:/phpMyadmin Step 2 》漏洞利用 1.弱口令 http://192.168.92.100/phpMyadmin root/root 登录成功 2.getshell select basedir //查绝对路径 int…

Flink 学习三 Flink 流 process function API

Flink 学习三 Flink 流&process function API 1.Flink 多流操作 1.1.split 分流 (deprecated) 把一个数据流根据数据分成多个数据流 1.2 版本后移除 1.2.分流操作 (使用侧流输出) public class _02_SplitStream {public static void main(String[] args) throws Excep…

Python接口自动化之登录接口测试

01 什么是接口? 接口:检测外部系统与系统之间以及内部各个子系统之间的交互点。 通俗来说,接口就是连接前后端的桥梁,接口测试可以简单理解为脱离了前端的功能测试。一个又一个的接口就对应功能测试内一个又一个的功能。但注意&am…

前端vue入门(纯代码)10

【10.TodoList-自定义事件】 TodoList案例的完整代码请点击此处粉色文字 TodoList案例中的子组件TodoHeader给父组件App传递数据 App.vue文件中需要修改的代码 原本&#xff1a; Todo案例中子给父传递数据【通信】的方法&#xff1a;props <!-- 把App组件里的方法addTodo(…

2023 Nature 健康系统规模的语言模型是通用预测引擎

文章目录 一、论文关键信息二、论文主要内容三、总结与讨论🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、论文关键信息 论文标题:Health system-scale language models are all-purpose prediction engines 期刊信息:2023 Nature 论文地址:h

Armbian 23.05(代号Suni)操作系统已全面上市

Armbian社区通知我们&#xff0c;适用于ARM和RISC-V单板计算机以及其他平台的Armbian 23.05&#xff08;代号Suni&#xff09;操作系统已全面上市。 在Armbian 23.02发布三个月后&#xff0c;Armbian 23.05版本是第一个在完全重构的构建框架上创建的版本&#xff0c;基于即将发…

Flink 学习八 Flink 容错机制 checkpoint savepoint

Flink 学习八 Flink 容错机制 & checkpoint & savepoint https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/concepts/stateful-stream-processing/ 1.容错基础概念 上一节讲述状态后端;Flink是一个 带状态stateful 的数据处理系统,在处理数据的过程…

基于深度学习的高精度蜜蜂检测识别系统(PyTorch+Pyside6+YOLOv5模型)

摘要&#xff1a;基于深度学习的高精度蜜蜂检测识别系统可用于日常生活中或野外来检测与定位蜜蜂目标&#xff0c;利用深度学习算法可实现图片、视频、摄像头等方式的蜜蜂目标检测识别&#xff0c;另外支持结果可视化与图片或视频检测结果的导出。本系统采用YOLOv5目标检测模型…

VUE 2X ClassStyle ⑦

目录 文章有误请指正&#xff0c;如果觉得对你有用&#xff0c;请点三连一波&#xff0c;蟹蟹支持✨ V u e j s Vuejs Vuejs C l a s s Class Class与 S t y l e Style Style绑定总结 文章有误请指正&#xff0c;如果觉得对你有用&#xff0c;请点三连一波&#xff0c;蟹蟹支持…

初始java String类型

文章目录 初始java String类型理解 next和nextLine的区别new String(); 括号里面可以放什么呢放byte类型的数组放byte类型的数组&#xff0c;索引&#xff0c;长度放char类型的数组放char类型的数组&#xff0c;索引&#xff0c;长度 String 类型对应同一字符串&#xff0c;是否…

boost 异步服务器开发

目录 1、 异步服务器简介 2、异步服务器开发 2.1 会话类 2.1.1 会话类头文件 2.1.2 会话类源文件 2.2 服务类 2.2.1 服务类头文件 2.2.2 服务类源文件 2.3 主函数 3、异步服务器测试 4、当前异步服务器存在的问题及后续优化 1、 异步服务器简介 boost 异步服务器分为…

【Pytest实战】Pytest 如何生成优美的测试报告(allure-pytest)

&#x1f604;作者简介&#xff1a; 小曾同学.com,一个致力于测试开发的博主⛽️&#xff0c;主要职责&#xff1a;测试开发、CI/CD 如果文章知识点有错误的地方&#xff0c;还请大家指正&#xff0c;让我们一起学习&#xff0c;一起进步。&#x1f60a; 座右铭&#xff1a;不想…

施耐德电气:以数字化利器,助力中国产业“双转型”

近日&#xff0c;以“创新融生态&#xff0c;加速双转型”为主题的2023施耐德电气创新峰会在乌镇圆满举行。大会上&#xff0c;数千位行业专家、业界领袖和专业人士共聚一堂&#xff0c;共同探讨中国产业如何迈向“数字化”和“绿色低碳”的双转型&#xff0c;旨在为中国产业的…

SpringBoot构造流程源码分析------阶段一

SpringApplication的初始化简介 在入口类主要通过SpringApplication的静态方法–run方法进行SpringApplication类的实例化操作&#xff0c;然后再针对实例化对象调用另一个run方法完成整个项目的初始化和启动。本章节重点围绕此过程的前半部分&#xff08;即SpringApplication…

嵌入式系统开发复习指北

【嵌入式系统】20计科3-4班 第1讲 文件IO操作测试 【嵌入式系统】20计科3-4班 第2讲第4讲进程控制与线程测试 【嵌入式系统】20计科3-4班 第3讲进程通信测试 【嵌入式系统】20计科3-4班 第5-6讲内核和BootLoader开发测试 【嵌入式系统】20计科3-4班 第7讲驱动程序开发测试 大题…

PCB设计系列分享-高速ADC布局布线技巧

目录 概要 整体架构流程 技术名词解释 技术细节 1.裸露焊盘 2.最佳连接 3.去耦和层电容 4.PDS的高频层电容 5.分离接地 小结 概要 在当今的工业领域&#xff0c;系统电路板布局已成为设计本身的一个组成部分。因此&#xff0c;设计工程师必须了解影响高速信号链设计性能的机制。…

【操作系统】期末复习汇总最全版本!电子科技大学2023期末考试

操作系统 【考后感悟】本次考试考察了&#xff1a;操作系统的4大特征、线程和进程的区别、页表与页的基本地址变换机构、磁盘调度算法、银行家算法、调度算法&#xff08;短作业优先、时间片轮转&#xff09;、Linux的一些基本知识、shell读程序题以及PV操作编程。知识点基本涵…