ForceMimic:以力为中心的模仿学习,采用力运动捕捉系统进行接触丰富的操作

25年3月来自上海交大卢策吾教授团队的论文“ForceMimic: Force-Centric Imitation Learning with Force-Motion Capture System for Contact-Rich Manipulation”。

在大多数接触丰富的操作任务中,人类会将随时间变化的力施加到目标物体上,以补偿视觉引导手部轨迹的不准确性。然而,目前的机器人学习算法主要侧重于基于轨迹的策略,对学习与力相关的技能关注有限。为了解决这一限制,本文提出 ForceMimic,一种以力为中心的机器人学习系统,可提供自然、力-觉察且无需机器人的机器人演示收集系统,以及混合力-运动模仿学习算法,用于稳健的接触丰富操作。所提出的 ForceCapture 系统,其中操作员可以在 5 分钟内剥好西葫芦,而力反馈遥操作则需要 13 分钟以上的时间,并且很难完成任务。利用收集的数据,用提出的 HybridIL 来训练以力为中心的模仿学习模型,该模型配备混合力-位置控制原语,以拟合机器人执行期间预测的扳手位置参数。实验表明,该方法使模型能够在接触丰富的蔬菜剥皮任务下学习更为稳健的策略,与最先进的纯基于视觉模仿学习相比,成功率提高 54.5%。

人类可以利用力-感知、精细的肌肉力控制来实现更好的操作,从抓握[1]、举起[2]到剥皮[3]。力的利用可以检测和纠正基于视觉运动规划带来的错误。受这些神经科学成果的启发,大家开始探索力在机器人学习中的效用。然而,以力为中心的操作演示数据很难收集。互联网上有大量人体视频,但没有记录交互力数据。遥操作[4]是一种流行的数据收集方法,使操作员能够远程控制机器人完成操作任务。特别是,力反馈遥操作展示一条以力为中心的数据收集潜途径。但它不能给操作员自然的操作体验,不利于流畅的动作执行和精确的力控制。最近,便携式手持设备[5,6]使野外学习成为可能。他们利用SLAM跟踪摄像头、记录人手或手持夹持器的姿势轨迹。除了无需真实机器人之外,它还提供额外的优势,即人与目标之间几乎直接的交互,这对于接触丰富的力为中心操作至关重要。

另一方面,涉及力的机器人模仿学习,尚未得到充分探索。模仿策略学习模仿人类小脑的功能,研究发现,中枢神经系统可以预测力负荷,甚至将这种动态信息融合到人类运动的内部模型中 [1]。所以关心的是,引入力是否可以帮助模型更好地学习并指导低级机器人控制。

机器人数据收集系统:收集机器人操作演示的直接方法是遥操作 [4],即人类操作员通过各种用户界面远程控制机器人执行操作任务,包括触觉设备 [7]、外骨骼 [8–10]、虚拟现实 [11–14] 和领导者-追随者范式 [15–19]。遥操作可以收集真实的机器人数据,训练和部署数据之间没有域差距,但它在人类操作员和机器人之间造成非直观的控制性质,即使增加力反馈也是如此。最近,手持式夹持器 [5、6、20–22] 使野外学习成为可能。然而,虽然手持式夹持器在数据收集过程中提供更自然的体验,但它并没有让策略模型意识到这种交互,也没有记录交互力。

机器人模仿学习:从人类专家收集的演示中进行模仿学习 (IL) 已广泛应用于机器人学习任务。行为克隆 (BC) [23] 是 IL 中最简单的方法之一,它以监督的方式直接学习从观察到相应机器人动作的策略映射。尽管 BC 很简单,但它在各种机器人操作中已经显示出许多令人兴奋的结果。大多数方法使用神经网络参数化策略 [17, 24, 25],将 2D 原始图像像素映射到动作空间,而一些非参数方法 [26] 利用最近邻从演示数据集中检索动作。最近,扩散策略 [27] 以视觉表示为条件,并使用扩散模型对动作轨迹进行去噪。在此基础上,几种方法 [28, 29] 已适应 3D 点云作为观察。然而,目前的模仿学习方法主要关注基于轨迹的技能,缺乏对交互力等动作空间的探索。力感知和控制在操作任务中起着至关重要的作用,通过视觉引导提供有价值和互补的信息 [30]。已有多项研究探索了接触丰富的机器人操作中的力,从打开瓶盖 [31]、组装 [32] 到玩叠叠乐 [33]。最近,MOMA-Force [34] 利用视觉表征相似性从专家数据库中检索目标动作和扳手,并使用基于 PID 的控制器 [35, 36] 来控制机器人。ForceSight [37] 提出了一种基于 Transformer 的机器人规划器,它根据文本输入和 RGBD 图像生成基于力的目标。

