点击上方,选择星标置顶,不定期资源大放送

阅读大概需要15分钟

Follow小博主,每天更新前沿干货

作者:沈博魁、夏斐、李承澍、Roberto Martín-Martín

转载自:机器之心

在这项研究中,斯坦福视觉与学习实验室(SVL)Silvio / 李飞飞组的研究者推出了一个全新的模拟环境 iGibson,从而可以为大型真实场景中的交互任务开发机器人解决方案。iGibson 包含 15 个充分可交互、视觉上逼真、依据真实房屋构建的场景,并且可以支持 CubiCasa5K 和 3D-Front 的 8000 余个场景。真正实现了「可交互性」。

近来,面向 AI 和机器人的模拟环境得到了大力发展。仅仅几年前,机器人模拟环境还算是相对稀有的产物,但如今,各大学术会议(NeurIPS、CoRL、甚至 ICRA 和 IROS)几乎所有与 AI 机器人相关的论文都会用到模拟环境。那么,模拟环境是如何帮助到 AI 发展的呢?可以归结为以下几点原因:

  • 首先,在机器人领域,机器学习正逐渐发挥越来越大的作用,从而导致了数据需求的迅猛增长 [2] [3] [4] [5]。现实世界中,机器人只能“real-time” 即时地产生数据,但海量的数据需求导致了从现实世界收集数据变得不现实。此外,机器学习需要收集的数据具备多样性,涉及到机器人的随机探索(random exploration)。如果在现实世界中让机器人随机活动,对机器人本身和周遭事物都是有挺大风险的。

  • 其次,在模拟环境变得越来越 robust、逼真(视觉效果和物理引擎)、便捷的同时,算力的增长也导致了大部分机器都可以运行这些模拟环境。因此即便没有足够的资金来购置机器人,也可以通过模拟环境来从事机器人研究。模拟环境降低了机器人研究的准入门槛,让更多的人能推进该领域的发展。

  • 最后,随着关于各种机器人任务(例如导航、抓握、操作等)的论文数量不断增长,一个问题也日渐凸显:机器人领域需要可复现的基准(repeatable benchmark)。一个成熟的学科需要能简洁、可靠地复现实验结果,这样才能让不同的方法理论得到有效地对比。与现实世界相比,在模拟环境中实现可复现的基准要容易许多。

然而,当前结合物理模拟与机器人任务的模拟环境往往局限于一小类任务,并且仅包含 clean 和小型场景。包含家庭和办公室等大型场景的少数模拟环境要么无能力改变场景,仅侧重于导航性能,如 Habitat;要么使用游戏引擎或者简化的交互模式,如 AI2Thor、VirtualHome。所以,在处理那些需要与场景进行丰富交互的任务而言,这些模拟器不支持端到端感觉运动控制回路的开发,也就难以完成此类任务。此外,简化的交互模式也导致很难将可学得的交互策略转换为可执行的真实机器人指令。

基于如上这些想法,来自斯坦福视觉与学习实验室(SVL)的研究者开发了 iGibson 以用来训练和测试 interactive(可交互的)AI 智能体 iGibson。

那么,iGibson 的特殊点在哪里呢?首先我们先来区分一下这两个概念:

  1. Physics simulator (物理引擎): 物理引擎可以计算不同行为对现环境产生的物理影响。比如对一个物体施加一个力的后果,或者对于水流的模拟。随着计算机图形学的发展,现在有许多成熟的物理引擎。其中在机器人领域最为突出的是 Bullet, PyBullet, MuJoCo, Nvidia PhysX and Flex, UnrealEngine, DART, Unity, and ODE 等。

  2. Simulation environment (模拟环境): 模拟环境是一个整体框架,包含多个元件:物理引擎、渲染引擎、模型(包括场景、物体、机器人)等。我们可以用模拟环境模拟一个给定的任务,并用它来研究其解决方案。

那么,对一个研究人员而言,想解决什么任务或想研究什么课题就决定了用什么模拟环境,所谓工欲善其事,必先利其器。对 iGibson 而言,我们想研究的是:基于视觉信号,机器人如何在大型真实场景(如一整间公寓)中解决需要与环境互动的任务。

  • 论文链接:https://arxiv.org/pdf/2012.02924.pdf

  • 项目地址:https://github.com/StanfordVL/iGibson/releases/tag/1.0.0

  • 网站地址:http://svl.stanford.edu/igibson/

  • pip 地址:https://pypi.org/project/gibson2/

  • doc 地址:http://svl.stanford.edu/igibson/docs/

  • 英文版 blog 地址:https://ai.stanford.edu/blog/igibson/

