CoRL 2024 麻省理工学院提出T3触觉Transformer,打破触觉感知的壁垒,重塑未来机器人

news2024/11/30 10:37:19

在智能机器人领域,触觉感知的研究正逐渐成为关注的焦点。然而,如何让机器人通过触觉更智能地感知和操作,依然是一个未解决的挑战。基于相机的触觉感知是一种通过在软弹性体下嵌入相机来捕获与环境的细粒度交互的感知方法,是最流行的触觉感知方法之一,因为它更高分辨率和成本更低。然而,基于相机的触觉传感器是非常异构的,而且还没有一个被机器人技术社区广泛采用的融合传感器设计。那么,有没有一项技术能够实现跨多传感器和多任务的扩展呢?为了解决这个问题,我们今天的主角——Transferable Tactile Transformers (T3)——便应运而生,它能够跨越不同的传感器和任务,实现触觉表征的迁移学习。

https://openreview.net/forum?id=KXsropnmNI

什么是T3?

T3是一个基于Transformer的框架,通过一个共享的主干网络结构,为不同的触觉传感器和任务提供灵活、可迁移的解决方案。与传统触觉感知系统不同,T3通过预训练,能够快速适应新的传感器和任务,无需从零开始训练。每个传感器和任务都有专属的编码器和解码器,但所有的知识共享同一个Transformer主干结构,从而提升效率和迁移能力。

T3的架构图如下所示:
在这里插入图片描述

T3架构由传感器特定的编码器、共享的Transformer主干和任务特定的解码器组成。编码器处理不同传感器的数据,主干负责提取共享的潜在表示,而解码器根据任务类型进行特定的输出。这种设计允许T3在多种传感器和任务之间实现高效的知识迁移,大大提升了触觉感知的性能与适应性。

FoTa:庞大的触觉数据库
为了支持T3的训练,我们研究团队创建了一个名为FoTa(Foundation Tactile)的数据集。FoTa汇集了超过3百万个来自13种不同的传感器和11种任务的数据。FoTa是迄今为止在触觉感知领域规模最大、最多样的数据集,并且它拥有一种统一的格式。通过在FoTa数据集上进行预训练,T3具备了强大的泛化能力,我们可以通过少量领域的特定数据对其进行进一步的微调,并且其性能可随网络规模的增大而提高,如此便能够应对各种不同的感知需求。无论是细致的电子插入任务,还是复杂的物体操控,T3都表现出色。

实际应用场景:触觉在机器人中的突破
T3的应用不仅局限于学术研究,它在多个现实任务中表现优异。研究表明,T3可以帮助机器人在复杂的操作中取得显著进步,尤其是在精细的电子元件插入任务中,相较于传统方法,T3大幅提高了任务成功率。想象一下,未来的机器人可以像人类一样,通过触摸识别物体的微小差异,甚至在视觉受限的情况下也能完成高精度任务。

为什么T3如此特别?
T3采用共享的Transformer主干结构,结合特定传感器的编码器和任务解码器,实现跨传感器、跨任务的触觉感知。这意味着,无论是面对不同类型的传感器,还是不同的操作任务,T3都能轻松适应。我们提出将可转移触觉变压器(T3)作为主干网络,从不同的触觉传感器中学习,并为不同的下游任务产生输出。

  1. 多传感器兼容
    现有的触觉传感器因设计差异显著,无法跨设备迁移。而T3通过构建FoTa数据集,包含了13种传感器和11项任务,超过300万条数据,为模型的学习提供了丰富的数据支持,并且可以兼容多种传感器。

  2. 任务泛化能力强
    T3在任务中的表现优异,特别是在精密操作中,如电子元件插入任务,相较于传统方法提升了25%的成功率。对于其他任务,T3通过少量微调数据,能够快速适应新任务,展现出强大的迁移学习能力。

为了测试预训练T3的性能,我们设计了一个具有行为克隆的机器人精确插入任务。此任务的目标是将3个电子部件插入PCB上,每个部件都有相应的安装孔:一个3针拨动开关、一个12针双堆栈USB端口和一个17针VGA连接器。由于PCB上的孔和零件上的引脚之间的间隙仅为0.4mm,所以这项任务需要很高的精度,实现这种精度需要积极探索触觉反馈。在现实世界的应用中,由于严重的遮挡,仅依靠视觉往往是不够的。

实验设备(左)以及相关零件(右)的示意图如下所示:
在这里插入图片描述

为了探究T3的优劣,我们训练和评估了3个策略:一个没有触觉输入的基础策略,一个由从头开始训练的神经网络编码的触觉输入策略,以及一个由T3编码的触觉输出策略。除了触觉输入,所有3个策略都可以访问由MLP编码的相同机器人状态模态和由预训练的ResNet18编码的外部视觉模态。这三种策略都将当前步骤的观测值作为输入,并预测机器人在下一个时间步骤执行的3-DoF动作。在推理时,机器人以约2Hz的速度执行预测的3-DoF动作,最多30步。如果机器人在30个步骤内成功插入组件,则该事件被视为成功。

相关实验的成功率(左)和平均步骤数(右)如下图所示:
在这里插入图片描述

从结果中我们不难看出:触觉模式对于这项电子插入任务至关重要,其中仅视觉策略在插入两个更具挑战性的部分的所有测试中都失败了;使用预训练的T3作为该策略的触觉编码器有助于进一步提高整体性能,其中所有三个部分的任务成功率都更高;T3还有助于减少插入零件所需的触觉探索步骤的数量。

T3的技术亮点

  1. 多任务适应:T3的架构不仅限于简单的分类任务,还能处理如位姿回归、物体识别等复杂任务。通过传感器特定的编码器与任务特定的解码器,T3在多任务环境下表现出极高的灵活性和适应性。无论是物体的分类还是精确的位姿估计,T3都能够有效应对,充分发挥Transformer的结构优势,展现出其在不同场景中高效处理触觉感知数据的能力。

  2. 预训练模型的优势:T3在FoTa大规模数据集上进行了预训练,涵盖了来自13种传感器和11项任务的300万+数据点。这使得T3不仅能够实现零样本迁移学习,还可以在面对全新的任务或传感器时快速上手,无需从头开始训练。预训练的T3在许多任务上展现了显著的性能提升,特别是在复杂的长时间接触操作任务中,例如多引脚电子元件的插入任务,T3相较于传统方法提高了25%的任务成功率。这种高效的迁移能力使T3在实际应用中具有极大的优势。

应用前景
触觉感知是机器人在复杂操作中不可或缺的关键能力,特别是在需要高精度和细腻控制的领域,如医疗手术、工业组装和手术机器人等。T3的出现,为机器人带来了更加灵活和精确的触觉感知能力。通过T3,未来的机器人将能够处理微小的物体,并完成精细的装配和操作,例如在狭小空间内插入多引脚电子元件。这种触觉感知技术还可以用于手术机器人,帮助外科医生完成更复杂、更精确的手术操作。

T3不仅提升了机器人的感知精度,还为其提供了应对多样化任务的能力,特别是那些需要在视觉受限或完全不可用的环境中进行操作的任务。无论是工业中的复杂机械装配,还是医疗领域中极细微的手术,T3都能够通过更精细的触觉反馈,提高任务的完成效率与成功率。

未来展望
T3展示了触觉感知领域的未来趋势,为机器人与人类的互动带来了全新的可能性。未来,机器人将不再仅依赖视觉和声音,还将通过“触摸”完成更多复杂操作,例如从电子设备的精密装配到医疗中的微创手术。触觉技术的进步使机器人能在更复杂的环境中自如操作,减小失败风险,并显著提升任务的成功率。随着这一技术的发展,我们可以预见,机器人将在生产、物流、医疗等领域发挥更大作用,显著提升各行业的自动化水平。

此外,T3的通用性使其成为未来智能机器人领域中的关键技术支撑。未来的机器人不再局限于特定任务或传感器,而是可以应对更多样的任务和环境。通过这项技术,机器人与人类之间的互动将更加自然、智能,甚至有可能实现基于触觉的情感交流,进一步缩短人机之间的差距。

总结
T3不仅仅是触觉感知领域的一次技术突破,更为未来机器人如何感知和操作世界提供了全新思路。无论是在工业领域中的高精度装配,还是在医疗手术中的复杂操作,T3都展现出广泛的应用前景。通过这一技术,我们看到了触觉感知如何为机器人赋能,使其更加智能化。

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

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

相关文章

Java报错输出的信息究竟是什么?

Java报错输出的信息究竟是什么? 本篇会带大家了解一下java运行时报错输出的信息内容,简单学习一下虚拟机内存中Java虚拟机栈的工作方式以及栈帧中所存储的信息内容 异常信息 当你的程序运行报错时,你是否会好奇打印出来的那一大坨红色的究竟…

搜索引擎相关的一段实习经历

0 前言 就是跟搜索相关的一段经历。主要工作就是建立倒排索引库相关的一些简单内容。 又翻到了以前的工作,权作纪念。 就是简单的封装cpp的库供python语言调用。 反正就是很多版本问题等等吧各种鬼问题。 我感觉这个思路可能还是待考证。 跨语言的调用我感觉还是不…

泛型编程--模板【C++提升】(特化、类属、参数包的展开、static、模板机制、重载......你想知道的全都有)

更多精彩内容..... 🎉❤️播主の主页✨😘 Stark、-CSDN博客 本文所在专栏: C系列语法知识_Stark、的博客-CSDN博客 其它专栏: 数据结构与算法_Stark、的博客-CSDN博客 C系列项目实战_Stark、的博客-CSDN博客 座右铭:梦…

Java中的while和do...while循环

while和do...while循环 while循环基本语法执行流程注意事项练习 do...while循环基本语法说明流程图练习 while循环 基本语法 循环变量初始化; while(循环条件){循环体(语句);循环变量迭代; }1)while循环也有四要素:循环变量初始…

【JNI】普通类型的基本使用

