随着航天技术的飞速发展,人类探索太空、开发并利用太空空间的需求不断增多,空间飞行器的技术水平不断提高,发射数量不断增加。一方面,昂贵的飞行器需要在复杂环境中运行得更加持久;另一方面,数量众多的空间飞行器一旦失效,就成为太空垃圾,会占据大量轨位资源,为其他空间飞行器的安全稳定运行带来了极大隐患。因此,空间飞行器在轨服务技术(on-orbit servicing,OOS)——包括对空间飞行器的抓捕、装配、维护等,吸引了世界各国的关注,成为太空领域发展最快的尖端技术之一[1]。
自20世纪60年代早期提出概念,在轨服务技术经过四十余年的发展,取得了丰硕成果,显示出了巨大的社会经济效益和良好的应用前景[2]。早期在轨服务技术大多是由航天员舱外作业完成,但航天员出舱活动存在生理限制和巨大风险[3]。随着空间机器人技术的发展,在感知系统辅助下的空间机械臂遥操作逐渐取代人工作业,但受限于天地信息传输的大时延,在轨遥操作的适用场景比较有限,稳定性较低[4-5]。随着空间在轨服务技术的不断突破,面向空间在轨服务的自主操作控制技术已成为宇航技术发展的新增长点。
1 问题综述对空间目标的检测与识别是空间在轨服务操作的前提条件,因此目标特征检测与识别技术是面向空间在轨服务的自主操作控制中的关键技术。对复杂特殊的空间环境来说,视觉传感器结构简单、适用场景丰富,且价格低廉、实时性强,已成为空间机械臂最主要的传感器,相当于机械臂的眼睛,在空间机械臂在轨服务操作中具有举足轻重的地位[3],因此,基于视觉的空间目标特征检测与识别算法的研究与应用具有重要意义。
视觉感知技术从简单到复杂,包括了合作目标视觉测量和非合作目标视觉测量。合作目标是指目标可以向服务航天器传递相对运动状态信息,或向服务航天器提供便于进行抓捕等操作的条件,通常安装用于测量的合作标识或已知的机械臂抓持装置;非合作目标是指目标本身形态未知,无法向服务航天器传递相对运动状态信息,没有相应的合作标识或已知的机械臂抓持装置[2]。目前合作目标的感知技术日渐成熟,而非合作目标的感知技术研究从20世纪末才开始,大部分研究处于理论分析和地面试验阶段,但失效航天器的在轨服务与维护、空间垃圾清除,甚至空间攻防等任务所针对的目标大多为非合作目标,因此在空间任务中,非合作目标的视觉感知研究具有更重要的意义和更广阔的前景。相比于合作目标的视觉感知,非合作目标的视觉感知难度更大,主要是因为:
1)目标特征未知,在复杂的宇宙空间环境下,传统的基于模型的方法(如基于轮廓边缘特征、模板匹配、几何特征等)对特征的识别有相当大的难度,并且人为设计特征难以泛化应用到其他目标,适应性和鲁棒性较差;
2)目标状态变化快,传统算法的准确性和实时性难以保证。
对于特征检测,目前针对空间非合作目标的研究较少,可对比借鉴地面机器人特征检测方法,由于自主性要求高,主要考虑各类机器学习方法。根据是否采用深度神经网络,可将其分为传统方法和深度学习方法。传统方法主要从已有的先验数据中进行学习,掌握一定规律后再对特定的特征部位进行分类和识别,可大致分为基于比较的方法和基于特征的方法:典型的基于比较的方法[6]需要建立一个包含许多模型的知识数据库,将目标与数据库进行匹配,从而得到与目标最相似的数据库模板,进一步基于模板对目标特征进行检测识别。Kamon等[7]通过将已有的检测经验推广到新物体来构建知识数据库,在早期对特征部位的检测识别中较具有代表性。Morales等[8]通过反复“试错”获得知识数据库,再通过视觉反馈数据来跟知识数据库进行比较从而检测出特征部位。Herzog等[9-10]的研究把基于“试错”获取的真实数据和基于局部特征表示产生的模型相结合,构建知识数据库,并通过为系统提供一系列“正确”的检测识别样例来加速学习过程。基于特征的方法通过提取目标特征,并结合人为设计(通常由先验知识)产生的对应特征模板,学习出一个判别函数,通过该函数来判别特征部位[11]。El-Khoury等[12]使用超二次曲面(super quadrics,SQ)来近似物体的点云模型,用先行判别函数检测识别物体可抓捕部位。Pelossof等[13]也使用SQ来近似表达物体,但判别函数使用了支持向量机(support vector machine,SVM)。Boularias等[14]将物体特征点的选取转换为马尔科夫随机场(Markov random filed,MRF)问题,结合先验知识,通过最大后验估计寻找物体表面适于抓捕的特征点。Saxena等[15]搭建了一套系统,使用带标记的不同物体的合成图像作为训练数据,利用回归方法训练出判别模型,基于二维数据提取捕获部位特征的方式避免了使用三维数据带来的复杂性。
总的来说,传统的机器学习方法往往需要人为设计和寻找特征,普适性较差。深度学习方法不依赖目标模型,不需要手动设计特征,在训练数据足够好的情况下具有更加良好的泛化能力,针对不同的目标和场景有更好的普适性,相比于传统方法鲁棒性更强。近年来,随着深度学习方法的快速迭代,计算机视觉领域的目标检测技术已经有了突破性进展,在准确性和实时性方面,也可以满足空间目标检测与识别要求。
因此,本文提出将深度学习方法Mask R-CNN[16]应用于空间目标特征检测与识别问题,并针对空间任务中检测过程实时性要求高的特点,对算法进行了改进。同时,深度学习算法需要大规模样本数据来进行网络训练,针对空间目标样本数据集难以构建的问题,本文提出了搭建虚拟环境生成不同场景、不同工况下的卫星样本数据,并利用传统图像处理方法进行批量式自动标注来构建样本数据集。
2 算法原理 2.1 目标检测框架基于深度学习的目标检测方法主要可分为两大类:1)两步法(two-stage),将检测问题划分为两个阶段,首先产生候选区域(region proposals),之后在候选区域上进行目标的细粒度检测,这类算法的典型代表是基于R-CNN系算法,如R-CNN[17]、Fast R-CNN[18]、Faster R-CNN[19],以及能够完成像素级检测与分割的Mask R-CNN;2)单步法(one-stage),不需要region proposal阶段,利用回归方法直接产生物体的类别概率和位置坐标,比较典型的算法有YOLO[20]和SSD[21]。两类目标检测方法的结构如图1所示。
R-CNN是最早将深度神经网络应用到检测系统中的,但在生成候选区域的阶段,R-CNN是利用如Selective Search[22]、MCG[23]等非神经网络方法实现,再将所有的候选框送入CNN层提取特征后进行分类和边界框的回归。R-CNN会生成非常多的候选区域,每一个都需要独立送入卷积层提取特征,因此算法的训练和推断速度极慢,Fast R-CNN先提取特征图,再利用特征图代表原图进行候选区域提取,显著减少了处理时间。针对R-CNN和Fast R-CNN使用的候选框提取算法在CPU上运行速度较慢的问题,Faster R-CNN引入了候选区域提取网络(RPN),能以更快的速度提取更丰富的候选区域,大大提升了检测的速度和效果,之后的工作大多是在Faster R-CNN的基础上进行改进以提升检测性能。Dai等[24]提出了基于区域的全卷积网络结构R-FCN,引入位置敏感得分图(position-sensitive score map)来共享RoIs的特征,提升了检测速度。Lin等[25]提出了特征金字塔网络(FPN),利用卷积神经网络固有的多尺度结构构造特征金字塔来高效提取不同维度特征,加强特征表达,提升了检测精度。在FPN的基础上,Mask R-CNN扩展了一个Mask预测器,在检测边界框的同时完成像素级物体分割。在单步法方面,YOLO将目标检测问题简化为一个回归问题,不生成候选区域而直接预测边界框和相关的类别概率。SSD借鉴了Faster R-CNN中锚点框(Anchor)的思路,引入了先验框(Prior Box),并通过提取卷积层中不同尺度的特征来进行检测,进一步提升了性能。对于空间目标特征检测与识别任务,目标的分割可以为后续的轮廓提取、三维重建等任务打下良好基础,因此本文以Mask R-CNN框架为基础进行扩展改进,完成空间目标特征检测与识别。
![]() |
Download:
|
图 1 两类目标检测方法结构 Fig. 1 Two types of target detection method structures |
传统的Mask R-CNN的算法流程如图2所示。虚线框内的部分与Faster R-CNN基本相同,区别在于将ROI Pooling替换为ROI Align,通过双线性插值的方法去掉池化层中的量化过程,保证了输入像素和输出像素的一一对应,便于Mask分支进行像素级分割。虚线框外是Mask分支,利用全卷积网络(FCN)得到分割图。
![]() |
Download:
|
图 2 Mask R-CNN算法框架 Fig. 2 Structure of Mask R-CNN |
一般来说,与单步法相比,两步法的检测精度更高,但检测速度略低。空间环境下的检测任务对精度和速度要求都很高,因此本文通过改进Mask R-CNN结构,来提升检测速度。Li等[26]提出了一种头部轻量化区域卷积神经网络Light-head R-CNN,通过优化网络“头部”来提升检测速度。此处的网络“头部”指两步法中的第二阶段,即生成候选区域后的检测识别部分。Faster R-CNN在生成候选区域后,每个ROI都需要独立送入后续网络中进行检测,特征无法共享,因而非常耗时。同时,对ROI的分类和回归利用了两个大型全连接层,其参数数量巨大,不但拖慢了训练和检测速度,还会对硬件资源造成较大损耗。一般来讲,网络越深,其具有的平移旋转不变性越强,对于分类任务来说,其目标所在的位置对结果不造成影响,因而是位置不敏感的,所以较深的网络对分类有积极意义。然而对于检测任务,需要对目标的位置有良好的感知能力。对于ResNet这种深层网络,要适应于检测任务,就需要做出一些让步,最直观的方式就是将RPN提前,插在网络的中间靠后位置。这样做虽然一定程度地减轻了位置敏感性带来的影响,但增大了后端的计算量(因为每个ROI需要单独经过多层卷积网络),降低了算法速度。Light-head R-CNN的主体跟前述的R-FCN结构类似,通过引入位置敏感得分图(position-sensitive score maps)完成了ROIs特征的共享,位置敏感得分图解决了“分类网络的位置不敏感性(translation-invariance in image classification)”与“检测网络的位置敏感性(translation-variance in object detection)”之间的矛盾,同时网络的全卷积结构能够共享特征从而削减参数,在提升检测精度的同时大大提升检测速度。然而位置敏感得分图的维度与待检测目标的类别成正比,当类别数很大时,得分图维度庞大依然会严重影响网络的检测速度。因此Light-head R-CNN又提出了将位置得分图压缩成窄特征图(thin feature maps),即将原来的C×P×P维度的特征图压薄为10×P×P,但对于空间目标检测任务来说,待检测特征类别较少(太阳帆板、对接环等),因此基于R-FCN进行改进即可。综上所述,传统方法和改进方法的“头部”结构对比如图3所示。
![]() |
Download:
|
图 3 改进前后的Mask R-CNN头部结构对比 Fig. 3 Comparison of Mask R-CNN before and after improvement |
大量的训练数据是深度学习方法的基础,但对于空间目标,其样本数据集的构建比较困难,主要原因有:
1)空间目标图像难以获取,且针对同一目标,其尺度、姿态、工况场景(例如拍摄角度、距离、光照等)不同时,特征也会随之改变,数据集中必须包含同一目标不同尺度、姿态、工况条件下的图像,比较难收集;
2)对于大量样本数据,标注过程较为复杂,特别是对于目标分割任务,如果采用传统标注工具进行标注,需要将抓捕部位的轮廓圈出来,标注点较多,极其耗费时间精力。
为了解决这些问题,本文利用3dsMax生成卫星模型,并对特征部位进行着色,置入Unity虚拟场景,通过编程模拟卫星和相机的运动并进行图像采集,同时生成不同尺度、姿态、工况条件下着色模型和原有模型投射的二维图像。通过着色模型产生特征部位的标签,作为未着色模型的标签信息,生成符合训练要求的数据集。
3dsMax软件能为3D模型添加纹理并且能够进行格式转换,利用3dsMax对卫星各主要部件添加了纹理,如图4所示,并且转换为FBX格式,导入到Unity中。Unity平台可以将导入的目标文件作为GameObject对象,通过设置光照、改变相机和卫星参数方式模拟各种工况环境,编写C#脚本控制相机和卫星的相对运动并进行图像采集。Unity和3dsMax界面如图4所示。
![]() |
Download:
|
图 4 Unity和3dsMax界面 Fig. 4 Interfaces of Unity and 3ds Max |
采用3dsMax引入卫星3D模型并添加纹理,之后将目标卫星三维模型接入到虚拟环境中,设置虚拟相机的位置和运动规律,设置卫星位置和运动规律,根据所设置的相机及卫星位置记录坐标,并获得该视角下所对应卫星图像(作为样本来源),如图5所示。根据着色模型,利用传统图像滤波和腐蚀、膨胀、填充等方法,提取出待识别部位掩膜,从而生成样本标签。检测框和掩膜提取如图6所示。
![]() |
Download:
|
图 5 虚拟环境下生成样本数据 Fig. 5 Sample data from the virtual environment |
![]() |
Download:
|
图 6 检测框和掩膜提取 Fig. 6 Detection frame and mask extraction |
利用上述虚拟环境,在随机光源条件下,模拟“卫星静止,相机绕行并接近”、“卫星自转,相机绕行并接近”两种工况,生成18381张样本,并以8∶2的比例将样本划分为训练集和验证集。为便于后续的训练、验证和可视化,将数据集转换为COCO格式,部分样本可视化如图7所示。
![]() |
Download:
|
图 7 样本数据可视化 Fig. 7 Visualization of sample data |
针对实际任务场景,虚拟环境的搭建与上述过程类似,为了充分学习待识别目标特征,可以引入更多种类的空间飞行器模型,制作更加完备的空间目标数据集。或者针对特定的待识别目标,训练专门的识别网络,通过将网络参数上传至星上设备,即可灵活实现目标的特征检测与识别任务。
4 实验结果及分析本文使用Facebook AI研究院推出的基于Pytorch的Detectron2目标检测平台进行扩展和改进,该平台上有丰富的基础网络和预训练模型。本文使用Resnet-50-FPN作为基础网络,使用COCO预训练模型进行参数初始化,通过迁移学习避免重新训练花费大量时间。实验使用的服务器配置如表1所示。
![]() |
表 1 服务器软硬件配置 Tab.1 Server configuration |
在上述服务器上对网络进行训练,每个Mini-batch的大小为8,学习率初始为0.00002,每训练20次增长0.00002,直到增长为0.001,共迭代训练20000次。训练过程中损失函数变化情况如图8所示,可以看到网络的收敛情况较好。
![]() |
Download:
|
图 8
|
在验证集上进行推断验证,采用COCO目标检测比赛中的模型评价指标,可以得到如表2所示的验证结果。从评价指标来看,网络的训练与检测效果较好。
![]() |
表 2 网络验证结果 Tab.2 Experimental results |
对验证集中的推断结果进行可视化,选取不同尺度、不同状态的部分结果如图9所示。从可视化效果来看,检测框准确,分割较完整,成功实现了目标特征部位的识别与分割。实验的最终目的是验证这套系统和算法在实际空间目标特征识别与检测任务中的有效性,因此,接下来选取了美国诺格公司发布的Mev在轨采集的卫星图像,以验证网络是否能够迁移到实际场景。原图和实验结果如图10所示。
![]() |
Download:
|
图 9 验证集图像检测结果 Fig. 9 Detection results of the validation set |
![]() |
Download:
|
图 10 Mev在轨采集图像检测结果 Fig. 10 Detection results of the Mev on-orbit satellite |
为验证改进算法的效果,用传统的Mask R-CNN在相同的服务器配置、软件环境、超参数设置下进行训练并推断验证,两种算法的指标对比如表3所示。
![]() |
表 3 改进的Mask R-CNN与传统的Mask R-CNN对比 Tab.3 Comparison of improved Mask R-CNN to traditional Mask R-CNN |
从指标结果来看,两种算法的精度差别不大,改进的算法在检测大目标时较优于传统算法,而传统算法更擅长检测小目标。在速度方面,改进算法要显著优于传统算法,提升了20%,能够满足对于改进算法的预期。检测速度的提升主要有两点原因:一是引入位置敏感得分图后将网络转化为了全卷积结构,大大缩减了网络参数规模;二是使后续的检测网络共享RoIs,避免了重复计算。
利用Mev在轨采集的卫星图片对算法的检测效果进行可视化对比,结果如图11所示。对于中间和右侧的图片,传统的Mask R-CNN出现了比较明显的错检结果,将纹理相似的部分判断成了太阳帆板。从此结果中可以推测,在引入位置敏感得分图后,对于每个候选区域,只有当每一个分块区域内都大概率存在着物体相应部位时,才会将其判定为相应类别,因此网络在提取特征时更能考虑到图像的“上下文关系”,从而对于相似特征能进行更好地区分。
![]() |
Download:
|
图 11 改进方法与传统方法结果对比 Fig. 11 Comparison between the two methods |
本文将深度学习方法Mask R-CNN应用于空间目标特征检测与识别任务,借鉴R-FCN和Light-head R-CNN的思想对Mask R-CNN进行改进,通过引入位置敏感得分图完成ROIs的特征共享,减轻网络“头部”,提升检测速度。实验表明,改进的Mask R-CNN在检测速度上已经有了明显提升。针对深度神经网络训练需求,本文提出了通过搭建虚拟环境采集样本构建数据集的方法,实验表明,在“虚拟”数据集中训练得到的网络,可以迁移应用到实际场景中。
[1] |
PENG Jianqing, XU Wenfu, YUAN Han. An efficient pose measurement method of a space non-cooperative target based on stereo vision[J]. IEEE access, 2017, 5: 22344-22362. DOI:10.1109/ACCESS.2017.2759798 (![]() |
[2] |
梁斌, 杜晓东, 李成, 等. 空间机器人非合作航天器在轨服务研究进展[J]. 机器人, 2012, 34(2): 242-256. LIANG Bin, DU Xiaodong, LI Cheng, et al. Advances in space robot on-orbit servicing for non-cooperative spacecraft[J]. Robot, 2012, 34(2): 242-256. DOI:10.3724/SP.J.1218.2012.00242 ( ![]() |
[3] |
郝颖明, 付双飞, 范晓鹏, 等. 面向空间机械臂在轨服务操作的视觉感知技术[J]. 无人系统技术, 2018, 1(1): 54-65. HAO Yingming, FU Shuangfei, FAN Xiaopeng, et al. Vision perception technology for space manipulator on-orbit service operations[J]. Unmanned systems technology, 2018, 1(1): 54-65. ( ![]() |
[4] |
WANG Ning, YANG Chenguang, LYU M R, et al. An EMG enhanced impedance and force control framework for telerobot operation in space[C]//Proceedings of 2014 IEEE Aerospace Conference. Big Sky, MT, USA, 2014: 1−10.
(![]() |
[5] |
ITOH T, YUDATE K, ITO S, et al. New predictive display method of motion and force information for network teleoperation without using virtual environment model[C]//Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003). Las Vegas, NV, USA, 2003: 2815−2822.
(![]() |
[6] |
SAHBANI A, El-KHOURY S, BIDAUD P. An overview of 3D object grasp synthesis algorithms[J]. Robotics and autonomous systems, 2012, 60(3): 326-336. DOI:10.1016/j.robot.2011.07.016 (![]() |
[7] |
KAMON I, FLASH T, EDELMAN S. Learning to grasp using visual information[C]//Proceedings of IEEE International Conference on Robotics and Automation. Minneapolis, USA, 1996: 2470−2476.
(![]() |
[8] |
MORALES A, CHINELLATO E, FAGG A H, et al. Using experience for assessing grasp reliability[J]. International journal of humanoid robotics, 2004, 1(4): 671-691. DOI:10.1142/S0219843604000290 (![]() |
[9] |
HERZOG A, PASTOR P, KALAKRISHNAN M, et al. Template-based learning of grasp selection[C]//Proceedings of 2012 IEEE International Conference on Robotics and Automation. Saint Paul, USA, 2012: 2379−2384.
(![]() |
[10] |
KROEMER O, UGUR E, OZTOP E, et al. A kernel-based approach to direct action perception[C]//Proceedings of 2012 IEEE International Conference on Robotics and Automation. Saint Paul, USA, 2012: 2605−2610.
(![]() |
[11] |
BOHG J, MORALES A, ASFOUR T, et al. Data-driven grasp synthesis—a survey[J]. IEEE transactions on robotics, 2014, 30(2): 289-309. DOI:10.1109/TRO.2013.2289018 (![]() |
[12] |
EL-KHOURY S, SAHBANI A. Handling objects by their handles[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Nice, France, 2008: 58−64.
(![]() |
[13] |
PELOSSOF R, MILLER A, ALLEN P, et al. An SVM learning approach to robotic grasping[C]//Proceedings of 2014 IEEE International Conference on Robotics and Automation. New Orleans, USA, 2004: 3512−3518.
(![]() |
[14] |
BOULARIAS A, KROEMER O, PETERS J. Learning robot grasping from 3-D images with Markov Random Fields[C]//Proceedings of 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems. San Francisco, USA, 2011: 1548−1553.
(![]() |
[15] |
SAXENA A, DRIEMEYER J, NG A Y. Robotic grasping of novel objects using vision[J]. The international journal of robotics research, 2008, 27(2): 157-173. DOI:10.1177/0278364907087172 (![]() |
[16] |
HE Kaiming, GKIOXARI G, DOLLAR P, et al. Mask R-CNN[C]//Proceedings of 2017 IEEE International Conference on Computer Vision (ICCV). Venice, Italy, 2017: 2980−2988.
(![]() |
[17] |
GIRSHICK R, DONAHUE J, DARRELL T, et al. Region-based convolutional networks for accurate object detection and segmentation[J]. IEEE transactions on pattern analysis and machine intelligence, 2016, 38(1): 142-158. DOI:10.1109/TPAMI.2015.2437384 (![]() |
[18] |
GIRSHICK R. Fast R-CNN[C]//Proceedings of 2015 IEEE International Conference on Computer Vision. Santiago, Chile, 2015: 1440−1448.
(![]() |
[19] |
REN Shaoqing, HE Kaiming, GIRSHICK R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE transactions on pattern analysis and machine intelligence, 2017, 39(6): 1137-1149. DOI:10.1109/TPAMI.2016.2577031 (![]() |
[20] |
REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real-time object detection[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas, USA, 2016: 779−788.
(![]() |
[21] |
LIU Wei, ANGUELOV D, ERHAN D, et al. SSD: single shot multiBox detector[C]//Proceedings of the 14th European Conference Computer Vision. Amsterdam, The Netherlands, 2016: 21−37.
(![]() |
[22] |
ARBELÁEZ P, PONT-TUSET J, BARRON J, et al. Multiscale combinatorial grouping[C]//Proceedings of 2014 IEEE Conference on Computer Vision and Pattern Recognition. Columbus, USA, 2014: 328−335.
(![]() |
[23] |
UIJLINGS J R R, VAN DE SANDE K E A, GEVERS T, et al. Selective search for object recognition[J]. International journal of computer vision, 2013, 104(2): 154-171. DOI:10.1007/s11263-013-0620-5 (![]() |
[24] |
DAI Jifeng, LI Yi, HE Kaiming, et al. R-FCN: object detection via region-based fully convolutional networks[C]//Proceedings of the 30th International Conference on Neural Information Processing Systems. Barcelona, Spain, 2016: 379−387.
(![]() |
[25] |
LIN T Y, DOLLÁR P, GIRSHICK R, et al. Feature pyramid networks for object detection[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Honolulu, USA, 2017: 936−944.
(![]() |
[26] |
LI Zeming, PENG Chao, YU Gang, et al. Light-Head R-CNN: in defense of two-stage object detector[DB/OL]//https://arxiv.org/abs/1711.07264, 2017-11-20/2017-11-23.
(![]() |