RoboBrain:从抽象到具体的机器人操作统一大脑模型
25年2月来自北大、北京智源、中科院自动化所等的论文“RoboBrain: A Unified Brain Model for Robotic Manipulation from Abstract to Concrete”。
目前的多模态大语言模型(MLLM) 缺少三项必备的机器人大脑能力:规划能力,将复杂的操作指令分解为可管理的子任务;affordance感知,识别和解释交互目标affordance的能力;轨迹预测,预测成功执行所需的完整操作轨迹。为了增强机器人大脑从抽象到具体的核能力,引入 ShareRobot,这是一个高质量的异构数据集,可标记任务规划、目标affordance和末端执行器轨迹等多维信息。ShareRobot 的多样性和准确性,经过三位人类注释员的改进。基于该数据集,开发 RoboBrain一个基于 MLLM 的模型,它结合机器人和通用多模态数据,采用多阶段训练策略,并结合长视频和高分辨率图像来提高其机器人操控能力。
RoboBrain 如下所示:

为了增强RoboBrain的规划、感知和轨迹预测能力,开发一个ShareRobot的数据集,这是一个专为机器人操作任务设计的大规模、细粒度的数据集。数据集的生成过程如图所示:

ShareRobot 是一个综合性数据集,将抽象概念转化为具体动作,促进更高效的任务执行。ShareRobot 数据集的主要特点包括:
• 细粒度。与仅提供通用高级任务描述的 Open X-Embodiment 数据集[53]不同,ShareRobot 中的每个数据点都包含与各个帧相关的详细低级规划指令。这种特殊性增强模型在正确的时刻准确执行任务的能力。
• 多维。为了增强 RoboBrain 从抽象到具体的能力,标记任务规划、目标affordance和末端执行器轨迹,从而提高任务处理的灵活性和精确度。
• 高质量。为从 Open-X-Embodiment 数据集[53]中选择数据建立严格的标准,重点关注高分辨率、准确描述、成功执行任务、可见affordance和清晰的运动轨迹。基于这些标准,验证 51,403 个实例以确保高质量,从而为 RoboBrain 的核心功能奠定基础。
• 大规模。ShareRobot 拥有 1,028,060 个问答对,是最大的开源任务规划、可供性预测和轨迹预测数据集,可以更深入地理解从抽象到具体的复杂关系。
• 丰富的多样性。与 RoboVQA[60] 数据集的有限场景相比,ShareRobot 具有 102 个场景,涵盖 12 个实施例和 107 种原子任务。这种多样性使 MLLM 能够从不同的现实世界环境中学习,从而增强复杂、多步骤规划的稳健性。
• 易于扩展。数据生成管道具有高可扩展性,随着新的机器人实具身、任务类型和环境的发展,可轻松扩展。这种适应性确保 ShareRobot 数据集可以支持日益复杂的操作任务。
标注
从每个机器人操作演示中提取 30 帧。用这些帧及其高级描述,使用 Gemini [63] 将它们分解为低级规划指令。然后,三位注释者审查并完善这些指令,以确保标记的准确性。低级规划数据的格式与 RoboVQA [60] 结构一致,用于模型训练,使用 RoboVQA 中 10 种问题类型的问题模板。此过程将 51,403 个低级规划条目转换为 1,028,060 个问答对,注释者监控数据生成以维护数据集的完整性。
从数据集中筛选出 8,511 张图像,并为每张图像标注affordance区域。对于每个 30 帧的演示,在第一帧中标记可affordance,对应于末端执行器和目标之间的接触区域。确定接触帧,即末端执行器首次接触目标的位置,并将第一帧中的真值边框标记为 {l(x), l(y), r(x), r(y)},其中 {l(x), l(y)} 是左上角坐标,{r(x), r^(y)} 是右下角坐标。
用边框注释 8,511 张夹持器图像,与affordance边框格式保持一致。每个末端执行器都标有三部分:整个夹持器、左手指和右手指。这些数据用于计算轨迹位置和训练夹持器检测器。轨迹位置通过平均左右手指的边框来确定,从而可以有效地标记其他数据。
目标是使多模态大语言模型 (MLLM) 能够理解抽象指令并明确输出目标affordance区域和潜操作轨迹,从而促进从抽象到具体的过渡。采用多阶段训练策略:第一阶段专注于通用 OneVision (OV) 训练,以开发具有强大理解和指令遵循能力的基础 MLLM。第二阶段,即机器人训练阶段,旨在增强 RoboBrain 的核心能力,使其从抽象到具体。
RoboBrain 包含三个模块:规划基础模型、affordance 感知 A-LoRA 模型和轨迹预测 T-LoRA 模型。在实际应用中,模型首先生成详细规划,然后将其拆分为子任务描述以执行affordance感知和轨迹预测。RoboBrain 流程如图 所示:

