基于视觉的无人机板载自主实时精确着陆系统

2021-10-15 10:08:46饶颖露邢金昊马晓静马思乐
计算机工程 2021年10期
关键词:标志处理器卷积

饶颖露,邢金昊,张 恒,马晓静,马思乐

(山东大学 海洋研究院,山东 青岛 266237)

0 概述

随着无人机行业的发展,无人机应用产生了越来越多的新需求,例如快递自动定点投送物品、自动定点检查输电线路异常等。这些需求对无人机自动精准降落技术提出了新的挑战。无人机自动精准降落是飞行任务中最关键的阶段之一,实现无人机精确着陆对完成飞行任务、保障飞行安全具有重要意义。

无人机自主精确着陆主要有2 种方法:视觉处理着陆和卫星导航着陆[1-3]。卫星导航着陆适合长时间飞行任务但其容易受环境影响,且精度较低,需要多种复杂传感器配合[4]。此外,卫星导航在GPS/GNSS 拒绝区域系统下将无法工作,因此该应用一般情况下适合作为二次支撑。

无人机视觉引导降落只需要搭载摄像头这一单一传感器作业,易于与多种无人机系统集成,结合图像算法可以实现高精度实时降落。无人机视觉自主精准降落中常用的检测方法[5-7]有图像匹配法[8]、轮廓检测法[9]、滤波算法[10-11]等。李会敏等[12]采用双目视觉探测无人机特征点并进行特征立体匹配以计算无人机位置,该方法实时性好,但仅能在仿真环境下使用,实际使用时还需要考虑复杂环境下无人机降落的匹配效果。高嘉瑜等[13]采用AprilTag 二维码引导无人机着陆搭建虚拟场景仿真,该方法参数误差低,但容易受到环境变化的影响。洪亮等[14]采用模糊预测同步视觉预测数据,提高卡尔曼滤波对无人机位姿估计的实时性,速度快但精度较低。以上传统的图像处理算法性能受成像环境的影响很大,很难正确提取所需目标,在面对光照变换、尺度变换、遮挡、复杂背景等环境变换问题时,算法性能会显著下降,难以满足无人机自主精准降落的实际需求。因此,考虑将适用性更好、泛化能力更强的深度学习方法引入到无人机视觉自主精准降落的过程中,进一步提高速度,解决环境干扰问题。

无人机的自主精准降落算法需要移植到无人机板载平台运行,但由于板载平台的计算能力和内存资源有限,当把图像算法模型应用于嵌入式平台时,目标检测速度会明显下降。此外,降落过程中容易受到风力等外界因素干扰,因此要求模型检测速度快,能够实时更新降落坐标。传统图像处理方法泛化能力差,难以应对降落过程中各种环境干扰。

针对上述问题,本文通过改进YOLOV3 网络,引入可分离卷积和注意力机制,将深度学习引入无人机自主精准降落,设计一种针对无人机板载系统的轻量化深度学习目标检测模型Onboard-YOLO,并对其性能进行评估实验,以实现无人机板载端实时准确的自主精准降落,应对降落过程中的复杂环境变化问题。

1 Onboard-YOLO 模型原理

YOLOV3 网络结构由特征提取网络DarkNet53和多尺度分类回归网络组成,Onboard-YOLO 是基于YOLOV3 网络提出的适用于无人机板载处理器的轻量级高精度实时检测网络。YOLOV3 采用的DarkNet53 特征提取网络参数量较大,不适用于板载处理器,因此需要对特征提取网络进行改进。

简化特征提取网络可以有效地提高检测速度,但也会带来无法提取高层次语义特征的问题,使检测精度无法满足实际需求。因此,本文主要对特征提取网络和多尺度回归网络进行改进。

Tiny-YOLOV3[17]是YOLOV3 的简化版本,其特征提取网络结构非常简单,只有2 个尺度,7 个卷积层和6 个池化层,虽然有效提高了计算速度,但难以实现高精度的目标检测。但是,可以参考Tiny-YOLOV3 的设计思路,将YOLOV3 的3 个尺度简化为2 个尺度,一方面可以保证语义信息和分辨率信息的有效提取,另一方面也可以提高检测速度。

此外,采用MobileNets[20]代替YOLOV3 的骨干网络,可提高骨干网络特征提取能力,采用可分离卷积可有效减少参数数量和计算复杂度。深度可分离卷积将传统卷积分成了深度卷积和点对点卷积,如图1 所示。

图1 可分离卷积模型Fig.1 Separable convolution model

假设输入图片尺寸是DF*DF*M,标准卷积尺寸是DK*DK*M*N,M是通道数,N是卷积核数。当采用标准卷积核时,输出尺寸是DF*DF*N。计算量是DK*DK*M*N*DF*DF。采用可分离卷积后为DK*DK*M*DF*DF+M*N*DF*DF,可分离卷积和传统卷积的计算量对比如式(1)所示:

