OmniH2O——通用灵巧且可全身远程操作并学习的人形机器人(其前身H2O是HumanPlus的重要参考)

前言

由于我司一直在针对各个工厂、公司、客户特定的业务场景,做解决方案或定制开发,所以针对每一个场景,我们都会反复考虑用什么样的机器人做定制开发

于此,便不可避免的追踪国内外最前沿的机器人技术进展,本来准备在上一篇博客《VLM驱动机器狗——从UMI on Legs到Helpful DoggyBot:分别把机械臂装到机器狗背上、夹爪装到机器狗嘴里》之后,解读今天上午看到的字节刚发的机器人大模型GR2

当时,还发微博说,头一次看paper不看正文,而是直奔其References:​看有没有我预想中的文献,说明咱看paper的能力相比去年强很多了

没想到

  1. 晚上,一在上海一机器人公司的朋友,又发我了一个链接:OmniH2O: Universal and Dexterous Human-to-Humanoid Whole-Body Teleoperation and Learning,并说这个挺可以的

    我回复他说,这个工作 之前看到过,和humanplus、television 挺像「OmniH2O论文(24年6.13)和humanplus(24年6.15)的发布时间差不多,但比television(24年7月初)发布的更早,但后来再一细究发现,OmniH2O的前身H2O发布的更早(24年5月7日):Learning Human-to-Humanoid Real-Time Whole-Body Teleoperation,和此文第一部分中介绍的AnyTeleop发布时间差不多(24年5.16)

    之前 一直没来得及解读,准备也解读下,😆
  2. 我再问他,你们是在仿真环境中 复现了下,是不
    他回答道:他最近开源了代码,有新的改进,目前是仿真,后续可以尝试迁移

考虑到OmniH2O及其前身H2O是之前的工作,在字节机器人大模型GR2之前,故本文先解读这个OmniH2O及其前身H2O

第一部分 H2O:Learning Human-to-Humanoid Real-Time Whole-Body Teleoperation

24年5月7日,来自CMU的研究者Tairan He, Zhengyi Luo, Wenli Xiao, Chong Zhang, Kris Kitani, Changliu Liu, Guanya Shi,发布了这篇论文《Learning Human-to-Humanoid Real-Time Whole-Body Teleoperation》,这篇论文在我熟知的几大开源人形机器人里——比如humanplus television,算是发布的最早的了,比如其便是humanplus的第31篇参考文献

在该文中,作者设计了一个实时人形机器人远程操作的完整系统

1.1 相关工作及背景:第一个实现基于学习的全身远程操作的方法

1.1.1 数据集的问题

首先,识别出全身人形机器人远程操作的一个主要挑战是缺乏一个针对人形机器人的可行动作数据集,这对于训练能够跟踪多样化动作的控制器至关重要。尽管先前的研究已经探索了人类到人形机器人的直接动作重定向,主要集中在运动方面的努力[23-25],但将大规模的人类动作数据集重定向到人形机器人上带来了新的挑战

也就是说,人类与人形机器人之间显著的动态差异意味着某些人类动作对于人形机器人来说可能是不可行的(例如侧手翻、步幅超过人形机器人腿长的步伐)

鉴于此,他们引入了一种自动化的“模拟到数据”过程,将大规模的人类动作数据集[26-Amass,关于,在此文HumanPlus的1.1.2 训练用于全身控制的low-level policy:Humanoid Shadowing Transformer中有介绍]重定向并优化为适用于现实世界人形机器人体现的动作

  1. 具体来说,我们首先通过逆运动学将人类动作重定向到人形机器人,并训练一个具有特权状态信息访问权限的人形机器人控制器[18-Perpetual humanoid control for real-time
    simulated avatars],以在模拟中模仿未经滤波的动作
  2. 之后,去除特权模仿器无法跟踪的动作序列(we remove the motion sequences that the privileged imitator fails to track)
    通过这样做,创建了一个大规模的人形机器人兼容动作数据集。在获得可行动作的数据集后,再开发了一种可扩展的训练过程,用于现实世界的动作模仿器,该过程结合了广泛的领域随机化以弥合模拟与现实之间的差距
  3. 为了促进实时远程操作,设计了一个状态空间,优先考虑现实世界中使用RGB摄像头可获得的输入,例如关键点位置。在推理过程中,我们使用一个现成的人体姿态估计器[27-Hybrik: A hybrid analytical-neural inverse kinematics solution for 3d human pose and shape estimation]来提供全局人体位置以供人形机器人追踪

