当前位置: 首页 > news >正文

MuBlE:为机器人操作任务规划提供了逼真的视觉观察和精确的物理建模

2025-03-05,由华为诺亚方舟实验室、捷克技术大学和帝国理工学院联合开发的MuBlE(MuJoCo and Blender simulation Environment)模拟环境和基准测试。通过结合MuJoCo物理引擎和Blender高质量渲染,为机器人操作任务规划提供了逼真的视觉观察和精确的物理建模,填补了长时域机器人操作任务模拟环境的空白,为机器人操作任务的训练和评估提供了新的工具和挑战。

一、研究背景

机器人系统中,智能体需要根据视觉观察或自然语言指令完成指定任务,例如“将物体按重量从轻到重排序”。这些任务需要在模拟环境中生成数据或进行在线训练,并通过评估过程验证性能。然而,现有的模拟环境在物理仿真引擎和视觉观察质量上存在差异,难以同时满足高视觉质量和实时物理计算的需求。

目前遇到的困难和挑战:

1、视觉与物理的权衡:现有的模拟环境要么视觉效果不逼真,要么物理仿真不够精确,难以同时满足视觉和物理的高要求。

2、数据收集困难:真实世界中的机器人操作数据收集成本高昂,且受限于实时操作的复杂性。

3、长时域任务的挑战:当前的机器人智能体在需要与环境交互以获取必要信息的长时域任务中表现不佳,缺乏有效的训练环境和基准测试。

链接地址:MuBlE|机器人操作数据集|仿真环境数据集

二、让我们一起来看一下MuBlE

MuBlE(MuJoCo and Blender simulation Environment)是一个结合MuJoCo物理引擎和Blender高质量渲染的模拟环境,专注于长时域机器人操作任务,提供逼真的视觉观察和精确的物理建模。

MuBlE基于robosuite框架开发,利用MuJoCo进行物理仿真,并通过Blender进行高质量渲染,生成逼真的视觉数据。它支持多模态数据生成,包括场景合成、指令生成、场景图生成、任务完成评估以及物理属性观察(如重量、弹性等)。此外,MuBlE还提供了多种原语动作控制器,支持连续和离散动作空间。

MuBlE构建:

场景生成器:随机放置物体并生成场景,支持物体的颜色、材质和大小随机化。

指令生成器:基于场景生成自然语言指令,支持多步推理任务。

物理和视觉循环:通过MuJoCo和Blender实现物理仿真与视觉渲染的同步更新。

MuBlE特点:

逼真的视觉效果:通过Blender生成高质量的渲染图像,支持阴影、反射和不同光照条件。

精确的物理建模:利用MuJoCo实现高精度的物理仿真,支持复杂的机械系统。

多模态数据支持:提供视觉、语言和物理属性的多模态数据,支持长时域任务规划。

模块化设计:易于扩展和定制,支持多种任务和场景。

基准测试:

MuBlE配套发布了SHOP-VRB2基准测试,包含10类多步推理任务,涉及视觉属性(如物体属性、关系)和物理测量(如重量、弹性)。基准测试包括12,000个场景,涵盖单步和多步操作任务,如视觉问答(VQA)、具身问答(EQA)和视觉-语言-动作(VLA)任务。

拟议的 SHOP-VRB2 基准测试中的一个示例任务,展示了拟议的 MuBlE 环境的功能:合成场景和指令生成、执行符号作进行作,然后进行物理计算和逼真渲染。图像中标记了相应目标的符号作。

显示了 MuBlE 环境的各个模块的图表,包括如何将推理方法集成到 MuBlE 环境中。显示了 SHOP-VRB2 基准测试的示例说明和场景。传输数据的符号: 𝚃 - 查询文本, 𝙸 - 图像, 𝙶 - 场景图, 𝙿 - 物理观察, 𝙲 - 控制信号, 𝙰 - 要采取的原始作, 𝚁 - 返回的结果, 𝙶𝚃 - 地面实况数据。

MuBlE(黄色)和推理方法(橙色)之间交互的示例。图显示了选定的测量值 𝙿 和基于它们生成的基元作 𝙰 ,然后是环境中场景的相应更新。

与拟议数据集中的基准测试任务相对应的指令模板。

SHOP-VRB2 示例:使用 MuBlE 生成的自然语言模拟场景示例和相应指令(在数据集中,从左到右的指令属于表 II 中的任务 7、3 和 1)。

为与指令对应的作生成的视觉观察(选定帧)示例:从最重到最轻堆叠金属对象。(左)Blender 在 MuBlE 中渲染的模拟 YCB 场景,以及(右)Realsense 相机在真实实验期间使用在模拟 SHOP-VRB2 数据集上的 MuBlE 环境中预训练的推理捕获的相应真实 YCB 场景。

SHOP-VRB2 (sim) 和 YCB 数据集 (sim/real) 上基线方法的成功率。

使用 YCB 对象的真实设置(左)、使用估计姿势的相应 MuJoCo 模拟(中)以及 CosyPose 检测到的带有叠加灰色模型的彩色点云的 RViz 可视化(右)。

