Isaac Sim知识小解(9):anygrasp生成抓取位姿
1. Anygrasp介绍AnyGrasp是上海交大 非夕 Flexiv 联合实验室GraspNet 团队推出的通用 7DoF 视觉抓取算法 工程 SDK2022 论文面向无序未知物体静态 动态抓取是目前工业落地最主流的 6/7 自由度抓取开源方案常和 cuRobo 运动规划搭配使用视觉出抓取位姿→cuRobo 做机械臂避障轨迹。无需提前物体建模、物体 CAD、离线标定训练输入单目 RGB-D 点云直接输出夹爪可用7 自由度抓取位姿6D 位姿 夹爪开合宽度与其他主流方法比较使用流程建议典型 pipeline获取 RGB-D 图像 → 生成点云运行 AnyGrasp → 得到多个候选抓取7DoF 位姿在相机系下手眼标定 → 将抓取位姿转到机器人基坐标系对抓取位姿进行后处理 → 选择最优抓取位姿位姿送入 cuRobo 运动规划 → 规划无碰撞路径执行抓取动作接近 → 闭合夹爪 → 提起使用 [AnyGrasp]它输入一帧 RGBD 数据以及相机内参输出一组相机坐标系下带分数的候选抓取位姿。AnyGrasp 的 SDK 需要申请 license。最直接的用法是离线跑一帧数据核心就是从深度图反投影出点云喂给模型from gsnet import AnyGrasp from graspnetAPI import GraspGroup anygrasp AnyGrasp(cfgs) anygrasp.load_net() # 从深度图反投影出点云 xmap, ymap np.meshgrid(np.arange(W), np.arange(H)) points_z depths / scale points_x (xmap - cx) / fx * points_z points_y (ymap - cy) / fy * points_z points np.stack([points_x, points_y, points_z], axis-1) mask (points_z 0) (points_z 1) points points[mask].astype(np.float32) colors colors[mask].astype(np.float32) # 检测抓取返回一个 GraspGroup gg, cloud anygrasp.get_grasp( points, colors, apply_object_maskTrue, collision_detectionTrue ) gg gg.nms().sort_by_score() # 非极大值抑制 按分数排序 best_grasp gg[0] # 分数最高的抓取用服务的方式调用在实际的数据采集流水线里AnyGrasp 模型加载一次要占不少显存而且我们往往需要并行跑很多个 Isaac Sim 实例每个实例都自己加载一份模型既慢又浪费。所以更实用的做法是把AnyGrasp 包成一个 HTTP 服务模型常驻显存Isaac 这边作为客户端按需请求。from flask import Flask, request, jsonify app Flask(__name__) anygrasp AnyGrasp(cfgs) anygrasp.load_net() # 模型常驻 app.route(/process, methods[POST]) def process_data(): data request.get_json() colors np.array(data[colors], dtypenp.uint8) depths np.array(data[depths], dtypenp.uint16) # ... 反投影 get_grasp ... gg gg.nms().sort_by_score() grasp_list [{ translation: g.translation.tolist(), rotation_matrix: g.rotation_matrix.tolist(), depth: g.depth, score: g.score, } for g in gg] return jsonify({grasp_groups: grasp_list}), 200 app.run(host0.0.0.0, port5001)从相机系到世界系AnyGrasp 给出的抓取位姿是在相机坐标系下的而我们前面规划用的是世界坐标系所以又得做一次坐标变换。这里需要特别小心的是AnyGrasp / GraspNet 的相机坐标系约定和 Isaac Sim 的相机坐标系约定是不一样的中间需要插一个修正矩阵def get_world_grasp_from_camera_coords( camera_position, camera_quaternion, point_3d, matrix_grasp ): rotation_cam_to_world R.from_quat(camera_quaternion[[1, 2, 3, 0]]) # 这两个矩阵用来对齐 GraspNet 和 Isaac 的相机坐标系约定 transform_custom_pose np.array([[0, 0, 1], [0, -1, 0], [1, 0, 0]]) correction_matrix np.array([[1, 0, 0], [0, 0, -1], [0, 1, 0]]) point_in_world ( rotation_cam_to_world.as_matrix() correction_matrix transform_custom_pose point_3d camera_position ) rotation_world ( rotation_cam_to_world * R.from_matrix(correction_matrix transform_custom_pose) * R.from_matrix(matrix_grasp) * R.from_matrix(np.linalg.inv(transform_custom_pose)) ).as_quat()[[3, 0, 1, 2]] return point_in_world, rotation_world

相关新闻

基于个人博客数据微调大模型,打造专属AI写作助手实战指南

基于个人博客数据微调大模型,打造专属AI写作助手实战指南

1. 项目概述:从“AI味”到“人味”的写作进化你有没有发现,现在很多AI生成的文章,读起来总有一种挥之不去的“塑料感”?它们结构工整、用词准确,但就是缺乏灵魂,没有你个人独特的表达习惯和思考痕迹。这其实…

2026/8/8 7:41:08 阅读更多 →
VC++ MFC开发企业级MIS系统:现代重构与性能优化实战

VC++ MFC开发企业级MIS系统:现代重构与性能优化实战

1. 项目概述:为什么选择VC MFC在202X年开发MIS?如果你在202X年听到有人用VC MFC开发一个全新的管理信息系统(MIS),第一反应可能是:“这技术栈是不是有点老了?” 我半年前启动这个项目时&#xf…