与现有模拟引擎的对比

已有的模拟引擎无法支持我们想研究的任务,即可以真实地在大型场景中进行物理互动。基于固定机械臂的模拟环境(如 meta-world, RLBench, RoboSuite, DoorGym)并不包含真实的场景,从而不支持需要在室内导航的任务。为室内导航开发的模拟环境(包括我们之前开发的 Gibson v1 和 Habitat)虽然可以解决视觉导航(visual navigation)和视觉语言导航(visual language navigation),但所包含的场景为三维重建的静止 mesh 模型。这意味着整个场景被封存在了重建时的位置,物品无法移动,机器人也不能与场景进行交互。

除此之外,例如 Sapien, AI2Thor, ThreeDWorld (TDW)的一些模拟环境开始逐渐支持场景级的交互任务。Sapien 侧重的问题是与铰接(articulated)物体的互动(如门、柜等)。TDW 提供高质量的声音、形变、液体模拟(基于英伟达的 Flex 物理引擎)。但 Sapien 和 TDW 均不提供大型场景模型,从而不支持有关大型场景的任务研究。AI2Thor 虽包含了可互动的场景,但互动为脚本化的符号交互,把现实中连续的互动和变化离散化了—当物体满足一个先觉条件,agent 可以发出一个指令,从而这个物体进入其下个状态。例如,一个冰箱的敞开程度本应是连续值,但现在只有 “开” 和“关”两个状态。AI2Thor 之后出现了 RoboThor,但其只提供简单的传感器与一种机器人 LoCoBot 的模拟。受限于 LoCoBot 的技术限制与环境的离散化,机器人无法在模拟环境内学习并解决复杂的交互任务。

我们想要研究的任务是复杂的、long-horizon(长线)、 mobile manipulation(移动操作)任务,例如:收拾房间、找寻物品等。为了研究可以落地到现实世界的解决方案,模拟可真实交互的大型场景变得尤为重要。

iGibson 的一些功能

iGibson 最重要的功能是 interactivity(可交互性),即构建可以真实交互的大型场景。为此,我们实现了如下关键功能:

  • 15 个充分可交互、视觉上逼真、依据真实房屋构建的场景。其中所有物体可真实交互,包含了材料与动力学信息;

  • 可支持 CubiCasa5K[6]的 8000 余个场景。

  • 真实的传感器信号模拟,包括:RGB (基于物理渲染引擎(Physics-based renderer)),深度图,1 束或 16 束的激光雷达,语义 / 实例 / 材料分割图,光流,场景流等;

  • 内置运动规划算法,用于规划机器人底座的移动(在环境中导航)与机械臂的移动(抓取操纵物体)。

  • 内置域随机化功能,可随机替换 visual textures (视觉图像)、材料与动力学信息、物体实例。由此,我们可以产生出无穷无尽的随机环境用于训练与测试。

  • 人机交互系统,可为机器人提供人工示范。

iGibson 功能的一些应用

我们在论文中展示了这些功能的用处,例如:iGibson 的光学雷达模拟可以帮助 agent 迁移到真实场景

iGibson 场景的充分可交互性可以帮助预训练机器人视觉,从而加速机器人学习并完成复杂的交互任务。

用 iGibson 解决更复杂的机器人任务

上述的 iGibson 功能能帮助人们更好的开发大型场景交互任务的解决方案。我们认为,其中一个很重要的问题是 Interactive Navigation (交互导航)。在这个任务中,agents 不仅需要导航,也需要改变其环境(如开门、移开障碍物)。这种需要改变环境的导航是在现实场景中最常见的。