机器人剥皮:虽然剥皮是一项重要的日常生活工具活动 (IADL),但在当前的机器人研究领域相对较少探索。Dong [38] 尝试通过计算切割平面并控制沿规划轨迹的恒定接触力来剥五种食物,但这种方法严重依赖于预设的假设。MORPHeus [39] 引入神经网络来释放手工制作的感知假设,但它将剥皮过程分成几个单独的模块和预设技能,侧重于高级技能安排。

本文的 ForceMimic 是一种力为中心机器人学习系统,提供自然、力-觉察和无机器人的机器人演示收集体验和力为中心模仿学习算法,配备混合力-位置控制,实现稳健的接触丰富操作,如图所示。首先开发 ForceCapture,一种手持式无机器人数据收集系统。之后,HybridIL 利用数据训练力-觉察策略,输出扳手位置参数。

请添加图片描述

ForceMimic 首先采用 ForceCapture 手持式无机器人数据收集系统,自然地收集以力为中心的人类演示数据。然后,将无机器人数据转换为(伪)机器人数据,弥合域差距。利用这些数据,HybridIL 学会预测扳手姿势轨迹,并应用混合力-位置控制来拟合预测的力-位置参数,从而在接触丰富的操作任务中实现稳健的性能。整体流程如图 所示:

请添加图片描述

硬件设计:ForceCapture

在接触丰富的操作过程中,准确、自然且经济高效地捕获力数据仍然是一项重大挑战。受现有手持式运动数据收集设备 [5、6] 的启发,本文开发一种低成本、多功能且无需机器人的力位置捕获设备 ForceCapture。在设计 ForceCapture 时,始终坚持以下目标:
(1) 可扩展性。可扩展性的关键因素包括低成本、与不同力传感器的兼容性、易于制造和维护。
(2) 现场力的真实感。与通过力反馈创造临场感的遥操作系统不同,本文目标是直接从人类操作中捕获实时力数据,而无需用户学习如何与设备创建的人工环境进行交互。
(3) 人体工程学舒适度。设备必须遵循人体工程学原则,包括适当的重心和操作的便利性,以确保它不会干扰用户的自然操作习惯。由于需要记录准确的交互力数据,不良的人体工程学可能会改变肌肉用力模式或引起不适,从而导致操作过程中的力数据不自然。

整体设计如图所示,其中展示两个版本,一个带有固定工具,另一个带有自适应夹持器。 其核心所示,这两种设计都具有一个放置在末端执行器和用户抓握手柄之间六轴力传感器的特征,可用于捕捉执行器与环境的交互扳手。 此外,位于力传感器中心附近的 SLAM 相机,记录交互过程中的运动数据。 用户握住手柄以直接操作工具或控制手指进行抓取和操纵任务。 夹持器版本位于两个手指底部的齿条齿轮(rack-and-pinion)机构确保夹持器的同步运动。 小齿轮连接到编码器,编码器记录夹持器的张开距离。 连续宽度值是根据编码器角度和夹持器宽度之间的校准关系确定的。

请添加图片描述

值得注意的是,在手动控制夹钳的开合过程中,手对夹钳施加的力也会施加到力传感器上。为了解决这个问题,设计 © 所示。一旦手指闭合,就无法从指尖打开。相反,只能使用杠杆机构释放它们以解锁夹钳。这种设计符合夹钳开合的自然逻辑,并符合人体工程学原理。此外,ForceCapture 的整体设计,其重心位于手柄上方,符合人手自然的施力习惯。