1.1.2 将人类动作转移到现实世界的仿人机器人上

在基于强化学习的类人控制器出现之前,传统方法通常采用基于模型的优化来跟踪重新定位的动作,同时保持稳定性 [1-Teleoperation of humanoid robots:A survey]

  1. 为此,这些方法在稳定性和接触约束下最小化跟踪误差,需要预定义的接触状态 [6,10,12,13,37–40] 或从传感器估计的接触 [7,9,14,41,42],这限制了在实验室外的大规模部署
  2. Zhang 等人 [11-Slomo: A general system for legged robot motion imitation from casual videos] 使用隐式接触的模型预测控制MPC来跟踪从视频中提取的动作,但轨迹必须首先离线优化以确保动态可行性
    此外,由于计算负担,MPC中使用的模型需要简化 [6,11,14],这限制了可跟踪动作的能力。基于强化学习的控制器可能提供一种不需要明确接触信息的替代方案
  3. 一些研究[43, 44]使用模仿学习将人类风格的动作转移到控制器上,但不能准确跟踪人类动作。Cheng等人[22-Expressive whole-body control for humanoid robots]训练了全身类人控制器,可以从离线的人类动作中复制上半身动作,但下半身依赖于根部速度跟踪,并未跟踪精确的下半身动作

    相比之下,CMU的工作实现了人类动作的实时全身跟踪

1.1.3 人形机器人远程操控

人形机器人遥操作可以分为三种类型:

  1. 任务空间遥操作 [45,46]
  2. 上半身重定向遥操作[47,48]
  3. 全身遥操作 [6,7,13,42,49]

对于第一种和第二种类型,人类与人形机器人之间的共享形态并未得到充分利用,全身控制必须以任务指定的方式解决。这也引发了一个问题,即如果不需要跟踪下半身的运动,机器人可以选择具有更好稳定性的设计,例如四足 [50] 或轮式配置 [51]

CMU的工作属于第三种类型,并且是第一个实现基于学习的全身远程操作的方法。此外,他们的方法不需要在人类远程操作员身上使用捕捉标记或力传感器,因为他们直接使用RGB摄像头捕捉人类动作进行跟踪,这可能为收集大规模类人数据以训练自主代理铺平道路(所以后来的humanplus也是用的这个RGB摄像头的方式捕捉人类动作进行跟踪)

1.2 将全身实时人形远程操作建模为目标条件下的RL问题

作为符号惯例,使用表示来自姿态估计器/关键点检测器的运动学量(不包含物理模拟),用表示来自动作捕捉(MoCap)的真实值,而使用没有重音符号的普通符号表示来自物理模拟的数值

1.2.1 面向目标的类人控制强化学习