为了在 iGibson 模拟环境中解决这个任务,我们开发了一套分层强化学习(hierarchical reinforcement learning)算法来决定 agent 的具体动作(当需要交互时用机械臂,当需要移动时用底座,也可同时利用机械臂和底座 [8]。

此外我们也提出了一个结合了运动规划算法的解决方案:算法来指定下个交互应该在何处发生,运动规划会基于此计算一条符合运动学且避障的轨迹 [9] 。

但我们认为这只是 iGibson 潜力的冰山一角。目前我们实验室 SVL(Stanford Vision and Learning Lab)有许多的项目在使用 iGibson,来提出、攻克各种各样的交互任务。

总结

我们认为模拟环境有极大的潜力来帮助研究人员解决机器人与 AI 的各种问题。iGibson 是一个完全开源的、面向大型场景交互任务的模拟环境。我们真心希望 iGibson 能为机器人与 AI 的研究做出贡献。

注:关于 Gibson: iGibson 的名字来源于心理学、认知科学泰斗 James J. Gibson [1904-1979]。Gibson 生前提出了许多开创性的想法,包括关于知觉的新概念:

  1. 知觉是一个生态(ecological)的过程,即本体不应从其所处的生态环境中剥离出去;

  2. 知觉是一个动态(active)的过程,即知觉需要交互和主观能动性。

在当时,主流学说认为知觉是一个被动接受并处理的过程。Gibson 的观点则相反,认为 agents 是在与环境的交互中主动寻求、而不是被动接受信息。Gibson 也提出了 “affordance”(承担特质)的概念:环境给予 agent 的行动可能,例如门提供“打开” 的功能,椅子提供 “支撑” 的功能。我们同事是这样概括 Gibson 先生的 research 的:“ask not what’s inside your head, but what your head is inside of” (不要光注重于你脑中的世界,请着眼于你所处的世界)。

参考

  1. iGibson, a Simulation Environment for Interactive Tasks in Large Realistic Scenes", by Bokui Shen*, Fei Xia*, Chengshu Li*, Roberto Martín-Martín*, Linxi Fan, Guanzhi Wang, Shyamal Buch, Claudia D'Arpino, Sanjana Srivastava, Lyne P. Tchapmi, Micael E. Tchapmi, Kent Vainio, Li Fei-Fei, Silvio Savarese. (*equal contribution)

  2. Andrychowicz, OpenAI: Marcin, et al. "Learning dexterous in-hand manipulation." The International Journal of Robotics Research 39.1 (2020): 3-20.

  3. Rajeswaran, Aravind, et al. "Learning complex dexterous manipulation with deep reinforcement learning and demonstrations." Robotics: Science and Systems, 2017

  4. Peng, Xue Bin, et al. "Sfv: Reinforcement learning of physical skills from videos." ACM Transactions on Graphics (TOG) 37.6 (2018): 1-14.

  5. Zhu, Yuke, et al. "robosuite: A modular simulation framework and benchmark for robot learning." arXiv preprint arXiv:2009.12293 (2020).

  6. Kalervo, Ahti, et al. "Cubicasa5k: A dataset and an improved multi-task model for floorplan image analysis." Scandinavian Conference on Image Analysis. Springer, Cham, 2019.

  7. Fu, Huan, et al. "3D-FRONT: 3D Furnished Rooms with layOuts and semaNTics." arXiv preprint arXiv:2011.09127 (2020).

  8. Li, Chengshu, et al. "Hrl4in: Hierarchical reinforcement learning for interactive navigation with mobile manipulators." Conference on Robot Learning. PMLR, 2020.

  9. Xia, Fei, et al. "Relmogen: Leveraging motion generation in reinforcement learning for mobile manipulation." arXiv preprint arXiv:2008.07792 (2020).

知乎链接:https://zhuanlan.zhihu.com/p/334643909?utm_source=wechat_session&utm_medium=social&utm_oi=75825684676608&utm_content=group3_article&utm_campaign=shareopn

重磅!DLer-计算机视觉交流2群已成立!

大家好,这是DLer-计算机视觉微信交流2群欢迎各位Cver加入DLer-计算机视觉微信交流大家庭 。

本群旨在学习交流图像分类、目标检测、目标跟踪、点云与语义分割、GAN、超分辨率、人脸检测与识别、动作行为与时空运动、模型压缩和量化剪枝、迁移学习、人体姿态估计等内容。希望能给大家提供一个更精准的研讨交流平台!!!

进群请备注:研究方向+学校/公司+昵称(如图像分类+上交+小明)

???? 长按识别添加,即可进群!

15个可交互的真实房屋场景,Silvio/李飞飞组开源大型室内场景的模拟环境iGibson...相关推荐

  1. 李飞飞组开源大型室内场景的模拟环境iGibson

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:知乎链接:https://zhuanlan.zhihu.co ...

  2. 阿里联合学界开源大型3D场景数据集,6813个户型,几何与纹理细节丰富

    本文转载自机器之心. 机器之心专栏 机器之心编辑部 源于阿里巴巴淘系的工业生产流程,兼具质量与数量,模型包含丰富的几何与纹理细节,阿里巴巴联合学界开源的场景布局数据集 3D-FRONT 将填补大规模高 ...

  3. keyshot场景素材导入_Keyshot怎么导入Rhino室内场景渲染?

    Keyshot是工业设计渲染比较常用的软件,因为操作简便,受到很多人的青睐.但并不太适合做室内表现,因为布光相对要麻烦一些.但如果你对其它渲染器不甚了解,用Rhino制作了室内场景,也是可以使用Key ...

  4. js室内地图开发_three.js搭建室内场景教程

    公司做商城.消防.用电等项目,需要实现楼层和设备的可视化,以前都是使用其他建模工具创建的整体模型,再使用three.js的加载器加载到场景中,但是这样的加载存在缺陷,比如不能给模型的元素赋属性.不能单 ...

  5. 使用three.js搭建室内场景

    公司做商城.消防.用电等项目,需要实现楼层和设备的可视化,以前都是使用其他建模工具创建的整体模型,再使用three.js的加载器加载到场景中,但是这样的加载存在缺陷,比如不能给模型的元素赋属性.不能单 ...

  6. 李飞飞团队最新研究,真实场景中识别物体具体属性,连表面纹理都识别出来了...

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 整理:公众号@量子位 本文仅做学术分享,如有侵权,请联系删除. 现在,细微到物体表面的纹理,AI都可以 ...

  7. SCS【15】细胞交互:受体-配体及其相互作用的细胞通讯数据库 (CellPhoneDB)

    点击关注,桓峰基因 桓峰基因公众号推出单细胞系列教程,有需要生信分析的老师可以联系我们!单细胞系列分析教程整理如下: Topic 6. 克隆进化之 Canopy Topic 7. 克隆进化之 Card ...

  8. 基于深度强化学习的室内场景目标驱动视觉导航

    基于深度强化学习的室内场景目标驱动视觉导航 摘要 介绍 相关工作 AI2-THOR框架 目标驱动导航模型 A.问题陈述 B.公式问题 C.学习设置 D.模型 E.训练协议 F.网络架构 实验 A.导航 ...

  9. 项目需求|室内场景三维空间重建项目

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 项目名称:室内场景三维空间重建项目 需求内容:依托移动端设备(或特定机型)实现室内场景三维重建,生成真 ...

最新文章

  1. Python_note4 程序控制结构+random库的使用
  2. CF17E:Palisection——题解
  3. 深入java虚拟机学习 -- 类的加载机制(续)
  4. Microsoft WPF VS Adobe Apollo
  5. 浏览器的一个请求从发送到返回都经历了什么?
  6. 【WPF学习笔记】[转]周银辉之WPF中的动画 晓风影天之wpf动画——new PropertyPath属性链...
  7. mysql安装(glibc版本安装5.7.22)
  8. python实现api server,初学python,准备学习做个restful api server,现在有些困惑
  9. 上手DocumentDB On Azure (二)
  10. 电子邮件--详解SMTP和POP3协议
  11. Unhandled exception at 0x0133bc63 ....0xC0000005: Access violation reading location 0x00000004.
  12. pannel加载form
  13. 电视盒子刷linux树莓派,用树莓派4B打造纯ATV 10代替电视盒子
  14. STM32 驱动液晶LCD12864
  15. 5年时间,我是如何在帝都全款买房的!!!
  16. Java 转人工智能开发路线图
  17. 2023年10大最佳「内容日历」软件工具
  18. vscode git拉下来后LF CRLF问题
  19. PaddleX 结合 OpenVINO 工具套件 ,优化深度学习算法CPU部署性能
  20. Dell_Insprion_5409加装内存条

热门文章

  1. ASP.NET Web API 路由对象介绍
  2. Windump网络命令的简单用法
  3. 根据特殊实体业务,实现自定义排序
  4. php crypt返回的是对象还是字符串,php – 将字符串与哈希值进行比较时,Crypt函数不起作用...
  5. html页面配置xml文件路径,web.xml与index.html
  6. java作图哪个是x轴_java – 主要以X和Y轴绘制的圆圈,为什么?
  7. sequence.pad_sequences 的用法举例
  8. 2020十大热门机器学习项目
  9. pytorch中T.RandomResizedCrop()等图像操作转换的效果
  10. 橘子CPS联盟小程序操作手册2.0