Graspness Discovery in Clutters for Fast and Accurate Grasp Detection 解读
研究背景
- 研究问题 :这篇文章要解决的问题是如何在杂乱的环境中快速且准确地检测抓取姿态。传统的 6自由度抓取方法将场景中的所有点视为平等,并采用均匀采样来选择抓取候选点,但忽略了抓取位置的重要性,这极大地影响了抓取姿态检测的速度和准确性。
- 研究难点 :该问题的研究难点包括:如何在大量的 3D 空间点中快速识别出可抓取的区域,以及如何在不牺牲计算资源的情况下提高抓取姿态检测的效率。
- 相关工作 :该问题的研究相关工作包括基于平面的抓取检测和 6自由度的抓取检测。现有的方法主要集中在改进抓取参数的预测质量,但忽略了抓取位置的筛选问题。
研究方法
这篇论文提出了一种基于几何线索的“抓取性”(graspness)来解决杂乱环境中抓取姿态检测的问题。具体来说,
-
抓取性定义 :首先,定义了两种抓取性分数:点抓取性分数SpSp和视图抓取性分数SvSv。点抓取性分数表示每个点的抓取可能性,视图抓取性分数表示每个视图的抓取可能性。

-
抓取性测量 :通过穷举搜索未来可能的抓取姿态来评估每个点的抓取性。具体公式如下:
s~ip= ∑j=1V∑k=1L1(qki,j>c)⋅1(cki,j)∑j=1V∣Gi,j∣,i=1,...,N,s~ip=∑j=1V∣Gi,j∣∑j=1V∑k=1L1(qki,j>c)⋅1(cki,j),i=1,...,N,其中,1(⋅)1(⋅)表示成功抓取的指示函数,qki,jqki,j表示抓取质量分数,cc表示抓取质量阈值,cki,jcki,j表示碰撞标签。
-
级联抓取性模型 :为了在实际中快速检测抓取性,开发了一个名为级联抓取性模型的神经网络来近似搜索过程。该模型通过多层感知器(MLP)网络生成点抓取性景观,并采用最远点采样(FPS)选择种子点,然后通过另一个 MLP 网络生成视图抓取性景观。

-
抓取操作模型 :在抓取操作模型中,通过在方向性圆柱空间内裁剪和细化点云,将点转换为夹爪坐标系,并估计抓取参数。具体步骤包括圆柱分组、抓取生成和抓取评分表示。
实验设计
- 数据集 :使用了 GraspNet-1Billion 数据集,该数据集包含 190 个场景,每个场景有 256 个不同视角的点云数据。测试场景根据对象类别分为已知、相似和新颖三类。
- 数据处理和增强 :点云数据在输入网络前进行体素下采样,体素大小为 0.005 米,仅包含相机坐标系中的 XYZ 数据。输入云通过随机翻转和旋转进行数据增强。
- 实现细节 :在 GraspNet-1Billion 数据集上进行实验,每个点密集地标记了 300 个不同视图的抓取质量分数和每个视图的 48 个抓取。网络的骨干网络采用 ResUNet14,输出通道数为 512 。在抓取性 FPS/PVS 中,采样 1024 个种子点和 300 个视图,阈值δPδP设置为 0.1 。圆柱分组中,采样 16 个种子点,圆柱半径为 0.05 米,高度范围为[-0.02 米,0.04 米]。损失函数中,设置α,β,λ=10,10,10α,β,λ=10,10,10。
结果与分析
-
级联抓取性模型的泛化性和稳定性 :在不同对象类别、视角和相机设置下的实验结果表明,级联抓取性模型在不同域中具有良好的泛化性和稳定性。点抓取性预测的排名误差在不同类别和视角下变化不大,视图抓取性预测的排名误差在所有组中几乎不变。

-
与代表性方法的比较 :在 GraspNet-1Billion 数据集上的实验结果表明,GSNet 在所有类别上的 AP 指标比现有方法提高了约 2倍,特别是在最困难的\AP0.4\AP0.4指标上,GSNet 的相对改进超过 140%。

-
级联抓取性模型的提升效果 :将级联抓取性模型应用于现有的抓取检测方法(如 GPD 、Liang et al.和 Fang et al.)后,这些方法的性能显著提高,验证了级联抓取性模型的有效性。

