效果不错的论文介绍:Im2Flow2Act:-跨领域机器人操控技术

Im2Flow2Act: 跨领域机器人操控技术

简介

今天介绍一个比较惊艳的论文,Im2Flow2Act,可以预测应该怎么移动图象中的物体预测移动方法完成需要执行的动作任务。
Im2Flow2Act 是一个基于学习的机器人操控框架,旨在通过多种数据源为机器人提供操控技能,突破实体(如人类与机器人)和环境(如现实与模拟)之间的领域差距。该框架的核心概念是利用物体流动作为统一接口,连接不同的实体和训练环境,实现跨领域的技能泛化。Im2Flow2Act 包含两个主要组成部分:流生成网络和基于流的策略。通过结合人类视频数据和机器人模拟游戏数据,Im2Flow2Act 不需要依赖于在真实世界中对机器人进行昂贵的远程操控,展现了在多样任务中的高效学习能力。

Im2Flow2Act 的关键组件

  1. 流生成网络:通过训练人类演示视频,生成初始场景的物体流动,并结合任务描述,使机器人能够从物体流动的角度理解任务要求。流生成网络基于高层任务规划,支持刚性、关节式和可变形物体的操控任务。

  2. 基于流的策略:流生成网络生成的物体流动被用于训练基于流的模仿学习策略,策略通过模拟数据学习,能够将流动映射为机器人动作。这一策略能够将模拟训练中的机器人动作有效部署到真实世界中,极大地缩小了模拟与现实之间的差距。

技术优势

  • 任务描述的表达能力:物体流动不仅捕捉了物体姿态变化,还能处理关节运动和变形物体的任务。其多功能性使得一个通用的策略能够应对多样化的操控任务。

  • 与实体无关:物体流动专注于动作引起的物体状态变化,而不是具体的动作本身,因此它能够在不同实体间转移技能。

  • 模拟到现实的最小化差距:通过专注于物体的运动而非外观,物体流动表示缩小了从模拟到现实的差距,促进了技能的泛化。

实验与结果

在一系列操控任务上,包括刚性物体(如杯子)、关节式物体(如抽屉)、以及可变形物体(如布料),Im2Flow2Act 展现了卓越的表现,且与现有方法相比,在模拟环境和现实世界中的成功率均显著提高。在四个任务上的平均成功率达到了 81%。

开源代码

该技术的开源代码和相关资源可通过以下链接访问:Im2Flow2Act Github Repository


Flow as the Cross-Domain Manipulation Interface

摘要

本文提出了一种可扩展的学习框架——Im2Flow2Act,使机器人能够从多种数据源中学习操控技能。Im2Flow2Act的核心思想是使用物体流作为操控接口,弥合不同体现形式(如人类与机器人)以及训练环境(如现实世界与模拟环境)之间的领域差距。Im2Flow2Act包含两个部分:流生成网络流条件策略。流生成网络通过人类演示视频生成物体流,该流基于初始场景图像并结合任务描述进行生成。而流条件策略则利用模拟的机器人训练数据,将生成的物体流映射为机器人的动作,从而实现对目标物体的操控。通过使用物体流作为输入,这种策略可以以最小化的模拟到真实差距直接应用于现实环境。利用现实世界的人类视频和模拟的机器人数据,避免了在现实世界中对物理机器人进行远程操控的挑战,形成了一个面向多样任务的可扩展系统。展示了Im2Flow2Act在各种现实任务中的能力,包括对刚体、关节物体和可变形物体的操控。

关键词:机器人,学习,跨领域,跨体现

引言

扩展机器人学习的一个关键步骤是让机器人能够从各种数据源中学习,而不仅限于昂贵的现实世界机器人数据。之前的工作主要从两个方向着手解决这个问题:通过跨体现的视频学习和模拟机器人数据学习。虽然这两种方法均展示了有前景的进展,但各自面临显著的挑战。跨体现数据学习受制于较大的体现差距,而模拟数据面临显著的模拟到真实的差距,以及为特定任务建立环境的复杂性,尤其是涉及接触操作的任务。

在本文中,提出了Im2Flow2Act,一个可以高效地从多种数据源中教机器人学习操控技能的新框架。本文的核心思想是使用物体流——指代操控物体的独有运动,不包括背景或体现的运动——作为统一的接口连接这些数据源,实现对新技能的单次泛化(one-shot generalization)。本文的框架包括两个主要组件:流生成网络,该网络在跨体现演示视频上训练,用于生成任务特定的流;流条件策略,该策略在跨环境的模拟数据上训练,用于将生成的流转换为相应的机器人动作。