用 LLaVA 作为 RoboBrain 的基础模型,它由三个主要模块组成:视觉编码器(ViT)g(·)、投影器 h(·)和大语言模型(LLM)f(·)。具体来说,用 SigLIP [74]、2 层 MLP [39] 和 Qwen2.5-7B-Instruct [64]。给定图像或视频 X_v 作为视觉输入,ViT 将其编码为视觉特征 Z_v = g(X_v),然后通过投影器将其映射到 LLM 的语义空间,得到一系列视觉tokens H_v = h(Z_v)。最后,LLM 根据人类语言指令 X_t 和 H_v 以自回归方式生成文本响应。
Affordance是指人手与目标接触的区域。在交互过程中,人类会本能地与特定区域内的各种目标互动。利用边框来表示affordance。正式地,考虑一个由多个目标及其affordance组成的图像 I:O_i = {A0_i , A1_i , …, AN_i },其中第 i 个目标拥有 N 个affordance。Affordance的格式定义为 {l(x), l(y), r(x), r(y)},其中 {l(x), l(y)} 表示左上角坐标,而 {r(x), r^(y)} 是右下角坐标。
“轨迹”一词是指 [21] 中提出的 2D 视觉轨迹概念。将轨迹航点定义为一系列 2D 坐标,表示整个过程中末端执行器或手的运动。形式上,在时间步 t,轨迹航点可以表示为 P_t:N = {(x_i, y_i) | i = t, t + 1,…,N},其中 (x_i,y _i) 表示视觉轨迹中的第 i 个坐标,N 表示episode中的总时间步数。
训练
第 1 阶段:通用 OV 训练在第 1 阶段,用 LLaVA-OneVision [34] 的训练数据和策略,构建了具有通用多模态理解和视觉指令跟踪能力的基础模型。这为第 2 阶段增强模型的机器人操作规划能力奠定基础。
在第 1 阶段,用 LCS-558K 数据集 [10, 59] 中的图文数据来训练 Projector,促进视觉特征 Zv 与 LLM 语义特征 Hv 的对齐。在第 1.5 阶段,用 4M 高质量图文数据训练整个模型,以增强模型的多模态常识理解能力。在第 2 阶段,用来自 LLaVA-OneVision-Data [34] 的 3.2M 单图像数据和 1.6M 图像和视频数据进一步训练整个模型,旨在增强 RoboBrain 的指令遵循能力并提高对高分辨率图像和视频的理解。
第 2 阶段:机器人训练在第 2 阶段,以第 1 阶段开发的稳健多模态基础模型为基础,为机器人操作规划创建更强大的模型。具体而言,目标是让 RoboBrain 理解复杂、抽象的指令,支持对历史帧信息和高分辨率图像的感知,并在预测潜操作轨迹的同时输出目标affordance区域。这将有助于操作规划任务从抽象到具体的转变。
在第 3 阶段,收集 1.3M 机器人数据的数据集,以提高模型的机器人操作规划能力。具体来说,这些数据来源于 RoboVQA-800K [60]、ScanView-318K 包括 MMScan-224K [24, 47]、3RScan-43K[24, 67]、ScanQA-25K [4, 24]、SQA3d-26K [24, 48] 以及本文介绍的 ShareRobot-200K 子集。这些数据集包含大量的场景扫描图像数据、长视频数据和高分辨率数据,以支持模型感知不同环境的能力。此外,ShareRobot 数据集中细粒度、高质量的规划数据进一步增强 RoboBrain 的机器人操控规划能力。为了缓解灾难性遗忘问题 [75],从第 1 阶段选取约 1.7M 的高质量图文数据子集,与第 3 阶段收集的机器人数据混合进行训练,并相应地调整整个模型。
在第 4 阶段,利用 ShareRobot 数据集中标注的 affordance 和轨迹数据,进一步增强模型根据指令感知目标affordance和预测操作轨迹的能力。这是通过引入 LoRA [23] 模块进行训练来实现细粒度规划能力的。
如表所示:各阶段的训练参数细节

