CN110858328B - 用于模仿学习的数据采集方法、装置及存储介质 - Google Patents
用于模仿学习的数据采集方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110858328B CN110858328B CN201810887044.9A CN201810887044A CN110858328B CN 110858328 B CN110858328 B CN 110858328B CN 201810887044 A CN201810887044 A CN 201810887044A CN 110858328 B CN110858328 B CN 110858328B
- Authority
- CN
- China
- Prior art keywords
- path
- data
- starting point
- data acquisition
- simulated
- 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
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种用于模仿学习的数据采集方法、装置及存储介质;其中,方法包括:构建模仿对象执行模仿学习任务所处环境的即时定位与地图构建(SLAM)地图;获取所述模仿学习任务在所述SLAM地图中的目标路径;基于所述目标路径,进行数据采集;其中,所述数据包括:图像数据及所述模仿对象的位姿数据。
Description
技术领域
本发明涉及数据处理技术,尤其涉及一种用于模仿学习的数据采集方法、装置及存储介质。
背景技术
模仿学习是一种通过克隆预期行为或理解示范器所追求的奖励来从专家示范中学习策略的方法。模仿对象(如机器人)可以通过对示范的模拟实现接近于专家的演示效果。随着计算设备计算能力的不断提升和深度神经网络技术发展,端到端的模仿学习在机器人领域取得了许多进展(如基于视觉的机械臂控制、自动驾驶),然而,这种端到端的模仿学习需要大量的专家演示,而且演示数据的好坏直接决定模仿学习效果的上界,相关技术中尚不存在高效、高质量地采集用于模仿学习的数据的方案。
发明内容
本发明实施例提供一种用于模仿学习的数据采集方法、装置及存储介质,能够高效、高质量地采集用于模仿学习的数据。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种用于模仿学习的数据采集方法,所述方法包括:
构建模仿对象执行模仿学习任务所处环境的即时定位与地图构建(SLAM,Simultaneous Localization And Mapping)地图;
获取所述模仿学习任务在所述SLAM地图中的目标路径;
基于所述目标路径,进行数据采集;
其中,所述数据包括:图像数据及所述模仿对象的位姿数据。
上述方案中,所述基于所述目标路径,进行数据采集,包括:
在所述模仿对象从所述目标路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
获取所述模仿学习任务在所述SLAM地图中的多个第一执行路径;所述第一执行路径的终点与所述目标路径的终点相同,所述第一执行路径的起点与所述目标路径的起点不同,且距离处于预设距离范围内;
在所述模仿对象分别从不同第一执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
上述方案中,所述获取所述模仿学习任务在所述SLAM地图中的多个第一执行路径,包括:
定位与所述目标路径的起点不同,且距离处于预设距离范围内的第一起点;
获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;
以所述第一起点为所述第一执行路径的起点,结合所获取的所述路径关键点信息生成所述第一执行路径;
重复上述操作,直至获取多个所述第一执行路径。
上述方案中,所述基于所述目标路径,进行数据采集,包括:
在所述目标路径中加入随机扰动,生成扰动路径;
在所述模仿对象从所述扰动路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
获取所述模仿学习任务在所述SLAM地图中的多个第二执行路径;所述第二执行路径的终点与所述扰动路径的终点相同,所述第二执行路径的起点与所述扰动路径的起点不同,且距离处于预设距离范围内;
在所述模仿对象分别从不同第二执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
上述方案中,所述方法还包括:
获取所述模仿学习任务对应的关键数据采集区域,以及对应所述关键数据采集区域的数据采集策略;
其中,所述数据采集策略至少指示所述模仿对象在所述关键数据采集区域中的采集位置,及对应所述采集位置的采集视角;
基于所述数据采集策略,在所述关键数据采集区域中进行多次的数据采集。
上述方案中,所述方法还包括:
基于采集的所述模仿对象的位姿数据,确定对应所述模仿对象执行相应位姿的控制指令;
以所述图像数据作为输入,以对应所述图像数据的控制指令作为输出,构建训练样本,以训练用于所述模仿对象模仿学习的神经网络模型。
上述方案中,所述获取所述模仿学习任务在所述SLAM地图中的目标路径,包括:
获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;所述路径关键点信息包括:所述模仿学习任务在所述SLAM地图中的关键位置,以及对应所述关键位置的所述模仿对象的姿态信息;
基于所获取的所述路径关键点信息,生成所述模仿学习任务的目标路径。
本发明实施例还提供了一种用于模仿学习的数据采集装置,所述装置包括:
SLAM单元,用于构建模仿对象执行模仿学习任务所处环境的SLAM地图;
获取单元,用于获取所述模仿学习任务在所述SLAM地图中的目标路径;
采集单元,用于基于所述目标路径,进行数据采集;
其中,所述数据包括:图像数据及所述模仿对象的位姿数据。
上述方案中,所述采集单元,具体用于在所述模仿对象从所述目标路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
所述获取单元,还用于获取所述模仿学习任务在所述SLAM地图中的多个第一执行路径;所述第一执行路径的终点与所述目标路径的终点相同,所述第一执行路径的起点与所述目标路径的起点不同,且距离处于预设距离范围内;
所述采集单元,还用于在所述模仿对象分别从不同第一执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
上述方案中,所述获取单元,还用于定位与所述目标路径的起点不同,且距离处于预设距离范围内的第一起点;
获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;
以所述第一起点为所述第一执行路径的起点,结合所获取的所述路径关键点信息生成所述第一执行路径;
重复上述操作,直至获取多个所述第一执行路径。
上述方案中,所述装置还包括加扰单元;
所述加扰单元,用于在所述目标路径中加入随机扰动,生成扰动路径;
所述采集单元,还用于在所述模仿对象从所述扰动路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
所述获取单元,还用于获取所述模仿学习任务在所述SLAM地图中的多个第二执行路径;所述第二执行路径的终点与所述扰动路径的终点相同,所述第二执行路径的起点与所述扰动路径的起点不同,且距离处于预设距离范围内;
所述采集单元,还用于在所述模仿对象分别从不同第二执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
上述方案中,所述获取单元,还用于获取所述模仿学习任务对应的关键数据采集区域,以及对应所述关键数据采集区域的数据采集策略;
其中,所述数据采集策略至少指示所述模仿对象在所述关键数据采集区域中的采集位置,及对应所述采集位置的采集视角;
所述采集单元,还用于基于所述数据采集策略,在所述关键数据采集区域中进行多次的数据采集。
上述方案中,所述装置还包括:
训练单元,用于基于采集的所述模仿对象的位姿数据,确定对应所述模仿对象执行相应位姿的控制指令;
以所述图像数据作为输入,以对应所述图像数据的控制指令作为输出,构建训练样本,以训练用于所述模仿对象模仿学习的神经网络模型。
上述方案中,所述获取单元,还用于获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;所述路径关键点信息包括:所述模仿学习任务在所述SLAM地图中的关键位置,以及对应所述关键位置的所述模仿对象的姿态信息;
基于所获取的所述路径关键点信息,生成所述模仿学习任务的目标路径。
本发明实施例还提供了一种用于模仿学习的数据采集装置,所述装置包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的用于模仿学习的数据采集方法。
本发明实施例还提供了一种存储介质,存储有可执行指令,所述可执行指令被处理器执行时,实现本发明实施例提供的的用于模仿学习的数据采集方法。
应用本发明实施例上述用于模仿学习的数据采集方法、装置及存储介质,模仿对象可自主构建SLAM地图,并基于构建的SLAM地图自动实现对应模仿学习任务的高效、高质量地数据采集,大大降低了专家演示所需的工作量。
附图说明
图1为本发明实施例提供的用于模仿学习的数据采集装置的组成结构示意图一;
图2为本发明实施例提供的用于模仿学习的数据采集方法的流程示意图一;
图3为本发明实施例提供的进行SLAM地图构建的流程示意图;
图4为本发明实施例提供的用于模仿学习的数据采集方法的场景示意图一;
图5为本发明实施例提供的用于模仿学习的数据采集方法的流程示意图二;
图6为本发明实施例提供的用于模仿学习的数据采集方法的场景示意图二;
图7为本发明实施例提供的用于模仿学习的数据采集方法的流程示意图三;
图8为本发明实施例提供的用于模仿学习的数据采集装置的组成结构示意图二。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
需要说明的是,在本发明实施例中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的方法或者装置不仅包括所明确记载的要素,而且还包括没有明确列出的其他要素,或者是还包括为实施方法或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的方法或者装置中还存在另外的相关要素(例如方法中的步骤或者装置中的单元,例如的单元可以是部分电路、部分处理器、部分程序或软件等等)。
例如,本发明实施例提供的用于模仿学习的数据采集方法包含了一系列的步骤,但是本发明实施例提供的用于模仿学习的数据采集方法不限于所记载的步骤,同样地,本发明实施例提供的用于模仿学习的数据采集装置包括了一系列单元,但是本发明实施例提供的装置不限于包括所明确记载的单元,还可以包括为获取相关信息、或基于信息进行处理时所需要设置的单元。
需要指出,本发明实施例所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
首先对本发明实施例的用于模仿学习的数据采集装置的硬件结构做详细说明,图1为本发明实施例提供的用于模仿学习的数据采集装置的组成结构示意图,可以理解,图1仅仅示出了用于模仿学习的数据采集装置的示例性结构而非全部结构,根据需要可以实施图2示出的部分结构或全部结构。本发明实施例提供的用于模仿学习的数据采集装置100包括:至少一个处理器110、存储器140、至少一个网络接口120和用户接口130。用于模仿学习的数据采集装置100中的各个组件通过总线系统150耦合在一起。可理解,总线系统150用于实现这些组件之间的连接通信。总线系统150除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图1中将各种总线都标为总线系统150。
用户接口130可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。
存储器140可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、闪存(Flash Memory)等。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static RandomAccess Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random AccessMemory)。本发明实施例描述的存储器140旨在包括这些和任意其它适合类型的存储器。
处理器110可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器140能够存储可执行指令1401以支持用于模仿学习的数据采集装置100的操作,这些可执行指令的示例包括:用于在用于模仿学习的数据采集装置100上操作的程序、插件和脚本等各种形式的软件模块,程序例如可以包括操作系统和应用程序,其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。
作为本发明实施例提供的用于模仿学习的数据采集装置采用软硬件结合实施的示例,本发明实施例所提供的用于模仿学习的数据采集装置可以直接体现为由处理器110执行的不同形式的软件模块,软件模块可以位于存储介质中,存储介质位于存储器140,处理器110读取存储器140中软件模块包括的可执行指令,结合必要的硬件(例如,包括处理器110以及连接到总线150的其他组件)完成本发明实施例提供的用于模仿学习的数据采集方法。
在实际实施时,本发明实施例的用于模仿学习的数据采集装置可以实施为机器人,该机器人为能够自动执行操作任务的机器装置,可以具有类似人的形态,具有数据(如图像数据、操作数据等)采集能力及数据处理(计算)能力,在一实施例中,机器人为具备模仿学习能力的机器装置。
接下来对本发明实施例的用于模仿学习的数据采集方法进行说明。图2为本发明实施例的用于模仿学习的数据采集方法的流程示意图,参见图2,本发明实施例的用于模仿学习的数据采集方法包括:
步骤101:构建模仿对象执行模仿学习任务所处环境的SLAM地图。
SLAM主要用于解决移动机器人在未知环境中运行时定位导航与地图构建的问题。这里对SLAM地图构建进行说明。采用SLAM构图可以有很多实现方法,主要分为激光雷达和视觉传感器两个方向。视觉SLAM(Visual SLAM)包括使用单目SLAM、双目SLAM和以Kinect为代表的使用景深摄像头的RGB-D SLAM。
以视觉SLAM构图为例对机器人构建SLAM地图的过程进行说明。图3为本发明实施例提供的进行SLAM地图构建的流程示意图,参见图3,SLAM地图构建可以包括以下几个部分:数据采集、视觉里程计(Visual Odometry)、后端优化、建图(Mapping)、闭环检测(Loopclosure detection),以模仿对象为机器人为例进行说明。
在本发明实施例中,机器人上设置有至少一个摄像头(如深度摄像头、3D体感摄影机Kinect),在机器人所处任务环境中移动时进行至少包括RGB图像及深度图像的采集,得到一个图像序列或一个视频流。然后,机器人基于得到的图像序列或视频流,计算摄像机的方向和位置,可以包括畸变校正、特征检测匹配,通过对极几何原理估计相机的旋转矩阵和平移向量。在实际实施时,得到的数据往往有很多噪声,且由于传感器的精度、错误的匹配等,都对造成结果有误差,且由于是把新的一帧与前一个关键帧进行比较,而当某一帧的结果有误差时,就会对后面的结果产生累计误差,最后的结果肯定误差越来越大,因此,为了解决这个问题,引入后端优化。后端优化可以采用捆集调整、卡尔曼滤波、图优化等方式来实现,在一实施例中,可以采用基于图优化的后端优化,而执行后端优化后的数据可控性高、分布均匀、噪声小,然后,基于后端优化后的数据对机器人执行模仿学习任务的环境进行建图。而闭环检测的目的是当机器人运动回到环境中某一个之前去过的地方,能够识别这个地方,并找到当时处于该位置采集的图像关键帧进行比较,得到比单用后端优化更准确更高效的结果。
步骤102:获取所述模仿学习任务在所述SLAM地图中的目标路径。
在一实施例中,模仿对象可以通过如下方式获取模仿学习任务在SLAM地图中的目标路径:
获取模仿学习任务在SLAM地图中的路径关键点信息;其中,路径关键点信息包括:模仿学习任务在SLAM地图中的关键位置,以及对应关键位置的模仿对象的姿态信息;基于所获取的所述路径关键点信息,生成模仿学习任务的目标路径。
这里,对应关键位置的模仿对象的姿态信息可以为模仿对象(机器人)处于该关键位置的六自由度信息。
示例性的,关键位置可以为用户基于机器人当前的模仿学习任务在SLAM地图中所设定的特定的位置点,如机器人执行模仿任务的起点、终点、途中关键位置点等,在机器人的专家演示过程中,用户推行机器人到达关键位置,并记录机器人处于该位置时在SLAM地图中的位姿信息(位置和姿态信息),即路径关键点信息,然后机器人基于记录的路径关键点信息生成模仿学习任务的目标路径。在一实施例中,目标路径的生成方式由具体的模仿学习任务决定,例如,当模仿学习任务为机器人模仿学习足球射门时,可以采用贝塞尔曲线算法进行目标路径的生成。
步骤103:基于所述目标路径,进行数据采集;所述数据包括:图像数据及模仿对象的位姿数据。
这里,图像数据可以包括深度图像数据及RGB图像数据。
在一实施例中,模仿对象可通过如下方式进行数据采集:
在模仿对象从目标路径的起点出发至终点的过程中,采集模仿对象处于不同位置时的所述数据;获取模仿学习任务在SLAM地图中的多个第一执行路径;第一执行路径的终点与目标路径的终点相同,第一执行路径的起点与目标路径的起点不同,且距离处于预设距离范围内;在模仿对象分别从不同第一执行路径的起点出发至终点的过程中,采集模仿对象处于不同位置时的所述数据。
其中,模仿对象可通过如下方式获取模仿学习任务在SLAM地图中的多个第一执行路径:
定位与目标路径的起点不同,且距离处于预设距离范围内的第一起点;获取模仿学习任务在SLAM地图中的路径关键点信息;以第一起点为第一执行路径的起点,结合所获取的路径关键点信息生成第一执行路径;
重复上述操作,直至获取多个第一执行路径。
举例说明,当机器人生成目标路径后,从目标路径的起点出发,移动至目标路径的终点,在机器人移动过程中采用预设的采集频率进行数据采集,在机器人到达终点后返回至距离起点有一个随机偏移的位置,然后以该位置为路径的起点,并结合模仿学习任务中除起点以外的其它路径关键点信息重新进行路径的生成,得到第一执行路径。采用该方式得到多个(如200)第一执行路径,进行多次的数据采集,以得到足够多的数据。
在一实施例中,考虑到采用SLAM的定位误差以及机器人的轨迹执行误差,需要在执行路径的邻域收集补充数据,以保证机器人从起点周围的任意位置均能完成模仿学习任务,相应的,模仿对象还可通过如下方式进行数据采集:
在目标路径中加入随机扰动,生成扰动路径;在模仿对象从扰动路径的起点出发至终点的过程中,采集模仿对象处于不同位置时的数据;获取模仿学习任务在SLAM地图中的多个第二执行路径;第二执行路径的终点与扰动路径的终点相同,第二执行路径的起点与扰动路径的起点不同,且距离处于预设距离范围内;在模仿对象分别从不同第二执行路径的起点出发至终点的过程中,采集模仿对象处于不同位置时的所述数据。其中,对目标路径所增加的随机扰动的数值范围,依据实际的模仿学习任务决定。
举例说明,机器人获取模仿学习任务在SLAM地图中的目标路径S={s1,s2,...,sm},si=(xi,yi,θi)T,其中,S为目标路径,Si为目标路径中的关键点信息,xi及yi分别为机器人处于位置Si时的x及y方向的向量,θi为机器人处于位置Si时的旋转角度,至少包括绕x,y轴的转动,T为机器人处于位置Si时的时间。在目标路径中加入随机扰动∈={e1,e2,...,em},ei=(dxi,dyi,dθi)T得到新路径S′={s1+e1,s2+e2,…sm+em};其中,∈为增加的随机扰动,ei为在机器人处于Si位置时,在各个向量上增加的扰动,生成扰动路径,从扰动路径的起点出发,移动至扰动路径的终点,在机器人移动过程中采用预设的采集频率进行数据采集,在机器人到达终点后返回至距离扰动路径的起点有一个随机偏移的位置,然后以该位置为路径的起点,并结合模仿学习任务中除起点以外的其它路径关键点信息重新进行路径的生成,得到第二执行路径。采用该方式得到多个(如200)第二执行路径,进行多次的数据采集,以得到足够多的数据。
在一实施例中,对于某些特定模拟学习任务,需要在特定的位置和视角下集中收集大量数据,以提升数据多样性,保证学习效果,因此,可在构建的SLAM地图中设置关键数据采集区域(即终端采集区域),机器人在该区域中的各个角度、位置反复演示,收集大量数据,提升模仿学习性能。具体地,机器人可执行如下操作:
获取模仿学习任务对应的关键数据采集区域,以及对应关键数据采集区域的数据采集策略;其中,数据采集策略至少指示机器人在关键数据采集区域中的采集位置,及对应采集位置的采集视角;基于数据采集策略,在关键数据采集区域中进行多次(可依据实际需要进行设定)的数据采集。
在一实施例中,机器人完成对模仿学习任务的数据采集后,可进行训练样本的构造,如通过如下方式构造训练样本:
基于采集的模仿对象的位姿数据,确定对应模仿对象执行相应位姿的控制指令;以图像数据(如深度图像数据及RGB图像数据)作为输入,以对应所述图像数据的控制指令作为输出,构建训练样本,以训练用于模仿对象模仿学习的神经网络模型。例如,可以将训练样本用于训练一个包括三个卷积层及两个全连接层的神经网络模型。
这里,上述控制指令用于控制模仿对象采集图像数据时的位姿,具体的用于控制模仿对象采集图像数据时的角速度及线速度,而确定角速度和线速度的方式可以基于对应图像数据的模仿对象的位姿数据计算得到。
应用本发明上述实施例,机器人基于模仿学习任务的环境进行建图,在机器人演示过程中,不断为机器人提供高精度的定位信息,进而高质量的完成演示,如此,利用了SLAM的高精度定位信息,实现了高效、全自动化地演示动作收集,降低了数据采集时间,提高数据采集效率。
接下来以模仿对象为机器人为例对本发明实施例的用于模仿学习的数据采集方法进行说明。图4为本发明实施例提供的用于模仿学习的数据采集方法的场景示意图,在该实施场景中,机器人的模仿学习任务为从任意位置出发,学习将足球射入球门的策略,图5为本发明实施例提供的用于模仿学习的数据采集方法的流程示意图,结合图4、图5对本发明实施例中用于模仿学习的数据采集方法进行说明。
步骤201:机器人构建执行足球射门的模仿学习任务所处环境的SLAM地图。
对应该实施例的场景,机器人对进行足球射门的环境(如包括足球、球门的场地)进行SLAM地图构建,建图过程中应充分包含环境中的特征信息。
步骤202:获取模仿学习任务在构建的SLAM地图中的路径关键点信息。
在实际应用中,由用户设定机器人执行模仿学习任务所应经过的关键位置,如起点、足球所处位置、球门位置、以及机器人运动途中所经关键位置,用户推动机器人到达设定的关键位置,并记录机器人处于关键位置时在SLAM地图中的位姿,记录的各个关键位置所对应的机器人的位姿信息形成模仿学习任务对应的路径关键点信息。
步骤203:基于所获取的路径关键点信息,生成模仿学习任务在SLAM地图中的目标路径。
在实际实施时,机器人基于所获取的路径关键点信息,可采用贝塞尔曲线算法进行目标路径的生成。
步骤204:基于所述目标路径,进行数据采集。
当机器人获得目标路径后,执行该目标路径,并根据预设的采集频率进行数据采集,在一实施例中,可以为深度图像采集、RGB图像采集,以及相应的机器人的位姿数据的采集。
步骤205:在目标路径中加入随机扰动,生成扰动路径。
步骤206:基于所述扰动路径,进行数据采集。
步骤207:获取多个执行路径,并基于多个执行路径进行数据采集。
在实际应用中,执行路径的终点与扰动路径的终点相同,执行路径的起点与扰动路径的起点不同,且距离处于预设距离范围内;在机器人分别从不同执行路径的起点出发至终点的过程中,采集机器人处于不同位置时的所述数据。
具体地,机器人可通过如下方式获取模仿学习任务在SLAM地图中的多个执行路径:定位与目标路径的起点不同,且距离处于预设距离范围内的第一起点;获取模仿学习任务在SLAM地图中的路径关键点信息;以第一起点为执行路径的起点,结合所获取的路径关键点信息生成执行路径;重复上述操作,直至获取多个执行路径。
在一实施例中,为提高机器人在接近球时转向运动的准确性、提高靠近球门时自动停止运动的准确性,可设定机器人在接近球的区域(如距球2m*2m的区域)以及接近球门的区域(如距球门2m*2m的区域)为关键数据采集区域,在以上两个关键数据采集区域进行数据引导收集。如将关键数据采集区域以0.1m*0.1m的间隔分割为格点,在每个格点下,以10°为间隔在-45°到45°区域中进行采集数据(令机器人面朝球门时为0°)。
应用本发明上述实施例,机器人能够在无人工干预的情况下实现全自动的演示数据采集工作,大幅减少数据采集的工作量,得到的数据具有可控性高、分布均匀、噪音小的特点,为后续端到端的神经网络训练提供保证。
图6为本发明实施例提供的用于模仿学习的数据采集方法的场景示意图,在该实施场景中,机器人的模仿学习任务为从任意位置出发,学习将箱子准确的推到目的地的策略,图7为本发明实施例提供的用于模仿学习的数据采集方法的流程示意图,结合图6、图7对本发明实施例中用于模仿学习的数据采集方法进行说明。
步骤301:机器人构建执行推箱子的模仿学习任务所处环境的SLAM地图。
对应该实施例的场景,机器人对进行推箱子至目的地的环境进行SLAM地图构建,建图过程中应充分包含环境中的特征信息。
步骤302:获取模仿学习任务在构建的SLAM地图中的路径关键点信息。
在实际应用中,由用户设定机器人执行模仿学习任务所应经过的关键位置,如起点、推箱子途中的关键位置(如为绕开障碍物所经的位置)、以及目的地位置,用户推动机器人到达设定的关键位置,并记录机器人处于关键位置时在SLAM地图中的位姿,记录的各个关键位置所对应的机器人的位姿信息形成模仿学习任务对应的路径关键点信息。
步骤303:基于所获取的路径关键点信息,生成模仿学习任务在SLAM地图中的目标路径。
步骤304:基于所述目标路径,进行数据采集。
当机器人获得目标路径后,执行该目标路径,并根据预设的采集频率进行数据采集,在一实施例中,可以为深度图像采集、RGB图像采集,以及相应的机器人的位姿数据的采集。
步骤305:在目标路径中加入随机扰动,生成扰动路径。
步骤306:基于所述扰动路径,进行数据采集。
步骤307:获取多个执行路径,并基于多个执行路径进行数据采集。
在实际应用中,执行路径的终点与扰动路径的终点相同,执行路径的起点与扰动路径的起点不同,且距离处于预设距离范围内;在机器人分别从不同执行路径的起点出发至终点的过程中,采集机器人处于不同位置时的所述数据。
具体地,机器人可通过如下方式获取模仿学习任务在SLAM地图中的多个执行路径:定位与目标路径的起点不同,且距离处于预设距离范围内的第一起点;获取模仿学习任务在SLAM地图中的路径关键点信息;以第一起点为执行路径的起点,结合所获取的路径关键点信息生成执行路径;重复上述操作,直至获取多个执行路径。
应用本发明上述实施例,机器人能够在无人工干预的情况下实现全自动的演示数据采集工作,大幅减少数据采集的工作量,得到的数据具有可控性高、分布均匀、噪音小的特点,为后续端到端的神经网络训练提供保证。
图8为本发明实施例提供的用于模仿学习的数据采集装置的组成结构示意图,参见图8,本发明实施例提供的用于模仿学习的数据采集装置包括:
SLAM单元81,用于构建模仿对象执行模仿学习任务所处环境的SLAM地图;
获取单元82,用于获取所述模仿学习任务在所述SLAM地图中的目标路径;
采集单元83,用于基于所述目标路径,进行数据采集;
其中,所述数据包括:图像数据及所述模仿对象的位姿数据。
在一实施例中,所述采集单元,具体用于在所述模仿对象从所述目标路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
所述获取单元,还用于获取所述模仿学习任务在所述SLAM地图中的多个第一执行路径;所述第一执行路径的终点与所述目标路径的终点相同,所述第一执行路径的起点与所述目标路径的起点不同,且距离处于预设距离范围内;
所述采集单元,还用于在所述模仿对象分别从不同第一执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
在一实施例中,所述获取单元,还用于定位与所述目标路径的起点不同,且距离处于预设距离范围内的第一起点;
获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;
以所述第一起点为所述第一执行路径的起点,结合所获取的所述路径关键点信息生成所述第一执行路径;
重复上述操作,直至获取多个所述第一执行路径。
在一实施例中,所述装置还包括加扰单元84;
所述加扰单元84,用于在所述目标路径中加入随机扰动,生成扰动路径;
所述采集单元,还用于在所述模仿对象从所述扰动路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
所述获取单元,还用于获取所述模仿学习任务在所述SLAM地图中的多个第二执行路径;所述第二执行路径的终点与所述扰动路径的终点相同,所述第二执行路径的起点与所述扰动路径的起点不同,且距离处于预设距离范围内;
所述采集单元,还用于在所述模仿对象分别从不同第二执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
在一实施例中,所述获取单元,还用于获取所述模仿学习任务对应的关键数据采集区域,以及对应所述关键数据采集区域的数据采集策略;
其中,所述数据采集策略至少指示所述模仿对象在所述关键数据采集区域中的采集位置,及对应所述采集位置的采集视角;
所述采集单元,还用于基于所述数据采集策略,在所述关键数据采集区域中进行多次的数据采集。
在一实施例中,所述装置还包括:
训练单元85,用于基于采集的所述模仿对象的位姿数据,确定对应所述模仿对象执行相应位姿的控制指令;
以所述图像数据作为输入,以对应所述图像数据的控制指令作为输出,构建训练样本,以训练用于所述模仿对象模仿学习的神经网络模型。
在一实施例中,所述获取单元,还用于获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;所述路径关键点信息包括:所述模仿学习任务在所述SLAM地图中的关键位置,以及对应所述关键位置的所述模仿对象的姿态信息;
基于所获取的所述路径关键点信息,生成所述模仿学习任务的目标路径。
这里需要指出的是:以上涉及用于模仿学习的数据采集装置的描述,与上述方法描述是类似的,同方法的有益效果描述,不做赘述。对于本发明所述用于模仿学习的数据采集装置实施例中未披露的技术细节,请参照本发明方法实施例的描述。
实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、随机存取存储器(RAM,Random Access Memory)、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、RAM、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种用于模仿学习的数据采集方法,其特征在于,所述方法包括:
构建模仿对象执行模仿学习任务所处环境的即时定位与地图构建SLAM地图;
获取所述模仿学习任务在所述SLAM地图中的目标路径;
基于所述目标路径,进行数据采集;
其中,所述数据包括:图像数据及所述模仿对象的位姿数据;
所述获取所述模仿学习任务在所述SLAM地图中的目标路径,包括:获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;所述路径关键点信息包括:所述模仿学习任务在所述SLAM地图中的关键位置,以及对应所述关键位置的所述模仿对象的姿态信息;基于所获取的所述路径关键点信息,生成所述模仿学习任务的目标路径;
所述基于所述目标路径,进行数据采集,包括:在所述模仿对象从所述目标路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;获取所述模仿学习任务在所述SLAM地图中的多个第一执行路径;所述第一执行路径的终点与所述目标路径的终点相同,所述第一执行路径的起点与所述目标路径的起点不同,且距离处于预设距离范围内;在所述模仿对象分别从不同第一执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
2.如权利要求1所述的方法,其特征在于,所述获取所述模仿学习任务在所述SLAM地图中的多个第一执行路径,包括:
步骤A,定位与所述目标路径的起点不同,且距离处于预设距离范围内的第一起点;
步骤B,获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;
步骤C,以所述第一起点为所述第一执行路径的起点,结合所获取的所述路径关键点信息生成所述第一执行路径;
重复上述步骤A、步骤B和步骤C,直至获取多个所述第一执行路径。
3.如权利要求1所述的方法,其特征在于,所述基于所述目标路径,进行数据采集,还包括:
在所述目标路径中加入随机扰动,生成扰动路径;
在所述模仿对象从所述扰动路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
获取所述模仿学习任务在所述SLAM地图中的多个第二执行路径;所述第二执行路径的终点与所述扰动路径的终点相同,所述第二执行路径的起点与所述扰动路径的起点不同,且距离处于预设距离范围内;
在所述模仿对象分别从不同第二执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述模仿学习任务对应的关键数据采集区域,以及对应所述关键数据采集区域的数据采集策略;
其中,所述数据采集策略至少指示所述模仿对象在所述关键数据采集区域中的采集位置,及对应所述采集位置的采集视角;
基于所述数据采集策略,在所述关键数据采集区域中进行多次的数据采集。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
基于采集的所述模仿对象的位姿数据,确定对应所述模仿对象执行相应位姿的控制指令;
以所述图像数据作为输入,以对应所述图像数据的控制指令作为输出,构建训练样本,以训练用于所述模仿对象模仿学习的神经网络模型。
6.一种用于模仿学习的数据采集装置,其特征在于,所述装置包括:
即时定位与地图构建SLAM单元,用于构建模仿对象执行模仿学习任务所处环境的SLAM地图;
获取单元,用于获取所述模仿学习任务在所述SLAM地图中的目标路径;具体用于获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;所述路径关键点信息包括:所述模仿学习任务在所述SLAM地图中的关键位置,以及对应所述关键位置的所述模仿对象的姿态信息;基于所获取的所述路径关键点信息,生成所述模仿学习任务的目标路径;
采集单元,用于基于所述目标路径,进行数据采集;具体用于,在所述模仿对象从所述目标路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;获取所述模仿学习任务在所述SLAM地图中的多个第一执行路径;所述第一执行路径的终点与所述目标路径的终点相同,所述第一执行路径的起点与所述目标路径的起点不同,且距离处于预设距离范围内;在所述模仿对象分别从不同第一执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
其中,所述数据包括:图像数据及所述模仿对象的位姿数据。
7.如权利要求6所述的装置,其特征在于,
所述获取单元,还用于执行步骤A,定位与所述目标路径的起点不同,且距离处于预设距离范围内的第一起点;
执行步骤B,获取所述模仿学习任务在所述SLAM地图中的路径关键点信息;
执行步骤C,以所述第一起点为所述第一执行路径的起点,结合所获取的所述路径关键点信息生成所述第一执行路径;
重复执行上述步骤A、步骤B、步骤C,直至获取多个所述第一执行路径。
8.如权利要求6所述的装置,其特征在于,所述装置还包括加扰单元;
所述加扰单元,用于在所述目标路径中加入随机扰动,生成扰动路径;
所述采集单元,还用于在所述模仿对象从所述扰动路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据;
所述获取单元,还用于获取所述模仿学习任务在所述SLAM地图中的多个第二执行路径;所述第二执行路径的终点与所述扰动路径的终点相同,所述第二执行路径的起点与所述扰动路径的起点不同,且距离处于预设距离范围内;
所述采集单元,还用于在所述模仿对象分别从不同第二执行路径的起点出发至终点的过程中,采集所述模仿对象处于不同位置时的所述数据。
9.如权利要求6所述的装置,其特征在于,
所述获取单元,还用于获取所述模仿学习任务对应的关键数据采集区域,以及对应所述关键数据采集区域的数据采集策略;
其中,所述数据采集策略至少指示所述模仿对象在所述关键数据采集区域中的采集位置,及对应所述采集位置的采集视角;
所述采集单元,还用于基于所述数据采集策略,在所述关键数据采集区域中进行多次的数据采集。
10.如权利要求6所述的装置,其特征在于,所述装置还包括:
训练单元,用于基于采集的所述模仿对象的位姿数据,确定对应所述模仿对象执行相应位姿的控制指令;
以所述图像数据作为输入,以对应所述图像数据的控制指令作为输出,构建训练样本,以训练用于所述模仿对象模仿学习的神经网络模型。
11.一种用于模仿学习的数据采集装置,其特征在于,所述装置包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现如权利要求1至5任一项所述的用于模仿学习的数据采集方法。
12.一种存储介质,其特征在于,存储有可执行指令,所述可执行指令被处理器执行时,实现如权利要求1至5任一项所述的用于模仿学习的数据采集方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810887044.9A CN110858328B (zh) | 2018-08-06 | 2018-08-06 | 用于模仿学习的数据采集方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810887044.9A CN110858328B (zh) | 2018-08-06 | 2018-08-06 | 用于模仿学习的数据采集方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110858328A CN110858328A (zh) | 2020-03-03 |
CN110858328B true CN110858328B (zh) | 2022-06-14 |
Family
ID=69634719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810887044.9A Active CN110858328B (zh) | 2018-08-06 | 2018-08-06 | 用于模仿学习的数据采集方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110858328B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835421B (zh) * | 2020-06-06 | 2023-12-15 | 华为技术有限公司 | 训练驾驶行为决策模型的方法及装置 |
CN112352530B (zh) * | 2020-10-27 | 2022-05-31 | 懿力创新(厦门)科技有限公司 | 一种自动除草机器人的工作路径优化方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914068A (zh) * | 2013-01-07 | 2014-07-09 | 中国人民解放军第二炮兵工程大学 | 一种基于栅格地图的服务机器人自主导航方法 |
CN106681320A (zh) * | 2016-12-15 | 2017-05-17 | 浙江大学 | 一种基于激光数据的移动机器人导航控制方法 |
CN107657640A (zh) * | 2017-09-30 | 2018-02-02 | 南京大典科技有限公司 | 基于orb slam的智能巡防巡检管理方法 |
CN107861508A (zh) * | 2017-10-20 | 2018-03-30 | 纳恩博(北京)科技有限公司 | 一种移动机器人局部运动规划方法及装置 |
CN108073167A (zh) * | 2016-11-10 | 2018-05-25 | 深圳灵喵机器人技术有限公司 | 一种基于深度相机与激光雷达的定位与导航方法 |
CN108171796A (zh) * | 2017-12-25 | 2018-06-15 | 燕山大学 | 一种基于三维点云的巡检机器人视觉系统及控制方法 |
CN108332759A (zh) * | 2018-01-12 | 2018-07-27 | 浙江国自机器人技术有限公司 | 一种基于3d激光的地图构建方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11055451B2 (en) * | 2015-10-28 | 2021-07-06 | Qomplx, Inc. | System and methods for multi-language abstract model creation for digital environment simulations |
-
2018
- 2018-08-06 CN CN201810887044.9A patent/CN110858328B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914068A (zh) * | 2013-01-07 | 2014-07-09 | 中国人民解放军第二炮兵工程大学 | 一种基于栅格地图的服务机器人自主导航方法 |
CN108073167A (zh) * | 2016-11-10 | 2018-05-25 | 深圳灵喵机器人技术有限公司 | 一种基于深度相机与激光雷达的定位与导航方法 |
CN106681320A (zh) * | 2016-12-15 | 2017-05-17 | 浙江大学 | 一种基于激光数据的移动机器人导航控制方法 |
CN107657640A (zh) * | 2017-09-30 | 2018-02-02 | 南京大典科技有限公司 | 基于orb slam的智能巡防巡检管理方法 |
CN107861508A (zh) * | 2017-10-20 | 2018-03-30 | 纳恩博(北京)科技有限公司 | 一种移动机器人局部运动规划方法及装置 |
CN108171796A (zh) * | 2017-12-25 | 2018-06-15 | 燕山大学 | 一种基于三维点云的巡检机器人视觉系统及控制方法 |
CN108332759A (zh) * | 2018-01-12 | 2018-07-27 | 浙江国自机器人技术有限公司 | 一种基于3d激光的地图构建方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110858328A (zh) | 2020-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dasari et al. | Robonet: Large-scale multi-robot learning | |
CN110781765B (zh) | 一种人体姿态识别方法、装置、设备及存储介质 | |
CN103503468B (zh) | 在3d模型中结合视频元数据 | |
Koch et al. | Multi-robot localization and mapping based on signed distance functions | |
CN106325509A (zh) | 三维手势识别方法及系统 | |
CN111178170B (zh) | 一种手势识别方法和一种电子设备 | |
CN110858328B (zh) | 用于模仿学习的数据采集方法、装置及存储介质 | |
Memmesheimer et al. | Simitate: A hybrid imitation learning benchmark | |
JP2021077326A (ja) | ビジュアルナビゲーションのための訓練システム、方法およびナビゲーションロボット | |
CN110262283A (zh) | 一种多场景的视觉机器人仿真平台及方法 | |
Park et al. | Neural object learning for 6d pose estimation using a few cluttered images | |
CN113592895A (zh) | 一种运动信息确定方法、设备及计算机可读存储介质 | |
CN108089715A (zh) | 一种基于深度摄像头的演示辅助系统 | |
Corke et al. | What can robotics research learn from computer vision research? | |
Sung et al. | Graph-based motor primitive generation framework: UAV motor primitives by demonstration-based learning | |
Suenaga et al. | Development of a web-based education system for deep reinforcement learning-based autonomous mobile robot navigation in real world | |
CN115131407B (zh) | 面向数字仿真环境的机器人目标跟踪方法、装置和设备 | |
CN115761634A (zh) | 行人轨迹的分析方法、系统、图像采集装置、设备和介质 | |
CN111210495A (zh) | 三维模型驱动方法、装置、终端及计算机可读存储介质 | |
CN113705379A (zh) | 一种手势估计方法、装置、存储介质及设备 | |
Schlette et al. | A new benchmark for pose estimation with ground truth from virtual reality | |
Iqbal et al. | Deep reinforcement learning based loop closure detection | |
CN114546125B (zh) | 键盘跟踪方法及跟踪系统 | |
Yang et al. | Marker-enhanced hand tracking with deep learning | |
CN114952873B (zh) | 一种机械臂三维重建方法、装置、电子设备和存储介质 |
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 | ||
CB03 | Change of inventor or designer information |
Inventor after: Yu Tianning Inventor after: Lin Degan Inventor after: Liu Yuejiang Inventor after: Chen Zichong Inventor before: Yu Tianning Inventor before: Liu Yuejiang Inventor before: Chen Zichong |
|
CB03 | Change of inventor or designer information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |