无人机自主目标识别与定位应用研究
2021-06-02吴贤吕智虎
, ,,吴贤,吕智虎
(空军工程大学 空管领航学院 陕西省电子信息系统综合集成重点实验室,西安 710051)
0 引言
无人机凭借着其战损小、机动性高、隐蔽性强等特点正逐步发展成为现代军事战争中重要的空基武器平台[1-2]。美军在其2016年发布的《小型无人机系统飞行规划:2016-2036年》中明确指出要增加对小型侦察无人机开发的投资,防止对手利用能够执行大量侦察任务的小型无人机系统制造与美军的差距[3-4]。目标识别是无人机遂行打击、毁伤评估等后续任务的前提条件和基础,具有重要的研究意义。
近年来,深度学习理论和计算机硬件的飞速发展,极大提升了图像目标识别与分类的速度和准确度[5],同时也为侦察无人机自主目标识别任务提供了新的解决方案。目前,目标检测领域的深度学习算法主要分为一阶段(one-stage)算法和二阶段(two-stage)算法[6-11],前者以YOLO系列算法为代表,具有网络结构简单、识别速度快的优点,主要应用于对实时性要求较高的场合,比如自动驾驶、机械臂等。后者以RCNN系列算法为代表,通过候选框提取、框分类与回归两个阶段的算法获得了更高的准确度,更多地应用在对检测速度要求不高的高精度检测领域。在二阶段检测算法中,Faster RCNN算法作为RCNN系列中的第三代算法,是目前对于各类数据集检测精度最高的算法[12],被广泛地应用到了包括卫星遥感、航拍图像等诸多领域。
针对无人机自主侦察任务中在线目标识别与定位的需求,本文提出了一种基于改进Faster RCNN算法的无人机自主识别与定位的方法。首先对无人机侦察过程中的多张图像进行实时目标识别,进而通过特征提取、图像拼接获得全局侦察图像,然后通过像素距离比和欧氏距离求出侦察图像中目标的相对位置,最终输出含有关键目标类别、位置、相对距离的战场态势图。
1 侦察识别相关研究
侦察无人机主要配备合成孔径雷达(SAR)、红外或可见光相机等设备完成环境侦察、监视和毁伤评估等任务[13]。目标识别是侦察无人机有效完成上述各项任务的关键内容,目前针对上述侦察设备的目标识别方法主要如下:
基于SAR的目标识别方法主要包括特征提取和分类器设计两部分[14-15]。此方法首先利用SAR主动探测获得目标遥感图像,在此基础上采用主成分分析法(PCA)、线性鉴别分析(LDA)等方法提取目标的几何特征,进而使用K近邻分类(KNN)、支持向量机(SVM)等分类器进行分类,最终实现SAR图像的目标识别。
基于红外或可见光相机的目标识别方法主要包括图像去噪、形态学滤波、特征提取、特征匹配等步骤。首先通过强度归一化、小波变换去噪等方法对图像进行预处理,然后通过sobel算子等形态学操作提取图像边缘,最终采用神经网络等方法进行目标识别[16-17]。
综上所述,现有目标识别方法可以概括为图像预处理、特征提取、特征分类三部分。其中,传统目标识别算法中通常采用人工选定的特征子进行特征提取,此类方法存在计算量较大、鲁棒性差等问题。近年来卷积神经网络(CNN)的出现为图像中的特征提取提供了新的解决方法,这些方法的有效性已经在ImageNet Large-Scale Visual Recognition Challenge(ILSVC)等比赛中得到充分验证,被广泛应用于各种场合下的目标检测与识别任务中。
2 自主侦察关键技术
从侦察无人机的任务需求和使用经验来看,我们将无人机自主侦察任务的关键技术分为目标识别、图像拼接、目标定位三部分。为有效识别航拍图像中目标,本文依据航拍图像分辨率较高、目标像素尺寸较小等特点对Faster RCNN网络结构进行了适当修改,在此基础上选用SURF算法进行图像拼接以获得侦察区域全局图像,之后提出目标定位算法在侦察全景图上标示出了目标之间的相对距离,最终获得包含目标类别与位置信息的任务区域全局态势图。
2.1 基于Faster R-CNN的目标识别
目前RCNN系列目标算法已经更新到第四代。最初的RCNN算法采用AlexNet进行图像特征提取,在2012年的ILSVRC中夺冠并取得了远超传统目标识别算法的准确率。它的主要思想是先在图像上使用滑窗方法得到约2 000个候选框,然后采用卷积神经网络和支持向量机进行特征提取与分类,最后采用全连接网络进行目标框的回归预测。在此基础上,Fast RCNN引用了SPP Net的思想,先对图像进行卷积,再将原图中的候选区域直接映射到原图像卷积后的特征图上,同时采用池化操作替代了RCNN中的图像尺寸压缩操作,此外还将目标分类与目标框回归的损失函数设计到一个损失函数中,使模型的速度和mAP(Mean average precision,平均准确度)都有了较大提升。
Fast RCNN的出现也暴露出二阶段目标检测网络中基于滑窗生成候选框的方式严重制约了网络训练和检测速度[18]。因此,Faster RCNN提出了区域建议网络(Region proposal network,RPN),将原图像经过卷积后的特征图作为锚点映射回原图像,并在每个锚点上生成金字塔形的候选框,并设计相应的损失函数对这些候选框进行筛选,进而通过CNN实现候选框的分类和回归,有效提升了网络的性能。Mask RCNN在此基础上增加了图像分割的内容,但其对硬件性能有更高的要求且识别速度慢于Faster RCNN。图1是Faster RCNN算法相对其它算法的目标检测性能,可以看出在小目标检测领域,Faster RCNN具有明显优势。
图1 Faster RCNN与其他主流算法检测性[23]
本文所用Faster RCNN模型基于tensorflow2.0框架搭建,为完成对于特定类别目标的识别与定位,需对文献[7]中Faster RCNN的网络结构做出修改,改进后的Faster RCNN的网络结构如图2,首先由RPN对原图像进行候选框提议,然后在Proposal层中通过已标定数据对IOU大于0.7的候选框进行粗修正,之后在Detection target层中对原图像进行ROI pooling操作,即将不同尺寸的候选框大小统一到7×7,最后由全连接网络对统一后的候选框进行分类、回归。其中RPN是Faster RCNN性能卓越的关键内容。
图2 改进Faster RCNN结构示意图
针对侦察任务中航拍图像特点,我们改进Faster RCNN的工作如下。
(1)RPN主干网络修改:
原始Faster RCNN中RPN采用ZF、VGG-16等网络,能够接受的输入为长宽均为600到1 000的图像[10]。而航拍图像分辨率较高,通常无法满足这一要求。此外,由于航拍图像中目标尺寸较小,为充分提取图像特征,我们没有对原图像进行压缩操作,而是通过池化操作将原图像尺寸下采样到352×352作为网络输入,同时选用了能够更好提取语义信息的Inception-v2网络,并迁移了其在Imagenet数据集上的训练权重。
(2)锚框尺度、比例与数量:
原始Faster RCNN中使用了尺度为8、16、32,比例为2:1、1:1、1:2的9种锚框[7]。由于无人机航拍图像中目标尺寸较小,我们选取了6、12、24三种尺度。此外,由于我们要识别的3种目标长宽比分别近似于1:0.9、1:0.7、1:0.6,因此我们根据先验知识采用了比例为0.75:1、1:1、1:0.75的3种锚框。
(3)全连接层输出节点:
我们将原网络中全连接网络最后一层的90种输出改变为4种输出,分别为tank、plane、ship、backgroud,对于前3种目标,分别使用黄色、紫色、蓝色方框进行了标注。
2.2 基于SURF算法的图像拼接
获取任务区域全局态势图是无人机自主侦察任务的重要内容,但无人机侦察过程中受高度和光学传感器性能限制,往往需对多次采集的图像进行拼接才能完成这一任务。图像拼接技术主要流程是:图像预处理、图像配准、图像融合,其中图像配准是完成图像拼接任务的关键[19-20]。
目前的图像配准技术主要包括基于区域的图像配准和基于特征的图像配准两种方法。前者包括全局搜索法、模板匹配法等,通常计算量较大。后者包括Harris角点检测算法、尺度不变特征变换(scale-invariant feature transform,SIFT)算法、加速鲁棒特征(Speeded-Up Robust Features,SURF)算法、ORB算法等。其中SURF算法对平移、旋转、尺度缩放和光照不均都有很好的适应性,计算速度较快,被广泛应用于各种图像拼接场合[21]。
由于SURF算法已在openCV中集成,其实现细节不再赘述,在无人机自主侦察中的应用效果如图3。
图3 基于SURF算法的特征选取与拼接
2.3 基于欧氏距离的目标定位算法
无人机自主侦察任务中,获取关键目标相对位置对后续行动决策具有重要意义。本节针对此问题提出了基于欧氏距离的解决方法,该方法在获得无人机侦察全局图像的基础上,以图像中重要目标的几何中心为原点(x0,y0)建立图4图像坐标系,同时设任务区域中任一目标位置像素点的坐标为(x1,y1),则该目标到原点的欧氏距离L可由(1)式得出:
(1)
其中:(x1,y1)为Faster RCNN网络输出数据。此外,通过相机标定的方式可以测得机载云台采集图像的像素距离比ε,最终可以得到图像中任一目标距重要目标的距离R为:
(2)
图4 图像坐标系中目标相对位置
3 试验结果与分析
3.1 Faster RCNN数据集
采用深度学习方法完成侦察任务中的目标识别,首先需要制作有效的数据集对所改进网络进行预训练。相较于一阶段目标检测网络,二阶段网络具有更多的参数,因而需要更大的数据集才能避免过拟合。为此我们使用无人机采取了300余张含坦克模型、飞机模型、军舰模型3种识别目标在内的航拍图像,同时采用仿射变换、形态学操作等方法进行数据集增强,得到约3 000张训练图像,然后使用labelimg软件进行图像标注,标注文件中含目标像素位置、类别两类用于训练的信息:
[x,y,width,height,class]
(3)
3.2 目标识别模型训练结果
文献[7]给出了Faster RCNN训练的3种方式,每种方式各有优劣。本文采用近似联合训练方法和迁移学习方法,在VOC2007数据集预训练权重基础上将RPN权重和后续全连接网络权重一起训练,使用配备Nvidia 2080ti的计算机进行50万次训练,训练结果达到84.5%的准确率和85.0%的召回率。此外,我们对原始Faster RCNN网络进行了完全相同的训练,训练结果达到78.6%的准确率和78.8%的召回率。可以看出,改进工作使目标识别准确率和召回率分别提高了5.9%和6.2%,这主要得益于根据先验知识选取了相应尺寸的锚框以及Inception网络能够提取丰富语义信息的优点。
3.3 目标定位试验结果
在完成网络训练与检测的基础上,我们根据侦察任务需求设计了无人机自主侦察室外试验,试验流程如图5。首先,机载计算机在接收地面计算机发出的起飞指令后,自检确认无误后起飞。其次,根据预设飞行航线进行侦察飞行,侦察飞行过程中在预设航点上空悬停采图。然后,将图像数据实时传输到地面端的图像计算机中进行图像处理。最后,无人机将图像实时传送至地面端,由地面端图像处理计算机进行目标检测,在图像处理计算机捕获着陆区信号后,向控制计算机发送着陆指令及无人机到着陆区的距离误差,无人机机载计算机在获取地面控制计算机的指令后,对100 m×50 m的侦察区域进行在线侦察识别,得到侦察结果如图6。其中圆心为想定重要目标,识别结果如表1,达到83.3%的召回率且无错误识别,定位结果如表2,平均定位精度为0.702 m。
图5 侦察无人机室外试验流程
图6 侦察结果
表1 目标识别结果
表2 目标定位结果
4 结束语
本文针对无人机自主侦察过程中目标识别、图像拼接、目标定位的任务需求,通过改进深度学习目标检测算法、选用图像拼接算法、提出目标定位算法予以解决,编写程序并建立了完整的试验流程对本文设计的自主侦察方法进行验证。
试验结果证明,本文所设计的无人机自主侦察方法达到了83.3%的识别准确度和0.702 m的定位精确度,能够有效完成无人机自主侦察任务,满足自主侦察无人机预期设计要求。
但对于面积较大的任务区域,单架无人机通常无法很好地胜任,通过多机协同提高无人机侦察效率将是下一步研究工作的重点[22-26]。