基于深度学习的红外图像遮挡干扰检测方法
2019-08-28梁杰李磊任君齐航周红丽
梁杰, 李磊,2, 任君, 齐航,2, 周红丽
(1.北京机电工程研究所, 北京 100074;2.复杂系统控制与智能协同技术重点实验室, 北京 100074)
0 引言
红外成像制导的自动目标识别系统利用目标与背景之间的红外热辐射差异形成红外图像,通过识别图像中的感兴趣目标,实现自主精确定位,具有定位精度高、全天时自主工作等优点,成为现代精确制导的重要手段之一。但红外成像制导也存在一些缺点,主要表现为对获取目标的红外成像条件要求较高,当目标处于复杂的背景并受到一定干扰时,其成像效果会受到影响,降低红外自动目标识别性能[1]。因此,实际应用时亟需提升自动目标识别在复杂场景下的适应能力和抗干扰能力。
遮挡类干扰是红外成像制导面临的主要干扰模式之一,从干扰成因上可分为自然(云、雾、沙尘等)和人为干扰(烟幕、高温热源等)两大类,从干扰程度上又可分为强干扰和弱干扰。对于薄雾和轻微沙尘等弱干扰,红外辐射具有一定的穿透能力,可以通过图像增强提高目标可识别性;但是对于厚云和浓烟等强干扰,由于红外辐射无法穿透,使得目标特征被遮挡,纹理细节和轮廓信息模糊,极有可能因为识别错误导致制导偏差较大[2]。
针对上述问题,可尝试串行和并行两种抗干扰识别总体方案。串行是先将遮挡区域检测出来并去除(如置零等),消除其对后续处理的影响,然后再对无遮挡区域的图像进行目标识别;并行是对原始图分别进行干扰区域检测和直接目标识别,并给出干扰区域和目标识别结果,然后判断目标识别结果是否在干扰区域内,若不在则认为目标未被遮挡,识别成功,反之,则认为识别受到干扰影响,结果不可靠,可视情况重新启动或采取其他措施。对于这两种工程应用方案,可视情况选择资源条件允许下效果更好的方案,但无论哪种均需进行干扰区域检测,因而遮挡干扰检测方法是该问题研究的重点。
目前最常用的遮挡干扰检测方法可分为阈值法和模式识别法[3]。其中阈值法因为操作简单,在早期的遮挡干扰检测中被广泛应用。其基本原理是将像素的亮度及反射率与预定阈值进行比较,如陆海云超高分辨率辐射计(APPLO)[4]、国际卫星云气候学项目(ISCCP)[5]等。这种方法虽然操作简单,但阈值选择的人为主观因素较强,要求单张图像数据量大、图像中遮挡区域为高亮度(红外图像遮挡区域亮度不具有确定性),因而算法鲁棒性不强、实时性较差。之后,学术界提出模式识别类方法解决这类问题,且大多是通过聚类分析实现,比如直方图聚类、动态阈值聚类、自适应聚类等[6]。这种方法虽在算法鲁棒性和实时性上均有所提高,但很大程度上依赖于先验知识,在复杂环境下的检测能力仍很局限,误检和漏检率较高。随着机器学习研究的不断进步,支持向量机(SVM)、随机森林、误差反向传播(BP)神经网络等浅层机器学习算法越来越热门,也为遮挡干扰检测提供了一种新思路,基于SVM的遮挡干扰检测方法开始被广泛引用[6]。如王睿[7]提出了一种基于最小二乘的SVM(LS-SVM)法进行云检测,并结合神经网络完成厚云去除;Hu等[8]将计算机视觉和随机森林算法相结合,得到了云覆盖影像图;Ma等[9]利用级联自适应增强算法成功地解决了遥感影像中云像素识别问题。但是,上述遮挡干扰检测方法大多针对特定波段的红外数据,对于训练样本的敏感度较强,样本选取难度较大,在复杂环境下不能有效表达干扰物的特征,干扰区域定位精度不高[10]。
近些年,深度卷积神经网络(CNN)在目标检测上显现出巨大的优越性,主要包括两大类:1)双步检测算法,该类算法将目标检测划分为两个阶段,首先使用选择性搜索算法或者区域提取网络(RPN)等方法提取一系列候选区域,之后对每个区域进行目标分类和矩形框调整,典型代表为Faster R-CNN[11];2)单步检测算法,该类算法无需区域候选,由原图直接产生物体的类别概率并回归检测框,典型代表为YOLO[12]和SSD[13]. 相比而言,双步检测算法在准确度上有优势,单步检测算法在速度上有优势,两种算法各有所长,考虑到工程上对检测速度的要求和对网络深度的限制,本文在平衡速度和精度的情况下选择学术界通用算法YOLOv2[14]为研究基础,其属于第2类算法。YOLOv2算法引入类似于Faster RCNN[11]的锚框机制,采用k均值算法对训练集的标注框进行聚类以产生合适的先验框,弥补了YOLO第1代版本在检测精度上较区域建议算法的不足。同时,YOLOv2算法使用Darknet-19分类网络,较GoogleNet有着更好的性能。总之,相对于传统方法,深度学习凭借CNN强大的特征提取能力,可以学习到更高维、更抽象的特征,解决了传统算法因特征描述能力有限而无法实现精细化识别的难题[13];同时,YOLOv2是一个端到端的算法,将传统算法的分步操作合并在一个网络,从测试数据出发可以直接输出得到最终的检测结果,网络每一层都可以为了任务来不断调整自己,最终实现各层之间的通力合作,因而流程更为简单、可靠,检测算法在使用过程中具有更高的灵活性和适应能力。
综上所述,YOLOv2算法的架构适用于解决复杂场景下干扰区域快速、高精度检测的问题,本文在对干扰物进行目标特性分析的基础上,借鉴该算法架构,提出了一种新的可实现干扰区域定位与分类的检测器。为提高检测精度,该检测器引入多尺度特征金字塔模块和动态锚框模块,将底层的目标位置信息与高层的语义信息有效结合,并对锚框机制进行优化。为提高检测速度,本文将批归一化(BN)层合并到卷积层中,使网络在前向传播时减少计算量。同时,本文在分类损失函数中引入中心损失函数[15],实现两种函数的联合训练,使得类内距离最小化、类间距离最大化,提高原分类器的特征区分度。为满足训练样本多样性要求,本文还提出一种红外样本增广方法,保证了网络模型的泛化能力。经过测试和统计结果分析,在厚云遮挡与机翼遮挡2类干扰场景下,本文方法的检测效果显著,证明了算法的有效性,为解决复杂场景下干扰区域快速、高精度检测的问题提供了更简洁的思路。
1 干扰特性及算法相关基础
1.1 遮挡类干扰特性分析
对于厚云和烟幕等遮挡,遮挡区域形状千变万化,不同类型的遮挡灰度分布特性不同。通过对外场采集的红外图像进行分析,遮挡区域具有如下特征:
1)遮挡部分的灰度分布一致性相对较强,一般不会存在明显的灰度阶跃变化,具有统计意义上高相关性纹理特征;
2)遮挡的外围边界位置一般不会存在强边缘;
3)遮挡边缘灰度具有随机性,不可能具有明显的直线特征。
与遮挡区域大有不同,红外图像的非遮挡区域具有以下特征:
1)非遮挡区域的人工地貌区会具有比较明显的直线特征;
2)非遮挡区域的人工地貌经常具有形状上的完整性,具有比较多的闭合区域。
基于红外图像中的遮挡区域和非遮挡区域具有的较大特性差异,本文认为可利用检测的方法对遮挡干扰区域进行划定。
1.2 YOLOv2算法原理及不足
YOLOv2算法的前身是YOLO算法,算法无需区域生成,可直接在输入图像上回归预测目标,具有较好的实时性。该网络将重置尺寸后的输入图像划分为S×T(S、T以输入预测层的特征图而定)的网格,在每个网格上预测边界框及置信度,以及C种类别(本文为2类)的概率,最后使用非极大值抑制(NMS)过滤重复边界框,得到最终的目标预测框。
为解决YOLO 算法检测易遗漏、定位不精准的问题,YOLOv2 算法引入锚框机制及其宽高维度聚类、高分辨率分类器,并改进了位置预测方法等。为提高检测速度,YOLOv2算法设计了只包含卷积层和池化层的Darknet-19特征提取网络,去掉了GoogleNet使用的全连接层,较大地减少了运算量。在VOC2007+2012测试集上,YOLOv2算法的检测精度与速度,均优于Faster R-CNN、SSD和YOLO主流算法。
但是,对于城区场景下云层分布较为分散的情况,YOLOv2算法对小块云层(小目标)的检测效果不理想,分类器学习到的特征分布类内间距大,漏检率较高。同时,锚框是通过在VOC 数据集上进行维度聚类分析得到的适合该数据集的个数与宽高维度,并不具有通用性,难以适应自建数据集的使用要求。针对上述不足,本文提出改进YOLOv2的遮挡干扰识别算法。
2 改进YOLOv2的遮挡干扰识别算法
2.1 多尺度特征金字塔模型
YOLOv2算法的网络模型包括基础特征提取网络Darknet-19和后端的目标检测网络,本文对这两块分别进行了改进。
YOLOv2算法的前端特征提取网络包含19个卷积层和5个最大池化层,卷积层的大小为3×3和1×1、步长为1(分别表示为3×3/1和1×1/1),池化层的大小为2×2、步长为2(表示为2×2/2)。为减少下采样中特征信息的损失,本文改进后采用全卷积来进行特征提取,下采样采用3×3大小、步长为2(表示为3×3/2)的卷积层,网络的最大缩放比例仍为32. 同时,在网络设计过程中,发现第1层卷积核的通道数会对算法的速度产生重要的影响,在对第1层提取的遮挡干扰特征图进行可视化分析后,发现部分通道的特征图和其他通道特征图较为相似,即存在冗余的卷积核通道数。因此将第1层通道数由32改为24,后续层通道数按对应比例缩减,这样可以减少卷积操作的计算量,提高算法的速度。
在后端的目标检测网络中,YOLOv2算法仅采用顶层特征做预测。通常,靠近底层的特征往往语义信息比较少,但位置信息丰富;靠近顶层的特征语义信息比较丰富,但位置信息较粗略。为保证算法对分散小云块的有效检测,本文在YOLOv2算法中引入了类似于特征金字塔网络(FPN)[16]的特征图上采样和融合作法,并在3个尺度上进行了预测。
与FPN不同的是:融合两个特征图时进行通道拼接而不是对应元素相加,这样可以保留原始特征图的完整信息,而且不需要通过额外的卷积保证两个特征图的通道数一致。整个改进算法的架构如图1所示,其中尺度1是对基础特征提取网络的输出再进行一些卷积处理后得到网络第25层进行预测,特征图尺度为初始输入的1/32;尺度2是对第28层的特征图上采样后,再通过路由层与第16层的特征图相加(通道拼接),之后通过多个卷积处理后进行预测,相比尺度1特征图尺度变大两倍;尺度3与尺度2类似,使用了尺度2两倍大小的特征图。改进YOLOv2算法使用这样的方式使得模型可以获取到更多的语义信息。
综上所述,改进算法首先通过全卷积神经网络提取出特征,然后对多层特征融合,并在3个尺度上预测,最后将预测框统一进行NMS筛选。整个识别流程如图2所示。
图1 改进算法架构图Fig.1 Improved algorithm architecture
图2 干扰识别网络流程图Fig.2 Flow chart of interference identification network
2.2 锚框机制优化及边界框预测
虽然YOLO v2算法在VOC 2007+2012和COCO数据集上取得了较好的成绩,但其对自建的遮挡类干扰数据集并不完全适用。若直接采用原有的训练参数生成权值模型,测试时算法会产生较多误检和漏检,识别率较低。
在实际测试中发现锚框的个数和大小对识别精度有着重要影响。YOLO v2 算法通过在VOC 数据集上进行维度聚类分析得到了适合该数据集的锚框宽高维度,其中扁长的框较少,而瘦高的框较多,更有利于检测动物目标,而遮挡类干扰目标的标注框中扁平的居多,瘦高的较少,因此由VOC 数据集聚类的结果不利于对本文目标进行识别。
为适应自建数据集手工标定的目标框,并达到最优的识别效果,本文引入动态锚框模块,在训练前1 000轮不断用k均值算法对已训练数据集(含增广图像)中目标框的统计规律进行维度聚类分析,随着训练迭代次数的增加动态得到适合自建数据集的最优锚框维度。这样,对应不同数据集可以在训练时得到更加合适的锚框。之后,算法选择9个簇,并将这9个簇均匀地分布在2.1节中的3个尺度上。
同时,传统的聚类方法使用的距离是欧氏距离,这意味着较大的框会比较小的框产生更多的误差,聚类结果可能会偏离。为此,本文采用框之间的交集除以并集(IoU)作为距离的评判标准,构建的距离函数见(1)式,这样距离误差就和框的尺度无关了:
d(box,centriod)=1-IoU(box,centriod),
(1)
式中:box为该框的中心点;centriod为聚类中心;d为两点距离;IoU为两框IoU. 由(1)式可知,两个框IoU越大,即两框重复度越大,框之间的距离越小。
之后,在特征图上每个待预测的网格(原始图划分成S×T个网格)中提取出对应框的粗略位置信息,根据该网格距图像左上角的横纵偏移量,以及之前聚类得到的锚宽宽和高,可按(2)式[12]解算出预测框准确位置信息:
(2)
式中:σ(x)为一种sigmoid函数;x、y、w和h分别为对应框的中心横坐标、纵坐标、宽和高,t和b分别为粗略框和精修框的对应量;(cx,cy)为网格偏移量;pw、ph分别为锚框宽和高。tx、ty经处理后取值限定在0~1,实际意义就是使锚框只负责其所在的网格,有利于提升网络收敛效率。同时,算法对每个预测框通过逻辑回归预测一个物体的得分,如果预测的这个框与真实的边框值大部分重合且比其他所有预测的要好,那么这个值就为1. 如果重叠部分没有达到一个阈值(这里设定的阈值是0.5),那么这个预测框将会被忽略,也就是会显示成没有损失值。
2.3 改进CBL模块
CBL是卷积层、BN层和Leaky-ReLU函数[11]的统称,在YOLOv2算法中,三者成套使用,卷积后接Leaky激活函数增加线性拟合能力,而在二者之间加入BN层起到避免过拟合的作用,并加速收敛。由于BN层会带来额外的计算量,本文利用一定的数学推演将BN层合并到卷积层中,提升网络的运行速度。
假设输入为X,卷积核的权重与偏置分别为W、B,BN层的尺度参数与偏移参数分别为γ、β,则卷积层与BN层的输出Yc和Yb分别为:
Yc=W×X+B,
(3)
(4)
W′=αW,
(5)
B′=α(B-μ)+β.
(6)
通过上述推演可知,把BN层直接嵌入卷积层,相当于按一定的倍数缩放卷积核,并对偏置进行改变,这样整个BN层的计算量都省去了。值得注意的是,该合并方法只有卷积层后面直接连BN层才可以,YOLOv2算法恰好满足这一要求。
2.4 分类函数优化
YOLOv2算法类型激活函数为归一化指数(softmax)函数,函数表达式见(7)式[12]:
(7)
式中:K为类别数;zi为K维向量的第i维分量,输出可视为第i类的概率。由(7)式可以看出,通过指数运算将目标类型属性信息变为数值在0~1之间的软标签,某类值越大且越接近1说明目标越有可能属于该类型。
算法的分类函数是以经softmax函数激活的类型概率为主体的交叉熵损失函数,它在CNN中有着广泛的应用,但它没有充分考虑类间距离,类与类的界限不明显,在一定程度上影响了分类精度。原因在于:函数在更新参数时,只顾及当前j类,惩罚其他类,虽然使特征具有可分性,但未对类内距离进行约束,最终学习到的特征存在类内间距过大的缺点[15]。
为解决上述问题,本文引入中心损失函数对交叉熵损失函数进行约束,以达到增大类间距离和缩小类内间距的目的。中心损失函数定义为:
(8)
式中:cyi为第yi类所有样本的特征中心;xi为输入特征。从(8)式函数形式上可看出,该损失函数希望属于第yi类所有样本尽可能离中心接近,但实际过程中中心特征不易获取,往往以每个训练批次的样本中心作为替代,经过一定迭代更新后得到接近真实的中心量。中心损失函数与交叉熵损失函数可联立为
(9)
式中:λ为平衡因子,λ∈(0,1),λ越大则中心损失权重越大,类内差异便越小,特征分辨力越强,但也不能过度增加权重,否则模型可能难以训练;W和b分别为卷积层的权重与偏置,下标i和j分别为样本和类型的标记量;m和h分别为样本和类型的总量。
2.5 损失函数
基于2.2节~2.4节的优化,改进算法的损失函数由3部分组成:坐标误差Ec、IoU误差EIoU和分类误差Ecls,公式为
(10)
式中:N为特征图待预测网络数量。同时,本文使用修正IoU误差来解决网格存在包含物体与否两种情况的问题,并通过将物体尺度信息(w和h)进行求平方根来改进不同尺度物体定位误差对检测的影响。
综上,改进的YOLOv2算法损失函数计算公式设计为
(11)
式中:B为该网格下得到的预测框数量;(xd,yd,wd,hd,cd,pd)和(xt,yt,wt,ht,ct,pt)分别为预测框和训练标记框的中心点坐标、宽、高、物体置信度和类别置信度数值;λc、λnc为该预测框有无目标时的配置系数;lo为该预测框是否负责预测该目标或目标中心点是否落在该网格的标记量,若是值为1,反之为0;c为目标类型;classes为目标类型的集合。如果某个单元格中没有目标,则不对分类误差进行BP,B个预测框中与训练标记框(GT)具有最高IoU的一个进行坐标误差的BP,其余不进行。
3 红外图像样本增广
3.1 应用背景与价值
深度学习因其网络结构复杂、参数较多,需要更多的训练数据来避免过拟合现象的发生,以保证训练的模型具有很好的泛化能力。一方面,受数据获取条件和成本的限制,往往只能采集获得一定条件下的红外遮挡干扰数据,难以涵盖各种气象、时段、季节条件,可获得的数据样本有限;另一方面,开源数据库中的红外遮挡干扰图像微乎其微。这些限制给深度学习在红外遮挡干扰识别中的应用造成了很大的困难。
一般而言,红外图像具有对比度低、信噪比低、灰度分布同目标反射无线性关系等特点。为此,针对训练数据量不足的问题,本文提出一种面向深度学习的红外图像样本增广方法,以现有的红外遮挡干扰图像为基础进行增广,尽可能不同成像条件下模拟干扰物目标特性变化,以提升样本的多样性,使深度学习技术具备适应不同成像条件和场景的能力。
3.2 增广方法及意义
考虑到红外成像受不同观测角、光学系统参数、成像时段、气象等影响,重点从以上要素设计增广方法。一方面,考虑红外成像光学系统参数,可以利用一些现有的图像扩展方法,如滑动窗口法来模拟部分遮挡或视场角缩小情况、位平面法[17]来调整数据分布规律等。另一方面,考虑不同的观测角,可以根据实际飞行中可能出现的飞行状态,进行尺度变换、旋转变换来模拟不同的成像距离和角度;进行亮度扩展和对比度扩展,模拟不同的使用时段、季节;利用大气传输模型进行样本变换,模拟不同气象条件的能见度情况。通过上述方法,可以在一定程度上保证训练样本对实测样本的覆盖性。常用的样本扩充方法有如下3种:
1)滑动窗口法:完全利用训练样本自身的信息,在原始图像中取图像中的一部分区域作为新样本。在扩充样本的同时不会引入不必要的混淆信息和噪声,可以很好地保持和强化原始样本固有的类别信息[18]。
2)位平面法:灰度图像的每个像素点在计算机中均需要用8个二进制位来存储。按照比特位可对图像进行切片,将原始图像分解为8幅图像,由低到高为P1,P2,…,P8. 较高位的位平面图保留了较多图像特征,较低位的位平面图则类似随机噪声[17-18]。新的样本则通过调整权重a1,a2,…,a8来生成,合成方法如(12)式所示,合成效果如图3所示。
P=a1P1+a2P2+…+a8P8.
(12)
图3 位平面法效果Fig.3 Bit-plane renderings
3)图像变换法:对图像进行一定的几何变化如旋转、平移、镜像等,以模拟不同视角、距离、进入方向下的情况;对图像进行模糊、锐化和多种滤波,改变原始图像清晰度,模拟不同环境及成像质量下的情况;对图像进行对比度、亮度变换及反色等光照变换,模拟不同季节、时段的情况。对于一些人为固体遮挡物,偶尔也会用到浮雕变换,以增加干扰物的纹理细节和画面立体感,模拟干扰物表面凹凸不平的情况。图像变换效果如图4所示。
图4 不同图像变换的效果Fig.4 Different image transformation
4 干扰检测实验与分析
4.1 数据集介绍
数据是在本实验室无人机挂载中波红外摄像头采集的中国某两个城市(简称A和B)的城区图以及干扰实验得到的长波红外和可见光图像基础上,按3.2节中的方法进行合理增广后制作而成。该数据集包含了不同高度、进入角和不同季节、时段,涵盖了顺光、逆光与侧光等可能的光照情况,含有两类遮挡干扰物:云雾和机翼。图像大小为640像素×512像素和320像素×256像素,原始图总共2 985张,含10 435个实例,其中中波红外占95%,为主要图像,增广后得到近1万张图,并通过开源工具进行标注,标签格式为类别代号、矩形中心横坐标、矩形中心纵坐标、矩形宽、矩形高。为满足算法的训练和评估,将整个数据集的4/5作为训练集,1/5作为验证集。
4.2 实验条件配置
本文实验的训练和测试过程均在Ubuntu16.04.1的64位操作系统下进行,中央处理器(CPU)为8核Inter(R) Core(TM) i7-6700k,图像处理器(GPU)为NVIDIA Corporation GP104 GeForce GTX 1080,并以开放的CUDA8.0运算平台作为加速器。
训练阶段采用动量项0.9的异步随机梯度下降,权值的初始学习率为0.001,衰减系数为0.000 5,最大迭代次数为20 000,在10 000和15 000次迭代时降低学习率。训练时以64张图为一个批次进行处理,一个批次内每8张图统计一次训练结果。本文的训练使用了3核GPU,并开放了Opencv选项。
4.3 实验结果及对比分析
4.3.1 多尺度特征分析
实验中首先对3个维度的特征进行可视化显示,如图5所示。通过图5可以看到低维特征集中在轮廓和灰度值上,而高维特征更加复杂抽象且同类特征聚集区域明显,因而高低维特征包含不同的语义信息,证明多尺度特征融合对提高检测精度是有意义的。
图5 卷积特征效果图Fig.5 Convolution features
4.3.2 算法性能验证实验
实验用相同条件下训练出的改进YOLOv2算法和其他基于深度学习的检测算法对两个城区的多种场景图像进行批量检测。检测框的概率阈值设为0.5,改进算法的检测效果如图6所示。图6结果表明本文的改进YOLOv2算法能在复杂背景下准确地检测出不同类型的遮挡物。
图6 改进YOLOv2算法检测结果图Fig.6 Detection result of improved YOLOv2
为了对本文提出的算法进行量化评价,这里利用目标检测领域广泛应用的准确率、召回率、F1值和帧频4个指标对实验结果进行分析和比较,结果如表1所示。
表1 多种算法检测效果量化对比
通过表1的统计数据可知,在本文的自建数据集上改进的YOLOv2算法较其他目标检测算法有着更好的性能表现。这是因为本文算法在主体上仍然使用的是YOLOv2的单通道全卷积网络结构,且将BN层与卷积层合并,速度上具有较大的优势;同时引入多尺度特征金字塔、动态锚框和中心损失函数,极大地改善了原始YOLOv2算法对于小目标检测精度不高的情况,在精度上达到了可与基于区域建议网络媲美的效果。
同时,本文对比了改进YOLOv2算法在两个城区样本上的测试效果,发现城市B的召回率和平均精度相对较高。经过对目标特性分析可知:云层受光照和地理位置的影响,其成像效果不同,而城市B的不同云层块成像差异较小,所以其测试样本和训练样本的相关性较强,测试效果更好。
4.3.3 不同改进点效果对比实验及分析
为了证明多尺度金字塔模型、动态锚框、改进分类损失函数和改进CBL模块对遮挡干扰检测的有效性,采用控制变量法进行对比实验,6种方法由上述不同的改进点组合而成,结果如表2所示。
表2 不同方法检测效果对比
对比实验采用准确率、召回率和帧频为评价指标。对比方法1和方法2发现,引入多尺度特征金字塔能够较为明显地提高约2%的检测率,这是因为网络在检测时可以对底层特征进行复用,而底层特征往往包含大量的小目标信息,对于分布较散的云层遮挡检测具有较好的鲁棒性;对比方法2和方法4发现,动态锚框的引入使得检测精度提升了约1%,这是因为动态锚框生成的是针对该样本的最优锚框,能够较好地覆盖样本中遮挡物的形状大小;对比方法4和方法5发现,引入中心损失函数对原分类模型进行约束,检测精度提升了约0.7%,这是因为类内不紧凑、类间不分散的现象得到改善,分布较散的云层漏检和误检情况有所降低;对比方法5和方法6发现,改进CBL模块,在不损失检测精度的基础上,帧频可以提高8帧,使整个改进YOLOv2算法的速度与原始算法基本相同,平衡了其他改进措施对检测速度上的损耗,保证了算法的实时性。
4.3.4 算法泛化能力验证实验
本文数据集主要为城区中波红外图像,但实际应用中场景和成像特点较为广泛,本文利用少量的长波红外与可见光图像来验证网络的泛化能力,以应对不同的成像条件、场景的需求,测试结果如图7和表3所示。由图7和表3可知,改进YOLOv2算法对其他两类成像机制具有一定的泛化性,图像增广对提高模型的跨模态检测能力有一定的帮助,对解决异构多源图像自动目标识别问题有一定的借鉴意义。当然,从测试的平均精度上看,异源的结果要低于同源的结果,说明仅仅通过数据增广还不能完全满足需求,还需专门针对该问题进行网络优化和参数调整。
图7 异源图像检测结果图Fig.7 Detection results of images from different sources
测试集图片数量/个召回率/%准确率/%长波红外10082.385.5可见光5083.185.4
5 结论
针对工程应用中亟需对红外图像遮挡干扰区域定位和类型判断的需求,本文提出了一种改进YOLOv2的遮挡干扰检测算法。算法分析与实验结果表明:
1)算法通过引入多尺度特征金字塔模型、动态锚框机制以及对CBL模块的改进,实现多层特征信息的融合复用,且可以动态优化锚框,简化了运算过程,对于遮挡干扰具有更好的检测精度和效率。
2)算法通过引入中心损失函数对交叉熵损失函数进行优化,提高类间分散性与类内紧密性,对于遮挡干扰的分类能力更强。
3)算法的网络层数适中,平衡了速度与精度,可满足算法工程化时的低复杂度要求。
4)在算法训练前,通过一定的增广手段对训练样本进行扩充,对提高算法性能具有很大的帮助。
5)算法的检测框为标准矩形,在云层分散时会引入一些无用的背景信息,后续工作可以考虑使用分割类算法,实现精细化的全场景理解。