Content area
Full text
1 引言
尾涡是指飞机在飞行时,由于翼尖处上下表面的空气压力差,产生的一对绕着翼尖的闭合涡旋。尾涡是飞机机翼升力的一个副产物,在飞机从起飞离地到降落的整个过程中都会产生[1]。在近地阶段,强烈的尾涡会对其后方跟随的飞机产生滚转力矩,威胁飞行安全,并限制机场跑道容量[2-4]。
基于上述问题,飞机尾涡的识别成为了航空研究中的重点问题。目前对于民航客机的尾涡探测与识别研究,主要包括理论分析、数值模拟和雷达试验等方法[5]。其中,雷达试验已被公认为是尾涡探测与识别最为有效的工具之一[6]。目前针对飞机尾涡的探测工具主要是多普勒激光雷达。2001年,Holzapfel等人利用多普勒激光雷达在德国开展了多次尾涡实地探测实验,给出了估算尾涡涡流环量的方法[7]。2006年,法国Thales公司使用X波段雷达在巴黎附近某机场进行了民航客机的尾涡探测实验[8]。2008年,Frederic等人在法国巴黎机场开展了X波段的激光雷达尾涡探测实验,以评估在多种大气条件下的尾涡监测能力[9]。
近些年,随着深度学习的火热研究,卷积神经网络(convolutional neural network,CNN)成为一种用于激光雷达目标识别的新方法[10]。现代激光雷达目标识别方法主要包括卷积神经网络(CNN)、支持向量机(support vector machine,SVM)方法、隐马尔科夫模型(hidden Markov model,HMM)等。由于CNN的通用性以及鲁棒性较好,且在模式分类领域避免了前期对图像的复杂预处理过程,具有更强大的信息表达能力,因此在激光雷达目标识别方面的研究中得到了广泛应用。本文在结合多普勒激光雷达探测原理、方式设计以及系统参量的基础上,提出了一种基于AlexNet卷积神经网络的模型对于大气风场中不同机型的飞机尾涡的识别方法,并通过准确率和虚警率验证其有效性。
2 激光雷达探测原理
激光雷达探测的主要原理是发射特定波长的激光波束对目标空域进行扫描,并通过接收器接收大气分子或气溶胶粒子对激光的向后散射信号,在探测空域中,由于大气分子和气溶胶粒子的布朗运动使得所捕获的散射信号产生多普勒展宽,而粒子的整体平均运动速度则导致了大气回波信号的多普勒频移[11-12],且多普勒频移ΔfD与探测到的尾涡径向速度VR之间存在以下关系[3]:
\(\Delta {f_{\rm{D}}} = 2{f_0}\frac{v}{c} = \frac{2}{{{\lambda _0}}}{V_{\rm{R}}}, \)(1)
式中:c为光速,f0为经散射作用后的原频率,λ0为f0对应的波长。
经Hallock-Burnham vortex(HB)模型[5],可由径向速度反演得到切向速度,模型表述如下:
初始环量:
\({\Gamma _0} = \frac{{4Mg}}{{{\rm{ \mathsf{ π} }}\rho VB}}, \)(2)
涡间距:
\({b_0} = \frac{{\rm{ \mathsf{ π} }}}{4}B, \)(3)
切向速度:
\(V(r) = \frac{{{{\mathit{\Gamma}} _0}}}{{{\rm{2 \mathsf{ π} }}}} \cdot \frac{r}{{{r^2} + r_0^2}}, \)(4)
式中:M为飞机进近时重量,g为重力加速度常量,ρ为当地空气密度,V为飞机进近速度,r为尾涡横截面上的点与涡核中心之间的距离,r0=0.052b0为尾涡涡核半径。
本文选取横向探测尾涡方式,即距离高度显示器(range-height-indication,RHI)模式,如图 1所示,雷达发射激光波束在垂直于飞机飞行方向的横截面进行扫描,经处理得到目标空域内探测的飞机尾涡速度场云图,并利用卷积神经网络中的特征提取层处理方法实现激光雷达对于飞机尾涡识别工作。
[Image omitted: See PDF]
图 2为2018年9月5日于国内某机场采集到的飞机尾涡分离阶段的速度场云图。图中背景风场0~1级风力,无强大气乱流,目标空域内存在两对速度相反,且大致成对称分布的尾涡。因大气湍流耗散率ε和Brun-Vaisälä(BV)频率影响,尾涡在相互诱导作用下的演化规律不完全一致。经H-B涡模型验证,两对尾涡均在涡核中心处出现最大速度,并沿涡核半径方向速度递减。
[Image omitted: See PDF]
3 基于AlexNet的飞机尾涡识别方法 3.1 卷积神经网络
卷积神经网络(Convolution neural network,CNN)是一种深度前馈神经网络,广泛应用于计算机视觉和模式分类领域[13]。卷积神经网络的训练过程实质是一个参数不断学习更新的过程,训练给定一个初始随机参数,得到输出值,当输出值与标准值出现差异时,计算其误差,之后采用反向传播算法(back propagation,BP),从输出层向反方向一层一层更新参数,直至训练精度达到最高。随着国内外深度学习研究的不断发展,CNN在图像识别、目标检测等领域取得了巨大成功[14]。而在激光雷达图像识别方面,卷积神经网络具有其独特的优点:1)具备类脑功能,能够将特征提取与识别过程无差别融合;2)局部感受域获取的特征与特征的平移、旋转和缩放无关;3)权值共享结构降低了网络模型的复杂度;4)下采样利用局部相关性原理,在有效减少数据处理量的同时保留了原始结构信息[15]。因此,CNN被广泛应用于激光雷达的目标识别领域。
3.2 AlexNet模型
卷积神经网络主要算法包括8层的AlexNet、19层的VGGNet、22层的GoogleNet和200层的ResNet等。理论上讲,神经网络的层数越深,其检测识别效果越优,但同时时间复杂度也越高。AlexNet是2012年ImageNet竞赛冠军获得者Alex Krizhevsky设计的,该网络结构模型一经提出便引爆了神经网络的应用热潮,使得CNN成为在图像分类上的核心算法模型,在图像识别领域取得巨大成功,且由于该模型隐含层相对较少,从而能够快速地完成训练,在飞机尾涡识别方面有望实现实时识别并预警的功能,因此本文采用层数较少的AlexNet神经网络模型进行训练。AlexNet神经网络模型算法结构图如图 3。
[Image omitted: See PDF]
AlexNet神经网络模型共含8层结构(不包括池化层和局部响应归一化),其中前5层为卷积层,后3层为全连接层,网络参数设置如表 1所示。
表 1 AlexNet参数设置 Table 1 AlexNet parameter settings
Name | Type | Filter size | Stride | Padding | Output size |
Input data | Color image | — | — | — | 224×224×3 |
Conv1 | — | 7×7 | 4 | 0 | 55×55×96 |
Pool1 | Max pooling | 3×3 | 2 | 0 | 27×27×96 |
Conv2 | — | 5×5 | 1 | 2 | 27×27×256 |
Pool2 | Max pooling | 3×3 | 2 | 0 | 13×13×256 |
Conv3 | — | 3×3 | 1 | 1 | 13×13×384 |
Conv4 | — | 3×3 | 1 | 1 | 13×13×384 |
Conv5 | — | 3×3 | 1 | 1 | 13×13×384 |
Pool5 | Max pooling | 3×3 | 2 | 0 | 6×6×256 |
Fc6 | — | — | — | — | 4049 |
Fc7 | — | — | — | — | 4049 |
Fc8 | — | — | — | — | 1000 |
Softmax with loss |
AlexNet神经网络模型最后一层是由1000类输出的Softmax函数层用作分类。局部响应归一化层(local response normalization,LRN)出现在第1个及第2个卷积层后,而最大池化层出现在两个LRN层及最后一个卷积层后。线性整流函数(rectified linear unit,ReLU)激活函数则应用在这8层每一层的后面。因为AlexNet训练时使用了两块图形处理器(graphics processing unit,GPU),因此该结构图中相关组件被拆为了两个部分[16]。
表中,Name为层名称,Type为池化类型,Filter size为过滤器尺寸,Stride为步长,Padding为边界填充数,Output size为输出尺寸。在该模型前5层中,第1、2、5层卷积层后跟随了池化层(池化规则为最大池化Max pooling);第3层和第4层只有卷积层,没有池化层。后3层全连接层起到分类器的作用,对前层的特征进行一个加权和(卷积层是将数据输入映射到隐层特征空间)将特征空间通过线性变换映射到样本标记空间。
AlexNet神经网络模型主要使用到的新技术如下:1)成功使用ReLU作为CNN的激活函数,并验证了其在较深网络中的有效性,解决了Sigmoid在网络较深时的梯度弥散问题。2)训练时在最后的全连接层使用Dropout随机忽略一部分神经元,以避免模型过拟合,提高了精度。3)使用重叠的最大池化,解决了平均池化模糊化效果,提升了特征的丰富性。4)运用局部响应归一化(local response normalization,LRN)层,增强模型的泛能力。5)数据增强,减轻过拟合,提升泛化能力[17]。在本文研究中,加之其具有较少的层数,时间复杂度少,有望实现尾涡的实时探测识别功能,故选择AlexNet模型作为识别模型来训练。
3.3 飞机尾涡识别
由于激光雷达在探测大气分子或者气溶胶粒子速度时采用多普勒原理,即仅有与发射激光波束方向相同的速度分量才能引起散射信号的多普勒频移,因此本实验采用在垂直于飞机飞行方向的横截面内进行俯仰向上的扇形扫描(RHI模式)[18],该扫描方式能够较完整捕获飞机翼尖处涡流的生成、分离和耗散阶段。
为实现激光雷达探测飞机尾涡的高准确度,选取表 2所示的1.5 μm脉冲相干多普勒激光雷达的系统参量用于尾涡探测。
表 2 1.5 μm脉冲相干多普勒激光雷达的系统参量 Table 2 System parameters of 1.5 μm pulse coherent Doppler LiDAR
Name | Value |
Observation mode | RHI |
Detection range/m | 45~915 |
Detection accuracy/m | 30 |
Scan angel range/(°) | 10~60 |
Scan step length/(°) | 1 |
基于AlexNet卷积神经网络的飞机尾涡识别流程为通过激光雷达探测得到风场中关于速度的原始数据,经数据处理将其可视化,转化为如图 2中所示的速度场云图,将采集得到的云图集通过预处理生成训练样本,输入Caffe框架中进行深度学习,训练结束后得到收敛的训练模型,即学习完成,模型学习得到关于尾涡的特征元素。对于待识别的尾涡样本云图,输入学习好的模型后,通过与特征库中的信号特征进行学习对比,进行识别测试,然后经AlexNet网络输出识别结果。基于AlexNet模型的飞机尾涡识别流程图如图 4所示。
[Image omitted: See PDF]
4 仿真试验 4.1 实验平台
本文实验的深度神经网络搭建在Caffe框架上,运用Python语言编程实现,工作站为戴尔T7810工作站,内存为16 G,显卡为MT4000,双核CPU12核心,3.4 G主频。
4.2 样本处理与分类
为了提高对于尾涡识别的准确率,需要增加样本量。本实验采集了国内某机场40天内航班起飞的情况,该机场每日起飞航班约500架次,其中包括A340,A380和ARJ21等机型。为合理识别并规避尾涡,实验将训练集分为“探测到尾涡(Detected)”和“未探测到尾涡(Undetected)”两类,其中,由于尾涡在耗散末期大气层稳定性、湍流强度、风切变以及地面效应等原因,涡环量显著减少,对跟随后机已不构成威胁,因此将探测到的耗散末期的尾涡归为“未探测到尾涡”类,在实际的空中交通管制工作中更具有指导意义。
在图像深度学习中,为了丰富图像训练集,更好地提取图像特征,泛化模型,通常将样本图像进行数据增强[19]。本实验采用旋转、多尺度放缩和随机剪切和3种算法进行训练数据增强,加大训练数据集的数据数量,使训练模型学习到更多的图片像素信息,从而提高模型的分类性能和泛化能力[20]。本文实验共采集到两类训练集各2000张,并采用无放回随机采样方法选取25%的图片作为验证集,两类验证集各500张。
4.3 模型训练及识别结果
本文实验采用AlexNet网络模型,采集得到的样本在Caffe框架中训练10000次。学习率(Learning rate)控制模型的学习进度,若学习率设置太小,会导致网络收敛缓慢,学习效率显著降低;若学习率设置太大,则参数更新的幅度就加剧,导致网络收敛到局部最优点,或者loss值直接开始增加。因此,经多次试验,设置基础学习率均为0.01,动量系数为0.9,尾涡识别测试的部分实验结果如图 5所示。
[Image omitted: See PDF]
由图 5可以看出,当探测到飞机尾涡存在时,为正样本,模型预测分类为0;未探测到飞机尾涡存在时,为负样本,模型预测分类为1。Score值表示该图像被识别为预测分类下的概率值,用来验证模型的正确性与准确率。为验证模型泛化能力,图 5中的样本分别采用在不同背景风场下、尾涡演化的不同阶段(尾涡的生成、分离和耗散阶段)的尾涡云图。识别结果表明,该模型在训练完成后具有较高水准的正确分类概率。在图 5中对飞机尾涡的识别情况图中发现,该模型在针对大环量涡流时,其识别概率高达97.84%;对于机型和风切变等因素影响下出现的小环量涡流,其识别概率也能到达87.87%。对于未探测到尾涡情况,其识别概率均在92%以上,表明AlexNet模型收敛后能准确区分出大气中是否存在飞机尾涡,特别是对于出现的大环量涡流,模型能够实现极高的识别概率,辅助空中交通管制员给出安全的尾流间隔指令。
5 算法分析 5.1 准确率及其质量评价s
准确率(Accuracy,ACC,用ηACC表示)反映了分类器对整个样本的正确判定能力——能将正的样本判定为正,负的样本判定为负。计算式:
\({\eta _{{\rm{ACC}}}} = \frac{{{N_{{\rm{TP}}}} + {N_{{\rm{TN}}}}}}{{{N_{{\rm{TP}}}} + {N_{{\rm{TN}}}} + {N_{{\rm{FP}}}} + {N_{{\rm{FN}}}}}},...