在整个训练阶段,采用 Zero3 [58] 分布式训练策略,所有实验都在一个服务器集群上进行,每个服务器配备 8×A800 GPU。
相关文章:
RoboBrain:从抽象到具体的机器人操作统一大脑模型
25年2月来自北大、北京智源、中科院自动化所等的论文“RoboBrain: A Unified Brain Model for Robotic Manipulation from Abstract to Concrete”。 目前的多模态大语言模型(MLLM) 缺少三项必备的机器人大脑能力:规划能力,将复杂…...
DeepSeek本地接口调用(Ollama)
前言 上篇博文,我们通过Ollama搭建了本地的DeepSeek模型,本文主要是方便开发人员,如何通过代码或工具,通过API接口调用本地deepSeek模型 前文:DeepSeek-R1本地搭建_deepseek 本地部署-CSDN博客 注:本文不仅…...
数据库索引的作用:提升数据检索效率的关键
在数据库管理系统中,数据如同浩瀚海洋中的宝藏,如何快速准确地找到所需信息,成为了一个关键问题。这时候,数据库索引就如同一张精确的航海图,指引着我们高效地定位数据。那么,数据库索引究竟是什么…...
高效便捷的 Spring Boot 通用控制器框架
✨高效便捷的 Spring Boot 通用控制器框架✨ 一、简介 在 Java 开发中,重复性的基础接口编写工作常令人头疼。本框架基于 Spring Boot 与 MyBatis-Plus,精心构建通用控制器类BaseController,旨在为开发者排忧解难,极大减少繁琐的…...
SQL_语法
1 数据库 1.1 新增 create database [if not exists] 数据库名; 1.2 删除 drop database [if exists] 数据库名; 1.3 查询 (1) 查看所有数据库 show databases; (2) 查看当前数据库下的所有表 show tables; 2 数据表 2.1 新增 (1) 创建表 create table [if not exists…...
在 CentOS 上,常用几种方法来确保 Python 脚本在断开终端后继续运行
在 CentOS 上,你可以使用以下几种方法来确保 Python 脚本在断开终端后继续运行: 1. 使用 nohup 命令 nohup 命令可以让进程在终端关闭后继续运行。 nohup python main.py > output.log 2>&1 &nohup:忽略挂断信号,…...
全面回顾复习——C++语法篇1(基于牛客网C++题库)
注:牛客网允许使用万能头文件#include<bits/stdc.h> 1、求类型长度——sizeof()函数 2、将浮点数四舍五入——round()函数——前面如果加上static_cast会更安全一些 在C语言中可以使用printf(“.0l…...
一、数据库 MySQL 基础学习 (上)
一、数据库的概念 DB 数据库(database):存储数据的“仓库”,保存一系列有组织的数据 DBMS:数据库管理系统(Database Management System)。数据库是通过 DBMS 创建和操作的容器 创建的 DBMS: MySQL、Oracl…...
基于Django创建一个WEB后端框架(DjangoRestFramework+MySQL)流程
一、Django项目初始化 1.创建Django项目 Django-admin startproject 项目名 2.安装 djangorestframework pip install djangorestframework 解释: Django REST Framework (DRF) 是基于 Django 框架的一个强大的 Web API 框架,提供了多种工具和库来构建 RESTf…...
AutoGen学习笔记系列(七)Tutorial - Managing State
这篇文章瞄准的是AutoGen框架官方教程中的 Tutorial 章节中的 Managing State 小节,主要介绍了如何对Team内的状态管理,特别是如何 保存 与 加载 状态,这对于Agent系统而言非常重要。 官网链接:https://microsoft.github.io/auto…...
Redis渐进式遍历数据库
目录 渐进式遍历 数据库 渐进式遍历 keys*可以一次性的把整个redis中所有key都获取到,这个操作是非常危险的,因为可能一下获取到太多的key,阻塞redis服务器。要想很好的获取到所有的key,又不想出现卡死的情况,就可以…...
机器学习中的线性代数:奇异值分解 SVD
线性代数 奇异值分解(SVD) 参考资料: 超详细!彻底搞懂矩阵奇异值分解(SVD)本质计算应用!_哔哩哔哩_bilibili 非常好的视频,本文内容主要来自于该视频,在此表示感谢&#…...
【每日八股】计算机网络篇(三):IP
目录 DNS 查询服务器的基本流程DNS 采用 TCP 还是 UDP,为什么?默认使用 UDP 的原因需要使用 TCP 的场景?总结 DNS 劫持是什么?解决办法?浏览器输入一个 URL 到显示器显示的过程?URL 解析TCP 连接HTTP 请求页…...
6. PromQL的metric name(在node exporter复制下来交给AI解释的)
目录 前言: Go 运行时指标: Go 内存统计指标: CPU 指标: 内存指标: 磁盘指标: 网络指标: 系统指标: 前言: 写这个得目的是为了后续方便查询,因为在pro…...
基于单片机的速度里程表设计(论文+源码)
1 系统方案 本次智能速度里程表的总体架构如图2-1所示,在硬件上包括了STC89C52单片机,电机,显示模块,报警模块,DS1302时钟模块,超速检测模块,按键等等。在软件设计功能的功能上,按下…...
计算机毕业设计Python+Django+Vue3微博数据舆情分析平台 微博用户画像系统 微博舆情可视化(源码+ 文档+PPT+讲解)
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
nvidia驱动升级-ubuntu 1804
升级 1.从官网下载*.run驱动文件 2.卸载原始驱动 sudo /usr/bin/nvidia-uninstall sudo apt-get --purge remove nvidia-\* # 可能不需要加-\ sudo apt-get purge nvidia-\* # 可能不需要加-\ sudo apt-get purge libnvidia-\* # 可能不需要…...
如何使用SSH命令安全连接并转发端口到远程服务器
ssh -p 22546 rootconnect.westc.gpuhub.com d6IS/mQKq/iG ssh -CNgv -L 6006:127.0.0.1:6006 rootconnect.westc.gpuhub.com -p 22546 第一条命令:用于登录远程服务器,进行交互式操作。第二条命令:用于建立 SSH 隧道,进行端口转…...
2025年天梯赛第1场选拔赛
目录 A:徐老师的积木山峰 B:徐老师的最长上升子序列 C:徐老师的机器命令 D:徐老师的地下堡 E:徐老师的新鲜羊腿 F:徐老师的黄金矿工 G:徐老师的成绩统计 H:春节糖果 I:幸运函数 J:好坏钥匙 A:徐老师的积木山峰 徐老师有 n 块积木排成一排,从左往右数编号依次为 1∼…...
06实现相册小项目
一、涉及的知识点: 1、bmp的显示 2、双向循环链表实现图片的轮播 3、触摸屏的滑动算法实现图片的切换 4、目录操作用以检索bmp图片文件 5、项目的优化方向 (1)可以实现不同图片大小的显示 (2)图片轮播的时候可以…...
Dify+DeepSeek | Excel数据一键可视化(创建步骤案例)(echarts助手.yml)(文档表格转图表、根据表格绘制图表、Excel绘制图表)
Dify部署参考:Dify Rag部署并集成在线Deepseek教程(Windows、部署Rag、安装Ragan安装、安装Dify安装、安装ollama安装) DifyDeepSeek - Excel数据一键可视化(创建步骤案例)-DSL工程文件(可直接导入&#x…...
RK3568平台(GPIO篇)Android平台集成libgpiod库
一.libgpiod 介绍 libgpiod 是一个用于与 Linux GPIO(通用输入输出)子系统交互的用户空间库。它提供了一组简单且高效的 API,允许开发者通过用户空间程序控制 GPIO 引脚,而无需编写内核模块或直接操作 /sys/class/gpio 接口。libgpiod 是 Linux 内核推荐的 GPIO 访问方式,…...
API和SDK
API(Application Programming Interface)和 SDK(Software Development Kit)是软件开发中密切相关的概念,但它们之间存在一些区别: 定义 API :是一组预先定义的函数、协议和规范,用…...
CR电路介绍
CR电路(RC电路)介绍 CR电路(电阻-电容电路)由电阻(R)和电容(C)组成,是电子系统中的基础模块,广泛用于信号处理、定时、滤波等场景。以下是其核心功能、实现方…...
安装与配置 STK-MATLAB 接口
STK版本为11.6 Matlab版本为R2018a STK 提供 Connect 和 Object Model (COM) 两种接口与 MATLAB 交互,推荐使用 COM接口进行二次开发。 确保安装了 STK,并且 MATLAB 可以访问 STK Object Model。 在 MATLAB 中运行: % 添加 STK COM 库&#…...
NUMA架构介绍
NUMA 架构详解 NUMA(Non-Uniform Memory Access,非统一内存访问) 是一种多处理器系统的内存设计架构,旨在解决多处理器系统中内存访问延迟不一致的问题。与传统的 UMA(Uniform Memory Access,统一内存访问…...
计算机二级MS之PPT
声明:跟着大猫和小黑学习随便记下一些笔记供大家参考,二级考试之前将持续更新,希望大家二级都能轻轻松松过啦,过了二级的大神也可以在评论区留言给点建议,感谢大家!! 文章目录 考题难点1cm25px…...
python中采用opencv作常规的图片处理的方法~~~
在python中,我们经常会需要对图片做灰度/二值化/模糊等处理,这时候opencv就是我们的好帮手了,下面我来介绍一下相关用法: 首先,需要安装opencv-python库: 然后,在你的代码中引用: import cv2 最后就是代码了&#x…...
deepseek在pycharm 中的配置和简单应用
对于最常用的调试python脚本开发环境pycharm,如何接入deepseek是我们窥探ai代码编写的第一步,熟悉起来总没坏处。 1、官网安装pycharm社区版(免费),如果需要安装专业版,需要另外找破解码。 2、安装Ollama…...
Redis数据结构,渐进式遍历,数据库管理
1.Redis的其他数据结构 前面我们主要讲述了Redis中比较常用的集中数据结构String,List,Hash,Set,Zset,但这并不代表Redis只用这几种数据结构还有如Streams,Geospatial,Hyperloglog,…...
