点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

作者:脱贫钉子户

https://zhuanlan.zhihu.com/p/98990794

本文仅做学术分享,如有侵权,请联系删除。

摘要

由于障碍物阻碍了可能的抓握,因此在混乱的环境中进行机器人抓取通常是不可行的。然后,需要进行诸如移动或推动对象之类的预抓取操作。本文提出了一种算法,该算法除了可以抓取之外还可以学习以某种方式移动对象,从而增加它们的抓取概率。我们研究的主要贡献有三点:1.我们提出一种算法,用于学习诸如夹紧或移动之类的操纵基元的最佳姿态;2.我们学习不可理解的动作,这些动作明显增加了把握的可能性;3.我们将实际解决方案应用于垃圾箱拣选的工业任务,从而能够完全清空垃圾箱。本文的机器人通过自监督学习了25000次抓取和2500次移动,机器人最终实现了每小时抓取 次物体,同时我们将算法部署到了一些机器人从未见过的物体上,验证其泛化性能。

主要贡献

1.提出了一种基于视觉的姿态学习方法,用于学习机器人抓取时的最佳姿态;
2.通过抓取成功概率最大化来学习机器人的抓取策略;
3.将推动和抓取结合,在统一的回报函数框架下进行学习,从而获得更为有效的推动数据;
4.构建了一个真实的机器人系统,通过训练完成了垃圾分类任务。

算法流程

操作对象空间姿态学习

给定深度图s作为状态量,动作空间为 ,其中 是坐标, 表示绕 轴的旋转角度, 表示定义的运动原语策略,在本文中一共定义了5种运动原语。为了得到俯瞰的视图,因此将绕 轴的旋转都设置为0,深度信息可以直接从深度图获取,因此就得到了六个自由度的姿态信息。给定 就可以获取个深度图的一个滑窗,通过一个全卷积神经网络,输出当前应该采取的运动原语策略 ,整个网络结构如下图:

这里将一个动作的选择可以看作是两个复合函数的组合 其中 表示对状态和动作的值函数估计, 表示选择函数。
动作值函数的估计:这里在训练阶段输出的最后一层输出的是 大小的特征图,但是在推理过程中输出的是 大小的特征图。绕 轴旋转的角度 一共有20个值,因此在推理阶段,机器人对每一种运动原语策略需要计算32000个回报值。策略选择:在强化学习中通常都是使用贪心策略作为动作选择,在本文中通过均匀的返回最大值中的一个随机动作,从而避免动作选择的失败。最终算法输出的六个姿态分别是 ,再结合运动基元索引估计回报

动作空间探索

探索策略的设计是机器人抓取快速有效数据学习的关键,本文将介绍一些用于物体操纵的高级策略。在没有先验信息的情况下,系统通过在动作空间内连续且均匀地随机采样来探索环境。由于我们采取的是离线策略算法,我们能够将 -贪心算法与以下高级策略相结合:
1.最大化self-information: 其中 表示概率密度函数,对于机器人操作而言,获得最终的绝对奖励同通常而言都是非常稀疏的,因此通常会选择 的动作,但是我们发现如果使用 会使得探索更为广泛;
2.最小化不确定度:在RL中,通常将 添加到动作-值函数本身(用于训练),从而推导出了通用的上置信界(UCB)算法。我们使用蒙特卡洛方法进行方差采样来估计神经网络的贝叶斯不确定性;
3.最小化结果的不确定性:对于二元回报函数 的情况,将其替换为 ,在缺乏信息或者随机物理条件的情况下,系统无法可靠地预测这些动作的结果,可以使用这类替换。

抓取学习

本文的主要贡献是使一项技能(推动)明确依赖于另一项(抓取),这样,可以绕过了与时间有关的MDP中稀疏奖励的问题。首先,将运动原语策略 的集合定义为从三个不同的抓取动作。机器人的轨迹由抓握姿势 及其平行于抓爪的接近向量给出;如果机器人检测到与其内部力传感器的碰撞,则机器人会缩回几毫米并合上夹具。然后,将物体提起,机器人将移动到收纳箱上方的随机姿势。使用抓爪的力反馈来测量抓握成功,定义了回报函数如下:

