CN115990891B - 一种基于视觉示教和虚实迁移的机器人强化学习装配的方法 - Google Patents
一种基于视觉示教和虚实迁移的机器人强化学习装配的方法 Download PDFInfo
- Publication number
- CN115990891B CN115990891B CN202310292031.8A CN202310292031A CN115990891B CN 115990891 B CN115990891 B CN 115990891B CN 202310292031 A CN202310292031 A CN 202310292031A CN 115990891 B CN115990891 B CN 115990891B
- Authority
- CN
- China
- Prior art keywords
- assembly
- robot
- teaching
- simulation
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000000007 visual effect Effects 0.000 title claims abstract description 50
- 238000013508 migration Methods 0.000 title claims abstract description 33
- 230000005012 migration Effects 0.000 title claims abstract description 33
- 230000002787 reinforcement Effects 0.000 title claims abstract description 32
- 238000004088 simulation Methods 0.000 claims abstract description 64
- 238000012549 training Methods 0.000 claims abstract description 42
- 230000033001 locomotion Effects 0.000 claims abstract description 14
- 230000006870 function Effects 0.000 claims description 33
- 238000004422 calculation algorithm Methods 0.000 claims description 27
- 230000009471 action Effects 0.000 claims description 20
- 238000013519 translation Methods 0.000 claims description 12
- 238000005457 optimization Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 239000003795 chemical substances by application Substances 0.000 claims description 10
- 239000013598 vector Substances 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 9
- 230000007704 transition Effects 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 239000012636 effector Substances 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 claims description 5
- 239000003642 reactive oxygen metabolite Substances 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 3
- 238000006073 displacement reaction Methods 0.000 claims description 3
- 238000009826 distribution Methods 0.000 claims description 3
- 230000002708 enhancing effect Effects 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 3
- 238000003780 insertion Methods 0.000 claims description 3
- 230000037431 insertion Effects 0.000 claims description 3
- 230000015556 catabolic process Effects 0.000 abstract description 2
- 238000006731 degradation reaction Methods 0.000 abstract description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Manipulator (AREA)
Abstract
本发明提供了一种基于视觉示教和虚实迁移的机器人强化学习装配的方法包括如下步骤:步骤S0、搭建机器人装配硬件平台;步骤S1、获取装配对象在三维空间中的6D位姿示教轨迹;步骤S2、搭建虚拟仿真环境,通过示教轨迹来预训练装配策略模型使之具有类似人工装配的运动轨迹;步骤S3、再训练并优化装配策略模型,提高机器人装配的成功率。本发明装配策略的训练效率高、实际实验数据易于收集,有效解决仿真环境与现实实验环境误差导致的装配策略性能下降的问题。
Description
技术领域
本发明涉及人工智能技术应用领域,特别涉及一种基于视觉示教和虚实迁移的机器人强化学习装配的方法。
背景技术
随着智能制造产业的需求和人工智能技术的发展,深度强化学习已经成功的广泛地应用于机器人操作任务和连续控制的问题中,利用机器人来完成零件装配任务已经成为主要发展趋势。最近的一些研究表明,深度强化学习方法可靠性和鲁棒性存在限制,把装配策略模型从仿真迁移到现实中实施存在困难,装配策略模型在现实中运行不稳定,甚至出现过拟合的情况。
机器人完成轴孔装配以及复杂零部件装配任务主要可以分为三个部分,即找到目标位置、对齐、插入。传统的强化学习装配策略需要耗费大量的时间、精力去收集实验数据和训练装配策略,由于装配对象的多样性,一种零件的装配策略迁移到另一种零件上时达不到理想的装配效果,导致重新实验训练装配策略模型。为此提高机器人强化学习装配效率十分必要。
最近一些学者提出从人类示教中学习,将专家经验与强化学习相结合,模仿学习可以使用正确的行为示范来训练模仿专家的策略,但是如何实现接近人类装配运动的轨迹是一个巨大的挑战。一些研究表明,基于视觉示教可以更快的训练机器人完成更像人类的不同操作任务,同时不需要复杂的手动标注。基于视觉示教需要运动重定向,即将人的手部运动转换为机器人的手部运动来指挥机器人。同时一些研究者采用PyBullet(一个Python模块,可用于机器人,游戏,视觉效果和机器学习的物理模拟)、Mujoco (Multi-Jointdynamics with Contact,接触型多关节动力学,一个模拟接触周围环境的多关节运动的物理引擎,可用于机器人动作、生物力学、图形和动画、机器学习等领域)等仿真环境来训练机器人装配,来解决从现实世界采集样本效率低、数据收集困难的问题。但将仿真中训练的智能体模型迁移到现实世界中时,现实与仿真的差距会导致装配策略模型的性能降低。
发明内容
本发明提供了一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其目的是为了解决背景技术中装配策略的训练效率低、实际实验数据难以收集、仿真环境和现实实验环境存在巨大差距导致装配策略性能下降的技术问题。
为了达到上述目的,本发明提供的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,如图1所示,包括如下步骤:
步骤S0、搭建机器人装配硬件平台,使RGB-D(RGB+Depth Map,RGB-D)相机可拍摄到装配目标及机器人装配结构;
步骤S1、获取装配对象在三维空间中的6D位姿示教轨迹;具体包括:
步骤S11:使用RGB-D相机和结构光拍摄人工装配过程,得到人工装配示教的图像;
步骤S12:对目标,即人工装配示教的每张图像中的装配对象,进行识别和分割,通过深度信息和相机内部参数获取点云,估计目标的6D位姿,收集一组6D位姿数据得到装配示教轨迹,并通过手眼标定,将示教轨迹从图像坐标系转移到世界坐标系;
步骤S2、搭建虚拟仿真环境,通过示教轨迹来预训练装配策略模型使之具有类似人工装配过程的运动轨迹;
步骤S3、再训练并优化装配策略模型,提高机器人装配的成功率;具体包括:
步骤S31、利用物理仿真引擎,在虚拟环境中使用近端策略优化算法再训练步骤S2中的装配策略模型,提高机器人完成装配任务的成功率;
步骤S32、通过域随机化来增强装配策略模型的鲁棒性和提高迁移到现实世界的成功率;
步骤S33、利用虚拟环境与现实之间的误差关系设计视觉误差估计器,并通过虚拟环境中机器人的状态信息以及视觉误差估计器,实现真实环境下的机器人零件装配任务。
优选地,所述步骤S11包括如下步骤:
步骤S111、准备一个RGB-D相机和结构光光源;
步骤S112、将相机和结构光固定在装配场景的上方,保证相机能拍摄到完整的人工装配场景,此时相机与机器人的关系为“眼在手外”;
步骤S113、用相机拍摄人工完成装配动作,即将装配对象插入装配目标位置。
优选地,所述步骤S12具体为:
使用Yolov5(Yolo第5版,ultralytics公司提供的项目)对步骤S11拍摄到的每张图像中的装配对象进行识别和分割;通过深度信息和相机内部参数获取目标的点云数据;使用通过基于法向量的迭代最近点改进算法(Normal Iterative Closest Point,NICP)算法处理点云数据来得到目标的6D位姿;收集一组6D位姿数据得到示教轨迹,即装配对象插入装配目标位置的6D位姿变换过程,将得到的示教轨迹,通过手眼标定得到的旋转平移关系,从图像坐标系转换到世界坐标系;
其中,获取所述图像坐标系和世界坐标系之间的旋转矩阵和平移向量具体为:
其中,、/>是目标像素在图像坐标系中的位置,/>、/>是图像中心的像素位置;/>、表示每列和每行的长度;/>是相机的焦距;/>表示相机坐标系中的位置;是世界坐标系中位置;/>是旋转矩阵,/>是平移向量。
优选地,所述步骤S12具体包括如下步骤:
步骤S121:训练一个Yolov5模型,对步骤S11拍摄的人工装配示教的每一张图像中的装配对象进行识别和分割,从每一张图像中截取物体的位置并获得像素位置;
通过深度图像和灰度图像之间的对应关系,得到实例分割生成的目标对象掩膜的深度信息;
步骤S122:利用相机的内部参数和目标的深度值,得到目标的点云,并对点云进行预处理,包括下采样、半径滤波和欧氏聚类;
步骤S123:使用NICP算法处理目标点云数据,得到6D姿态点云;
步骤S124:使用所述手眼标定图像坐标系和世界坐标系之间的旋转矩阵和平移向量,将示教轨迹从图像坐标系转换到世界坐标系。
优选地,所述步骤S2具体为:
搭建mujoco虚拟仿真环境,在虚拟仿真环境中用示教轨迹预训练装配策略模型,使机器人装配具有类似人工装配的运动轨迹;具体包括如下步骤:
步骤S21:搭建仿真训练平台,仿真平台基于ROS(Robot Operating System机器人操作系统)操作系统和开源三维动态物理仿真模拟器Mujoco构建;
步骤S22:定义状态空间和动作空间:
步骤S23:定义奖励函数:
其中表示齿轮的位置,/>表示齿轮轴的位置,/>表示/>时刻的位置和目标位置之间的距离,/>是一个常数来保证/>时对数函数有意义,使用对数函数是为了当靠近目标位置时产生更大的奖励,/>是/>时刻的奖励;/>表示奖励偏差常数,用来调整奖励信号的分布和量级;
步骤S25:使用示教轨迹对装配策略模型进行预训练,使装配策略模型具有仿人的装配轨迹,存储机器人在示教轨迹下的状态、执行的动作/>、获得的奖励/>、转移到的下一个状态/>,这些组成了预训练数据中的状态转移 (transition),存储每一个,得到预训练后的装配策略模型;
其中s是当前状态,a是智能体采取的动作,r是当前动作产生的奖励,s’是当前动作a发生后的状态。
优选地,所述步骤S21中所述仿真训练平台具体为:
在仿真环境中构建机器人作为智能体,将带孔零件固定在机器人末端;再建立带有轴孔的底座,将插入用的底座放置在机器人操作的空间范围内;再建立视觉传感器模型。
优选地,步骤S31具体包括:
步骤S311:PPO(近端策略优化算法,Proximal Policy Optimization)算法使用固定长度的轨迹段,在每次迭代中,收集T个步长的数据,并存储每一个来计算优势,优势函数估计器定义如下:
其中,表示[0,T]时间段内t时刻优势的估计值,/>是奖励的折扣因子,/>是步骤的折扣系数;/>表示为在时间步t时的时序差分误差,/>和/>表示为在时间步t+1和时间步t的状态值函数估计值,/>是时间步t的奖励,/>是时间步t的状态;
步骤S312:定义近端策略优化剪裁的代理目标函数
步骤S313:剪裁代理目标函数、价值损失函数、熵奖励组成总损失函数来更新策略和价值函数之间共享参数的神经网络架构;总损失函数定义如下:
其中、/>是超参数,一般分别设为0.5和0.01,不同的任务和环境可能需要不同的超参数设置来获得最佳性能表现,/>表示期望值运算符;/>,为智能体使用当前价值网络估计在状态/>的价值函数,它表示在状态/>下采取任意动作的预期累积奖励 ;/>为当前时刻t开始,智能体在接下来的若干个时间步中所能获得的折扣奖励的累积值;/>为当前策略的熵奖励,用于提高策略的探索性;/>表示期望值运算符;
步骤S314:使用带有策略网络和价值网络的Actor-Critic (强化学习中的一种结合体,Actor是一个神经网络 Critic也是一个神经网络, Actor用于预测行为的概率,Critic是预测在这个状态下的价值)PPO算法训练步骤S2中得到的预训练模型,直至每步的奖励的平均值收敛。
优选地,步骤S32具体为:
在训练的时候给参数和真实位置增加噪声干扰,即通过域随机化来增强训练模型的鲁棒性和从仿真中迁移到现实世界的成功率。
优选地,步骤S33具体为:
步骤S331:在现实和仿真中将机器人移动到相同的初始状态,然后识别并计算现实中机器人的状态,以计算现实和仿真环境之间的误差,估计现实中机器人的方法与步骤S1所提出的估计目标6D位姿的方法相同,再使用步骤S11中的RGB-D相机构成视觉误差估计器;
步骤S332:在现实中执行装配任务时,策略在仿真中运行,二者在同一初始状态同时开始运行,由仿真中的状态来控制现实中机器人的状态,同时运行视觉误差估计器解决仿真与现实之间的误差,来实现机器人在现实中完成轴孔装配任务。
优选地,步骤S0具体为:搭建Sawyer(Rethink Robotics智能协作机器人家族推出的应用于金属加工的机器人)机器人装配硬件平台,装配对象被Sawyer机器人末端夹持器夹持,装配目标位置固定在Sawyer机器人的工作空间内,RGB-D相机根据视野固定在机器人上方1.5m的高度。
本发明提供了一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,针对机器人零件装配,设计了一套基于视觉示教、强化学习和虚实迁移的框架,提高了装配策略的训练效率和装配成功率。该方法使用RGB-D相机和结构光光源收集人工装配的示教的图像;通过Yolov5算法对目标进行目标识别和分割;利用相机的内部参数和目标的深度值,得到目标的点云,并对点云进行预处理;通过NICP算法和原始目标点云来得到6D姿态;通过手眼标定将示教轨迹从图像坐标系转换到世界坐标系;搭建虚拟仿真环境,通过示教轨迹来预训练装配策略模型使之具有类似人工装配的运动轨迹;利用物理仿真引擎,在虚拟环境中使用近端策略优化算法再训练装配模型,提高机器人完成装配任务的成功率;通过域随机化来增强装配策略模型的鲁棒性和提高迁移到现实世界的成功率;利用虚拟环境与现实之间的误差关系设计视觉误差估计器,并通过虚拟环境中机器人的状态信息以及视觉误差估计器,实现真实环境下的机器人零件装配任务。
附图说明
图1为本发明的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法的一较佳实施例的流程图;
图2为本发明的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法的一较佳实施例的详细流程图;
图3为本发明的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法的一较佳实施例的机器人装配的硬件平台架构图;
图4为本发明的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法的一较佳实施例的强化学习PPO算法框架图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的问题,提供了一种基于视觉示教和虚实迁移的机器人强化学习装配的方法。
在一个实施例中,如图1及图2所示,一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,方法包括以下步骤:
步骤S0、搭建机器人装配硬件平台,使RGB-D相机可拍摄到装配目标及机器人装配结构;;如图3所示,具体为:搭建Sawyer机器人装配硬件平台,装配对象被Sawyer机器人末端夹持器夹持,装配目标位置固定在Sawyer机器人的工作空间内,RGB-D相机根据视野固定在机器人上方1.5m的高度。
步骤S1、获取装配对象在三维空间中的6D位姿示教轨迹;具体包括:
步骤S11:使用RGB-D相机和结构光拍摄人工装配过程,得到人工装配示教的图像;所述步骤S11包括如下步骤:
步骤S111、准备一个RGB-D相机和结构光光源;
步骤S112、将相机和结构光固定在装配场景的上方,保证相机能拍摄到完整的人工装配场景,此时相机与机器人的关系为“眼在手外”;
步骤S113、用相机拍摄人工完成装配动作,即将装配对象插入装配目标位置。
步骤S12:对目标,即人工装配示教的每张图像中的装配对象,进行识别和分割,通过深度信息和相机内部参数获取点云,估计目标的6D位姿,收集一组6D位姿数据得到装配示教轨迹,并通过手眼标定,将示教轨迹从图像坐标系转移到世界坐标系;
这里示教轨迹为:首先拍摄了整个人工装配过程,这个过程是一帧一帧的图像。然后将每张图像进行目标识别和分割,通过深度信息和相机内部参数获取点云,估计目标的6D位姿。这样将每一张图像处理完之后的一组数据收集起来就是示教轨迹。这个示教轨迹就是装配对象插入装配目标位置的6D位姿变换过程。
所述步骤S12具体为:
使用Yolov5对步骤S11拍摄到的每张图像中的装配对象进行识别和分割;通过深度信息和相机内部参数获取目标的点云数据;使用NICP算法处理点云数据来得到目标的6D位姿;收集一组6D位姿数据得到示教轨迹,即装配对象插入装配目标位置的6D位姿变换过程,将得到的示教轨迹,通过手眼标定得到的旋转平移关系,从图像坐标系转换到世界坐标系;
其中,获取所述图像坐标系和世界坐标系之间的旋转矩阵和平移向量具体为:
其中,、/>是目标像素在图像坐标系中的位置,/>、/>是图像中心的像素位置;/>、表示每列和每行的长度;/>是相机的焦距;/>表示相机坐标系中的位置;是世界坐标系中位置;/>是旋转矩阵,/>是平移向量。
所述步骤S12具体包括如下步骤:
步骤S121:训练一个Yolov5模型,对步骤S11拍摄的人工装配示教的每一张图像中的装配对象进行识别和分割,从每一张图像中截取物体的位置并获得像素位置;
通过深度图像和灰度图像之间的对应关系,得到实例分割生成的目标对象掩膜的深度信息;
步骤S122:利用相机的内部参数和目标的深度值,得到目标的点云,并对点云进行预处理,包括下采样、半径滤波和欧氏聚类;
步骤S123:使用NICP算法处理目标点云数据,得到6D姿态点云;
步骤S124:使用所述手眼标定图像坐标系和世界坐标系之间的旋转矩阵和平移向量,将示教轨迹从图像坐标系转换到世界坐标系。
步骤S2、搭建虚拟仿真环境,通过示教轨迹来预训练装配策略模型使之具有类似人工装配过程的运动轨迹;所述步骤S2具体为:
搭建mujoco虚拟仿真环境,在虚拟仿真环境中用示教轨迹预训练装配策略模型,使机器人装配具有类似人工装配的运动轨迹;具体包括如下步骤:
步骤S21:搭建仿真训练平台,仿真平台基于ROS操作系统和开源三维动态物理仿真模拟器Mujoco构建;
所述步骤S21中所述仿真训练平台具体为:
在仿真环境中构建机器人作为智能体,将带孔零件固定在机器人末端;再建立带有轴孔的底座,将插入用的底座放置在机器人操作的空间范围内;再建立视觉传感器模型。
步骤S22:定义状态空间和动作空间:
步骤S23:定义奖励函数:
其中表示齿轮的位置,/>表示齿轮轴的位置,/>表示/>时刻的位置和目标位置之间的距离,/>是一个常数来保证/>时对数函数有意义,使用对数函数是为了当靠近目标位置时产生更大的奖励,/>是/>时刻的奖励;/>表示奖励偏差常数,用来调整奖励信号的分布和量级;
步骤S25:使用示教轨迹对装配策略模型进行预训练,使装配策略模型具有仿人的装配轨迹,存储机器人在示教轨迹下的状态、执行的动作/>、获得的奖励/>、转移到的下一个状态/>,这些组成了预训练数据中的状态转移 (transition),存储每一个,得到预训练后的装配策略模型;
其中s是当前状态,a是智能体采取的动作,r是当前动作产生的奖励,s’是当前动作a发生后的状态。
步骤S3、再训练并优化装配策略模型,提高机器人装配的成功率;具体包括:
步骤S31、利用物理仿真引擎,在虚拟环境中使用近端策略优化算法再训练步骤S2中的装配策略模型,提高机器人完成装配任务的成功率;步骤S31具体包括:
其中,表示[0,T]时间段内t时刻优势的估计值,/>是奖励的折扣因子,/>是步骤的折扣系数;/>表示为在时间步t时的时序差分误差,/>和/>表示为在时间步t+1和时间步t的状态值函数估计值,/>是时间步t的奖励,/>是时间步t的状态;
步骤S312:定义近端策略优化剪裁的代理目标函数
步骤S313:剪裁代理目标函数、价值损失函数、熵奖励组成总损失函数来更新策略和价值函数之间共享参数的神经网络架构;总损失函数定义如下:
其中、/>是超参数,一般分别设为0.5和0.01,不同的任务和环境可能需要不同的超参数设置来获得最佳性能表现,/>表示期望值运算符;/>,为智能体使用当前价值网络估计在状态/>的价值函数,它表示在状态/>下采取任意动作的预期累积奖励 ;/>为当前时刻t开始,智能体在接下来的若干个时间步中所能获得的折扣奖励的累积值;/>为当前策略的熵奖励,用于提高策略的探索性;/>表示期望值运算符;
步骤S314:使用带有策略网络和价值网络的Actor-Critic PPO算法训练步骤S2中得到的预训练模型,直至每步的奖励的平均值收敛。
步骤S32、通过域随机化来增强装配策略模型的鲁棒性和提高迁移到现实世界的成功率;步骤S32具体为:
在训练的时候给参数和真实位置增加噪声干扰,即通过域随机化来增强训练模型的鲁棒性和从仿真中迁移到现实世界的成功率。
步骤S33、利用虚拟环境与现实之间的误差关系设计视觉误差估计器,并通过虚拟环境中机器人的状态信息以及视觉误差估计器,实现真实环境下的机器人零件装配任务。步骤S33具体为:
步骤S331:在现实和仿真中将机器人移动到相同的初始状态,然后识别并计算现实中机器人的状态,以计算现实和仿真环境之间的误差,估计现实中机器人的方法与步骤S1所提出的估计目标6D位姿的方法相同,再使用步骤S11中的RGB-D相机构成视觉误差估计器;
计算现实和仿真之间的误差跟获取6D姿态示教轨迹的方法相同。为了获取现实中机器人的状态,与仿真中的机器人状态进行对比。仿真环境可以直接知道仿真机器人状态,现实中机器人的状态得通过步骤S1的方法获取,即拍摄图像,识别检测,结合深度信息获取点云,点云匹配获取6D姿态,将仿真和现实的姿态进行误差计算得到位置和姿态误差关系。
步骤S332:在现实中执行装配任务时,策略在仿真中运行,二者在同一初始状态同时开始运行,由仿真中的状态来控制现实中机器人的状态,即二者是同步进行装配的,仿真中Sawyer机器人运动到一个位姿,现实中的Sawyer机器人会运动到相同的位姿,直到仿真和现实中的齿轮都被插入到轴孔中。尽管两者之间可能会存在误差,通过运行视觉误差估计器解决仿真与现实中的误差,来实现机器人在现实中完成轴孔装配任务。同时运行视觉误差估计器解决仿真与现实之间的误差,来实现机器人在现实中完成轴孔装配任务
与现有技术相比,本发明优点在于:(1)提出了一套基于Yolov5算法和NICP算法来制作人工装配示教数据,通过示教数据预训练装配策略模型,使之具有仿人的装配运动轨迹;(2)将近端策略优化算法用于训练机器人装配策略模型,避免了重复更新模型参数,大大提高了训练效率;(3)本发明针对现实与虚拟仿真环境存在差距导致策略性能下降的问题,采用了域随机化和视觉误差估计器,提高了装配策略模型在现实中执行轴孔装配任务的成功率。
本发明公开了一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,使用RGB-D相机和结构光光源收集人工装配的示教的图像;通过Yolov5算法对目标进行目标识别和分割;利用相机的内部参数和目标的深度值,得到目标的点云,并对点云进行预处理;通过NICP算法和原始目标点云来得到6D姿态;通过手眼标定将示教轨迹从图像坐标系转换到世界坐标系;搭建虚拟仿真环境,通过示教轨迹来预训练装配策略模型使之具有类似人工装配的运动轨迹;利用物理仿真引擎,在虚拟环境中使用近端策略优化算法再训练装配模型,提高机器人完成装配任务的成功率;通过域随机化来增强装配策略模型的鲁棒性和提高迁移到现实世界的成功率;利用虚拟环境与现实之间的误差关系设计视觉误差估计器,并通过虚拟环境中机器人的状态信息以及视觉误差估计器,实现真实环境下的机器人零件装配任务。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,包括如下步骤:
步骤S0、搭建机器人装配硬件平台,使RGB-D相机可拍摄到装配目标及机器人装配结构;
步骤S1、获取装配对象在三维空间中的6D位姿示教轨迹;具体包括:
步骤S11:使用RGB-D相机和结构光拍摄人工装配过程,得到人工装配示教的图像;
步骤S12:对目标,即人工装配示教的每张图像中的装配对象,进行识别和分割,通过深度信息和相机内部参数获取点云,估计目标的6D位姿,收集一组6D位姿数据得到装配示教轨迹,并通过手眼标定,将示教轨迹从图像坐标系转移到世界坐标系;
步骤S2、搭建虚拟仿真环境,通过示教轨迹来预训练装配策略模型使之具有类似人工装配过程的运动轨迹;
步骤S3、再训练并优化装配策略模型,提高机器人装配的成功率;具体包括:
步骤S31、利用物理仿真引擎,在虚拟环境中使用近端策略优化算法再训练步骤S2中的装配策略模型,提高机器人完成装配任务的成功率;
步骤S32、通过域随机化来增强装配策略模型的鲁棒性和提高迁移到现实世界的成功率;
步骤S33、利用虚拟环境与现实之间的误差关系设计视觉误差估计器,并通过虚拟环境中机器人的状态信息以及视觉误差估计器,实现真实环境下的机器人零件装配任务。
2.根据权利要求1所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,所述步骤S11包括如下步骤:
步骤S111、准备一个RGB-D相机和结构光光源;
步骤S112、将相机和结构光固定在装配场景的上方,保证相机能拍摄到完整的人工装配场景;
步骤S113、用相机拍摄人工完成装配动作,即将装配对象插入装配目标位置。
3.根据权利要求1所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,所述步骤S12具体为:
使用Yolov5对步骤S11拍摄到的每张图像中的装配对象进行识别和分割;通过深度信息和相机内部参数获取目标的点云数据;使用NICP算法处理点云数据来得到目标的6D位姿;收集一组6D位姿数据得到示教轨迹,即装配对象插入装配目标位置的6D位姿变换过程,将得到的示教轨迹,通过手眼标定得到的旋转平移关系,从图像坐标系转换到世界坐标系;
其中,获取所述图像坐标系和世界坐标系之间的旋转矩阵和平移向量具体为:
4.根据权利要求3所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,所述步骤S12具体包括如下步骤:
步骤S121:训练一个Yolov5模型,对步骤S11拍摄的人工装配示教的每一张图像中的装配对象进行识别和分割,从每一张图像中截取物体的位置并获得像素位置;
通过深度图像和灰度图像之间的对应关系,得到实例分割生成的目标对象掩膜的深度信息;
步骤S122:利用相机的内部参数和目标的深度值,得到目标的点云,并对点云进行预处理,包括下采样、半径滤波和欧氏聚类;
步骤S123:使用NICP算法处理目标点云数据,得到6D姿态点云;
步骤S124:使用所述手眼标定图像坐标系和世界坐标系之间的旋转矩阵和平移向量,将示教轨迹从图像坐标系转换到世界坐标系。
5.根据权利要求1所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,所述步骤S2具体为:
搭建mujoco虚拟仿真环境,在虚拟仿真环境中用示教轨迹预训练装配策略模型,使机器人装配具有类似人工装配的运动轨迹;具体包括如下步骤:
步骤S21:搭建仿真训练平台,仿真平台基于ROS操作系统和开源三维动态物理仿真模拟器Mujoco构建;
步骤S22:定义状态空间和动作空间:
步骤S23:定义奖励函数:
其中表示齿轮的位置,/>表示齿轮轴的位置,/>表示/>时刻的位置和目标位置之间的距离,/>是一个常数来保证/>时对数函数有意义,使用对数函数是为了当靠近目标位置时产生更大的奖励,/>是/>时刻的奖励;/>表示奖励偏差常数,用来调整奖励信号的分布和量级;
步骤S25:使用示教轨迹对装配策略模型进行预训练,使装配策略模型具有仿人的装配轨迹,存储机器人在示教轨迹下的状态/>、执行的动作/>、获得的奖励/>、转移到的下一个状态/>,这些组成了预训练数据中的状态转移(transition),存储每一个/>,得到预训练后的装配策略模型;
其中s是当前状态,a是智能体采取的动作,r是当前动作产生的奖励,s’是当前动作a发生后的状态。
6.根据权利要求5所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,所述步骤S21中所述仿真训练平台具体为:
在仿真环境中构建机器人作为智能体,将带孔零件固定在机器人末端;再建立带有轴孔的底座,将插入用的底座放置在机器人操作的空间范围内;再建立视觉传感器模型。
7.根据权利要求5所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,步骤S31具体包括:
其中,/>表示[0,T]时间段内t时刻优势的估计值,/>是奖励的折扣因子,/>是步骤的折扣系数;/>表示为在时间步t时的时序差分误差,/>和/>表示为在时间步t+1和时间步t的状态值函数估计值,/>是时间步t的奖励,/>是时间步t的状态;
步骤S312:定义近端策略优化剪裁的代理目标函数其中,/>是一个超参数,一般/>,/>表示期望值运算符,概率比例/>表示使用当前策略/>在状态/>选择动作/>的概率与使用未更新参数/>的策略/>在状态/>选择动作/>的概率之比;/>为截取函数符号;
步骤S313:剪裁代理目标函数、价值损失函数、熵奖励组成总损失函数来更新策略和价值函数之间共享参数的神经网络架构;总损失函数定义如下:
其中/>、/>是超参数,一般分别设为0.5和0.01,不同的任务和环境可能需要不同的超参数设置来获得最佳性能表现,/>表示期望值运算符;/>,/>为智能体使用当前价值网络估计在状态/>的价值函数,它表示在状态/>下采取任意动作的预期累积奖励 ;/>为当前时刻t开始,智能体在接下来的若干个时间步中所能获得的折扣奖励的累积值;/>为当前策略的熵奖励,用于提高策略的探索性;
步骤S314:使用带有策略网络和价值网络的Actor-Critic PPO算法训练步骤S2中得到的预训练模型,直至每步的奖励的平均值收敛。
8.根据权利要求1所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,步骤S32具体为:
在训练的时候给参数和真实位置增加噪声干扰,即通过域随机化来增强训练模型的鲁棒性和从仿真中迁移到现实世界的成功率。
9.根据权利要求1所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,步骤S33具体为:
步骤S331:在现实和仿真中将机器人移动到相同的初始状态,然后识别并计算现实中机器人的状态,以计算现实和仿真环境之间的误差,估计现实中机器人的方法与步骤S1所提出的估计目标6D位姿的方法相同,再使用步骤S11中的RGB-D相机构成视觉误差估计器;
步骤S332:在现实中执行装配任务时,策略在仿真中运行,二者在同一初始状态同时开始运行,由仿真中的状态来控制现实中机器人的状态,同时运行视觉误差估计器解决仿真与现实之间的误差,来实现机器人在现实中完成轴孔装配任务。
10.根据权利要求1所述的一种基于视觉示教和虚实迁移的机器人强化学习装配的方法,其特征在于,步骤S0具体为:搭建Sawyer机器人装配硬件平台,装配对象被Sawyer机器人末端夹持器夹持,装配目标位置固定在Sawyer机器人的工作空间内,RGB-D相机根据视野固定在机器人上方1.5m的高度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310292031.8A CN115990891B (zh) | 2023-03-23 | 2023-03-23 | 一种基于视觉示教和虚实迁移的机器人强化学习装配的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310292031.8A CN115990891B (zh) | 2023-03-23 | 2023-03-23 | 一种基于视觉示教和虚实迁移的机器人强化学习装配的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115990891A CN115990891A (zh) | 2023-04-21 |
CN115990891B true CN115990891B (zh) | 2023-06-16 |
Family
ID=85995406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310292031.8A Active CN115990891B (zh) | 2023-03-23 | 2023-03-23 | 一种基于视觉示教和虚实迁移的机器人强化学习装配的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115990891B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117032283B (zh) * | 2023-08-11 | 2024-10-18 | 江南大学 | 一种基于深度强化学习的四足机器人越障控制方法 |
CN116922403A (zh) * | 2023-09-19 | 2023-10-24 | 上海摩马智能科技有限公司 | 基于仿真的视觉反馈智能轨迹实现方法 |
CN117745719B (zh) * | 2024-02-19 | 2024-04-26 | 常熟理工学院 | 一种机器人焊缝铣削轨迹的提取方法 |
CN118003339B (zh) * | 2024-04-08 | 2024-06-07 | 广州三拓智能装备有限公司 | 一种基于人工智能的机器人分拣控制算法 |
CN118456458B (zh) * | 2024-07-15 | 2024-10-08 | 长沙矿冶研究院有限责任公司 | 表面清理机械手的工作程序自动生成方法与系统 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6458912B1 (ja) * | 2018-01-24 | 2019-01-30 | 三菱電機株式会社 | 位置制御装置及び位置制御方法 |
CN110561450B (zh) * | 2019-08-30 | 2021-09-07 | 哈尔滨工业大学(深圳) | 一种基于动捕的机器人装配离线示例学习系统和方法 |
CN110991027A (zh) * | 2019-11-27 | 2020-04-10 | 华南理工大学 | 一种基于虚拟场景训练的机器人模仿学习方法 |
CN111251294A (zh) * | 2020-01-14 | 2020-06-09 | 北京航空航天大学 | 一种基于视觉位姿感知和深度强化学习的机器人抓取方法 |
CN111216133B (zh) * | 2020-02-05 | 2022-11-22 | 广州中国科学院先进技术研究所 | 一种基于指尖识别和手部运动跟踪的机器人演示编程方法 |
US11820014B2 (en) * | 2020-05-21 | 2023-11-21 | Intrinsic Innovation Llc | Simulated local demonstration data for robotic demonstration learning |
CN111890350A (zh) * | 2020-06-12 | 2020-11-06 | 深圳先进技术研究院 | 机器人及其控制方法、计算机可读存储介质 |
CN114536346B (zh) * | 2022-04-06 | 2023-04-07 | 西南交通大学 | 一种基于人机协作和视觉检测的机械臂精确路径规划方法 |
CN114800515B (zh) * | 2022-05-12 | 2024-08-02 | 四川大学 | 一种基于演示轨迹的机器人装配运动规划方法 |
CN114789450A (zh) * | 2022-06-02 | 2022-07-26 | 深慧视(深圳)科技有限公司 | 一种基于机器视觉的机器人运动轨迹数字孪生方法 |
-
2023
- 2023-03-23 CN CN202310292031.8A patent/CN115990891B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115990891A (zh) | 2023-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115990891B (zh) | 一种基于视觉示教和虚实迁移的机器人强化学习装配的方法 | |
Chebotar et al. | Closing the sim-to-real loop: Adapting simulation randomization with real world experience | |
US12083678B2 (en) | Efficient adaption of robot control policy for new task using meta-learning based on meta-imitation learning and meta-reinforcement learning | |
CN111203878B (zh) | 一种基于视觉模仿的机器人序列任务学习方法 | |
Amor et al. | Interaction primitives for human-robot cooperation tasks | |
Breyer et al. | Comparing task simplifications to learn closed-loop object picking using deep reinforcement learning | |
CN109108942A (zh) | 基于视觉实时示教与自适应dmps的机械臂运动控制方法和系统 | |
Sadeghi et al. | Sim2real view invariant visual servoing by recurrent control | |
Yan et al. | Sim-to-real transfer of accurate grasping with eye-in-hand observations and continuous control | |
CN111176309B (zh) | 一种基于球面成像的多无人机自组群互感理解方法 | |
CN115551681A (zh) | 训练和/或利用用于基于自然语言的机器人控制中的机器学习模型 | |
CN113076615B (zh) | 基于对抗式深度强化学习的高鲁棒性机械臂操作方法及系统 | |
CN113281999A (zh) | 一种基于强化学习和迁移学习的无人机自主飞行训练方法 | |
CN113011526B (zh) | 基于强化学习和无监督学习的机器人技能学习方法及系统 | |
Jin et al. | Robot eye-hand coordination learning by watching human demonstrations: a task function approximation approach | |
CN113119073A (zh) | 面向3c装配场景基于计算机视觉及机器学习的机械臂系统 | |
Gutzeit et al. | The besman learning platform for automated robot skill learning | |
Ma et al. | An efficient robot precision assembly skill learning framework based on several demonstrations | |
CN117705113A (zh) | 一种改进ppo的无人机视觉避障及自主导航方法 | |
CN115990875A (zh) | 一种基于隐空间插值的柔性线缆状态预测与控制系统 | |
da Silva et al. | Deep reinforcement learning for a humanoid robot soccer player | |
Luo et al. | Balance between efficient and effective learning: Dense2sparse reward shaping for robot manipulation with environment uncertainty | |
CN117798919A (zh) | 一种基于动态交互表征的灵巧机械手抓取方法 | |
CN116360435A (zh) | 基于情节记忆的多智能体协同策略的训练方法和系统 | |
CN115016499A (zh) | 一种基于sca-ql的路径规划方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |