FOTS:一种用于机器人操作技能Sim2Real学习的快速光学触觉仿真器

news2024/11/24 6:38:23

类 GelSight的视触觉传感器具有高分辨率和低制造成本的优势,但是在与现实中的物体进行频繁接触时易受磨损。而触觉仿真器可大幅降低硬件成本,同时为后续技能学习任务提供仿真训练环境。为此,来自东南大学自动化学院的钱堃副教授研究团队和伦敦国王学院的Shan Luo副教授研究团队联合提出了一种快速光学触觉仿真器(Fast Optical Tactile Simulator, FOTS),用于模拟不同接触负载下的触觉光学和锚点运动场信息。论文发表于IEEE RAL,第一作者是东南大学自动化学院的硕士研究生赵永强。

论文的贡献主要有两个方面:一方面,使用多层感知器映射和平面阴影生成来模拟光学响应;另一方面,通过建模不同接触负载下的锚点分布函数来模拟由弹性体变形引起的锚点运动。仿真器现已开源,代码网址为https://github.com/Rancho-zhao/FOTS。

一、方法

下图为提出的快速视触觉仿真器FOTS的总体框架图,涉及到包括光学响应(包括光照和阴影)仿真和锚点运动仿真两个方面。

在这里插入图片描述

图1 FOTS总体框架图

(1)光照仿真:基于传感器涂层膜的反射光均匀分布、阴影仅取决于局部表面法线的假设,使用多层感知器(Multi-Layer Perceptron,MLP)通过将接触几何梯度映射到光照强度来模拟传感器的光学信号,即利用从一个触觉传感器的弹性体表面生成的高度图,能够根据每个点的表面法线推导出触觉图像的光照强度。下图为多层感知器的训练数据采集与触觉图像生成过程:

在这里插入图片描述

图2 使用MLP将几何梯度映射到图像光照强度

(2)阴影仿真:先前用于光学触觉传感器的阴影模拟方法要么依赖于物理引擎渲染,要么由于曲面计算而对非平坦传感器(如DIGIT)效率较低。为此,考虑基于现实世界中阴影产生的原理,使用平面阴影生成方法来消除平台依赖性并加快阴影模拟,该方法可以分别生成每个光源的阴影,且适用于不同触觉传感器中使用的点光源(如DIGIT)或者平行光源(如GelSight)。

在这里插入图片描述

图3点光源(a和b)和平行光源(c和d)下的阴影形成。(a)、(c)分别展示了不同光源下的平面阴影生成场景;(b)、(d)分别展示了如何通过不同时间的多个接触位置来确定光源的位置或方向

(3)锚点运动场仿真:通过建模锚点位移分布函数,来直接近似锚点运动与接触几何之间的关系,同时避免由于噪声或标定问题引起的误差。与需要精确的弹性体形变模型(如基于有限元分析FEM的方法)或者测量锚点位移的力/力矩信息的仿真方法相比,这种建模锚点位移分布函数的方法更高效,且对照明条件、弹性体材料等因素更具鲁棒性。如下图所示,考虑与法向(Normal)、切向(Shear)和扭转(Twist)负载相对应的三种类型的锚点运动,分别建模不同负载下的锚点位移分布函数,然后将它们组合起来模拟总体的锚点运动。
在这里插入图片描述

图4 不同负载下锚点运动模式

二、实验结果

实验结果表明,FOTS在图像生成质量和渲染速度方面优于其他方法,在CPU上实现了28.6fps的光学模拟和326.1fps的锚点运动模拟。光学仿真和锚点运动场仿真实验结果如下图:
在这里插入图片描述

图5 (a)针对DIGIT传感器,FOTS与其他仿真方法的比较;(b)不同压痕深度和位置的光学仿真结果;(c)方法应用到不同GelSight传感器上

在这里插入图片描述

图6 (a)DIGIT传感器的锚点运动场模拟结果;(b)GelSight传感器的锚点运动模拟,其标记布置不同于DIGIT传感器;(c) 锚点自身扭曲情况

三、触觉驱动的机器人操作技能Sim2Real学习

由于FOTS对触觉传感器的光学和机械响应的快速模拟能力,在触觉驱动操作任务中的Sim2Real迁移性能方面也表现出色。下图所示的框架是利用FOTS在仿真器中学习机器人插孔策略并Sim2Real迁移到实物域的结果。
在这里插入图片描述