接下来,将问题表述为目标导向的强化学习,其中策略π被训练用于跟踪实时的人体动作

  1. 将学习任务表述为一个由状态集S、动作集A、转移动态T、奖励函数R和折扣因子γ组成的马尔可夫决策过程(MDP):\mathcal{M}=\langle\mathcal{S}, \mathcal{A}, \mathcal{T}, \mathcal{R}, \gamma\rangle,其中,状态s_{t} \in \mathcal{S}、动作a_{t} \in \mathcal{A}\mathcal{T}代表轨迹、\mathcal{R}代表奖励函数
    且状态\boldsymbol{s}_{t}包含本体感知p。目标状态s_g^t是人类远程操作者全身运动的统一表示
  2. 基于本体感觉s_p^t和目标状态s_g^t,可以定义用于策略训练的奖励r_t = R(s_p^t, s_g^t)
    动作a_t \in \mathbb{R}^{19}指定了 PD 控制器将用于驱动自由度的关节目标位置
    然后,应用近端策略优化(PPO)[52] 来最大化累积折扣奖励
    E\left[\sum_{t=1}^{T} \gamma^{t-1} r_t\right]

    从而将远程操作任务表述为运动模仿/跟踪/模拟任务,在每一帧训练类人机器人跟踪参考运动

1.2.2 参数化人体模型与人体运动数据集

在视觉和图形学界,参数化人体模型(如 SMPL[53,相当于是人形机器人的身体建模数据集,可以代表人形机器人,在我解读的humanplus一文中的此节“1.1.2 训练用于全身控制的low-level policy:Humanoid Shadowing Transformer”也有相关介绍])因其易于处理的人体形状和动作表示而广受欢迎

  1. SMPL 将人体表示为体型参数 β∈R^10,姿势参数\theta \in \mathbb{R}^{24 \times 3},以及根部平移p \in \mathbb{R}^{24 \times 3}
  2. 给定\beta\thetapS表示 SMPL 函数,其中\mathcal{S}(\boldsymbol{\beta}, \boldsymbol{\theta}, \boldsymbol{p}): \boldsymbol{\beta}, \boldsymbol{\theta}, \boldsymbol{p} \rightarrow \mathcal{R}^{6890 \times 3}将参数映射到一个具有 6890 个顶点的人体三角网格的顶点位置
  3. AMASS[26] 数据集包含 40 小时的运动捕捉数据,这些数据用 SMPL 参数表示

1.3 人类动作重定向至人形机器人

为了使仿人机器人能够模仿未编写脚本的人类动作,需要大量的全身动作来训练一个稳健的动作模仿策略

由于人类和仿人机器人在身体结构、形状和动力学方面存在显著差异,直接从人类动作数据集中重新定向的动作可能导致许多仿人机器人无法执行的动作,而这些不可行的动作序列可能会妨碍模仿训练,正如之前的研究所观察到的那样[32-Universal humanoid motion representations for physics-based control]

为了解决这些问题,作者设计了一种“模拟到数据”的方法,以补充传统的重新定向,将大规模的人类动作数据集转换为仿人机器人可行的动作

1.3.1 动作重定向:通过SMPL数据集建模人形以逼近人类动作

由于SMPL运动结构与人形运动之间存在非微不足道的差异,作者针对初始重定向执行了一个两步过程

  1. 首先,由于SMPL身体模型可以表示不同的身体比例,故找到一个最接近人形结构的身体形状\boldsymbol{\beta}^{\prime}
    即选择12个在人类和人形之间具有对应关系的关节,如下图所示「将SMPL身体拟合到H1类人模型。(a) 类人模型关键点的可视化(红点),(b) 类人模型关键点SMPL关键点(绿色点和网格)在拟合SMPL形状β′之前和之后的对比。(c) 拟合前后的对应12个关节位置

    并在形状参数上执行梯度下降,以使用一个通用的静止姿势最小化关节距离
    在找到最优的β′后,给定以SMPL参数表示的一系列动作,使用原始的平移p和姿势θ,但使用拟合的形状β′来获取身体关键点的位置集
  2. 然后,通过使用Adam优化器[54]最小化12个关节位置差异,将动作从人类重定向到人形
    请注意,该重定向过程试图匹配人类的末端执行器到人形(例如脚踝、肘部、手腕),以保持整体运动模式

    另一种方法是直接复制人类到人形的局部关节角度,但这种方法可能会由于运动学树的巨大差异导致末端执行器位置的巨大差异

    在此过程中,作者还添加了一些基于启发式的过滤,以去除不安全的序列,例如坐在地上。在重定向之前寻找β′的动机是,在静止姿势下,我们的人形在其双脚之间有很大的间隙。如果天真地尝试匹配人类和人形之间的脚部运动,人形运动可能会出现内八字的伪影

    使用β′,可以找到一个在其静止姿势下(如上图所示)有大间隙的人体结构
    最终,在拟合过程中使用β′可以有效地创建更可行的运动,如下图所示

