基于强化学习的月表地貌主动感知方法研究
2019-10-31居鹤华韩亮亮
余 萌,居鹤华,韩亮亮
(1.南京航空航天大学航天系统工程系,南京210016;2.上海宇航系统工程研究所,上海201109;3.中国航天科技集团有限公司空间结构与机构技术实验室,上海201108)
1 引言
随着航天技术的不断发展,在月球表面漫游巡视任务呈现多元化、多地化的发展趋势,如嫦娥四号月表巡视器执行的月球背面勘探任务[1],以及正在论证的月面极地探索计划[2-3]等。未来的月面勘探任务将在可靠性得到充分保障的前提下,不断探索新区域,包括与地面基站存在通讯阻碍、欠缺先验测绘知识的月表区域。因此如何在陌生的星表环境执行安全的自主任务,利用巡视器有限的寿命自主探索更多具有科学价值的地况与地貌,便成为提高月表巡视任务的关键要素。
Schuster等[4]认为安全性高、成本低廉的星表地貌自主探索可靠方案能够显著提高星表探索任务效率[4]。Schwarz等[5]提出在巡视器上装备一些主动感知设备,如放置灵巧机械手,通过主动接触岩面来感知地貌。Ono等提出利用人工智能方法进行地貌自主分析,如利用图像分割方法去理解星表图像中的兴趣区域[6]、利用局部特征检测方法进行障碍检测[7]等。虽然地貌自主感知技术能够有效提高探测效率,但出于可靠性考虑,目前的星表巡视任务尚以半自主遥操作为主[8],针对星表地貌自主感知技术也尚处在概念研究与初步仿真测试阶段。
考虑未来月表漫游巡视任务的发展需求,针对面向未来月面巡视器自主地貌感知的应用需求,本文提出一种月表地貌主动感知方法,构建地貌特征知识库,并利用强化学习方法进行在线规划相机参数以实现地貌的主动感知。
2 组建月表地貌知识库
月表地貌主动感知方法流程如图1所示。图中地貌主动感知方法分为离线(左)与在线(右)过程。其中离线过程包括组建供强化学习训练的地貌知识库,以及基于知识库的奖励函数构建;在线过程包括基于显著性分析的目标地貌检测以及后续主动感知触发判据的设定。
图1 月表地貌主动感知方法流程图Fig.1 Flow chart of lunar landform active perception
地貌知识库目的是为强化学习方法提供训练样本,进而通过训练实现目标地貌的主动感知。由于月表地貌普遍颜色单一,图像纹理表征稀疏,且缺乏普适的描述模型。纹理特征细节的匮乏造成基于机器学习的方法很难找到一个合适的分类界限。同时,现阶段所能获取的月表图像的分辨率及数量有限,难以构建用于机器学习方法训练的大规模样本集。考虑上述因素,本文从图像局部特征描述的角度来构建样本集,以保证小规模平纹理样本彼此之间的辨识度。
将前期收集的星表图像集合表示为Ip,并在每张图像中标注兴趣地貌特征,将地貌类别表示为 Oi,i=1,…,No。 其中 Oi代表第 i个地貌类别,No代表地貌类别的总数。针对每类地貌,在其所属图像区域内提取SURF(Speeded up robust feature)特征描述算子,构成特征描述算子集合Oi,见式(1)。SURF算子是由Bay等[9]提出的一种图像局部特征描述算子,其借鉴Haar模板与积分图像思想,有效提高了尺度不变特征提取的运行效率。
其中,SOi表示针对地貌类别Oi的SURF特征描述子集合,nOi代表含有Oi类地貌的图像个数。值得注意的是某类地貌的特征描述集合并不是单幅图像特征,而是通过从多幅图像中提取局部特征来完成组建。由于每幅图像拍摄条件受多种因素影响,如太阳高度角、拍摄距离与角度、光照强度等,其阴影区域并不具备代表性,因此在进行SURF特征提取前利用K-means方法[10]划分图像阴影区域,并忽略分布在距离阴影边缘距离5个像素内的SURF特征描述子。
3 目标地貌预估
3.1 显著性分析
在进行地貌感知前,需要先预估当前场景是否存在兴趣目标。不同于地球地貌,月表地貌的颜色更为单一,且纹理表征较为贫瘠,可能导致在地面成熟应用的目标识别方法(如基于深度学习的一系列目标识别算法)因样本区分度不高而出现频繁误报。综合考虑月表地貌的特殊性与星载计算机运算能力,将地貌目标的兴趣程度近似等同于其图像表征的纹理复杂程度,认为图像中纹理特征越明显、与背景区分度越高的区域,其对应兴趣地貌的可能性越高。选择图像显著性分析方法来预判地貌的兴趣程度,图像的显著性根据视觉关注机理指视觉角度值得关注的局部区域,对应本文的应用背景便是具有一定纹理特征的月表地貌。
综合考虑显著性分析方法的精度与实时性,选择经典的谱残差方法(Spectral Residual Method)[11]进行图像中地貌显著性分析,示例结果见图2。图2(a)为原星表拍摄图像,图2(b)为显著区域提取结果,可以看到显著性区域集中在图中视觉关注度最高的岩石附近。在图像显著性分析的基础上,设定地貌主动感知的触发条件,主要依据是图像显著性区域中对应目标地貌的可能性。
图2 谱残差显著性分析示意图Fig.2 Illustration of Spectral Residual Method
3.2 感知目标判定依据
假设单幅图像中检测到N个闭合显著轮廓,其相应的像素面积记作式(2)。
其中,s1,s2,…,sN为N个闭合轮廓的像素面积。计算像素面积中最大面积与次大面积的面积比,见式(3)。
其中,Smax1为图像中最大的显著性轮廓面积;Smax2=max{MSmax1}为第二大的轮廓面积。当rS>1.5时,认为当前图像内含有目标地貌,即满足地貌主动感知触发判据。
4 月表地貌主动感知
4.1 地貌主动感知概念
主动感知地貌的核心在于“主动”,具体指通过主动调节相机的内外参数来实现对当前场景内目标地貌的更好观测。
对目标地貌更好的观测可以体现在与地貌知识库中与某一地貌具有更高的相似度。假设在k时刻触发地貌主动感知判据,从像素面积最大的显著性区域中提取SURF局部特征集合,并记作Zk,则当前目标地貌与知识库中地貌的相似度可以通过Zk与知识库中隶属地貌的特征集的交集来判断,见式(4)。
其中‖·‖代表集合的基数,即所含元素的个数,Zk∩SOq为观测特征集Zk与第q类地貌特征集中匹配的特征集合。式中ak∈(0,1)为目标与知识库中地貌的相似度,ak越接近于1,则意味当前目标与知识库中的某类地貌越相似。地貌主动感知的目的是不断通过主动调节参数最大化相机视场内的目标地貌与知识库中某类地貌的相似度。
由式(4)可知,地貌相似度仅与观测量与知识库中地貌特征集交集的个数有关。这种相似度判断方法虽简单易行,但在本文应用背景下存在隐患:由于月表地貌颜色单一、纹理贫瘠,与自然图像相比,其反应在图像上的特征多样性较为匮乏,进而导致在样本集中不同的地貌特征集间也存在交集,影响相似度判断的准确性。针对此问题,将结合强化学习框架,从另一角度对地貌相似性进行判断。
4.2 基于贝叶斯方法的地貌相似度度量指标
以贝叶斯方法为基础,构建地貌知识库相对于观测特征集的后验概率,并据此建立观测特征集与已编目地貌相似程度的度量。典型的知识库地貌-观测特征集条件概率见式(5)。
其中,Fk=Zk∩SO为k时刻观测特征集Zk与某类地貌特征集SO的交集。式中p(Fk|SO)为Fk关于某地貌特征集SO的先验概率,见式(6)。
其中, S= {SO1,SO2,…,SOK}为知识库中所有地貌类别的特征描述子集合(共计K类地貌)。若不区分地貌出现的优先级,则可以认为任何一类地貌出现的概率都相同,即p(SO)=1/K。 式(5)中p(Fk)可以通过遍历地貌类别的概率密度积分来实现,见式(7)。
如式(5)~(7)所示,将地貌相似度求取建模为贝叶斯后验概率形式,弱化了因不同地貌特征集间存在交集这一情况对相似度判断精度的影响,在后验概率描述基础上,进一步结合强化学习框架建立完整的地貌主动感知方法。
4.3 强化学习框架下的地貌主动感知
服务于主动感知的敏感器动作参数(以离散的形式描述)见式(8)。
其中,Af为单目相机焦距的调整参数序列,Aδ为相机云台偏航角的动作空间序列,f0、δ0分别代表初始的焦距与云台偏航角,+、-分别代表焦距放大收缩,以及云台沿体轴z轴左转及右转。上述动作参数为2个维度,在实际任务中还可以根据计算能力增加动作空间的自由度,如加入相机的云台俯仰角控制。
根据4.2节中建立的后验概率,此处重新梳理强化学习框架中的奖励函数,如式(9)所示。
其中,Rh·()为奖励函数,x为当前相机状态量,x′为下一时刻相机状态量,xmax为最大许用状态量;a=[af,aδ]为当前相机调整动作,其中 af∈ Af,aδ∈ Aδ;ΔI(a,x,x′) 为执行动作 a 后的后验概率Fisher信息熵增;CR≫ΔI为奖励常数,设置此常数项的目的是当相机状态达到极限时(最大/最小焦距或云台偏航角度)停止算法的训练工作;Cs≫ΔI为动作停止奖励常数,目的是若当前状态下执行任何动作均不能获得回报时,立即停止动作并结束训练。ΔI(a,x,x′)的具体描述形式见式(10)。
其中Z、Z′分别为当前时刻以及下一时刻的观测特征集;H O|Z( )为地貌集相对于观测集的Fisher信息熵,用来描述观测量关于地貌知识库后验概率的完备性,其离散形式见式(11)。
式(11)不同于常规Fisher信息熵,引入了归一化参数log NK( ),其中NK为与当前观测特征集Z相关的地貌类别总和,引入该项参数目的一是降低计算量,二是增加算法的针对性,即更加准确感知某一类的地貌,而非追求感知地貌的数量。基于式(9)的奖励函数,可以建立完整的强化学习框架。具体而言,强化学习训练开始于基于图像显著性的主动感知触发,经策略估值——策略更新的迭代最终收敛于最佳策略,此处的策略指的是为获得更好的地貌感知结果而训练出来的相机参数动作调整序列。将策略记作πA|X( ),其中 A={a1,a2,…,ak} 为动作序列; X={x1,x2,…,xk}为相机状态的历史参数;将策略估值函数记为v,并认为初始估值为v0=0,并将相机的状态空间设定为7×7,对一个策略的改进更新需要遍历所有的状态,针对每一步状态都选择能最大化奖励函数的参数动作,该过程类似“贪婪”选取,即式(12):
在得到新的估值函数与策略后进行策略更新,并不断进行评估-更新的迭代,直到策略收敛[12],见式(13):
其中E代表策略评估,I代表策略改进,由于状态空间仅限定为7×7,策略估值-迭代通常能够快速收敛。强化学习中的策略迭代算法如下:
输入:地貌知识库O,初始动作序列A0,观测特征集Z
初始化: vπ={0,….0};π0=null;
设定收敛阈值:ε>0,TStable≫ε,CR,Cs>0
While(TStable>ε)
1.策略评估(Policy Evaluation)
利用贪婪选取方法,输出vπ以及π//(式(12))2.策略更新(Policy Improvement)
输出最终控制策略:π*=π
5 仿真算例与分析
基于改进增强学习的地貌主动感知方法进行仿真计算。首先利用Rhino软件生成三维行星地景,并在其中添加数个兴趣地貌作为待感知目标地貌,完整的三维行星地景以及目标兴趣地貌如图3所示。针对这些兴趣地貌分别模拟不同的光照条件及拍照位置,并从渲染的行星图像中提取SURF特征点组建地貌知识库。
图3 基于Rhino的行星三维地景及模拟地貌Fig.3 3D planetary surface and simulated landforms generated by Rhino
将相机的调控参数离散化为7×7的状态空间,即针对相机的焦距以及云台载体均有7个不同取值,如式(14)所示:
其中状态之间的转移通过式(8)中的动作参数完成。利用模拟变焦距相机以及1自由度载具云台进行实时仿真分析。仿真算例结果如图4所示。S代表地貌感知开始时拍摄的图像,G代表地貌感知结束时拍摄的图像。图5为所生成的控制序列。
图4 仿真开始与结束时的地貌感知对比Fig.4 Comparison of landform sensing before and after simulation
图5 地貌主动感知动作序列Fig.5 Sequence of actions in active landform sensing
如图5所示,经过强化学习训练后,最终生成的主动感知调整动作一共有6步,见式(15)。
相机的动作参数最终收敛于状态 [ fc++,δc-],算法的迭代停止阈值设定为ε=0.01,共经过14次迭代完成收敛,其中每次迭代生成的主动感知动作次数如图6所示。
图6 每次策略估值-更新迭代的动作次数Fig.6 Number of actions per each policy evaluationupdating iteration
如图4、图5所示,由增强学习训练得到的结果为拉近相机焦距,并向左旋转相机云台,即a*=[]。 相比原有的地貌观测,经参数调整后能够更清晰地分辨图像中的地貌,这是因为在相机拉近后从地貌对应的图像区域内提取的SURF特征集与特征知识库中对应的地貌特征及匹配度更高。在其余算例仿真中,经强化学习训练后的地貌感知结果在视觉显著性上均有不同程度的改善。
在仿真中发现本文算法的一些不足,该方法对地貌知识库构建的质量较为依赖,若当前待感知的兴趣地貌在知识库中未被描述充分(例如拍摄视角/位置欠佳或光照条件欠佳),其地貌主动感知结果并不理想。此外,供组建地貌数据库的月表地貌图像数量及地元分辨率也影响算法的效果:图像数量的欠缺会导致训练集完备性不足,影响兴趣地貌的响应成功率;图像地元分辨率的不足也会增大观测特征集与地貌特征集的差异,进而影响识别精度。针对以上不足,解决途径是在巡视器前期勘探任务中根据收集到的现场图像对地貌特征集进行增广,即在线筛选优秀地貌特征实时更新地貌特征集,提高训练集的完备性与精度。与此同时,在实际任务中仍有必要针对地貌知识库中未充分编目的兴趣地貌开发主动感知技术,后续工作将围绕相关内容展开进一步研究。
6 结论
1)利用SURF特征描述算子组建了地貌特征知识库,并在强化学习框架下设计了相应地貌识别奖励函数,该方法利用SURF算子完成地貌的表征,在有效保证运行效率的同时,实现对地貌的准确识别;
2)在地貌在线感知阶段,采用局部显著性分析方法设计了地貌主动感知的触发判据,确保了地貌感知的有效性,将在线地貌感知与强化学习方法相结合建立了完整的月表地貌主动感知方法;
3)仿真算例结果显示,所提方法能够在有限的策略估值-更新迭代次数内给出有效地貌主动感知的相机调整动作参数,并且地貌感知结果较未采取主动感知策略的拍摄结果从视觉显著性角度具有一定幅度的提升,体现了地貌主动感知算法的有效性。