ForceCapture 的制造非常简单,主体完全采用 3D 打印生产。打印部件和编码器的总成本约为 50 美元,符合成本效益的设计目标。配备夹爪的设备重量仅为 0.8kg,其中力传感器重 0.5kg,配件重量仅为 0.3kg,比一罐可乐还要轻。

数据收集和迁移

数据收集系统包括一个六轴 F/T 传感器、一个 RealSense T265 SLAM 摄像头和一个外部 RealSense L515 RGB-D 摄像头。对于夹持器版本,还收集编码器角度数据。它们各自的采样频率分别为 1000 Hz、200 Hz、30 Hz 和 30 Hz。每个传感器都以自己的频率收集数据,在数据处理过程中,所有频率都对齐以匹配 L515 观察的频率。

在初始阶段,T265 放置在 L515 支架上,T265 和 L515 之间的相对位置由它们的安装位置决定。一旦开始数据收集,T265 就会从支架上拆下并放置在 ForceCapture 上。此过程类似于 DexCap [6],其中 T265 相对于 L515 的初始位置用于跟踪 ForceCapture 的位置。

ForceCapture 旨在仅记录末端执行器与外部环境之间的相互作用力。但是,力传感器测量的是综合力,包括工具的重力和惯性力。因此,需要从力传感器数据中减去工具或夹持器产生的外力。假设 ForceCapture 的数据收集过程是准静态的,这意味着在每个位置,力都处于静态平衡状态,只需要补偿工具的重力。为了进行重力补偿,首先以准静态方式移动 ForceCapture 一段时间,同时记录姿势和扳手数据。利用每个位置的静态平衡力,构建一个超定方程组,使用最小二乘(LS)解来估计工具的质心和重量。

此外,L515 相机记录的 RGB-D 图像被反向投影到点云中。为了减少数据采集过程中的点云与机器人部署中使用的点云之间的差异,统一排除操作背景和末端执行器坐标系上方的点云,仅保留一致的末端执行器和目标点云。并将点云体素化为 10,000 的大小。

学习算法:HybridIL

HybridIL,一种以力为中心的端到端模仿学习方法,它将感知映射到力-位置混合控制策略。HybridIL 将点云作为视觉输入,通过 MLP 编码器将其表示为一维视觉特征。然后,这些特征与机器人的 TCP 姿势级联,形成多种模态的联合表示。策略生成,利用改进的扩散策略 [27] 来预测接下来 20 个时间步骤中的位置和扳手参数。

需要注意的是,扳手和位置控制必须正交。虽然模型没有明确模拟扳手和位置的正交性,但通过与模型预测的力-位置参数一致的正交力-位置混合控制器,可实现这一点。这种方法不同于传统的模仿学习方法,后者通常使用固定的低级位置控制器来跟踪模型的位置命令预测。 HybridIL 采用两个不同的控制原语来拟合模型的预测力-位置参数。当预测力低于阈值 6N 时,使用基于 IK 的 [42] 关节位置控制器。如果预测力在连续步骤中超过 6N,则采用混合力-位置控制器来执行模型的预测参数。6N 的力阈值是根据经验确定的。正交力-位置匹配方法如图所示。

请添加图片描述