在执行深度卷积时,每个卷积内核仅关注单个通道信息,而在逐点卷积中,每个卷积内核可以组合来自多个通道的信息,使用深度可分离卷积代替传统卷积可以有效地减少计算量并优化模型大小。另一方面,它可以确保模型的深度增加并且减小复杂度,从而有效地平衡精度和操作速度。

经强度计算分析、典型件试验以及车体静强度试验,验证了复合材料车体承载结构的可靠性,其满足地铁车体各项性能指标要求。同时,车体各项性能得到较大提升:车体质量较同类地铁金属车体减少约35%;车体抗疲劳和耐腐蚀性能得到提升,且使用寿命不低于30 a;车体隔热性能优异,能承担车辆防寒材一半以上性能;车体隔声性能优异,达到车辆隔声要求的70%以上;车体振动的固有频率较同类金属车体提高18%以上;车体尺寸精度和外观质量优于传统金属车体。

通过SE-Block[21]引入注意力机制使其能自动学习每个通道特征的权重,该模块的核心思想是学习特征权重,增加有效特征权重,从而增强网络的特征提取能力,并在需要较少额外计算成本的情况下,显著改善网络结构的性能。注意力机制模型基本结构如图2 所示。

图2 注意力机制模型Fig.2 Attention mechanism model

SE-Block 首先通过标准卷积将X∊ℝH'×W'×C'转 为U∊ℝH×W×C。然后通过压缩、权重激活、权重分配得到学习后的网络。压缩操作Fsq压缩全局空间信息以获得单个通道描述符,使用全局平均池化生成每个通道的统计信息Zc。全局平均池化通过压缩空间特征图得以实现,计算公式如式(2)所示:

其中:H×W描述输入特征的大小;Uc(i,j)表示相应特征图中相应位置的特征值。激活操作主要通过2 个全连接层完成。第1 层实现特征图的压缩并减少计算量。将ReLU 层添加到2 个全连接层中,使通道之间的非线性关系得以学习。第2 个全连接层将特征图恢复到原始通道数,并通过Sigmoid 函数进行归一化以获得最终特征图重要性描述因子S。计算公式如式(3)所示:

其中:δ表示激活函数ReLU,确保输出为正;W1和W2是2 个全连接层,权重分配是指通过乘法将S逐个权重进入特征通道,以完成原始特征的权重分配。计算公式如(4)所示:

其中:Uc代表信道的特性;Sc代表相应信道的权重值,两者相乘即可完成特征的权重分配。Onboard-YOLO 的整体结构如图3 所示。输入图像的大小调整为672 像素×672 像素。SE 块由以下5 层组成:池化层,全连接层,ReLU 层,全连接层和Sigmoid 层,每次可分离卷积后进行SE 块连接。X1和X2是SEMobileNets 的2 个输出尺度特征图。X1是大小为42×42 的第11 个深度可分离卷积的输出。X2是大小为21×21 的第13 个深度可分离卷积的输出。X1和X2是多尺度网络的输入。输出预测Y1为21×21×27,同时,输出预测Y2为42×42×27,并且分别在Y1和Y2比例尺的融合特征图上进行预测。

图3 Onboard-YOLO 结构Fig.3 Onboard-YOLO structure

2 系统设计和实验结果分析

无人机自主精准降落板载系统可以分为图像处理模块和控制模块。图像处理模块工作流程由图像获取和目标检测组成:通过摄像头连续获取分辨率为1 080 像素×720 像素的降落区域图片,图像通过预处理操作后输入检测单元。将检测到的坐标作为控制信息通过串口传输给控制模块,控制模块控制无人机降落到指定位置。

板载端硬件如图4 所示,由无人机、GPS、板载摄像头、板载处理器、远程遥控器等组成。无人机型号选择大疆经纬Matrice100,Matrice100 拥有灵活可靠的特性,适合二次开发。搭载智能嵌入式平台NVIDIA Jetson TX2 构成板载系统,采用256 核NVIDIA Pascal 架构和8 GB 内存,计算速度快、推理能力强、性能强大、外形小巧、节能高效,适合机器人、无人机等智能终端设备。飞控部分控制器选择STM32F407,连接板载处理器和飞控部分。

图4 板载端硬件组成Fig.4 Hardware composition of onboard end

2.1 实验数据集和模型训练

降落标志设计如图5 所示,本文设计了4 种不同的降落标志,标志底轮廓为圆形,采用不同颜色组合进行区分,这样的颜色组合有利于区别标志与地面背景,避免网络误检,标志中心采用三重黑白正方形轮廓。标志结合了颜色特征和形状特征这2 种主流的标志检测特征,便于网络的检测。

图5 降落标志样图Fig.5 Sample drawing of landing sign