简单使用 在上一期我们介绍了JNI的基本使用,这里简单介绍一下普通类型 HelloJNI.java:这里计算两个整型数的平均值,返回值类型为double public class HelloJNI { static {System.loadLibrary("hello"); }private native String …

electron-builder 首次执行报错问题解决

假日想研究一下 react electron 的使用,结果发现首次打包疯狂报错,研究了一下之后才发现是第一次的话 electron-builder 会从外面下载依赖包到我们系统中,由于某种力量导致压缩包无法下载或者是下载过慢导致失败,要解决其实也简单…

认知战认知作战:2024年9月30日中国股市大涨背景下的认知战分析报告

认知战认知作战:2024年9月30日中国股市大涨背景下的认知战分析报告 关键词:认知战, 中国股市, 信息操纵, 心理战, 技术战, 信息监管, 投资者素养, 国际合作, 法律法规, 协同作战, 谣言澄清, 市场情绪,认知作战,新质生产力,人类命运共同体,认知战,认知域…

《Linux从小白到高手》理论篇:深入理解Linux的计划任务/定时任务

值此国庆佳节,深宅家中,闲来无事,就多写几篇博文。本篇详细深入介绍Linux的计划任务/定时计划。 Linux的计划任务 在很多时候为了自动化管理系统,我们都会用到计划任务,比如关机,重启,备份之类…

二叉树--堆

1.二叉树的顺序结构 普通的二叉树是不适合用数组来存储的,因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结 构存储。现实中我们通常把堆(一种二叉树)使用顺序结构的数组来存储,需要注意的是这里的堆和操作系统 虚拟进程地址空间中的堆是两…

CSP-J Day 4 模拟赛补题报告

姓名:王胤皓,校区:和谐校区,考试时间: 2024 2024 2024 年 10 10 10 月 4 4 4 日 9 : 00 : 00 9:00:00 9:00:00~ 12 : 30 : 00 12:30:00 12:30:00,学号: S 07738 S07738 S07738 请关注作者的…

Windows应用开发-解析AVI视频文件

本Windows应用解析AVI视频文件,以表格的方式显示AVI文件结构。并可以将结果保存到bmp图片。下面是,使用该应用解析一部AVI电影获得的图片。 应用开发信息 定义一个INFO结构,包含两个字符串对象,一个ULONGLONG变量,和…

奔驰AMG GT50升级原厂阀门运动排气声浪效果

AMG 排气系统 声浪级别可控制的AMG高性能排气系统可带来不同凡响的听觉体验。借助可调式废气风门,按下按钮,即可按需改变车辆的声浪,体验不同音色。静谧深沉或动感澎湃,悦耳声浪,如你所愿。

Python画笔案例-076 绘制纯画笔弹球

1、绘制纯画笔弹球 通过 python 的turtle 库绘制 纯画笔弹球,如下图: 2、实现代码 绘制纯画笔弹球,以下为实现代码: """纯画笔弹球动画.py读者可以在此基础上把它修改成一个拦球游戏。步骤为,建立一个Rect类,即矩形类。然后采用按键检测,当按了键时重画…

​​Python+Matplotlib可视化简单反函数和复合函数

import numpy as np import matplotlib.pyplot as plt# 设置中文字体 plt.rcParams[font.sans-serif] [SimHei] # 用黑体显示中文 plt.rcParams[axes.unicode_minus] False # 正常显示负号# 创建图形和子图 fig, (ax1, ax2) plt.subplots(1, 2, figsize(15, 6))# 反函数示…

Line: 折线图

对北京市、天津市、上海市、重庆市的近10年人口,做出折线图,效果 参考:Line - Basic_line_chart - Document (pyecharts.org) 1、折线图模板 import pyecharts.options as opts from pyecharts.charts import Linex_data ["Mon"…

基于Springboot+Vue的中医院问诊系统的设计与实现 (含源码数据库)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 系统中…

内存卡数据恢复软件大揭秘,拯救你的重要数据

我们的生活中充斥着各种各样的数据,而内存卡作为一种常见的数据存储设备,承载着我们的照片、视频、文档等重要信息。然而存储在电子设备上就有可能导致数据丢失的情况。今天我们一起来探讨内存卡数据恢复的一些工具吧。 1.福晰内存卡数据恢复 连接直达…

ros2使用roscore报错

如果你在ros2中使用roscore命令,可能会出现报错。 即使你按照下面的命令安装python3-roslaunch,还是会报错。 注意,在ROS2中,已经不需要通过roscore命令启动ROS系统了。 ROS2中,不再需要ROS1中的roscore命令来启动一个…

【Python】Arrow使用指南:轻松管理日期与时间

Arrow 是一个基于 Python 的日期与时间管理库,提供了更人性化和直观的 API 处理时间数据。与 Python 标准库中的 datetime 模块相比,Arrow 极大地简化了时间创建、转换、格式化和操作的步骤。它通过统一的接口封装了常见的时间操作,支持时区转…

[C语言]--编译和链接

文章目录 目录 文章目录 前言 一、环境介绍 二、翻译环境 1.预处理(预编译) 2.编译 3.汇编 4.链接 三、运行环境 前言 对编译和链接 进行简单的介绍 一、环境介绍 在ANSIC的任何⼀种实现中,存在两个不同的环境。 翻译环境,在这…