1.3.2 基于仿真的数据清洗:提高数据质量(含整体训练流程图)

由于人类与电机驱动的人形机器人之间能力的显著差距,即便把AMASS数据集中的13K运动序列\hat{Q},经过计算,得到10k重新定向的运动序列\hat{Q}^{\text {retarget }},依然包含大量不合理的人形运动

考虑到从大规模数据集中手动查找这些数据序列可能是一个相当繁琐的过程

  1. 因此,作者提出了一种“模拟到数据”的程序,其中训练了一个动作模仿器\pi_{\text {privileged }}(类似于PHC [18-Perpetual humanoid control for real-time simulated avatars]),该模仿器可以访问特权信息privileged information且没有领域随机化domain randomization,以模仿所有未清理的数据\hat{Q}^{\text {retarget }}
    Thus, we propose a “sim-to-data” procedure, where we train a motion imitator πprivileged (similar to PHC [18]) with accessto privileged information and no domain randomization toimitate all uncleaned data ˆQretarget.
  2. 没有领域随机化,\pi_{\text {privileged }}可以在动作模仿中表现良好,但不适合转移到真实的人形机器人
    Without domain random-ization, πprivileged can perform well in motion imitation, butis not suitable for transfer to the real humanoid.

    然而,\pi_{\text {privileged }}代表了动作模仿性能的上限,而\pi_{\text {privileged }}无法模仿的序列则代表不合理的序列

    具体来说,按照PULSE [32-Universal humanoid motion representations for physics-based control]中提出的相同状态空间、控制参数和困难负样本挖掘程序训练\pi_{\text {privileged }},并训练一个单一的模仿策略来模仿整个重定向的数据集

    经过训练,AMASS的1万个动作序列中约有8.5k被证明对H1人形机器人是合理的,将获得的干净数据集称为\hat{\boldsymbol{Q}}^{\text {clean }}

总之,为了训练\pi_{\text {privileged }},故遵循PULSE [32],并训练一个具有“人形机器人的完整刚体状态访问权限”的动作模仿器

  1. 具体来说,对于特权策略\pi_{\text {privileged }},其本体感受定义为
    \boldsymbol{s}_{t}^{\mathrm{p} \text {-privileged }} \triangleq\left[\boldsymbol{p}_{t}, \boldsymbol{\theta}_{t}, \boldsymbol{v}_{t}, \boldsymbol{\omega}_{t}\right]
    其中包含了人形机器人的所有刚体的全局三维位置pt、方向θt、线速度vt和角速度ωt
  2. 目标状态定义为
    \boldsymbol{s}_{t}^{\text {g-privileged }} \triangleq\left[\hat{\boldsymbol{\theta}}_{t+1} \ominus \left.\boldsymbol{\theta}_{t}, \hat{\boldsymbol{p}}_{t+1}-\boldsymbol{p}_{t}, \hat{\boldsymbol{v}}_{t+1}-\boldsymbol{v}_{t}, \hat{\boldsymbol{\omega}}_{t}-\boldsymbol{\omega}_{t}, \hat{\boldsymbol{\theta}}_{t+1}, \hat{\boldsymbol{p}}_{t+1}\right]\right.
    其中包含了参考与当前模拟结果在所有人形机器人刚体上的单帧差异
    它还包含了下一帧的参考刚体方向和位置。所有值都被归一化到人形机器人的坐标系中

    注意,所有值都是全局的,像全局刚体线速度vt和角速度ωt这样的值在现实世界中很难准确获得