对于二元回报函数,其抓取的动作-值函数 表示抓取成功的概率

推动学习

通过使转移的奖励函数明确依赖于抓握成功概率,使得我们将推动和抓握两个动作结合起来,更准确地说,系统预测不同的运动原语策略对最大抓取概率的影响。回报函数表示了推动动作执行前后的状态变化,从而导致了最大抓取概率的变化,因此训练网络的回报函数可以写作:

与抓取的回报函数不一样,推动的回报函数需要进行归一化,使其成为一个连续量,它的估计是一个回归任务,训练的时候优化目标是实际回报与预期回报之差。与推动动作原语一样,本文也对推动动作定义了两个不同的运动原语策略。
由于数据生成是深度RL的限制因素,因此,训练过程最好采取自监督方式,尽可能减少人为干预。为了保证连续训练,系统首先估算总体最大抓取概率 ,如果 ,系统应该采取可以增加最大抓取概率的动作指导 ,再然后,系统尝试减少最大抓取概率,直到 ,如此循环往复。训练从垃圾箱中的单个对象开始,随着时间的推移又添加了一个对象。

学习与推理结合

对于垃圾箱拣选任务,抓取和推动需要组合成一个控制器,除了推理本身,组合学习还需要保证训练和应用阶段的数据分布相匹配。整个任务的流程图:

首先,估计抓取的最大概率,如果概率低于阈值,则进一步估计推动的回报,如果回报大于阈值,就采用推动动作,否则为空箱;当概率大于阈值时,就采用抓取策略。

实验结果

实验平台采用的是Franka Panda机器人,双目相机采用的是Ensenso N10,采用的是英特尔的i7-8700K处理器和两张GTX1070Ti显卡。在单个GPU上网络推断时间大约需要10ms,计算包括图像捕捉在内的整个动作不到100ms。项目的完整地址:https://github.com/pantor/learning-shifting-for-grasping

表1 每小时拣货量(PPH),掌握率以及在不同箱式拣选方案中每抓取一次需要的推动次数。在实验中,机器人从m个物体中抓取了n个物体,没有替换,随机的抓取成功率为3%。

图1 定性地显示了该系统学会了将对象移开或移离垃圾箱边缘以提高抓取概率的可视化。

图2评估了不同的抓取阈值,对于抓取率和每个小时抓取数目的影响。

图3 真实的抓取物体

表2 不同物体的抓取结果

推荐阅读:

  • 专辑|相机标定

  • 专辑|点云后处理

  • 专辑|SLAM从入门到精通

  • 专辑|事件相机

  • 专辑|OpenCV从理论到实践

  • 专辑|深度学习在3D视觉上的应用

  • 专辑|招聘与项目对接

  • 专辑|读书笔记

  • 专辑|学习资源&求职&编程

  • 专辑|结构光

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近1000+星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

针对杂乱环境下抓取物体的机器人学习相关推荐

  1. 受婴儿抓阄启发,谷歌让机器臂自学抓取物体,不用标注数据

    晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI 谷歌大脑让AI更像儿童了,至少在对象识别和感知方面是这样.最近,他们和加州大学伯克利分校的学生研究了一种算法Grasp2Vec,通过观察和 ...

  2. gazebo仿真 UR10 + robotiq140抓取物体失败:滑出或滑落

    gazebo仿真 UR10 + robotiq140抓取物体失败:滑出或滑落 机械臂(UR10+Roboiq140)抓取物体失败:爪子夹取物体,物体滑出,或机械臂网上提升时候,物体滑出,没有跟随机械臂 ...

  3. Gazebo中Robotiq使用和是否抓取物体判断

    Gazebo中Robotiq使用和是否抓取物体判断 文章目录 Gazebo中Robotiq使用和是否抓取物体判断 1.gazebo中的仿真使用 2. 仿真中如何判断抓取 3.例子 4.完结撒花 由于课 ...

  4. 在linux下vcd光盘提取,linux下抓取Vcd的视频文件[Linux安全]

    赞助商链接 本文"linux下抓取Vcd的视频文件[Linux安全]"是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判 ...

  5. linux下抓管理员hash,Linux下抓取登陆用户密码神器mimipenguin

    windows下有Mimikatz,现在linux下有了mimipenguin,国外安全研究员huntergregal发布了工具mimipenguin,一款Linux下的密码抓取神器,弥补了Linux ...

  6. Unity之OpenXR+XR Interaction Toolkit实现 抓取物体

    前言 我们今天来说一下如何使用XR Interaction Toolkit来实现和3D物体的交互之:抓取,简单说就是通过VR手柄拿起来一个物体. 二.准备工作 我们需要准备好Unity工程和环境配置 ...

  7. linux用户密码转换为明文,Linux运维知识之linux下抓取内存中明文密码mimipenguin

    本文主要向大家介绍了Linux运维知识之linux下抓取内存中明文密码mimipenguin,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 下载地址:https://githu ...

  8. 杜国光博士,基于视觉的机器人抓取--物体定位,位姿估计到抓取估计课堂笔记

    基于视觉的机器人抓取--物体定位,位姿估计到抓取估计课堂笔记 杜国光博士在智东西公开课上讲了<基于视觉的机器人抓取--物体定位,位姿估计到抓取估计>的精彩课程 满满的干货,记下来,后面慢慢 ...

  9. Pico Neo3手柄抓取物体

    功能:手柄抓取物体 设备:pico neo3 unity : 2020 1.可抓取的物体添加 XR Grab Interactable 脚本 2.LeftHand Controller  /Right ...

最新文章

  1. 17委托异步调用方法
  2. Nginx系列~负载均衡服务器与WWW服务器的实现
  3. 《Flume日志收集与MapReduce模式》一2.2 Flume配置文件概览
  4. ubuntu docker用mount或volume与windows共享文件(samba)(设置共享ip地址)
  5. Hybris Commerce下单时遇到产品库存不足的解决办法
  6. python选择题题目_Python接口测试题(持续更新中)
  7. CCNA-第八篇-OSPF-上
  8. 米斯特白帽培训讲义 漏洞篇 提权
  9. SQLServer2005 没有日志文件(*.ldf) 只有数据文件(*.mdf) 恢复数据库的方法
  10. 学习java疯狂讲义笔记(连载)
  11. android webview 跳转到浏览器,Android WebView或手机浏览器打开连接问题解决办法总结...
  12. 74HC595芯片单颗与级联的万能代码|2021-09-03
  13. 所有网站都是用虚拟服务器吗,哪类网站不适合使用虚拟主机?
  14. 计算机电源输出电压 电流,电脑USB接口的输出电压以及电流你知道吗?
  15. 输出21世纪中截止某个年份以来的所有闰年年份。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。
  16. 计算机二级c常用算法,闽高校计算机二级C语言常用算法
  17. Xshell7.0/Xftp7.0官方免激活下载
  18. 项目实训(十一)——FPS游戏(第一人称射击游戏)初步开发
  19. 文字“中间划线”的几种CSS实现
  20. html自动播放片头预览,AE脚本-创建html网页GIF动图预览批量输出GIF动图工具脚本aw_PreviewGenerator v1.6...

热门文章

  1. Error creating bean with name 'messageSource' defi
  2. svn command line tag
  3. datagrid加checkbox实现分页不丢失选择的记录 (转)
  4. 数据库设计性能与效率
  5. 说说Nginx的核心技术和场景的使用方式!
  6. 巧用二进制,让性能提升100倍,让存储空间减少100倍
  7. 面试被问到Redis实现发布与订阅,手摸手教
  8. 彻底取代Redis+数据库架构,京东618稳了!
  9. 大数据中台之Kafka,到底好在哪里?
  10. 史上最全的高可用服务系统线上问题排查工具单(一)