一种用于标签不足情况的机器人地形分类器训练方法与流程

文档序号:16680257发布日期:2019-01-19 00:21阅读:323来源:国知局
一种用于标签不足情况的机器人地形分类器训练方法与流程

本发明涉及机器人领域,特别是涉及一种用于标签不足情况的机器人地形分类器训练方法。



背景技术:

机器人对于路面环境感知能力指机器人能够根据不同的地面类型选取不同的运动模式,保证其安全、快速、平稳地通过某些特定路面的能力。由于机器人在户外行驶环境相对比较复杂,除了面对复杂多样的地面类型及各种障碍物带来的威胁之外,路面承载性能相对较差的松软地面如沼泽、沙土、黏土、雪地等,往往也会对机器人正常行驶造成极大的影响。如果机器人能够对不同的地面类型进行分类识别,那么机器人便具备很好的感知路面行驶环境的能力,进而规划出最优的行驶策略,实现自主导航。在地形分类器的训练中,由于大量标注数据的获取代价大,一般需要人工标注,因此大量的标注数据需要耗费大量人力,而未标注数据却能轻易获得。针对训练数据标签不足的情况,由于标注数据数量较少,仅依靠这些数据进行分类模型的训练会导致模型泛化能力差,在机器人实际工作过程中对地形的分类准确度低,因此如何利用大量的未标注数据进行模型的训练是一个关键的问题,本发明针对上述情况,公开一种一种用于标签不足情况的机器人地形分类器训练方法,使用少量的标注数据,充分利用大量的未标注数据,得到准确率高的分类模型。



技术实现要素:

为解决上述问题,本发明公开了一种用于标签不足情况的机器人地形分类器训练方法,如图1所示,具体包括以下步骤:

步骤s1:令机器人在其工作环境中的每种地形上分别行驶一段时间,并收集机器人上安装的加速度计的垂直地面方向的数据,得到每种地形上采集的加速度时间序列;对每种地形上采集的加速度时间序列分别进行分割,分割长度为p个采样点,得到每种地形对应的加速度序列段的集合;采用快速傅里叶变换对每种地形对应的加速度序列段的集合中的加速度序列段进行特征提取,得到每种地形对应的样本集;用地形编号j=1,2,…,j对这些样本集中的样本进行标注,得到标注后的样本集其中j表示地形种类的总数,mj表示地形j对应的样本集的样本数;

步骤s2:令机器人在其工作环境中随机游走,得到游走中收集的加速度时间序列,对该序列进行进行分割,分割长度为p个采样点,得到游走情况下的加速度序列段的集合;采用快速傅里叶变换对该集合中的加速度序列段进行特征提取,得到无标注样本集u={ut,t=1,2,…,mu},其中mu表示无标注样本集中的样本数;

步骤s3:令迭代训练序号e=0,令有标注样本集

其中,

步骤s4:基于有标注样本集l分别训练三个分类器:支持向量机、随机森林、朴素贝叶斯,记为

步骤s5:从u中随机选取nu个样本,组成集合v,并输入到三个分类器中,分别得到v中所有样本的地形预测结果的集合其中,为v中样本vi输入到中得到的地形预测结果,为v中样本vi输入到中得到的地形预测结果,为v中样本vi输入到中得到的地形预测结果;将样本集来标注,得到新标注的样本集v′;将v′加入到有标注样本集中,即l←l∪v′,将集合v′从u中删除,即u←u-v′;

步骤s6:令e←e+1,如果u中元素个数不小于nu,则重复步骤s4和s5;否则,分类器训练结束,得到最终的分类器当机器人实际工作时,将采集的加速度计垂直于地面方向的数据经过分割及特征提取的操作之后,输入到分类器c(1)、c(2)、c(3)中,得到三个输出,用投票法确定最终的标签,即为相应的地形分类结果。

其中,所述的步骤s1、步骤s2中涉及的特征提取方法为:

先对每个加速度序列段进行快速傅里叶变换,获取该加速度序列段的频谱向量a=[a1,a2,…,ah],其中ar,r=1,2,…,h表示频率r对应的幅值;然后计算该数据帧的特征向量f=[f1,f2],具体为