图7 (a)Sim2Real策略学习与迁移框架(使用带有锚点的GelSight传感器);(b-d)长方体、圆柱体和六边形物体的现实实验示意图(包括相应的触觉锚点图像),蓝色框显示插入姿势调整,红色框显示插入尝试

四、结论与展望

论文提出一种快速光学触觉仿真器FOTS,使用多层感知器映射和平面阴影生成来模拟光学响应,同时应用锚点分布近似来模拟锚点的运动。该方法在快速生成触觉图像和触觉流的同时质量也达到了较高的精度。此外,FOTS在触觉驱动的插孔任务上也表现优异,并成功进行了Sim2Real迁移实验。然而,仿真与现实之间仍然存在差距,可将其归因于两个因素:1)难以完全模拟接触物体的物理特性;2) 该方法无法完全模拟锚点运动,例如在实际接触情况下常见的倾斜扭矩负载下的运动。未来可以将力/扭矩模块集成到仿真器中,以进一步减小视触觉传感器的Sim2Real域间差。

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

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

相关文章

大厂常见算法50题-两数相加

专栏持续更新50道算法题,都是大厂高频算法题,建议关注, 一起巧‘背’算法! 文章目录 题目解法总结 题目 解法 定义一个节点pre,用于初始化结果链表的头部,cur指向pre,它将在遍历过程中用于构建新的链表。初始化进位变…

基于单片机的直流电机测速装置研究与设计

摘要: 基于单片机的直流电机测速装置采用了对直流电机的中枢供电回路串联取样电阻的方式实现对电机转速的精确实时测量。系统由滤波电路、信号放大电路、单片机控制电路以及稳压电源等功能模块电路构成。工作过程中高频磁环作为载体,利用电磁感应的基本原理对直流电…

使用Flask部署Web应用:从入门到精通

文章目录 第一部分:准备工作第二部分:部署Flask应用到AWS部署到AWS Lambda 第三部分:部署Flask应用到腾讯云服务器部署到腾讯云服务器 第四部分:优化和扩展结论 在现代软件开发中,Web应用的部署是一个至关重要的环节。…

面试题:调整数字顺序,使奇数位于偶数前面

题目: 输入一个整数数组,实现一个函数,来调整该数组中数字的顺序 使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分 算法1: 利用快速排序的一次划分思想,从2端往中间遍历 时间复杂度&#x…

【漏洞复现】泛微OA E-Cology ResourceServlet文件读取漏洞

漏洞描述: 泛微OA E-Cology是一款面向中大型组织的数字化办公产品,它基于全新的设计理念和管理思想,旨在为中大型组织创建一个全新的高效协同办公环境。泛微OA E-Cology ResourceServlet存在任意文件读取漏洞,允许未经授权的用户…

网络安全之OSPF进阶

该文针对OSPF进行一个全面的认识。建议了解OSPF的基础后进行本文的一个阅读能较好理解本文。 OSPF基础的内容请查看:网络安全之动态路由OSPF基础-CSDN博客 OSPF中更新方式中的触发更新30分钟的链路状态刷新。是因为其算法决定的,距离矢量型协议是边算边…

【java-数据结构14-双向链表的增删查改2】

上一篇文章中,我们已经对双向链表进行一些基本操作,本篇文章我们继续通过对链表的增删查改来加深对链表的理解~同时有任何不懂的地方可以在评论区留言讨论,也可以私信小编~觉得小编写的还可以的可以留个关注支持一下~话不多说正片开始~ 注意…

「JavaEE」多线程案例分析3:线程池

🎇个人主页:Ice_Sugar_7 🎇所属专栏:JavaEE 🎇欢迎点赞收藏加关注哦! 线程池 🍉简介🍉标准库中的线程池🍉Executors🍉实现一个简单的线程池 🍉简介…

初始Django

初始Django 一、Django的历史 ​ Django 是从真实世界的应用中成长起来的,它是由堪萨斯(Kansas)州 Lawrence 城中的一个网络开发小组编写的。它诞生于 2003 年秋天,那时 Lawrence Journal-World 报纸的程序员 Adrian Holovaty 和…

识别AI论文生成内容,降低论文高AI率

