基于YOLO的人工智能飞机尾涡识别研究
2020-12-16潘卫军段英捷易文豪
潘卫军,段英捷,易文豪,张 强,韩 帅
(中国民用航空飞行学院空中交通管理学院, 四川 广汉 618307)
航空器从起飞离地开始,在爬升、巡航、进近、着陆整个飞行过程中都会形成尾涡,这是由于飞机机翼上下表面压力差产生的,它是飞机升力的一个副产物,是无法避免的。20 世纪70年代初发生了世界上第一起航空器因为遭遇尾涡而失事坠毁的事故,当时遇难飞机跟进一架波音747,在不慎遭遇前机尾涡后因操纵失控发生空难[1]。2001,美国航空公司587航班因遭遇了两次强烈的前机尾涡[2],出现大坡度,又因进入前机尾涡下洗区,尾翼与机身脱落,导致飞机坠毁。2012年9月14日,维珍澳洲(Virgin Australia)一架波音737-800客机在巴厘岛附近遭遇一架空中客车A380的尾流,瞬间导致飞机失控、倾斜,最大左倾角达40°,产生事故症候。因此,为避免进入前机的危险尾涡区域而导致的滚转、失速甚至解体等现象,对于飞机尾涡的识别成为了航空研究中的重点问题。目前对于民航客机的尾涡探测与识别研究,主要包括理论分析、CFD(computational fluid dynamics,CFD)数值模拟和雷达实地探测试验等方法[3]。由于现行实验条件下的飞机模型和真实飞机结构之间存在较大差异,同时,复杂多变的大气环境计算机难以预测和模拟的,因此,基于理论分析和数值模拟的尾涡演化与识别结果更需要与机场实地探测的结果作进一步验证。目前针对飞机尾涡的探测工具较为成熟的是多普勒激光雷达。2001年,Holzapfel F等[4]利用多普勒激光雷达在德国开展了多次机场尾涡实地探测实验,给出了估算尾涡涡流环量的方法。2006年,法国Thales公司使用X波段雷达在巴黎附近某机场进行了民航客机的尾涡探测实验[5]。2008年,Frederic等[6]在法国巴黎机场开展了X波段的激光雷达尾涡探测实验。但是,对于航空器尾涡雷达数据的分析与识别一直是航空工业中的难题。近些年,随着人工智能的火热研究,深度学习(Deep Learning,DE)给激光雷达目标识别研究提供了新的思路。基于此,本文结合多普勒激光雷达探测原理,提出了一种基于深度学习理论的算法,并利用YOLO v3网络提取尾涡图像特征来对尾涡进行检测,以辅助决策塔台空管人员对于机场区域尾流间隔的配备[7]。
1 激光雷达实地探测
1.1 机场区域尾涡探测方式
不同机型飞机所产生的尾涡强度和演化规律不尽相同,因此,选取起降航班架次较多,机型丰富的机场有利于保障所获取的雷达数据的丰富性,同时,多尺度样本也能提高于深度学习模型的泛化能力,进一步提高对于尾涡是别的准确率。
本文选取西南地区日航班起降架次大于1 000的某机场,其中包括B767、B777和A330(重型机),B737、A319和A320以及CRJ200、ERJ190和G650(中型机)以及国产支线客机ARJ21。激光雷达受限于脉冲激光频率和宽度限制,作用距离和分辨率有限,因此激光雷达的安放位置对于数据采集有着极为重要的影响。本文结合机场地形气象条件、跑道运行方式等因素,对特定参数的激光雷达的安装位置进行研究,确定了如图1所示的选址方案,实现对飞机尾涡的多机多点探测。
图1 激光雷达架设位置
实验选取横向探测尾涡方式,即距离高度显示器(Range-Height-Indication,RHI)模式,如图2所示。现场观测时分别将两台Wind3D 6000型激光雷达安放于位置点1、位置点2,同时探测在飞行的不同阶段尾涡的演化情况,位置点3安装辅助测风雷达(如图1所示),探测同一时刻机场区域内的大气风场,确保能准确获得该区域内飞机尾涡及背景风的雷达数据。
图2 激光雷达扫描模式
1.2 尾涡雷达数据分析
尾涡流场的主要特点是旋转稳定、存在时间长,其强度主要由飞机重量、飞行速度和机翼形状所决定。由流体力学的升力线理论[8]可得:
(1)
rc=0.05b0
(2)
(3)
(4)
式(1)~(4)中:b0为两尾涡涡核距离(m);r0为尾涡涡核半径(m); Г0为尾涡初始环量(m2/s);V(r)为尾涡切向速度(m2/s);B为翼展(m);M为飞机最大起飞重量(kg);ρ为当前大气密度(kg/m3);V为飞行重量M下的最大速度(m/s);g为重力加速度常量(m/s2)。
而尾涡环量Г是描述尾涡强度最关键的一个指标。涡量是流体的本质特征,涡量对应于流体微团的自旋,能够从局部来刻画流体的运动。在三维空间中,以飞机的几何重心位置为空间原点,以飞行方向为x轴,以尾流在翼展的运输方向为y轴,以垂直于xoy平面的方向为z轴,可将三维尾涡环量定义为:
(5)
式中:ωx为尾涡的轴向旋度;环量的数学意义即尾涡流体的切向速度沿一条封闭曲线的积分。
激光雷达在RHI模式下能直接得到尾涡的径向速度,由于Hallock-Burnham涡模型中尾涡速度变化较平滑,且广泛应用于雷达探测实验、大涡模拟(Large Eddy Simulation,LES)的尾涡演化研究和飞机对尾迹遭遇的响应模型,因此本文选取Hallock-Burnham涡模型反演得到2个反对称涡系统的切向速度为:
Vθ(r)=Vθ(r-r2)-Vθ(r-r1)
(6)
式中:r为尾涡系统中的位置矢量;r0为尾涡的中心位置矢量;r1和r2分别为左涡和右涡的位置矢量。
基于上述公式,采用MatLab将雷达数据可视化得到飞机尾涡图像如图3所示。
图3 2018年9月5日尾涡图像
2 人工智能算法
近年来,人工智能基本完成了人类智力任务自动化[9],其中,卷积神经网络被应用于目标识别领域,并取得了显著的研究成果,本文将YOLO v3网络引入大气风场中飞机尾涡的目标检测,有望助于缩短我国现行的尾流间隔标准。
人工智能应用比较广泛的目标检测算法可以分为两类:第一类是基于区域提名的算法,也称为双步目标检测法,如Fast R-CNN[10],Faster R-CNN[11],Mask R-CNN[12]等,这些算法将目标检测的过程分为两步,首先使用区域候选网络(RPN)来提取候选目标信息,然后再经过检测网络完成对候选目标的位置和类别的预测和识别[13]。第二类是端到端的算法,也称为单步目标检测法,如SSD[14],YOLO[15],YOLO 9000[16],YOLO v3[17],此类算法不需要RPN,直接通过网络来产生目标的的位置和类别信息,通过一步完成,具有更快的检测速度,因此在飞机尾涡检测方面有望实现实时识别并预警的功能。
2.1 网络模型构建
本文中的YOLO v3使用了Darknet-53残差网络并结合特征金字塔(Feature Pyramid Networks,FPN)网络结构,在网络后2个特征图上采样后于网络前期相应尺寸的特征图聚合,再经过卷积网络后得到预测结果,图4为YOLO v3网络结构示意图。
图4 YOLO v3网络结构框图
YOLO v3的检测流程如图4所示,输入图像整体缩放为416×416,将图像划分为13×13个单元格,若某一目标的中心落入某一网格,则该网格负责检测该目标[18]。在模型中,每个网格均有其任务,设置每个网格需要预测b个检测框,C个检测类别。检测框坐标(x,y),宽w,高h,检测框置信得分Sconf为:
Sconf=P(Ci|Oobject)×P(Oobject)×I(truth,pred)
(7)
式中:若检测框中出现目标物,则P(Oobject)=1;若检测框中不存在目标物,则P(Oobject)=0;P(Ci|Oobject)为网格预测i类的置信得分;I(truth,pred)为预测目标与真实目标框的交并比。
在检验时,每个类别边界框的分类置信度等于每个目标边界框的置信度和每个网格预测的类别信息的乘积。得到每个边框的分类置信度以后,通过选择合理的阈值,剔除分数较低的边界框,对保留下来的边框进行归一化处理,得到最终的检测结果[18]。
2.2 仿真参数设置
本文设计的卷积神经网络由输入层、卷积层、池化层和输出层组成。网络输入二维图像,像素为416×416,通道为3。卷积层通过滑动窗口的形式提取和映射图像的细节特征,并且每一个卷积层都会对尾涡数据进行批标准化(Batch Normalization,BN)操作;Darknet-53为特征提取网络,YOLO v3 采用了53个卷积层(3×3和1×1)来提取尾涡特征,检测支路使用全卷积结构。网络共选用五种不同尺度和深度的残差层,进行不同层输出间的求残差操作。池化层对输入的特征图进行下采样,一方面降低计算的复杂度,一方面提取主要特征。通过每个卷积核与上一层特征图进行卷积来提取图像特征信息,然后通过激活函数生成当前层的特征图,将提取到的特征图在更高层进行组合得到全局特征。特征融合层分为3个尺度(13×13、26×26、52×52),每个尺度先堆积不同尺度的特征图,然后通过卷积核(3×3和 1×1)的方式实现不同尺度特征图之间的局部特征融合,输出深度为75的张量,至此获得到不同的尾涡特征信息,实现提取飞机尾涡特征的目的。
本文根据实际的尾涡识别情况调整网络结构,改变网络参数,选择适当的卷积核与激活函数等参数,设计适用于实际空中交通管制需求的网络模型。
3 结果与分析
本文试验使用Darnknet-53、Keras深度学习框架,运用Python编程语言编写程序,工作站为T7810,配置为内存16G,显卡1070,双核CPU12核心,3.4G主频,操作系统为Windows 10。
3.1 试验过程
试验训练使用样本5 000张,训练集4 600张,测试集400张,共训练6 000次。基于前期试验经验与多次调试,设置初始学习率(Learning Rate,LR)为0.001,动量系数为0.9,衰减系数0.005,选择Batch_size=256对模型进行训练,每个Epoch中发生模型权重更新196次,并在迭代过程中记录下准确率。为了丰富尾涡图像训练集,更好地提取图像特征,防止模型过拟合,本实验采用旋转图像[20]、剪切图像[21]、对比度变换[22]、增加噪声等方法进行数据增强。
对尾涡的识别测试部分结果如图5所示。其中Detected 0.84表示对于该帧图像探测到“尾涡存在”的检测率为0.84。在大气环境中,飞机尾涡总是表现为成对出现的反向旋涡,因此在雷达云图中呈现出两对不同色调的色块,图5中左上和右下分别为红色色块,分别表示左涡和右涡速度分量往上的模块,同理,蓝色色块即表示左右涡速度分量往下的模块。结合YOLO v3在小目标检测中的优越性与尾涡总是成对出现且速度反向的特性,本文所选取的检测框只捕捉涡核附近旋转速度稳定且大的单只尾涡,即可识别到飞机尾涡。
图5 飞机尾涡检测结果
3.2 误差分析
在对YOLO v3网络模型的训练过程中,选用均方和误差作为损失函数,分别由三部分组成:坐标误差、IOU误差和分类误差,表示如下:
(8)
在综合考虑每种损失的贡献率和相对误差的因素下,YOLO v3算法在训练过程中损失的计算如下:
(9)
图6 识别准确率曲线
图7 损失函数曲线
表2 YOLO v3算法检测结果
由以上分析可以得出,使用YOLO v3识别飞机尾涡能够到达较高的检测率,准确率方面与AlexNet对比,在6 000步时已体现出优越性,7 000步以后已逐步收敛,收敛速度更快,准确率更高,而AlexNet受限于网络深度的局限,在 10 000 步以后才逐渐收敛且不稳定,与之相比,本文算法将准确率从84%提高至90.37%。并且在速度方面,本文算法对于每帧图像处理的时间达到19.217 ms,能够满足实时性要求。
4 结论
为了实现对于近地阶段飞机尾涡的监控和识别检测,更有效地提高机场及空域的利用率,缩短飞机起降间隔,本文提出一种基于人工智能的算法YOLO v3实现对于飞机尾涡的准确识别,该算法能够有效地保留图像特征,提高对于尾涡的检测能力,也能够提高机场尾涡探测系统的能力。该算法在现行的雷达管制间隔基础上,能够结合实际情况判断尾涡的存在,满足实时性要求,能够为空中交通管制员给出安全的尾流间隔提供辅助信息,具有应用价值。但由于尾涡受大气层结效应影响,在风力影响较大的情况下,对于雷达探测的精度和可视化效果不理想,存在一定误差,是后续研究的重点方向。