-
不同采样方法的比较 :实验结果表明,使用抓取性 FPS 采样种子点比随机采样和从整个点云中采样效果更好,抓取性 PVS 在视图选择中也优于其他方法。

-
真实抓取实验 :在真实世界环境中进行的抓取实验验证了 GSNet 的有效性,成功率为 78.22/76.49 、62.88/57.64 和28.97/24.04,分别对应 RealSense 和Kinect 输入。
总体结论
这篇论文提出了一种基于几何线索的“抓取性”来解决杂乱环境中抓取姿态检测的问题。通过级联抓取性模型和抓取操作模型,实现了快速且准确的抓取姿态检测。实验结果表明,该方法在准确性和速度上均优于现有方法,并且具有良好的泛化性和稳定性。该方法已被集成到 AnyGrasp 中,以促进机器人社区的研究。
相关文章:
Graspness Discovery in Clutters for Fast and Accurate Grasp Detection 解读
研究背景 研究问题 :这篇文章要解决的问题是如何在杂乱的环境中快速且准确地检测抓取姿态。传统的 6自由度抓取方法将场景中的所有点视为平等,并采用均匀采样来选择抓取候选点,但忽略了抓取位置的重要性,这极大地影响了抓取姿态检…...
MyBatis的CRUD
1. what MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis可以通过简单的XML或注解来配置和映射实体类型、接口、Java POJO(Plain Old Java Objects,普…...
leetcode 题目解析 第3题 无重复字符的最长子串
给定一个字符串 s ,请你找出其中不含有重复字符的 最长 子串的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: s “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”…...
深度学习入门--神经网络
初学,若有错误,恳请指正。 目录 初学,若有错误,恳请指正。 3.1 从感知机到神经网络 3.1.1 神经网络的例子 3.1.2 复习感知机 3.1.3 激活函数登场 3.2 激活函数 3.2.1 sigmoid 函数 3.2.2 阶跃函数的实现 3.2.3 阶跃函数…...
pycharm 调试 debug 进入 remote_sources
解决办法1: pycharm函数跳转到remote_sources中的文件中_pycharm修改remotesource包存放地址-CSDN博客 file->settings->project structure将项目文件夹设为"Sources"(此时文件夹会变为蓝色)。 解决方法2 Debug:使用Pychar…...
【复习】计算机网络
网络模型 OSI 应用层:给应用程序提供统一的接口表示层:把数据转换成兼容另一个系统能识别的格式会话层:负责建立、管理、终止表示层实体之间的通信会话传输层:负责端到端的数据传输网络层:负责数据的路由、转发、分片…...
CentOS停服后的替代选择:openEuler、Rocky Linux及其他系统的未来展望
CentOS停服后的替代选择:openEuler、Rocky Linux及其他系统的未来展望 引言CentOS停服的背景华为openEuler:面向未来的开源操作系统1. 简介2. 特点3. 发展趋势 Rocky Linux:CentOS的精神继承者1. 简介2. 特点3. 发展趋势 其他可选的替代系统1…...
ollama+open-webui,本地部署自己的大模型
目录 一、效果预览 二、部署ollama 1.ollama说明 2.安装流程 2.1 windows系统 2.1.1下载安装包 2.1.2验证安装结果 2.1.3设置模型文件保存地址 2.1.4拉取大模型镜像 2.2linux系统 2.2.1下载并安装ollama 2.2.2设置环境变量 2.2.3拉取模型文件 三、部署open-webui…...
Oracle EBS 12.1和APEX 集成时 Apache的配置代理
在有些场景下,apex的前端服务不是和oracle EBS 应用部署在同一个服务器上或者要求apex和访问地址和EBS公用同一个域名同一个端口,那么怎么才能做到用EBS 的域名和端口来实现对apex的访问呢 通过配置代理规则解决,以Oracle EBS 12.1.3 为例&am…...
hive开窗函数边界值ROWS BETWEEN 和 RANGE BETWEEN区别
目录 一、概念 1.rows between ... and ... 2.range between ... and ... 二、语法 1.关键词含义 一、概念 1.rows between ... and ... rows:指以行号来决定frame的范围,是物理意义上的行。 2.range between ... and ... range:指以当…...
HTML第一节
一.HTML标签 注意:1.双标签是要包裹内容的 (单标签单独记) 二.HTML骨架 1.骨架规则 注意:1.title为网页的名字 2.VS code自动生成骨架 注意:1.先输入感叹号(必须为英文) 再按回车 三.标签间的…...
Google第三方库详解------ProtoBuf详解 + 样例(5万字详解!)
目录 前言: 提示: 插件 入门: ProtoBuf普通字段类型: 编译命令: 序列化与反序列化: Proto3语法: 字段规则:数组类型 应用 将通讯录数据序列化后写入文件 工具介绍&#x…...
机器学习数学通关指南——泰勒公式
前言 本文隶属于专栏《机器学习数学通关指南》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见《机器学习数学通关指南》 正文 一句话总结 泰勒公式是用多…...
如果后台的Long类型的数据返回是null,那么Android客户端的数据bean的kotlin的Long类型的字段接受到数据后是null空指针吗?
如果后台的Long类型的数据返回是null,那么Android客户端的数据bean的kotlin的Long类型的字段接受到数据后是null空指针吗? DeepSeek R1 思考 35 秒 思考过程 好的,用户的问题是关于在Android客户端使用Kotlin处理后台返回的Long类型数据为n…...
ai-financial-agent - 为金融投资打造的AI代理
探索人工智能在投资研究中的应用。本项目仅用于**教育**目的,不用于真实交易或投资。 作者声明: 本项目仅用于教育和研究目的。 不用于真实交易或投资不提供任何保证或担保过去的表现并不代表未来的结果Creator 对经济损失不承担任何责任咨询财务顾问…...
学习路程三 数据加载及向量化
前序 之前简单粗暴将LangChain分了几块,现在就挨着了解学习每块内容。今天主要从文档这条路来看。 本地文档这一条链路,通过加载,分割,向量化,再存储数据库 ps:看到这里还想继续实操下去,可以…...
基于GWO灰狼优化的WSN网络最优节点部署算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 无线传感器网络(Wireless Sensor Network, WSN)由大量分布式传感器节点组成,用于监测物理或环境状况。节点部署是 WSN 的关键问…...
保姆级! 本地部署DeepSeek-R1大模型 安装Ollama Api 后,Postman本地调用 deepseek
要在Postman中访问Ollama API并调用DeepSeek模型,你需要遵循以下步骤。首先,确保你有一个有效的Ollama服务器实例运行中,并且DeepSeek模型已经被加载。 可以参考我的这篇博客 保姆级!使用Ollama本地部署DeepSeek-R1大模型 并java…...
架构对比分析
您提到的两种架构描述本质上遵循相同的分层设计理念,但存在差异的原因在于 视角不同 和 硬件平台特性。以下是详细解析: 一、架构对比分析 1. 逻辑分层(通用软件设计视角) 应用层(UI/用户交互)↓ 业务逻辑…...
【每日八股】Redis篇(二):数据结构
Redis 数据类型? 主要有 STRING、LIST、ZSET、SET 和 HASH。 STRING String 类型底层的数据结构实现主要是 SDS(简单动态字符串),其主要应用场景包括: 缓存对象:可以用 STRING 缓存整个对象的 JSON&…...
springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
vulnyx Blogger writeup
信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面,gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress,说明目标所使用的cms是wordpress,访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...
Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...
redis和redission的区别
Redis 和 Redisson 是两个密切相关但又本质不同的技术,它们扮演着完全不同的角色: Redis: 内存数据库/数据结构存储 本质: 它是一个开源的、高性能的、基于内存的 键值存储数据库。它也可以将数据持久化到磁盘。 核心功能: 提供丰…...
【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅!
【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅! 🌱 前言:一棵树的浪漫,从数组开始说起 程序员的世界里,数组是最常见的基本结构之一,几乎每种语言、每种算法都少不了它。可你有没有想过,一组看似“线性排列”的有序数组,竟然可以**“长”成一棵平衡的二…...
Java数组Arrays操作全攻略
Arrays类的概述 Java中的Arrays类位于java.util包中,提供了一系列静态方法用于操作数组(如排序、搜索、填充、比较等)。这些方法适用于基本类型数组和对象数组。 常用成员方法及代码示例 排序(sort) 对数组进行升序…...