AI写作工具能帮我们在短时间内高效生成一篇毕业论文、开通报告、文献综述、任务书、调研报告、期刊论文、课程论文等等,导致许多人开始使用AI写作工具作为撰写学术论文的辅助手段。而学术界为了杜绝此行为,开始使用AIGC检测系统来判断文章是由AI生成还是…

机器学习中的聚类

目录 认识聚类算法 聚类算法API的使用 聚类算法实现流程 聚类算法模型评估 认识聚类算法 聚类算法是一种无监督的机器学习算法。 它将一组数据分成若干个不同的群组,使得每个群组内部的数据点相似度高,而不同群组之间的数据点相似度低。常用的相似…

【3dmax笔记】028:倒角的使用方法

一、倒角描述 在3dmax中创建倒角效果可以通过多种方法实现,以下是几种常见的方法: 使用倒角修改器。首先创建一个图形(如矩形和圆),然后对齐它们,将它们转化为可编辑样条线,并附加在一起,选择要倒角的边缘,然后使用倒角修改器来调整高度、轮廓等参数。使用倒角剖面修…

Davinci工程vBaseEnv模块讲解

配合的模块 要正常使用vBaseEnv模块,要同时使能EcuC、OS、vBRS和vLinkGen模块。 OS是操作系统,除了FBL以外,其他都需要用到OS。 vBaseEnv是基础环境 vBRS是基本运行系统 vLinkGen脚本链接生成器 EcuC是ECU配置 EcuC配置 需要配合vBaseEnv模…

程序员的神奇应用:从代码创造到问题解决的魔法世界之持续集成/持续部署

文章目录 持续集成/持续部署 在软件开发的海洋中,程序员的实用神器如同航海中的指南针,帮助他们导航、加速开发、优化代码质量,并最终抵达成功的彼岸。这些工具覆盖了从代码编写、版本控制到测试和部署的各个环节。 在当今数字化的世界里&…

数字水印 | Arnold 变换的 Python 代码实现

🥭 参考博客: Arnold 阿诺德置乱(猫脸变换)图像盲水印注入预处理(Python) 1 回顾:Arnold 公式 A r n o l d \mathsf{Arnold} Arnold 变换公式如下: [ x n 1 y n 1 ] [ 1 b a a b…

搜索引擎的设计与实现(二)

目录 3 搜索引擎的基本原理 3.1搜索引擎的基本组成及其功能 l.搜索器 (Crawler) 2.索引器(Indexer) 3.检索器(Searcher) 4.用户接口(UserInterface) 3.2搜索引擎的详细工作流程 4 系统分析与设计 4.1系统分析 4.2系统概要设计 4.2系统实现目标 前面内容请移步 搜索引…

力扣HOT100 - 70. 爬楼梯

解题思路&#xff1a; 动态规划 注意 if 判断和 for 循环 class Solution {public int climbStairs(int n) {if (n < 2) return n;int[] dp new int[n 1];dp[1] 1;dp[2] 2;for (int i 3; i < n; i) {dp[i] dp[i - 1] dp[i - 2];}return dp[n];} }

Co-Driver:基于 VLM 的自动驾驶助手,具有类人行为并能理解复杂的道路场景

24年5月来自俄罗斯莫斯科研究机构的论文“Co-driver: VLM-based Autonomous Driving Assistant with Human-like Behavior and Understanding for Complex Road Scenes”。 关于基于大语言模型的自动驾驶解决方案的最新研究&#xff0c;显示了规划和控制领域的前景。 然而&…

智能组网实施步骤?

随着信息技术的快速发展&#xff0c;智能组网正在逐渐成为各个行业的关注焦点。智能组网通过将各种设备、终端和系统连接起来&#xff0c;实现信息的传输和共享&#xff0c;从而提升工作效率和运营效益。本文将介绍智能组网的实施步骤&#xff0c;以及一家名为【天联】的智能组…

台式电脑屏幕亮度怎么调节?让你的眼睛更舒适!

在日常使用台式电脑时&#xff0c;调节屏幕亮度是一项常见的需求。不同的环境和个人偏好可能需要不同的亮度设置。因此&#xff0c;了解台式电脑屏幕亮度怎么调节是非常重要的。本文将介绍三种常见的方法&#xff0c;帮助您轻松调节台式电脑屏幕亮度&#xff0c;以满足您的需求…