FlingBot: The Unreasonable Effectiveness of Dynamic Manipulation for Cloth Unfolding
作者: Huy Ha, Shuran Song · CoRL 2021
许可协议
- 开放获取
- 论文: CC BY 4.0
以下内容均依据论文全文,按其 CC BY 4.0 许可协议使用;其中的图已注明作者。
一句话总结
一台双臂机器人以自监督方式学习在揉皱的布料上何处抓取,以执行固定的抓取-拉伸-甩动动作,在覆盖率和步数上胜过准静态的抓取放置(pick & place)。
为何重要
论文表明,一个经过学习的高速基元就能在少数几次动作内展开布料,处理大于够及范围的布料,并从矩形迁移到 T 恤。真实系统用第二台 RGB-D 相机而非力传感器来检测布料是否已拉直,训练信号来自俯视相机的掩码,这使硬件保持简单。
问题
大多数布料展开系统使用单臂准静态动作,例如抓取放置(pick & place),它们在严重揉皱的布料上需要大量交互,并且无法处理大于机械臂够及范围的布料。基于角、边或褶皱的启发式方法,在这些关键点被遮挡、不可见,或在非方形布料上不存在时会失效。
提出的方法
FlingBot 固定一个双臂运动基元(在两点处自上而下捏取,抬升至 0.30 m 并拉紧,以 1.4 m/s 向前甩出 0.70 m,回拉 0.50 m,放下),只学习抓取位置;抓取由一个中心像素、一个角度和一个宽度参数化,使机械臂顺序约束和抓取宽度约束保持线性且相互独立。一个价值网络在 12 个旋转和 8 个尺度下(空间动作图),对俯视图像逐像素预测覆盖率增量;它在基于 PyFleX 的定制仿真器中以自监督方式训练,然后在两台真实 UR5 机械臂上微调。
关键见解
- 固定拉伸和甩动动作,就把学习简化为选择两个抓取点;再额外学习甩动速度(FlingBot-S)没有带来显著提升。
- 用中心、[−90°, 90°] 内的角度和宽度来参数化双臂抓取,使左右臂顺序约束和两臂距离约束变为线性且相互独立。
- 通过空间动作图利用平移、旋转和尺度等变性至关重要:直接回归抓取参数(Fling-Reg)在普通矩形上只达到 +0.3% 的覆盖率增量。
- 通过试错,策略学会了抓取可见的角和边,或通过甩动使其显露出来,这正是早期启发式方法手工设计的策略。
- 甩动扩大了有效够及范围,因此大于机械臂够及范围的布料仍可被展开。
主要结果
- 仿真,普通矩形(最终 / 增量覆盖率):FlingBot 为 91.9% / +63.1%,对比 Pick&Place 53.0 / +24.2、Pick&Drag 58.0 / +29.2 和 Stretch&Drag 77.2 / +48.4。
- 在仿真中,对新的普通矩形布料,3 次动作内覆盖率超过 80%。
- 超出够及范围的大矩形:最终覆盖率 79.2%,增量覆盖率 +52.0%,约为准静态基线(+24.8%、+27.1%、+23.1%)的两倍。
- 训练中未见过的 T 恤:仿真中最终覆盖率 93.3% / 增量覆盖率 +46.8%。
- 真实双 UR5 系统,每种布料类型 10 个测试回合:普通矩形、大矩形和衬衫的最终覆盖率分别为 81.9%、88.5% 和 89.2%,Pick&Place 为 43.2%、38.4% 和 42.7%;微调使普通布料的覆盖率从 69.8% 提高到 81.9%。
- 每个甩动基元的中位时间为 16.7 s,抓取放置为 8.8 s,两者另有 2.5 s 和 2.9 s 的额外开销。
局限
- 对于更复杂的、以目标为条件的布料任务(例如折叠)还需要未来的工作,作者建议将动态动作和准静态动作与布料位姿估计结合来解决。
- 实验使用纯黑色工作区和无纹理的彩色布料,便于生成掩码;任意纹理需要额外的分割或背景减除。
- 真实世界结果是每种布料类型 10 个测试回合的平均值,并过滤掉了真实世界中的抓取失误。
- 一次甩动比一次抓取放置耗时更长(中位数 16.7 s 对 8.8 s),尽管所需动作更少。
- 真实系统依靠一块 2 英寸的橡胶垫和橡胶夹爪指套来帮助捏取,训练至收敛在一块 GTX 1080 Ti 上耗时约 6 天。
对领域的影响
获得 CoRL 2021 最佳系统论文奖,所给引用数为 229。作者通过项目页面发布了代码、仿真环境、数据和实验视频,其中包括一个基于 PyFleX、可加载任意布料网格的定制仿真器。
摘要
高速动态动作(例如甩动或抛掷)在我们与可变形物体的日常交互中起着至关重要的作用,它们提高了我们的效率,并有效扩大了我们的物理够及范围。然而,以往大多数工作在处理布料操作时只使用单臂准静态动作,这在初始布料构型较困难时需要大量交互,并且布料的最大尺寸被严格限制在机器人的够及范围之内。在这项工作中,我们通过所提出的自监督学习框架 FlingBot,展示了动态甩动动作在布料展开上的有效性。我们的方法针对双臂系统,从视觉观测中学习如何使用抓取、拉伸和甩动基元,从任意初始构型展开一块织物。最终系统在新布料上 3 次动作内达到超过 80% 的覆盖率,能够展开大于系统够及范围的布料,并且尽管只在矩形布料上训练,仍能泛化到 T 恤。我们还在真实世界的双臂机器人平台上对 FlingBot 进行了微调,其布料覆盖率的提升是准静态基线的 4 倍以上。FlingBot 的简洁性及其相对准静态基线的更优性能,证明了动态动作在可变形物体操作中的有效性。
链接
- arXiv 2105.03655: https://arxiv.org/abs/2105.03655
- DOI 10.48550/arXiv.2105.03655: https://doi.org/10.48550/arXiv.2105.03655
- PDF: https://proceedings.mlr.press/v164/ha22a/ha22a.pdf
- 代码: https://github.com/columbia-ai-robotics/flingbot
- 项目主页: https://flingbot.cs.columbia.edu/