对于力连续超过 6N 的力-位置动作,运动方向根据前后的位置信息确定。相应的预测力信息被投影到运动方向的正交平面上,这定义执行期间的力控制参数。对于混合力-位置控制的初始步骤,如果末端执行器尚未与物体接触,则应用与力控制相反方向的按压控制以实现稳定接触。这些功能是使用关节位置控制和混合力-位置控制原语的 Flexiv RDK (https://github.com/flexivrobotics/flexiv_rdk ) ,通过执行 HybridIL 力-位置动作来实现。

实验装置如图 (a) 所示。程序包括拿起削皮器,在支架上削西葫芦,放下削皮器,然后抓住西葫芦调整其削皮方向,直到整个蔬菜都削好。由于任务涉及力捕获和手指运动,使用 ForceCapture 的夹持器版本进行数据收集。遥操作装置遵循 RH20T [7] 中描述的配置。

请添加图片描述

上图(b)显示完成剥皮任务的时间比较。结果表明,遥操作所花的时间大约是 ForceCapture 的三倍,而 ForceCapture 所花的时间非常接近人类直接剥皮所花的时间。

为了评估 ForceMimic 的有效性,将剥皮动作制定为端到端技能学习任务。数据收集利用 ForceCapture 的固定工具版本。用户用左夹持器将西葫芦固定住,用右 ForceCapture 剥皮。机器人实验设置把 L515 RGB-D 相机安装在机械臂外部。L515 相机在数据收集和机器人实验期间都保持一致的位置,但它可以灵活定位,以便像 DexCap [6] 一样进行便携式野外数据收集。配备夹持器的机器人用于基于规则稳定西葫芦,而右臂的固定剥皮器与 ForceCapture 中使用的相同,通过 HybridIL 执行剥皮技能。实验中使用的机械臂是 Flexiv Rizon 4,具有精确的力感应和力控制能力。

处理 15 个西葫芦,收集 438 个剥皮技能片段,总共得到 30,199 个动作序列。这些动作相对于感知数据前进 3 个时间步。HybridIL 模型和基线方法都分别进行 500 个 epoch 的训练。

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

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

相关文章

ERROR:L6002U 一种解决方案

1.问题描述 前面的文章也讲到过有一次出现,这次再看一下为什么 打开这个文件,以及它的头文件 源文件报错信息: 2、原因查找 这是由于不同的人上传不同的工程,拉取更新导致的,可能的原因是keil文件夹的组织方式。 很…

GPU加速生信分析-宏基因组MAG去污染

Deepurify利用多模态深度语言模型来过滤污染的基因组,从而提高了宏基因组组装基因组(MAGs)的质量,并且可以利用GPU加速。 宏基因组组装的基因组 (MAG) 为使用宏基因组测序数据探索微生物暗物质提供了有价值…

AI与SEO关键词智能解析

内容概要 人工智能技术正重塑搜索引擎优化的底层逻辑,其核心突破体现在关键词解析维度的结构性升级。通过机器学习算法对海量搜索数据的动态学习,AI不仅能够识别传统TF-IDF模型中的高频词汇,更能捕捉语义网络中隐含的关联特征。下表展示了传…

【已解决】最新 Android Studio(2024.3.1版本)下载安装配置 图文超详细教程 手把手教你 小白

前言 设置 Android 开发环境,主要包括: 下载Java Development Kit(JDK)安装 Android Studio(集成开发环境) 下载Android SDK 一、JDK Android Studio 自带了 OpenJDK,通常无需额外安装。 如…

LLM中的transformer结构学习(二 完结 Multi-Head Attention、Encoder、Decoder)

文章目录 LLM中的transformer结构学习(二 完结 Multi-Head Attention、Encoder、Decoder)Self-Attention (自注意力机制)结构多头注意力 EncoderAdd & Norm 层Feed Forward 层 EncoderDecoder的第一个Multi-Head AttentionMas…

TDengine 接入帆软 BI 工具

1. 简介 帆软 BI 和 TDengine 在数据分析和可视化领域有紧密的合作关系,帆软是中国专业的大数据 BI 和分析平台提供商,其核心产品包括 FineReport 和 FineBI 等。帆软的 BI 工具广泛应用于各类企业,帮助用户实现数据的可视化分析、报表生成和…

【Java开发指南 | 第三十四篇】IDEA没有Java Enterprise——解决方法

读者可订阅专栏:Java开发指南 |【CSDN秋说】 文章目录 1、新建Java项目2、单击项目名,并连续按两次shift键3、在搜索栏搜索"添加框架支持"4、勾选Web应用程序5、最终界面6、添加Tomcat 1、新建Java项目 2、单击项目名,并连续按两次…

NET400系列协议网关技术方案

NET400系列协议网关技术方案 1. 问题背景 工业现场普遍存在多品牌设备异构通信难题: 协议碎片化:西门子(Profinet/S7-TCP)、罗克韦尔(EtherNet/IP)、三菱(MC Protocol)等设备协议…

如何用Kimi生成PPT?秒出PPT更高效!

做PPT是不是总是让你头疼?😩 快速制作出专业的PPT,今天我们要推荐两款超级好用的AI工具——Kimi 和 秒出PPT!我们来看看哪一款更适合你吧!🚀 🥇 Kimi:让PPT制作更轻松 Kimi的生成效…

深入理解Java中的static关键字及其内存原理

static是Java中实现类级共享资源的核心修饰符,它突破了对象实例化的限制,使得变量和方法能够直接与类本身绑定。这种特性让static成为构建工具类、全局配置等场景的利器,但同时也带来独特的内存管理机制需要开发者关注。 static修饰成员变量…

Zemax 中的 CAD 文件性能比较

这些文件格式 STEP、IGS、SAT 和 STL 通常用于 3D 建模、CAD 和工程应用程序。STEP、IGS、SAT 和 STL 之间的主要区别在于它们如何在 CAD、工程和 3D 打印应用程序中存储和表示 3D 几何图形。 Zemax OpticStudio、STEP、IGES、SAT 和 STL 文件的性能可能会因文件类型和用例&am…

springboot 修复 Spring Framework 特定条件下目录遍历漏洞(CVE-2024-38816)

一定要看到最后! 一定要看到最后! 一定要看到最后! 一、漏洞描述 Spring框架是 Java 平台的一个开源的全栈应用程序框架和控制反转容器实现。2024年9月,Spring官方发布公告披露 CVE-2024-38816 Spring Framework 特定条件下目…

electron builder打包时,出现errorOut=ERROR: Cannot create symbolic link

解决办法: 以管理员身份运行PowerShell,然后进入到该目录下重新执行该指令。然后就会看到打包成功。 只要首次在PowerShell中链接创建完成,后续在VSCode或者CMD这些运行指令,都不会报错了

Tomcat下载安装及日志乱码问题解决

目录 tomcat下载安装 打开官网,选择想安装的版本 根据自己的电脑配置进行选择 tomcat安装 tomcat启动 启动窗口中文乱码问题 将tomcat日志配置改为GBK编码 修改系统区域设置 tomcat下载安装 访问tomcat官网:Apache Tomcat - Welcome! 打开官网&…

【贪心算法】简介

1.贪心算法 贪心策略:解决问题的策略,局部最优----》全局最优 (1)把解决问题的过程分成若干步 (2)解决每一步的时候,都选择当前看起来的“最优”的算法 (3)“希望”得…

J6打卡——pytorch实现ResNeXt-50实现猴痘检测

🍨 本文为🔗365天深度学习训练营中的学习记录博客 🍖 原作者:K同学啊 1.检查GPU import torch import torch.nn as nn import torchvision.transforms as transforms import torchvision from torchvision import transforms, d…

javaEE初阶————多线程进阶(2)

今天来继续带大家学习多线程进阶部分啦,今天是最后一期啦,下期带大家做一些多线程的题,我们就可以开始下一个环节啦; 1,JUC(java.util.concurrent)的常见类 1)Callable 接口 我们之…

初次体验Tauri和Sycamore(3)通道实现

​ 原创作者:庄晓立(LIIGO) 原创时间:2025年03月10日(发布时间) 原创链接:https://blog.csdn.net/liigo/article/details/146159327 版权所有,转载请注明出处。 20250310 LIIGO备注&…

【2025力扣打卡系列】0-1背包 完全背包

坚持按题型打卡&刷&梳理力扣算法题系列,语言为python3,Day5 0-1背包【目标和】 有n个物品,第i个物品的体积为w[i], 价值为v[i]。每个物品至多选一个,求体积和不超过capacity时的最大价值和常见变形 至多装capacity&#x…

windows下使用msys2编译ffmpeg

三种方法: 1、在msys2中使用gcc编译 2、在msys2中使用visual studio编译(有环境变量) 3、在msys2中使用visual studio编译(无环境变量) 我的环境: 1、msys2-x86_64-20250221 2、vs2015 3、ffmpeg-7.1…