主要贡献
  1. 任务描述的表现力:物体流不仅捕捉了物体姿态的变化,还能描述关节动作和形变,能够表示广泛的物体和任务。
  2. 体现无关性:物体流描述了由动作引起的物体状态变化,而不是动作本身,这使其与体现形式无关。
  3. 最小的模拟到真实差距:与基于图像的表示相比,物体流关注的是运动而非外观,从而减小了模拟到真实的差距并有助于泛化。
  4. 解释性:与基于向量的状态表示不同,基于流的表示具有直观的物理意义,是人机交互的良好接口。
系统设计

为了利用物体流作为从多样数据源学习的统一接口,将系统设计为两个组件:

  • 流生成网络:该网络的目标是通过跨体现视频学习高层次的任务规划,包括不同类型的机器人和人类的演示。
  • 流条件策略:流条件模仿学习策略的目标是实现由流生成网络生成的物体流,主要关注低层次的执行操作。

方法

本文旨在建立一个框架,利用物体流作为统一的接口,使机器人能够使用跨环境和跨体现的数据来获得现实世界中的操控技能。本文的框架(见图2)由两个主要部分组成:一个在任务开始时运行的开放回路流生成网络,以及一个基于当前状态自适应行动的闭环流条件模仿学习策略。在推理过程中,流生成网络首先生成基于任务初始物体关键点的完整任务流,之后策略执行动作以重现生成的流。最终的系统能够在现实世界中对新技能和新物体实现单次泛化。本文的核心思想是使用物体流作为通用而富有表现力的接口来桥接:
在这里插入图片描述
在这里插入图片描述

  • 跨体现数据:在不同体现形式之间传递动作通常因体现差距而受到限制。然而,物体流封装了独立于体现形式的任务知识。为了利用这一点,本文开发了一个流生成网络,专注于从跨体现视频中提取物体流。

  • 跨环境数据:在本工作中,跨环境主要指模拟和现实世界环境。视觉不一致性,例如场景背景和物体材质的不同,在从模拟到现实环境的策略转移中构成挑战。而物体流捕捉的是运动动力学(包括物体姿态、关节运动和变形的变化),这些特性在模拟和现实环境中是一致的,因此为策略学习提供了理想的接口。本文的流条件模仿学习策略完全基于模拟的游戏数据进行训练,游戏数据中的动作随机性有助于理解动作与物体流之间的关系,从而减少对特定任务模拟环境的需求。

3.1 流生成网络

流生成网络的主要思想是将顺序排列的物体流形成结构化的矩形流图像,以便更好地利用预训练的图像生成模型和视频生成架构进行更高效的训练。具体来说,本文通过Grounding DINO从初始RGB帧中获取目标物体的边界框,然后在边界框内均匀采样,得到一个矩形流 ( F_0 \in R^{3 \times H \times W} ),具有 ( H \times W ) 的空间分辨率。前两个通道代表物体关键点在图像空间中的 ( u, v ) 坐标,第三个通道表示它们的可见性。接着本文利用视频中的点跟踪方法TAPIR获取时间步长 ( T ) 的流序列 ( F_{1:T} \in R^{3 \times T \times H \times W} )。使用这种流表示,利用现有的扩散视频生成架构AnimatedDiff作为流生成网络,通过初始RGB帧和任务描述生成物体流。生成的流随后经过运动滤波处理,仅保留物体上的关键点,最终得到面向物体的任务流。

压缩流至潜空间

为了使机器人能够实现对物体的精细控制,高精度的流是必需的。然而,高分辨率生成物体流会带来显著的计算复杂性并导致生成速度低下。受到先前工作的启发,本文提出将物体流压缩到具有较低空间维度的潜空间中,并在这个潜空间中训练生成模型。StableDiffusion(SD)通过使用VQGAN提出的自动编码器(AE)对输入图像进行压缩,在大量RGB图像上训练得到分布良好的潜空间。本文探索了使用AE编码流的想法,并保持编码器 ( E_\varphi(\cdot) ) 不变,略微微调预训练的解码器 ( D_\theta(\cdot) ),以便更好地适应流图像。

流生成的视频扩散模型

由于共享了与StableDiffusion相同的潜空间,因此可以利用预训练的SD为流生成提供强大的内容先验。因此,选择沿时间轴扩展SD网络进行流生成,而不是从零开始训练模型。然后在SD模型中插入由Animatediff提出的运动模块层,以捕捉关键点位置在图像空间中的时间变化,形成物体流序列的运动动力学。

3.2 流条件模仿学习策略

本文的模仿学习策略 ( p(a_t|F_{0:T}, s_t, \rho_t) ) 以完整任务的物体流 ( F_{0:T} )(即任务流)、当前状态表示 ( s_t ) 和机器人本体感知 ( \rho_t ) 作为输入,输出从当前时间 ( t ) 开始的一系列动作 ( {a_t, …, a_{t+L}} ),长度为 ( L )。机器人动作 ( a_t ) 包括在笛卡尔空间中的6-自由度末端执行器位置以及1-自由度的抓手开/闭状态。状态表示 ( s_t ) 由关键点位置 ( f_t )(包含时间 ( t ) 时图像空间中 ( N ) 个关键点的位置)和初始帧中 ( N ) 个关键点的3D坐标 ( x_0 ) 构成。

在推理过程中,任务流 ( F ) 在任务开始时由流生成网络生成。在机器人操控过程中利用在线点跟踪算法获取相同集合关键点的 ( f_t )。策略包括以下组件:状态编码器 ( \varphi ) 负责编码关键点并生成当前状态表示,时间对齐模块 ( \psi ) 负责根据当前关键点位置和任务流推断剩余任务流,最后通过扩散动作头生成机器人动作。

4.1 实验细节

训练数据:在模拟环境中收集机器人游戏数据,并在现实世界中收集人类手动演示数据。

  1. 在模拟环境中,使用UR5e机器人收集了与刚性、关节式和可变形物体相关的游戏数据,这些数据是通过一组预定义的随机启发式动作进行探索的。每个探索策略的详细信息可在补充材料中找到。使用所有的游戏数据训练一个模仿学习策略。
  2. 在现实世界中,为每个任务收集了100次人类手动演示。将这些数据混合在一起用于训练流生成模型。

对比实验。本文方法与以下基线进行对比:

  • Grid Flow:与ATM类似,用均匀采样的关键点集替换了初始物体关键点,这些关键点遍布整个图像。
  • 启发式:启发式动作策略选择物体接触点,并在未来物体流动上应用姿态估计方法,例如RANSAC(需要3D流动)以推断机器人动作,类似于General Flow和Track2Act。该基线检查了是否需要一个基于学习的策略将流动转化为动作。
  • 无对齐:为了验证对齐模块设计的必要性,移除了对齐模型 ( \psi ),并让策略直接基于完整任务流进行条件推理。

4.2 主要发现

表1:模拟结果(%)

任务GridFlow [13]启发式 [14, 16]无对齐Im2Flow2Act
取放307080100
倒水25508595
抽屉35309095
布料4509090

物体流动能够有效连接不同数据源。Im2Flow2Act在模拟环境和真实世界中均表现出最佳性能,如表1和表2所示。此外,与模拟相比,在现实世界中的性能平均仅下降了15%。如图4所示,本文的学习策略能够在刚性、关节式和可变形物体上大致遵循生成的流动,完成所需的任务。这表明,物体流动是连接跨实体和跨环境数据源的良好接口。
在这里插入图片描述

基于学习的策略在将流动映射为动作时是必要的。为了将生成的流动映射为机器人动作,本文使用了学习的策略和对齐网络。相比之下,先前的工作使用启发式策略从流动中计算机器人动作。与它们相比,即使提供了真实的三维流动和最佳抓取姿态(这些并不是本文的方法所需要的),基于启发式的策略在模拟环境中刚性物体的任务(如取放和倒水)中表现良好。然而,在操控可变形和关节式物体时,无论是在模拟环境还是现实世界中,其表现都较差,因为启发式方法的性能很大程度上依赖于摄像机的视角。例如,在打开抽屉的任务中,如果在摄像机视角下的点云中心不是一个好的接触点,机器人会将抽屉推回去(见图5)。在现实世界中(见表2),注意到基于启发式的方法频繁触发UR5e的紧急停止,因为UR5e没有阻抗控制,因此姿态估计中的小误差可能导致任务失败。这表明,基于学习的策略在将流动转化为精确且安全的动作时是必要的。


表2:现实世界结果(%)

任务启发式 [14, 16]无对齐Im2Flow2Act
取放305590
倒水204080
抽屉408085
布料06070

在从跨实体演示中学习时,物体流动至关重要。通过将方法中的物体流动替换为ATM中提出的均匀网格流,来比较初始关键点采样的设计决策。在表1中,观察到其性能明显低于本文的方法,因为均匀流动还捕捉到了实体本身的运动。这导致在推理时,由于演示由其他实体提供,策略输入超出了分布范围。这表明,物体流动相比于均匀网格流动,为跨实体演示提供了更好的接口。

