APP下载

通航机场场面运动目标检测方法

2022-11-16夏正洪魏汝祥屠佳李彦冬

科学技术与工程 2022年29期
关键词:卷积机场预测

夏正洪, 魏汝祥*, 屠佳, 李彦冬

(1.中国民用航空飞行学院空中交通管理学院, 广汉 618307;2. 国防科技大学国际关系学院, 南京 410073)

目前,民用机场的监视手段主要有场监雷达、多点定位、自动相关监视(automatic dependent surveillance broadcast, ADS-B)存在成本较高、有监视盲区、易受天气的影响的缺点,不能完全满足通航机场场面运行的监视需求。因此,如何实现对通航机场场面全天时、低成本的监视,以及对场面运动目标的检测成为提升通航机场运行安全的关键。

国内外关于目标检测问题的研究成果已较为丰富,深度学习算法更是得到了广泛的应用。2018年, Redmon等[1]在前两代的基础上提出性能更好的YOLOv3(you only look once-v3)目标检测模型,模型使用残差模块和利用特征金字塔网络(feature pyramid network,FPN)架构实现了多尺度检测,提高了模型的精度。2020年, Liu等[2]对数据进行预处理,使用YOLOv3算法对苹果进行检测并应用到水果收割机器人中。2021年,Singh 等[3]提出一种基于YOLOv3算法检测人员是否佩戴口罩的方法,并与区域卷积神经网络(region-convolution neural network,R-CNN)算法做对比,实验结果表明YOLOv3算法的效果更优。Shakarami 等[4]提出一种基于改进YOLOv3的血细胞检测方法,该方法使用膨胀卷积把握全局的特征信息,并改进激活函数提高模型收敛速度以及模型精度。

现有基于深度学习的目标检测研究成果研究大致可分为3类:一是改进网络结构,主要有改变神经网络层数或检测尺度,该方法应用场景有遥感图像中对飞机的检测[5],对街道行人的检测[6];二是调整锚框,该方法主要的应用场景有对舰船的雷达影像目标的检测[7]、机场跑道异物检测[8]、对非合作无人机的检测[9];三是修改卷积结构,应用场景主要有车辆和行人的检测[10]、水下生物的检测[11]。可见,现有研究成果虽然在目标检测方面取得了一定的效果,但检测结果的精度和速度还有提升空间。目前,目标检测在通航机场的应用还未出现。

因此,现提出一种改进的YOLOv3算法,使用深度可分离卷积结构替换原卷积实现卷积结构的改进,使用距离交并比(distance intersection over union,DIoU)[12]作为损失函数,并采用迁移和冻结相结合的训练方法,以期获得更好的目标检测精度和更快的检测速度,从而保障通航机场场面运行安全。

1 改进的YOLOv3算法

1.1 YOLOv3算法的缺陷

YOLOv3的网络结构是由1个主干网络(darknet-53)和3个FPN的预测分支构成。darknet-53网络中的卷积层是特征提取的核心,负责提取图像的局部特征。在传统YOLOv3算法的卷积运算中,输入通道要对各过滤器中的卷积核进行遍历,以便更好地掌握全局特征信息,但其运算速度也会降低,并且会出现很多的不必要冗余信息,占用大量内存。通道数越多、参与运算的参数越多、冗余信息会呈指数量级增加,从而降低模型的检测速度。

YOLOv3算法通过反向传递损失值的方法调整各层参数使模型达到拟合状态。损失值由位置损失、分类损失和置信度损失3部分构成。其中,位置损失计算中的交并比(intersection over union,IoU)表示预测框与真实框之间的交并比,可用来评价检测框与真实框的贴合程度。

(1)

式(1)中:B为预测框;Bgt为真实框。则IoU损失函数为

(2)

当预测框与真实框没有交集时,IoU的值为0。此时,损失函数无法为模型回传梯度,导致模型的收敛速度较慢。同时,IoU也不能清楚地反映预测框与真实框的相交方式,因此在回传梯度也会增加误差,导致回归效果变差。