2026/8/8 7:41:08 阅读更多 →
ResNet残差网络:从网络退化到深度革命的核心原理与实战应用

ResNet残差网络:从网络退化到深度革命的核心原理与实战应用

1. 从“网络退化”到“深度革命”:ResNet的诞生背景 如果你在2015年之前尝试训练一个超过20层的卷积神经网络(CNN),大概率会遇到一个令人沮丧的现象:随着网络层数的增加,模型的训练误差和测试误差不仅没有降…

2026/8/8 7:41:08 阅读更多 →

最新新闻

RAG文档处理全链路实战:从PDF解析、表格提取到OCR与语义分块

RAG文档处理全链路实战:从PDF解析、表格提取到OCR与语义分块

1. 项目概述:从文档到智能的最后一公里如果你正在构建一个基于大语言模型的问答系统或知识库,那么“RAG”这个词对你来说一定不陌生。检索增强生成技术,简单来说,就是让大模型在回答问题时,能先去一个指定的知识库&…

2026/8/8 9:34:56 阅读更多 →
Claude Code集成MCP服务器实战:以NanoBanana为例的AI编程能力扩展

Claude Code集成MCP服务器实战:以NanoBanana为例的AI编程能力扩展

1. 项目概述:当Claude Code遇见NanoBanana MCP最近在AI编程工具圈里,Claude Code和MCP(Model Context Protocol)协议的热度居高不下。很多开发者,包括我自己,都在尝试将各种强大的MCP服务器接入到Claude Co…

2026/8/8 9:34:56 阅读更多 →
从Windows迁移到Ubuntu:完整桌面系统安装与配置指南

从Windows迁移到Ubuntu:完整桌面系统安装与配置指南

1. 从Windows到Ubuntu:一次彻底的桌面系统迁移 如果你正在阅读这篇指南,很可能你已经对Windows的某些方面感到厌倦了——或许是频繁的更新弹窗、对系统资源的过度占用,又或者是你内心对开源世界和命令行效率的向往已经按捺不住。将主力操作系…

2026/8/8 9:34:56 阅读更多 →
Three.js入门指南:从基础到3D场景实战

Three.js入门指南:从基础到3D场景实战

1. Three.js入门:为什么选择它? 第一次接触Three.js是在2018年一个数据可视化项目中。当时客户要求将复杂的供应链数据以3D形式呈现,而传统的2D图表已经无法满足需求。经过技术选型,我们最终选择了Three.js而非Unity或原生WebGL&a…

2026/8/8 9:34:56 阅读更多 →
Excel透视表三大常见问题:计数异常、排序失效与无法分组的根源与解决方案

Excel透视表三大常见问题:计数异常、排序失效与无法分组的根源与解决方案

1. 透视表“失灵”的常见场景与核心诉求做数据分析的朋友,尤其是经常和Excel打交道的,估计都遇到过这么个让人抓狂的时刻:你兴冲冲地建好了一个数据透视表,准备大展身手,结果发现“计数”出来的数字全是1,想…

2026/8/8 9:34:56 阅读更多 →
从RPA到AI Agent:工作流自动化范式转移与智能体架构实践

从RPA到AI Agent:工作流自动化范式转移与智能体架构实践

1. 从RPA到AI Agent:一个工作流工程师的认知迭代最近在圈子里,看到不少人在讨论“RPA要被AI干死了”这个话题,尤其是一些标题党,动不动就是“一键生成监听100个小红书博主的工作流”。作为一个从传统RPA(机器人流程自动…

2026/8/8 9:33:56 阅读更多 →

日新闻

AI多智能体时代来临,读懂MCP与A2A架构,抢占企业数字化新风口

AI多智能体时代来临,读懂MCP与A2A架构,抢占企业数字化新风口

当下AI应用飞速普及,无数企业下场搭建智能体系统,可落地阶段难题接踵而至:上下文无限堆积频繁爆栈、AI工具调用准确率低下、Token成本居高不下、企业数据权限混乱暗藏安全隐患……很多团队卡在架构搭建环节,空有前沿技术概念&…

2026/8/8 0:00:07 阅读更多 →
PHP二维码生成终极指南:用chillerlan/php-qrcode打造专业级二维码

PHP二维码生成终极指南:用chillerlan/php-qrcode打造专业级二维码

PHP二维码生成终极指南:用chillerlan/php-qrcode打造专业级二维码 【免费下载链接】php-qrcode A PHP QR Code generator and reader with a user-friendly API. 项目地址: https://gitcode.com/gh_mirrors/ph/php-qrcode 在当今数字时代,二维码已…

2026/8/8 0:00:08 阅读更多 →
UniApp微信小程序隐私保护组件开发:从原理到实战

UniApp微信小程序隐私保护组件开发:从原理到实战

1. 项目缘起:为什么我们需要一个隐私保护通用组件?最近在维护一个基于uniapp开发的微信小程序矩阵时,我遇到了一个非常棘手的问题。随着平台对用户隐私保护的要求越来越严格,几乎每一个新版本发布,或者在某些特定机型&…

2026/8/8 0:00:08 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/6 22:02:27 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/8 8:58:26 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/7 23:24:08 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/7 17:02:37 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/7 23:54:54 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/7 17:02:36 阅读更多 →