其中,所述的步骤s6中涉及的投票法为:

如果c(1)、c(2)、c(3)的输出一致,则其共同输出的标签作为地形分类结果;如果c(1)、c(2)、c(3)的输出中有两个是一致的,其选取这两个一致的输出的标签作为地形分类结果;如果c(1)、c(2)、c(3)输出皆不一致,则任意选取其中一个输出的标签作为地形分类结果。

与已有技术相比,本发明具有以下优点:这种方法不依赖外界交互、自动地利用未标注样本来提升学习性能,大大降低了训练数据标注所需代价。

附图说明

图1为本发明流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图与具体实施例对本发明进行详细说明。

一种用于标签不足情况的机器人地形分类器训练方法,具体包括以下步骤:

步骤s1:令机器人在其工作环境中的每种地形上分别行驶一段时间,并收集机器人上安装的加速度计的垂直地面方向的数据,得到每种地形上采集的加速度时间序列;对每种地形上采集的加速度时间序列分别进行分割,分割长度为p个采样点,得到每种地形对应的加速度序列段的集合;采用快速傅里叶变换对每种地形对应的加速度序列段的集合中的加速度序列段进行特征提取,得到每种地形对应的样本集;用地形编号j=1,2,…,j对这些样本集中的样本进行标注,得到标注后的样本集其中j表示地形种类的总数,mj表示地形j对应的样本集的样本数;

步骤s2:令机器人在其工作环境中随机游走,得到游走中收集的加速度时间序列,对该序列进行进行分割,分割长度为p个采样点,得到游走情况下的加速度序列段的集合;采用快速傅里叶变换对该集合中的加速度序列段进行特征提取,得到无标注样本集u={ut,t=1,2,…,mu},其中mu表示无标注样本集中的样本数;

步骤s3:令迭代训练序号e=0,令有标注样本集

其中,

步骤s4:基于有标注样本集l分别训练三个分类器:支持向量机、随机森林、朴素贝叶斯,记为

步骤s5:从u中随机选取nu个样本,组成集合v,并输入到三个分类器中,分别得到v中所有样本的地形预测结果的集合其中,为v中样本vi输入到中得到的地形预测结果,为v中样本vi输入到中得到的地形预测结果,为v中样本vi输入到中得到的地形预测结果;将样本集来标注,得到新标注的样本集v′;将v′加入到有标注样本集中,即l←l∪v′,将集合v′从u中删除,即u←u-v′;

步骤s6:令e←e+1,如果u中元素个数不小于nu,则重复步骤s4和s5;否则,分类器训练结束,得到最终的分类器当机器人实际工作时,将采集的加速度计垂直于地面方向的数据经过分割及特征提取的操作之后,输入到分类器c(1)、c(2)、c(3)中,得到三个输出,用投票法确定最终的标签,即为相应的地形分类结果。

优选地,所述的步骤s1、步骤s2中涉及的特征提取方法为:

先对每个加速度序列段进行快速傅里叶变换,获取该加速度序列段的频谱向量a=[a1,a2,…,ah],其中ar,r=1,2,…,h表示频率r对应的幅值;然后计算该数据帧的特征向量f=[f1,f2],具体为

进一步优选地,所述的步骤s6中涉及的投票法为:

如果c(1)、c(2)、c(3)的输出一致,则其共同输出的标签作为地形分类结果;如果c(1)、c(2)、c(3)的输出中有两个是一致的,其选取这两个一致的输出的标签作为地形分类结果;如果c(1)、c(2)、c(3)输出皆不一致,则任意选取其中一个输出的标签作为地形分类结果。

以上步骤中提到的对加速度计垂直于地面方向的数据进行的分割操作具体方法为:在加速度时间序列上,每经过p个采样点进行一次分割,每次分割的起点为p(q-1)+1,终点为pq,其中q=1,2,…表示分割的次数。

提供以上实施例仅仅是为了描述本发明的目的,而并非要限制本发明的范围。本发明的范围由所附权利要求限定。不脱离本发明的精神和原理而做出的各种等同替换和修改,均应涵盖在本发明的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1