三、让我们一起来看一下MuBlE 的应用场景

场景:按照物体重量从重到轻堆叠物体

以前的工作方式:

以前,机器人在堆叠物体时,主要依赖于预设的程序和简单的传感器数据。比如,它可能会用一个普通的传感器大致估计物体的重量,然后按照一个固定的顺序去堆叠。但这种方法很不灵活,如果物体的重量差异不大,或者传感器精度不高,机器人很容易堆不好,甚至把物体弄倒。而且,它很难根据物体的实际重量动态调整堆叠顺序,更别提考虑堆叠的稳定性了。

现在可不一样了,来,看看

现在有了MuBlE环境,机器人可以更聪明地完成任务。首先,它会用高精度的传感器(比如在MuBlE环境中模拟的物理测量工具)去精确测量每个物体的重量。然后,它会根据测量结果,动态规划堆叠顺序,先把最重的物体放在下面,最轻的放在上面。同时,机器人还会实时考虑堆叠的稳定性。比如,如果它发现某个物体放上去后可能会让整个堆叠结构不稳定,它就会调整物体的位置或者重新选择堆叠顺序。

而且,MuBlE环境还能通过高质量的渲染和物理模拟,让机器人在虚拟环境中先进行练习。这样,机器人可以在模拟环境中不断试错,优化堆叠策略,直到找到最稳定、最高效的方法。这样一来,当机器人真正去操作真实物体时,成功率就会大大提高。

这种改进不仅让机器人在堆叠任务中表现得更智能,还为复杂机器人操作任务的训练和评估提供了更强大的工具。

更多开源的数据集,请打开遇见数据集:

遇见数据集-让每个数据集都被发现,让每一次遇见都有价值。遇见数据集,领先的千万级数据集搜索引擎,实时追踪全球数据集,助力把握数据要素市场。https://www.selectdataset.com/

相关文章:

MuBlE:为机器人操作任务规划提供了逼真的视觉观察和精确的物理建模

2025-03-05,由华为诺亚方舟实验室、捷克技术大学和帝国理工学院联合开发的MuBlE(MuJoCo and Blender simulation Environment)模拟环境和基准测试。通过结合MuJoCo物理引擎和Blender高质量渲染,为机器人操作任务规划提供了逼真的视…...

基于STC89C52的4x4矩阵键盘对应键值显示测试

引言 在众多单片机应用系统中,用户输入功能至关重要。4x4 矩阵键盘因其布局紧凑、按键数量适中,能有效节省 I/O 口资源,成为常用的输入设备。STC89C52 作为一款经典的 8 位单片机,以其丰富的外设资源和简易的开发流程,为矩阵键盘的应用提供了良好平台。同时,LCD1602 作为…...

android13打基础: timepicker控件

public class Ch4_TimePickerActivity extends AppCompatActivity implements TimePickerDialog.OnTimeSetListener {private TextView tv_time; // 声明一个文本视图对象private TimePicker tp_time; // 声明一个时间选择器对象Overrideprotected void onCreate(Nullable Bund…...

【虚拟仿真】Unity3D中实现激光/射线的发射/折射/反射的效果(3D版)

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享QQ群:398291828小红书小破站大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。...

【预测】-双注意LSTM自动编码器记录

预测-双注意LSTM自动编码器 1 预测-双注意LSTM自动编码器1.1 复现环境配置1.2 数据流记录1.2.1 **构建Dataset**(1) **X 的取数**(2) **y 的取数**(3) **target 的取数** 1.2.2 **举例说明**(1)**X 的取数**(2)**y 的取数**(3)**target 的取数** 1.2.3 **y 取数的问题****修正后…...

S32K3 MCU时钟部分

S32K3 MCU时钟部分 1.系统时钟发生器SCG 系统时钟发生器SCG模块提供MCU的系统时钟,SCG包含一个系统锁相环SPLL,一个慢速的内部参考时钟SIRC,一个快速内部参考时钟FIRC和系统振荡时钟SOSC. 时钟生成的电路提供了多个时钟分频器和选择器允许为不同的模块提供以特定于该模块的频率…...

java开发常用注解

在Java开发中,注解(Annotation)广泛用于简化代码、配置元数据、框架集成等场景。以下是不同场景下常用的注解分类整理: 一、核心Java注解(内置) Override 表示方法重写父类或接口的方法,编译器会…...

Doris vs ClickHouse 企业级实时分析引擎怎么选?

Apache Doris 与 ClickHouse 同作为OLAP领域的佼佼者,在企业级实时分析引擎该如何选择呢。本文将详细介绍 Doris 的优势,并通过直观对比展示两者的关键差异,同时分享一个企业成功用 Doris 替换 ClickHouse 的实践案例,帮助您做出明…...

解锁Egg.js:从Node.js小白到Web开发高手的进阶之路

一、Egg.js 是什么 在当今的 Web 开发领域,Node.js 凭借其事件驱动、非阻塞 I/O 的模型,在构建高性能、可扩展的网络应用方面展现出独特的优势 ,受到了广大开发者的青睐。它让 JavaScript 不仅局限于前端,还能在服务器端大展身手&…...

学习前端前需要了解的一些概念(详细版)

网站的定义与概述 网站(Website)是一个由网络服务器托管的、通过网络访问的、由相关网页和资源组成的集合。它为用户提供信息、服务或娱乐平台,是现代互联网的重要组成部分。网站的基本功能是展示信息和提供服务,用户可以通过浏览…...

分布式数据库中的四种透明性:逻辑透明、位置透明、分片透明和复制透明

四种透明性 1. 逻辑透明(Logical Transparency)2. 位置透明(Location Transparency)3. 分片透明(Fragmentation Transparency)4. 复制透明(Replication Transparency)注意点&#xf…...

SSM架构 +java后台 实现rtsp流转hls流,在前端html上实现视频播放

序言:书接上文,我们继续 SSM架构 NginxFFmpeg实现rtsp流转hls流,在前端html上实现视频播放 步骤一:把rtsp流转化为hls流,用Java代码进行转换 package com.tools;import java.io.BufferedReader; import java.io.IOExc…...

时序数据库 TDengine 化工新签约:存储降本一半,查询提速十倍

化工行业在数字化转型过程中面临数据接入复杂、实时性要求高、系统集成难度大等诸多挑战。福州力川数码科技有限公司科技依托深厚的行业积累,精准聚焦行业痛点,并携手 TDengine 提供高效解决方案。通过应用 TDengine,力川科技助力化工企业实现…...

信号完整性基础:高速信号的扩频时钟SSC测试

扩频时钟 SSC 是 Spread Spectrum Clock 的英文缩写,目前很多数字电路芯片都支持 SSC 功能,如:PCIE、USB3.0、SATA 等等。那么扩频时钟是用来做什么的呢? SSC背景: 扩频时钟是出于解决电磁干扰(EMI&#…...

深入理解与配置 Nginx TCP 日志输出

一、背景介绍 在现代网络架构中,Nginx 作为一款高性能的 Web 服务器和反向代理服务器,广泛应用于各种场景。除了对 HTTP/HTTPS 协议的出色支持,Nginx 从 1.9.0 版本开始引入了对 TCP 和 UDP 协议的代理功能,这使得它在处理数据库…...

Java为什么是跨平台的

一、Java虚拟机(JVM)的抽象层作用 JVAM是Java跨平台的核心技术。Java代码编译后生成字节码(.class文件),这些字节码并非直接由操作系统执行,而是由JVM解释或编译为特定平台的机器码。 屏蔽底层差异:JVM为不同操作系统提供统一的运行时环境,开…...

Sora与AGI的结合:从多模态模型到智能体推理的演进

全文目录: 开篇语前言前言:AGI的挑战与Sora的突破Sora的多模态学习架构:支撑智能体推理的基础1. **多模态学习的核心:信息融合与交叉理解**2. **智能体推理:从感知到决策** Sora如何推动AGI的发展:自主学习…...

一个针对煤炭市场的人工智能项目的开发示例

以下是一个针对煤炭市场的人工智能项目的开发示例,此项目将涵盖数据收集、数据预处理、模型构建、模型训练和预测等步骤。这里我们以预测煤炭价格为例,使用 Python 语言结合常见的机器学习库(如pandas、scikit - learn)来完成。 …...

QILSTE H6-S115FOKYG高亮橙光和黄绿光LED灯珠

型号:H6-S115FOKYG --- 在众多电子元件中,H6-S115FOKYG型号的LED以其独特的性能脱颖而出。这款产品采用了高亮橙光和黄绿光两种颜色,尺寸仅为1.6x1.5x0.55mm,却蕴含着强大的光电性能。其透明平面胶体设计,不仅美观&a…...

EasyDSS视频推拉流/直播点播平台:Mysql数据库接口报错502处理方法

视频推拉流/视频直播点播EasyDSS互联网直播平台支持一站式的上传、转码、直播、回放、嵌入、分享功能,具有多屏播放、自由组合、接口丰富等特点。平台可以为用户提供专业、稳定的直播推流、转码、分发和播放服务,全面满足超低延迟、超高画质、超大并发访…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

C++使用 new 来创建动态数组

问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中,我们经常会遇到这样的场景:一个对象的状态变化需要自动通知其他对象,比如: 电商平台中,商品库存变化时需要通知所有订阅该商品的用户;新闻网站中&#xff0…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析

Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...

MySQL JOIN 表过多的优化思路

当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...

【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error

在前端开发中,JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作(如 Promise、async/await 等),开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝(r…...

react更新页面数据,操作页面,双向数据绑定

// 路由不是组件的直接跳转use client,useEffect,useRouter,需3个结合, use client表示客户端 use client; import { Button,Card, Space,Tag,Table,message,Input } from antd; import { useEffect,useState } from react; impor…...