最终,整个训练过程如下图所示(建议好好品味下图,流程画的非常清晰)

  1. 重定向:H2O首先通过优化形状参数将SMPL身体模型对齐到类人结构
    然后,H2O使用训练好的特权模仿策略重新定向并去除不可行的动作,从而生成一个干净的动作数据集
  2. 仿真到现实训练:通过从清理后的数据集中采样的动作目标来训练模仿策略
  3. 实时遥操作部署:实时遥操作部署通过RGB摄像头和姿态估计器捕捉人类动作,然后类人机器人使用训练好的仿真到现实模仿策略进行模仿

// 待更

第二部分 OmniH2O——通用灵巧且可全身远程操作并学习的人形机器人

// 待更

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

指针函数C++

指针函数概念 指针函数在C中是一种特殊类型的函数。从本质上讲,它是一个函数,不过其返回值是一个指针类型的数据。例如,像int* plusfunction(int a, int b);这样的函数声明,plusfunction就是一个指针函数,它接受两个i…

【学习笔记】Linux系统基础知识4 —— date命令详解

提示:学习Linux系统基础命令 date 命令详解 一、前期准备 1.已经正确安装并成功进入Linux系统 说明:本实验采用的 Redhat 系统(因系统不一致,可能部分显示存在差异) 二、学习内容 1、date命令 1. 功能说明 date …

SpringBoot实现电子文件签字+合同系统

​ 博客主页: 南来_北往 系列专栏:Spring Boot实战 在现代企业中,合同管理和电子文件签字已成为日常运营不可或缺的一部分。为了提升效率和安全性,我们可以使用SpringBoot框架来实现一个电子文件签字和合同管理系统。本文将详细介绍如何…

ITMS-90899: Macs with Apple silicon support issue

文章目录 1.问题2.解决方法2.1 直接忽略这个警告邮件,不会影响app的正常上传2.2 通过在项目的Info.plist文件中加LSMinimumSystemVersion : 12.0 来消除警告 参考链接: 1.问题 ITMS-90899: Macs with Apple silicon support issue - The app isn‘t comp…

机器学习入门(一)

一、机器学习概述 1、人工智能 像人一样智能的综合与分析,机器模拟人类。 是一个系统,像人那样思考,像人那样理性思考。 是一个系统,像人那样活动,像人那样合理的系统 2、机器学习 让机器自动学习,而不…

公司防泄密软件哪个好?6款公司内部文件防泄密软件,2024超好用推荐!

企业的核心机密就如同生命之源,然而,数据泄露的风险也随之而来,让不少企业头疼不已。 面对这一挑战,选择一款高效、可靠的防泄密软件显得尤为重要。 那么,公司防泄密软件哪个好? 接下来,就让我…

posix接口与system V接口及其异同

POSIX接口和System V接口是用于多线程和进程间通信的两种主要编程接口。它们各自有不同的特点、功能和适用场景。以下是对这两种接口的详细介绍及其异同点。 POSIX接口 特点 标准化: POSIX(可移植操作系统接口)是由IEEE制定的标准,旨在提供统…

​ ​视觉任务大一统!图像生成,编辑,翻译三合一!全能视觉助手PixWizard来袭!

文章链接:https://arxiv.org/pdf/2409.15278 github链接:https://github.com/AFeng-x/PixWizard 亮点直击 任务统一:针对视觉任务的多样性,提出将其框架化为图像到图像的转换问题,并通过后处理将生成的可视化效果转化…

瑞华技术募资额巨降过半:业绩大幅下滑,信用期外应收账款占比高

《港湾商业观察》黄懿 上市的节奏有快有慢,常州瑞华化工工程技术股份有限公司(下称“瑞华技术”,920099.BJ)自2023年3月被北交所受理后,于2024年8月29日获得注册批文,9月25日正式挂牌上市。 据了解&#…

大学生课程设计报告--基于JavaGUI的贪吃蛇

