无人平台复杂地形探测的视触融合方法*
2020-06-02王召新刘华平续欣莹孙富春
王召新,刘华平,续欣莹,孙富春
(1.太原理工大学 电气与动力工程学院· 太原·030024;2.清华大学 计算机科学与技术系·北京·100084;3.清华大学 智能技术与系统国家重点实验室·北京·100084)
0 引 言
深空探测作为人类航天活动的三大领域之一,充分展现国家的综合实力,对国家经济、科技、社会发展具有重要意义[1]。复杂环境下的地形探测技术是提高无人平台自主移动和环境适应性能的关键因素[2],在大多数深空探测任务中,都以地面探测方式对无人平台进行导航和跟踪[3]。无人平台根据不同的地形环境选择不同的前进策略,进而在自主避障的前提下安全穿越地形区域[4]。
视觉作为人类最常用的环境感知方式,可以提供丰富的地形信息。正如文献[5-6]所述,可以通过使用视觉数据获得地形类别。但是仅仅依靠视觉提示可能会产生误导,例如,无人平台会把冬天的干枯草地识别成土地。此时,触觉数据的使用便显得十分必要。文献[7]将红外距离传感器、加速度计和力传感器结合起来,以区分六种室内表面地形。文献[8-9]也使用触觉传感器来收集地形信息。因此,本文提出一种视触融合的地形探测方法,有效地结合触觉和视觉信息,实现两种模态数据的优势互补。
目前,常用的地形识别方法有基于神经网络的算法和传统的机器学习算法。针对不同地形的表面和结构,通过小波变换和纹理特征获得低维和高维特征,通过分类器得到地形类别。传统的机器学习算法收敛速度较慢,效率不高,难以满足要求。例如支持向量机(Support vector machine, SVM)需要手动选择核函数和误差控制参数等,因此,SVM算法需要花费大量的时间来调整参数[10]。卷积神经网络(Convolutional neural network, CNN)的使用已经在目标识别方面取得了成功。然而,大量的超参数和复杂的结构使得深层神经网络经历一个耗时的训练过程。为了达到令人满意的识别结果,深层神经网络结构需要调整网络参数或不断增加隐含层层数,这给深度学习的训练带来了困难。并且在实际应用中,在缺少监督的天体表面环境中,无人平台探测的目标通常呈现弱特征,另外传感器收集的数据量有限,无法为深度学习提供足够的数据进行训练。必须充分利用无人平台的数据学习能力在有限寿命内实现复杂地形的探索[11]。因此如何在小样本数据情况下,充分利用传感器信息资源完成地形识别任务成为无人平台研究的一个热点问题。
综上所述,本文提出了一种基于多模态框架的宽度学习算法,能够有效地融合无人平台采集的地形图像和触觉信号,并且充分利用多模态信息来提取更多的抽象表示和不变特征,在自创建的多模态地形(visual-touch terrain,V-T2)数据集进行了实验。实验结果表明,视触融合宽度学习地形分类的精度高于传统的神经网络算法和支持向量机,避免了耗时的训练过程,且在小样本数据情况下完成地形识别任务,提高了地形识别的鲁棒性和准确性。
1 构建级联宽度学习网络
2017年提出的快速增量学习方法宽度学习(Broad Learning,BRL)[12]是基于随机矢量功能链神经网络的思想设计的。整个网络由输入、特征节点、增强节点和输出四个部分组成。根据原始的BRL,本文提出了CFBRL-KCCA算法,首先,通过级联特征节点宽度学习(Cascade Feature Nodes Broad Learning, CFBRL)[13]分别提取图像和振动数据的特征,利用核典型相关分析(Kernel Canonical Correlation Analysis, KCCA)算法最大限度地提高两种模态数据之间的相关性。最后,利用BRL分类器得到分类结果。该算法框架如图1所示,主要包括三部分:
1.1 视觉和触觉无监督特征学习
将预处理的图像和振动数据输入至视触多模态网络,通过CFBRL算法的特征节点和增强节点的特征表示进行无监督学习。首先,给定触觉数据的输入为X={x1,x2,…,xN},则第1组特征节点表示为
Fc1=G(XWcf1+βcf1)
(1)
式中,G是线性激活函数;Wcf1和βcf1分别为第一组级联特征节点宽度学习网络中随机生成的触觉特征节点的权重和偏置;N表示该触觉训练样本集中共含有N个触觉训练样本。为了克服随机初始化的不可预测性,CFBRL采用稀疏自动编码器优化输入权重。之后,第一组特征节点的输出作为第二组特征节点的输入,则第2组特征节点表示为
Fc2=G(Fc1Wcf2+βcf2)
=G(G(XWcf1+βcf1)Wcf2+βcf2)
(2)
按照这一规律,第i组特征节点表示为
Fci=G(Fci-1Wcfi+βcfi)
(3)
图1 算法框架流程图
(4)
式中,ξ是非线性激活函数,Wcej和βcej分别为CFBRL子网络中生成第j组触觉增强节点的权重和偏置。M组增强节点定义为EM=[E1,E2,…,EM]。
1.2 视觉和触觉融合特征学习
使用核典型相关分析算法,最大化触觉初步特征矩阵Hc和视觉初步特征矩阵Hs之间的相关性,实现融合特征降维,确定两个N维向量α和β,使得两种模态样本的线性组合U=ΦHc(Hc)α和V=ΦHsβ的相关系数最大,得到融合后的触觉特征矩阵U和视觉特征矩阵V;其中,ΦHc(Hc)和ΦHs(Hs)是分别将触觉初步特征矩阵Hc和视觉初步特征矩阵Hs映射到非线性特征空间得到。
1.3 输出地形识别结果
融合后的触觉特征矩阵U和视觉特征矩阵V经宽度学习分类算法,通过岭回归的广义逆近似求得CFBR的输出即为地形识别结果Y,CFBRL网络训练完毕;其中,所述地形识别分类结果Y的表达式如下
Y=[U|V]WN
(5)
(6)
2 视触觉数据采集及预处理
2.1 数据采集
(1)无人平台和传感器:数据采集使用Autolabor Pro 1(AP1)移动无人平台,它是一款适用于全地形的移动底盘。该无人平台共有四种速度档位,分别是0.2(m/s),0.4(m/s),0.6(m/s),0.8(m/s)。在车身一侧,平行且靠近地面的位置配备一个AKF392B 三轴向加速度计,其采样频率范围为5 Hz~1000 Hz,偏差典型值小于 0.1%,具有输出稳定、环境适应性能好等优点。加速度计采样频率选择100 Hz和200 Hz采集不同路面的振动信号,数据采集平台如图2所示。
(a)AP1 移动无人平台 (b)加速度传感器
(2)地形选择:数据采集确定了常见的六种路面数据:沥青(Asphalt)、草地(Grass)、马赛克路(Mosaic road)、木板(Wood)、泥土路(Dirt)以及塑胶跑道(Plastic track)。其中,泥土是经长期碾压的紧实泥土,马赛克路是岩石材质组成的方格路面。
(3)视触觉数据采集:控制AP1无人平台以不同速度在六种地形上直线行驶,在每种地形上分别行驶了20分钟,在四种车速和两种采样频率总计八种场景下采集了16万个触觉数据点。视觉数据是使用AP1无人平台上搭载的摄像机进行图像采集得到,获取的视觉数据主要用于后续通过视觉特征对地形进行识别。现实生活中除了道路常见的颜色,如绿色的草地、红色的塑胶跑道以及黑色的沥青等,还有许多混杂的颜色,如沥青具有白色的斑马线以及黄色和蓝色的漆线、蓝色的塑胶跑道等。很多地形中还掺杂其他种类地形,如草地稀疏的部分有泥土,木板上有树叶,泥土上有杂草和石块等凸起。除了颜色和地形的交叉,不同的天气和光照条件也会影响采集图像的色彩,因此在采集视觉数据时考虑了晴天、遮荫、傍晚光线弱以及晚上有灯光等光照条件,部分视觉数据集如图3所示。每类地型采集50张图像,全地形共计300张图像。
图3 真实采集的部分道路图像
2.2 数据预处理
(1)触觉数据预处理:为了保证数据的稳定,将移动无人平台启动以及转弯等时候采集的三维振动信号去掉,保留了9.6万个数据点,将其分割成段(本实施例每种场景含有30段三维振动信号),每种车速和采样频率设置有1.2万个数据点,然后进行数据增强,在一种车速和采样频率下,每类地形的触觉数据增强为50段三维振动信号(即每类地形的各段三维振动信号分别与采集的一张图像相对应),全部地形共计300段三维振动信号。其后通过截止频率为10 Hz的高通滤波器去除数据增强后各三维振动信号中因重力和加速度计漂移产生的干扰噪声;利用快速傅里叶变换(DFT321)算法将滤波后的三维振动信号合成为一维振动信号;通过上述处理保留了三轴分量的时频和光谱特性,并且合成前后信号的总功率保持不变,减少了特征计算的工作量。随后,利用短时傅里叶变换的方法,将上述一维振动信号转换到频域,短时傅里叶变换中的汉明窗的窗口长度是128,窗口偏移量是64,采样频率为100 Hz或者200 Hz,得到加速度频谱图像,对该频谱图像进行降采样,得到大小为32×32×3的频谱图像,
(2)视觉数据预处理:对得到的视觉数据进行降采样,降采样后每张图像的大小均为32×32×3,避免因每幅图像特征太多对系统造成噪声和冗余。
3 实验结果与分析
把经过预处理的300个触觉样本和300个图像分别按4∶1的比例随机划分成240个触觉训练样本和240个视觉训练样本以及60个触觉测试样本和60个视觉测试样本。由于采集数据时设置了2种采样频率和4种速度共8种情况,实验首先使用BRL算法验证8种组合的触觉数据分类情况,五折交叉验证结果如图4所示,测试精度分别是45.56, 50.11, 52.77, 49.23, 45.22, 47.48, 50.45和47.78。其中,横坐标0.2-100表示无人平台的运动速度0.2 m/s,采样频率100 Hz。
图4 8种不同组合触觉信号的地形识别精度
从分类结果可以看到,采样频率为100 Hz 的识别率明显高于200 Hz的识别率。而且当固定采样频率时,随着速度的增加,识别率大致呈正态分布,当V=0.6 m/s时得到最大值。最终,选择了0.6 m/s,100 Hz 的数据样本进行下一步的实验。
在整个实验中,比较了6种算法在单模实验中的分类性能,仿真结果见表1。其中,支持向量机作为一种高精度分类工具,广泛应用于对象识别和分类等领域[14]。SVM分类器可以直接执行二进制分类,也可以执行多个分类任务,这些任务使用libSVM工具箱的RBF核心函数来训练样本。极限学习机器(Extreme Learning Machine, ELM)是一种新型的单层前馈网络,具有良好的学习能力[15]。对比触觉数据的分类精度,得出SVM的效果最好,其次是CFBRL,仅仅比SVM落后了0.33%,而CFBRL在视觉数据的分类精度最好。
表1 不同模态数据在六种算法上的识别率
实验也比较了Elm-CCA、Elm-KCCA、BRL-CCA、BRL-KCCA、CFBRL-CCA和CFBRL-KCCA算法在单模态和多模态中的分类性能。从图5中可以看到,同一算法多模态数据的分类精度高于单模态数据的分类结果,并且使用KCCA算法的分类性能比使用CCA算法的分类性能好。对于使用KCCA的算法,参数设置如下:每个模型数据的高斯核S1和S2的宽度是16,M1=M2=1400(M1和M2是使用的随机傅里叶特征的数目),并且输出维度是50。
另一方面,CFBRL的分类性能优于原始BRL结构的分类性能。这是由于CFBRL的特征节点采用级联结构,前一组特征节点的输出作为下一组特征节点的输入。因此,可以反复提炼数据特征,使用相对较少的特征节点也能达到较好的分类效果。本文提出的CFBRL-KCCA算法在几种算法中得到了最高的分类结果,达到了84.67%。
图5 不同算法在单模态和视触融合数据的分类精度
为了比较四种BRL算法的性能,首先比较了这些算法学习到的特征的相关性。图6(a)为不同算法在测试集上得到的前10个相关性最强的典型变量的相关系数之和。随着输出维数的增加,四种算法的相关系数之和呈现先升后降的趋势。BRL-CCA和BRL-KCCA之间的差异不明显。当输出尺寸大于50时,BRL-KCCA的优点变得突出。整体来看,本文提出的CFBRL-KCCA的相关系数之和大于其他算法。此外,还比较了四种算法的识别率与输出维数的关系。从图6(b)可以看出,BRL-CCA的识别率有很大程度的波动,并且上升最快,但在四种算法中是最低的。本文提出的算法具有较好的鲁棒性。当输出尺寸为50时,可以抵抗噪声干扰达到85%的识别精度。
(a)输出维数对相关系数之和的影响
(b)输出维数对识别精度的影响
4 结 论
本文将宽度学习应用于无人平台的地形探测领域,提出了一种基于级联特征节点宽度学习的多模态融合算法。该方法融合视触信息的无监督特征,最大限度地提高了两个特征之间的相关性,实现了特征维数的联合约简,并利用宽度学习分类器获得了地形识别结果。此外,开发了一种用于地形识别的视触觉数据集V-T2,收集了6种道路上的图像和触觉信号。实验结果表明,所提出的视触融合框架在移动无人平台地形探测中是有效的,尤其是在小样本数据下能得到有竞争力的结果。