对齐模块在利用无结构的游戏数据时是必要的。在表1中,Im2Flow2Act无对齐的性能在模拟中仅略有下降。然而,观察到机器人的执行变得不顺畅,出现了许多不必要的动作,如突然的旋转。这表明,策略无法根据任务流对行为进行对齐,只是在尝试找到游戏数据中最接近的轨迹。此外,在现实世界中,它的性能显著下降(表2),尤其是在取放和倒水任务中,因为人类产生的物体流动可能与模拟中的流动有所不同。对于策略而言,在潜在空间中找到相似的轨迹具有挑战性,导致出现随机轨迹,如图5所示。而Im2Flow2Act使用对齐模块则没有这个问题,因为额外的对齐监督使潜在空间具有更精细的粒度,从而实现顺畅的插值。


实验对比

将Im2Flow2Act与基于启发式方法、无对齐的流动策略等进行了对比实验,结果显示Im2Flow2Act在多种任务中均取得了显著的成功率,且能够更好地跨越实体和环境的差距,特别是在复杂任务(如折叠布料)中展现了优势。


结论

Im2Flow2Act 是一个可扩展的学习框架,能够通过物体流动作为统一接口,从多样化的数据源中学习复杂的机器人操控技能。本文的实验结果表明,该系统能够在多种任务中取得高效的操控能力,展示了从跨领域数据源中学习的潜力。


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

《深度学习》OpenCV EigenFaces算法 人脸识别

目录 一、EigenFaces算法 1、什么是EigenFaces算法 2、原理 3、实现步骤 1)数据预处理 2)特征提取 3)构建模型 4)识别 4、优缺点 1)优点 2)缺点 二、案例实现 1、完整代码 运行结果&#xff…

Star Tower:智能合约的安全基石与未来引领者

在区块链技术的快速发展中,智能合约作为新兴的应用形式,正逐渐成为区块链领域的重要组成部分。然而,智能合约的可靠性问题一直是用户最为关心的焦点之一。为此,Star Tower以其强大的技术实力和全面的安全保障措施,为智…

算法之随机数