数据集由DJI 经纬Matrice100 无人机在不同时间段分别在操场、图书馆、教学楼、室内等7 个不同场景下拍摄。在数据集采集过程中加入降落过程中的5 种不同的环境变化:动态模糊,遮挡,目标出视野,光照变化及尺寸变换。最后对采集好的图片进行以下操作进行数据扩增:使用翻转矩阵分别将图片进行左右、上下翻转,对图片进行不同尺度的仿射变换,对图片进行高斯模糊以进一步提高网络泛化能力。数据集一共有23 550 张图片,每类标志基本保持均匀分布。

由于板载端算力有限,模型训练在电脑端进行,模型测试在板载端进行。电脑端实验模型搭建基于keras 开发框架,实验平台配置为Intel®CoreTMi9-9900K CPU @3.6 GHz,运行内存为16 GB,8 GB Titan XP GPU,系统为Ubuntu 16.04。训练参数设置如下:初始学习率为0.001,权重衰减系数为0.000 5,采用动量为0.9 的动量梯度下降算法。由于数据集较大,为了保障最合适的内存利用率和训练效果,批尺寸参数(Batch Size)选择为32,学习率采用自适应调节策略,当验证集损失经过连续3 个全数据集(Epoch)没有下降时,按10 %比例下调学习率,当验证集损失经过连续10 个全数据集(Epoch)都没有下降时,采用早停法(Early-stoping)防止过拟合停止训练,最终训练至损失函数收敛为1 以内。

2.2 性能评估

为了说明Onboard-YOLO 的改进效果,首先对测试集进行4 种标志的检测效果评估,评估标准采用PR 曲线。PR 曲线是以精准率(precision)和召回率(recall)这2 个为变量做出的曲线。分类标记为是或否,可以得到4 个值:把正例正确地分类为正例,表示为TP(True Positive),把正例错误地分类为负例,表示为FN(False Negative),把负例正确地分类为负例,表示为TN(True Negative),把负例错误地分类为正例,表示为FP(False Positive)。从这4 个值可以得出精准率与召回率,如式(5)和式(6)所示:

一条PR 曲线对应一个阈值,选择阈值为50%对样本进行划分,交并比大于50%被认为是正例,小于50%是负例,以此计算相应的精准率和召回率。这里IOU采用PASCAL VOC 的阈值0.5。mAP的计算公式如下:

图6 是4 种降落标志的PR 曲线图,PR 曲线覆盖的面积代表模型性能。红色曲线代表简化后的YOLO 模型Tiny-YOLOV3 性能,绿色曲线代表简化模型加上可分离卷积之后的性能,蓝色曲线代表简化模型加入注意力机制和可分离卷积之后的效果(彩色效果见《计算机工程》官网HTML 版)。从图6 中可以看出,红色曲线的性能远远低于绿色和蓝色,这说明仅仅对YOLO进行模型简化来提升速度,模型的性能会显著下降。经过计算可以得到Tiny-YOLOV3 模型的mAP 值为0.690,在板载处理器TX2 上处理速度为18.1 frame/s,模型大小为34.8 MB。

图6 PR 性能对比曲线Fig.6 PR-Performance comparison curve

绿色曲线为加入了MobileNets 以后的模型效果,此时mAP 值计算为0.865,可以看出将Tiny-YOLO 的backbone 替换为MobileNets,采用可分离卷积之后模型准确率显著上升25.4%,且参数量减少为18.3 MB,速度提升为18.6 frame/s。蓝色曲线为加入了注意力机制以后的Onboard-YOLO,蓝色曲线的面积大于绿色,说明Onboard-YOLO 在4 种标志上都能够达到比较好的检测准确度。Onboard-YOLO 加入注意力机制后,准确度进一步提升了5.2%,此时mAP 为0.910。由于加入了SE 模块,模型运算时间增加,速度下降了1.6%,能够在TX2 上达到18.3 frame/s 的速度;模型大小增加了9.8%,为20.1 MB,能够满足无人自主精准降落的要求。

为了检测Onboard-YOLO 的性能,本文进一步将其与行业领先的检测算法进行对比,在建立的无人机降落数据库上检测,性能指标采用平均准确率(mAP)、速度和模型尺寸3 个指标。从表1 可知,和YOLOV3 相比,Onboard-YOLO 计算速度显著上升,尤其是在板载处理器上,帧率增加了4.3 倍,但平均准确率非常接近,均能达到0.91 以上的准确率。同时,比较了Onboard-YOLO 和两阶段领域领先的检测算法Faster-RCNN,从表1 中可以看出Onboard-YOLO 仅仅降低了2.7%的准确率,速度却增加了25.7 倍,同时模型大小下降了96.2%。进一步将Onboard-YOLO 与常用的轻量级检测模型MobileNets-SSD 进行比较,发现Onboard-YOLO 准确率提升了8.9%、速度提升了2.5 倍。从以上数据分析可知道,Onboard-YOLO 能够很好地平衡准确率和速度,非常适用于板载系统无人机自主精准降落研究。