1.2 主干网络的改进

为了提高检测速度和精度,结合深度可分离卷积和FPN结构,提出一种低运算量、层数少的主干网络用于特征提取和预测。卷积过程如图1所示,移除了传统卷积冗余表达,将特征提取与组合过程分为了逐通道(depthwise, Dw)卷积和卷积核尺寸为1×1的逐点(pointwise, Pw)卷积。Dw的卷积核与传统卷积核相同,但是一个卷积核只负责一个通道的卷积操作。Pw是一个1×1×x(x为通道数)的常规卷积,它将Dw提取的特征信息在深度方向进行叠加,得到最终的Maps。

图1 深度可分离卷积的卷积过程

首先,输入彩色三通道图片,尺寸为416×416×3,接着对每个输入通道分别使用一个3×3卷积核进行卷积操作,卷积操作是基于滑动窗口思想在图片上滑动,每滑动一次,卷积核与图片窗口内的对应元素进行加权求和得到特征信息。之后,每个卷积核生成的单通道特征图经过1×1×x逐点卷积进行深度叠加,最终得到x个特征图。与传统卷积相比,深度可分离卷积大大减少了运算参数量,如表1所示。

表1 普通卷积与深度可分离卷积对比

可见,在两者输入通道和输出通道相同时,运算参数减少量为24x-27,而且参数的减少量与输出通道数成正比,输出通道数越多效果越明显。本文算法的主干网络的卷积层使用32、64、128、256、512、1 024作为输出通道,其网络结构如图2所示。

Type为类型; Filters为过滤器; Size为尺寸; Output size为输出尺寸; Input为输入; Zero-padding为零填充;Convolutional为卷积; DwC为逐通道卷积; PwC为逐点卷积; Up sampling为上采样; Concatenate为连接层; Conv Layer为卷积层; BN Layer为批量标准化层; LeakyRelu Layer为LeakyRelu激活函数层

基于深度可分离卷积改进的YOLOv3神经网络延续了其darknet-53网络结构,将深度可分离卷积与darknet-53网络结构融合。其中,主干网络结构由零填充层、逐通道卷积和逐点卷积构成,使用深度可分离卷积提取特征信息,减少了主干网络参与运算的参数,从而提高了模型运行速度。然后,通过3个预测分支在主干网络的中、中下和底层进行多尺度融合预测目标。为了防止预测精度下降,预测分支全部由传统卷积构成。

1.3 损失函数的改进

针对使用IoU作为损失函数时存在收敛速度慢和损失值不够精确的问题,提出采用距离交并比(distance intersection over union,DIoU)代替IoU的方案。DIoU考虑了两框的重叠区域和中心点距离,在IoU的损失函数里加入了新的惩罚项,可在预测框与真实框无相交的情况下回传梯度,并且可最小化预测框与真实框之间的距离,从而加快回归速度。

(3)

式(3)中:c为同时包含预测框和真实框的最小闭合区域的对角线距离;ρ(B,Bgt)为预测框与真实框的中心点距离。则DIoU的损失函数公式为

(4)

当预测框与真实框不相交时,DIoU损失函数的值仍然大于1,表示预测框仍可向真实框的方向移动。LDIoU可使预测框与真实框中心点的距离最小化,从而加快了训练时模型收敛速度。同时,当预测框与真实框相交时,惩罚项会使损失值变得更加精确。可见,使用DIoU代替IoU作为模型的位置损失函数,从而提高模型训练速度和精度。

1.4 评价指标

为验证本文算法在目标检测方面的效果,使用平均正确率(average precision,AP)值、精确率(precision,P)、召回率(recall,R)、平均精度(mean average precision,mAP)来进行评价。其中,精确率P是指在所有检测出的目标中实际为正确目标的概率,召回率R是指在所有实际目标中被正确预测出来的概率。

(5)

(6)

式中:TP为将正类预测为正类数量;FN为将正类预测为负类数量;FP为将负类预测为正类数量;TN为将负类预测为负类数量。

以召回率为横坐标轴、精确率为纵坐标轴的P-R曲线所围成的图形面积值可用来衡量某类目标预测的性能,即AP值。实际计算的时候可采用积分方法来得到该值。而所有种类目标AP值的平均值,可用来衡量模型的总体性能,即mAP。

2 基于改进YOLOv3的通航机场场面目标检测

2.1 场景描述

研究对象是西南某通航机场,该机场的飞行区等级为4C级别,属于A1类跑道型通用机场,跑道长度2 200 m,宽45 m。各类驻场飞机40架,包括奖状CJ-1/M2、西锐20(Cirrus SR20)、塞斯纳(Cessna-172R)、钻石42(DA42NG)等飞机。实验所用数据集类型为PASCAL VOC数据集,PASCAL VOC数据集是最早用于目标检测任务的数据集,包括20个类别和超过3万张用于训练和检测的图片以及79 000多个检测目标。实验环境是在开源框架 Keras和TensorFlow上实现,电脑配置如下:7代AMD处理器,内存16 G ,独立显卡NVIDIA GeForce RTX 2070 SUPER。

2.2 目标检测流程

基于改进YOLOv3算法的通航机场场面目标检测流程如图3所示。

图3 通航机场场面运动目标检测流程

首先进行数据集的搜集与制作,由于没有专用的通航机场场面运动目标的数据集,因此只能通过对场面监视视频进行分析处理,获得正常天气、雨天和雾天场景下的图片2 000张,采用Labeling方法对图片进行标注,获得训练集和测试集各1 000张,检测目标种类共分为3类,分别是aeroplane、person、car。

图4(a)是正常天气场景,包含1个标注的停在机坪的aeroplane目标和5个标注的person目标;图4(b)是雨天场景,包括1个标注的正在起飞的aeroplane目标;图4(c)是雾天场景,包括1个标注的正在进近的aeroplane目标。

图4 通航机场场面视频监控人工标注图像

模型训练的实现通过预训练、迁移学习和冻结学习3个主要步骤完成。其中,迁移训练是指在大型数据集上训练得到预训练权重基础上,再对模型参数进行训练,可显著提升模型的学习效率;冻结训练是在迁移训练上的基础上,冻结预训练权重前半部分权重,再通过训练调整预训练权重后半部分参数,当loss值不降且升时解冻网络进行全局微调,最终完成训练得到权重。在传入样本图片训练前,数据增强单元会随机调整图片曝光率、亮度、大小等参数,从而丰富数据集样本。根据训练实际情况设置冻结前150层网络,score阈值为0.5,batch_size为20,max _boxes值为20,model_image_size为(416×416),初始学习率为0.001。然后,载入预训练权重开始训练,当训练到loss值不降反升时进行解冻训练,设置batch_size为30,学习率为0.000 1,其余参数不变。经过820次训练后,得到检测效果如图5所示。

可见,改进的YOLOv3算法可以实现机场场面目标的检测,并对目标的位置和置信度进行标定。图5(a)表示模型在正常天气情况下对目标的检测,共检测到4个目标,可知对aeroplane目标识别精确率明显高于对car目标识别精确率。其中,目标[aeroplane 0.98 220 208 248 293]表示此目标种类为aeroplane,置信度98%,目标框中心点的相对图片坐标为(220,208),高和宽分别是248和293,检测速度为0.76 s每张图片。图5(b)表示模型在雨天天气情况下对目标的检测,共检测到3个目标,可知对aeroplane目标识别精确率显高于对person目标识别精确率。

图5 不同场景下基于改进的YOLOv3算法的图片检测效果图