概述 用Java的Math.random()方法生成随机数。此方法为真随机。 代码 public static void main(String[] args) {int size 100;int cycle 1000000;int count 0;int target 1;for(int i 0; i < cycle; i){int r (int) (Math.random() * size);if(r target){count;}}S…

微信小程序文本收起展开

这里写自定义目录标题 微信小程序文本收起展开常见问题的梯形背景框 微信小程序文本收起展开 参考 https://juejin.cn/post/6963904955262435336 <!-- 常见问题解答 --><view classcontentBottom><view classBottomFirst><text id0 data-id0 class&quo…

SSM框架实战小项目:打造高效用户管理系统 day3

前言 在前两篇博客中&#xff0c;后台已经搭建完毕&#xff0c;现在需要设计一下前端页面 webapp下的项目结构图 创建ftl文件夹&#xff0c;导入css和js 因为我们在后台的视图解析器中&#xff0c;设置了页面解析器&#xff0c;跳转路径为/ftl/*.ftl&#xff0c;所以需要ftl文件…

SpringBoot日常:封装redission starter组件

文章目录 逻辑实现POM.xmlRedissionConfigRedissionPropertiesRedissionUtilsspring.factories 功能测试application.yml配置POM.xmlTestController运行测试 本章内容主要介绍如何通过封装相关的redission连接配置和工具类&#xff0c;最终完成一个通用的redission starter。并…

解决安装赤店供应链云仓系统提示:“对不起,本网站系统更新已到期,请联系官方niushop客服续费!”

最近一个客户找我说自己从第三方购买的赤店云仓系统安装的时候提示&#xff1a;“对不起&#xff0c;本网站系统更新已到期&#xff0c;请联系官方x’x’x&#xff01;”&#xff0c;第一感觉肯定是授xxx权验证的问题&#xff0c;问询得知他是第三方买的非商业版&#xff0c;那…

基于Java微信小程序的的儿童阅读系统的详细设计和实现(源码+lw+部署文档+讲解等)

详细视频演示 请联系我获取更详细的演示视频 项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念&#xff0c;提供了一套默认的配置&#xff0c;让开发者可以更专注于业务逻辑而不…

2024HarmonyOS应用开发者高级认证 最新题库第二部分

单选题 1.以下哪个装饰器用来表示并发共享对象。&#xff08;D&#xff09; AShared BState CStyle DSendable 2.hiAppEvent提供的Watcher接口&#xff0c;需要订阅到OS的崩溃事件&#xff0c;正确的实现方式(选下面这个) hiAppEvent.addWatcher({ name:"watcher&…

1.DBeaver连接hive数据库

1.hive开启远程服务&#xff0c;linux中直接输入&#xff1a;hiveserver2 2.解压dbeaver和hive-jdbc-2.1.1.zip 3.双击打开 4.数据库&#xff0c;新建连接 5.搜索hive 6.配置参数 7.编辑驱动设置 8.添加jar包 9.测试连接 10.右击&#xff0c;新建sql编辑器 11.执行sql 12.调整字…

重磅!继“总环”后,又1本TOP刊(IF=6.9)被On Hold!

【SciencePub学术】继Science of the Total Environment&#xff08;总环&#xff09;后&#xff0c;又突发一本中科院2区TOP刊被On Hold&#xff01;现在高分区期刊似乎成为了科睿唯安的重点关注对象&#xff0c;主打的就是一个“绝不姑息”。 来源&#xff1a;科睿唯安 Biome…

【计算机网络 - 基础问题】每日 3 题(五十二)

✍个人博客&#xff1a;https://blog.csdn.net/Newin2020?typeblog &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞…

《黑神话悟空》各章节boss顺序汇总

第一章BOSS顺序&#xff1a; 1、牯护院&#xff1a;犀牛精&#xff0c;位于苍狼岭娟&#xff0c;击败后能获得定身术。 2、广智&#xff1a;火刀狼&#xff0c; 位于观音禅院&#xff0c;击败后获得广智变身&#xff0c;记得敲钟。 3、蓝皮幽魂&#xff1a;蓝皮大头&#xff0…

力扣 困难 52.N皇后II

文章目录 题目介绍题解 题目介绍 题解 法一&#xff1a;返回51题N皇后List的长度 法二&#xff1a; class Solution {private int n, ans;private boolean[] onPath, diag1, diag2;public int totalNQueens(int n) {this.n n;onPath new boolean[n];diag1 new boolean[n * …

Android 开发 TabLayout 自定义指示器长度

前言 原生 TabLayout 的指示器长度是充满整个屏幕的&#xff0c;但在实际开发中 UI 会设计成 指示器的长度等于或者小于标题字体长度&#xff0c;如图 如果设置成跟字体长度一样即使用 API: mTabLayout.setTabIndicatorFullWidth(false);或者在 xml 布局文件中的TabLayout标签…

【高分论文密码】AI赋能大尺度空间模拟与不确定性分析及数字制图

随着AI大语言模型的广泛应用&#xff0c;大尺度空间模拟预测与数字制图技术在不确定性分析中的重要性日益凸显。这些技术已经成为撰写高分SCI论文的关键工具&#xff0c;被誉为“高分论文密码”。大尺度模拟技术能够从不同的时空尺度揭示农业生态环境领域的内在机理和时空变化规…

Apache Hive 帮助文档

Apache Hive 帮助文档 由于教学需要&#xff0c;本文主要介绍 hive 的 基础 和 哪里可以看帮助文档的介绍&#xff0c; 是一篇对帮助文档整理的文章 官方网站 文章目录 Apache Hive 帮助文档什么是 Hive&#xff1f;Hive 下载Hive帮助文档 什么是 Hive&#xff1f; Apache Hi…

计算机专业大学四年的学习路线(非常详细),零基础入门到精通,看这一篇就够了

前言 许多学子选择踏上计算机这条充满挑战与机遇的道路。但在大学四年中&#xff0c;如何规划自己的学习路线&#xff0c;才能在毕业时脱颖而出&#xff0c;成为行业的佼佼者呢&#xff1f; 第一学年&#xff1a;基础知识的奠基 1.1 课程安排 在大学的第一年&#xff0c;重…

WebGl 实现图片平移、缩放和旋转

1.图片平移 在WebGL中实现图片平移&#xff0c;可以通过修改顶点着色器中的顶点位置来实现。平移的基本思想是将每个顶点的位置向量沿着指定的方向&#xff08;通常是x轴和y轴&#xff09;进行平移。在顶点着色器中&#xff0c;可以通过添加或减去一个统一的偏移量&#xff08…

Java的买家秀探秘:API数据的优雅捕获

在编程世界的某个角落&#xff0c;Java特工正坐在他的高科技办公室里&#xff0c;沉浸在代码的海洋中。今天&#xff0c;他接到了一个有趣的任务&#xff1a;获取买家秀的API数据。这不仅是一次技术的挑战&#xff0c;更是一次深入了解买家心声的机会。Java特工&#xff0c;这位…