表1 检测模型性能对比Table 1 Performance comparison of detection model

将表1 中实时轻量级算法(帧率≥5 frame/s)Onboard-YOLO、Tiny-YOLO 及MobileNets-SSD 分别在以下5 种环境中进行测试,图7 是测试结果,最左侧为实际测试图片,其余3 列为局部图像放大效果。图7(a)为无人机降落过程中受气流影响的标志运动模糊下的检测情况,图7(b)为人为对标志进行遮挡时的检测情况,图7(c)为无人机降落过程中标志超出无人机视野的检测情况,图7(d)为标志在不同光照条件下的检测情况,图7(e)为无人机降落过程中标志尺度变化的检测情况。蓝色为标定框,绿色为检测框,红色为误检(彩色效果见《计算机工程》官网HTML 版),可以看出在复杂环境变化下Onboard-YOLO 的检测框更加接近真实框大小,检测更为准确。

图7 降落测试结果Fig.7 Landing test results

MobileNets-SSD 在部分场景如遮挡和目标出视野时容易出现漏检情况,Tiny-YOLOV3 的整体检测性能都难以满足实际需求。因此,Onboard-YOLO可以平衡好速度和精度,满足无人机自主精准降落需求。

2.3 实际降落测试

为了测试算法在实际环境中的性能效果,搭建室内外测试环境,进行实际测试实验。降落流程如图8 所示,实验采用DJI M100 四旋翼无人机,无人机收到起飞指令后,首先由GPS 进行粗定位飞行到达指定降落地点,从距离地面5 m 的高度开启自主精准降落,进行缓慢的飞行移动,并搜寻视野中的降落标志。无人机云台将含有降落标志的图像传送给板载处理器,处理器通过Onboard-YOLO 计算出无人机云台视野中心和降落标志中心相对位置,处理器将位置信息传送给飞控单元调整无人机位置。记录秒内无人机水平飞行的位置信息序列,当序列趋近于收敛并稳定在降落标志中心(位置差阈值设定为10 cm 以内)时,降低飞行高度直到落地,关闭电机完成无人机自主精准降落。在相同的硬件环境下分别进行室内外自主降落实验,每种算法分别开展20 次实验,并将降落评价指标选定为平均降落时间(Average Landing Time,ALT)、平均降落精度(Average Landing Precision,ALP)、降落成功率(Landing Rate,LR),其中ALP 指云台视野中心与降落目标中心欧氏距离。从表2 可以看出,在室外实验时由于风速较大,Faster-RCNN、YOLOv3、MobileNets-SSD 算法帧率过低,容易导致无人机定位频率不足,致使降落时间过长,甚至出现降落位置偏移,最终导致降落失败,LR 较低。Tiny-YOLOv3 虽然帧率较高,但检测准确度低,因此也容易出现降落失败的情况,LR 较低。此外,由于模型检测准确性较低,ALP 值也比较低。Onboard-YOLO 帧率较高,识别准确率高,抗环境变化能力强,在降落时间、降落精度和降落成功率3 个指标上都要优于其他4 种算法,平均自主精准降落成功率可以达到95%以上,平均降落精度可以达到5.55 cm,但本文算法在室外风力大(大于10 m/s)的情况下同样会降落失败。

图8 无人机降落流程Fig.8 Unmaud aerial vehicke landing process

表2 实际飞行验证Table 2 Actual flight verification

3 结束语

本文将深度学习引入无人机自主精准降落,通过加入可分离卷积和注意力机制,提出一种适用于无人机板载处理器的轻量级高精度检测模型Onboard-YOLO。实验结果表明,该模型在TX2 上能够达到18.3 frame/s 的实时处理速度和0.91 的准确率。实验结果表明,该方法能够成功解决降落过程中出现的包括目标尺度变换、运动模糊、遮挡、目标出视野等复杂环境问题,超越目前行业领先标准,实现无人机在板载处理器上95%以上的实时精准自主降落。

猜你喜欢
标志处理器卷积
多功能标志杆的使用
体育教学(2022年4期)2022-05-05 21:26:58
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
电子制作(2019年11期)2019-07-04 00:34:38
认标志
首都的标志是只熊
基于傅里叶域卷积表示的目标跟踪算法
医改进入新阶段的重要标志
中国卫生(2015年10期)2015-11-10 03:14:20
Imagination的ClearCallTM VoIP应用现可支持Cavium的OCTEON® Ⅲ多核处理器
ADI推出新一代SigmaDSP处理器
汽车零部件(2014年1期)2014-09-21 11:41:11
呼噜处理器
小青蛙报(2014年1期)2014-03-21 21:29:39