其中,目标[aeroplane 0.99 387 518 433 686]表示此目标种类为aeroplane,置信度99%,目标框中心点的相对图片坐标为(387,518),高和宽分别是433和686,检测速度为0.30 s每张图片。图5(c)表示模型在雾天天气情况下对目标的检测,共检测到4个目标,1个目标漏检。可知对aeroplane目标识别精确率明显高于对person目标识别精确率。

其中,目标[aeroplane 0.99 222 312 253 408]表示此目标种类为aeroplane,置信度99%,目标框中心点的相对图片坐标为(222,312),高和宽分别是253和408,检测速度为0.73 s每张图片。

2.3 不同场景下的检测结果对比

根据目标检测的相关评价指标[式(5)~式(7)],得到各个目标类别的召回率(R)、精确率(P)、AP值如表2所示。

表2 不同场景下各类的召回率、精确率和AP

aeroplane目标在正常天气、雨天、雾天3种场景下的精确度均高达98%左右,但召回率在雨天有明显的降低,AP值则变化不明显,均大于92%。person目标在正常天气、雨天、雾天三种场景下的精确度差异特别明显,其中在正常天气情况下最高值可达86.39%;召回率和AP值的大小排序均为正常天气、雾天和雨天,其中对在雨天检测的召回率和AP值非常低。car目标在3种场景下的精确度均大于86.83%,但雨天场景下car目标的召回率比雾天高,AP值仅比aeroplane目标的AP值略小。可见,本文算法对正常天气情况下的通航机场场面运动目标整体检测效果最佳,雾天场景下的检测效果次之,雨天场景下的检测效果较差。3种场景下对运动目标的检测效果排序为aeroplane、car、person。究其原因是飞机目标相对于车辆和行人的尺寸都要大,即本文算法对小目标的识别效果相对较差。

2.4 与其他算法效果对比

为了验证本文算法性能,将其与传统的YOLOv4算法和文献[13]所用算法在相同的场景中进行对比实验,性能对比结果如表3所示。

表3 3种算法的性能对比

实验可知,本文算法对正常天气情况下通航机场场面目标检测结果的精确率、召回率、平均精度值与帧数分别为92.96%、80.51%、91.96%和74.0帧/s,比传统的YOLOv4算法提升了8.6%、86.8%、47.7%和66.3%。得益于改进后的主干网络内参与运算参数大大减少,而且精确度也丝毫不逊色于YOLOv4,同时由DIoU函数改进的损失函数在训练时提高了模型的精确度,加快了训练速度。项目组在文献[13]中采用了传统的YOLOv3算法对通航机场场面目标进行了检测,使用的是MSCOCO类型数据集,并采用迁移学习策略,最终得到目标识别的精确率和召回率分别是82%和78%。与之相比,本文算法采用PASCAL VOC数据集对视频数据进行人工标注,并采用迁移和冻结相结合的训练策略,目标检测结果精确度提升了13.4%,召回率提升了3.2%,检测速度提升了64.4%。

3 结论

(1)提出了一种改进的YOLOv3算法,对算法的主干网络和损失函数进行了改进,并将其应用到通航机场场面目标检测问题中,对飞机目标的检测效果要明显优于车辆和行人目标。

(2)通过正常天气情况、雨天、雾天场景下的目标识别结果的对比分析,发现本文算法更适合正常天气情况的通航机场场面运动目标检测,雾天场景检测效果次之,雨天场景检测效果有待改进。

(3)改进的YOLOv3算法对目标的检测精确度、召回率、平均精度值分别达到 92.96%、80.51%、91.96%,GPU处理速度为74帧/s,较传统YOLOv3算法和YOLOv4算法性能均有明显提升。

猜你喜欢

卷积机场预测
无可预测
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
选修2—2期中考试预测卷(A卷)
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
展开大兴机场的双翅
从滤波器理解卷积
“最大机场”
用于机场驱鸟的扑翼无人机