前言 ​ 贪吃蛇游戏是一个基础且经典的视频游戏,它适合作为学习编程的人进行一些更深入的学习,可以更加了解关于循环,函数的使用,以及面向对象是如何应用到实际项目中的; ​ 不仅如此,贪吃蛇游戏的规则在思考后可以拆分,有利于学生将更多精力去设计游戏的核心逻辑,而…

前端性能优化全面指南

前端性能优化是提升用户体验的关键,页面加载速度、响应时间和交互流畅度直接影响用户的留存率和满意度。以下是常用的前端性能优化方法,从网络层、资源加载、JavaScript 执行、渲染性能等方面进行全方位优化。 减少 HTTP 请求 合并文件:将多…

文献下载/影响因子查询/文献检索/文献翻译平台推荐

文献下载平台 科研通 文献互助平台 - 科研通(AbleSci.com) 每天签到可领10积分,右上角求助文献,一篇10积分,基本实现免费下载。 尽量输入doi(类似文献id),如果没有doi则输入标题作者摘要等信息&#xff0…

YOLO11模型推理 | 目标检测与跟踪 | 实例分割 | 关键点估计 | OBB旋转目标检测

前言 本文分享YOLO11的模型推理,检测任务包括物体分类、目标检测与跟踪、实例分割 、关键点估计、旋转目标检测等。 首先安装YOLO11 官方默认安装方式 通过运行 pip install ultralytics 来快速安装 Ultralytics 包 安装要求: Python 版本要求&…

南京大学《软件分析》李越, 谭添——1. 导论

导论 主要概念: soundcompletePL领域概述 动手学习 本节无 文章目录 导论1. PL(Programming Language) 程序设计语言1.1 程序设计语言的三大研究方向1.2 与静态分析相关方向的介绍与对比静态程序分析动态软件测试形式化(formal)语义验证(verification) 2. 静态分析:2.1莱斯…

这个问题做项目的时给某些客户普及过,这里再给你普及一下

有些因素不是地理概念,没错!但与地理有关!可以通过地理位置将他们链接起来,再结合其它业务数据,完成数据分析!例如百度地图会将:餐饮、文化、交通、住宿、甚至价格、天气与位置关联分析&#xf…

超越单线程:Web Worker 在前端性能中的角色

在当今快速发展的数字时代,用户对网页性能的期待已经达到了前所未有的高度,想象一下,当你打开一个网站,瞬间加载、流畅操作,没有任何卡顿和延迟,这种体验无疑会让你倍感惊喜。然而在前端开发中,…

@Service代替@Controller注解来标注到控制层的场景?

在SpringBoot开发中,Controller和Service基本上是日常开发中使用的最频繁的两个注解。但你有没考虑过Service代替Controller注解来标注到控制层的场景?换言之,经过Service标注的控制层能否实现将用户请求分发到服务层的功能? 前言…

【斯坦福CS144】Lab5

一、实验目的 在现有的NetworkInterface基础上实现一个IP路由器。 二、实验内容 在本实验中,你将在现有的NetworkInterface基础上实现一个IP路由器,从而结束本课程。路由器有几个网络接口,可以在其中任何一个接口上接收互联网数据报。路由…

搜狗翻译体验,2024四大翻译工具解析!

为了满足广大用户的需求,市面上涌现出了众多优秀的翻译工具,福昕在线翻译、福昕翻译客户端、海鲸AI翻译、搜狗翻译等。今天,我们就来对比一下这些翻译工具,看看它们各自的特点和优势。 福昕在线翻译:专业精准&#xf…

高效开发,低代码平台如何助力构建内部工具

Zoho Creator是低代码平台,助力快速构建内部工具,如审批、订单、销售管理等,提升生产力、客户满意度,并减轻管理负担。平台提供拖放界面、集成数据库等功能,入选Gartner低代码平台“魔力象限”。 一、什么是内部工具&a…