基于注意机制的双分支黑烟车辆检测网络*
2022-02-16郭韬远任明武
郭韬远 任明武
(1.南京理工大学计算机科学与工程学院 南京 210094)
(2.南京理工大学高维信息智能感知与系统教育部重点实验室 南京 210094)
1 引言
汽车的普及提高了国民的生活水平,但同时以柴油为动力的车辆排放了大量污染环境的尾气。这些车辆的尾气通常呈黑烟状,含有多种有毒污染物,是我国近年来空气污染的最大源头。过去一般使用人工方法对黑烟车辆进行检测,耗时耗力,研究如何高效地检测黑烟车辆对国家相关部门的环保工作十分有帮助。监控摄像机在交通道路中已经普遍应用,随着近几年AI 技术的发展,开发智能监控系统、自动化从海量视频图像中提取有用的信息已成为可能。目前在道路监控视频中主要使用传统的目标检测技术对黑烟车辆进行检测。针对黑烟车辆使用的传统目标检测方法多数基于背景建模法,文献[1]~[2]通过使用高斯模型法或ViBe法将图像中的前景目标分离出来,接着对前景目标中的车辆尾部进行粗定位得到感兴趣区域,然后在感兴趣区域使用手工设计的特征,如黑烟的颜色、纹理、小波变换特征[3]等进行特征提取,最后通过训练SVM 分类器、Adaboost 分类器、BP 神经网络等进行特征分类,识别出图像中的目标。然而车辆尾部信息复杂,且黑烟自身的低级视觉特征容易受到外界环境因素的影响而发生变化,而手工设计的特征提取器依赖于目标的先验知识,因此传统方法无法满足复杂交通场景下的黑烟车辆检测。
近年来随着硬件计算性能和深度学习技术的快速发展,出现了许多基于卷积神经网络的通用目标检测算法,应用于人脸识别、车辆检测、行人检测等领域都取得了非常好的效果,相对于传统的机器学习方法在准确性上有了很大提高[4]。典型的基于深度学习的目标检测算法大致可以分为两类:基于框的目标检测算法和基于关键点的目标检测算法。区别于传统的基于框的目标检测算法,最近以CenterNet[5]为代表的基于关键点的一系列目标检测算法开拓了目标检测新方向。目标检测本质是对目标的建模,以使用中心和尺寸来对目标建模为例,基于框的目标检测算法本质上是在候选区域或Anchor 空间中回归中心和尺寸的偏差,如两阶段的Faster RCNN[6]系列和一阶段的YOLO[7]系列,区别在于候选区域需要通过RPN 等单独一个阶段来实现,而Anchor 则可以预先设置;而基于关键点的目标检测算法则是直接在像素级水平上直接定位中心,再使用中心处的特征直接回归尺寸,无需候选区域或Anchor 空间。无需候选区域则可以避免二阶段检测速度过慢,无需anchor空间可避免负样本数量过大引起正负样本失衡继而导致难以训练。基于关键点的目标检测算法虽然早在Dense-Box[8]中就初见端倪,但直到CornerNet[9]才具体成型,这得益于人体姿态估计领域关键点定位技术(基于热力图的关键点定位)的日益成熟。在CornerNet 提 出 后,涌 现 出ExtremeNet[10],CenterNet,CSP[11]等一系列基于关键点的目标检测算法。本文目标是设计一个用于视频监控场景下的快速黑烟车辆检测的算法,鉴于CenterNet 在检测速度和效果上都要胜过YOLOv3[12],所以初步选择Center-Net 作为基础方案。另一个选择CenterNet 的关键原因是黑烟没有固定形态,故其尺寸比例分布广泛,难以设计Anchor 的尺寸和比例来覆盖。本文分别统计可视化了黑烟车辆数据集中黑烟和车辆的尺寸散点图,如图1黑烟车辆数据集中的黑烟尺寸散点图、图2黑烟车辆数据集中的车辆尺寸散点图所示,黑烟尺寸散点图分布的角度范围更大且不如车辆尺寸散点图凝聚。
图1 黑烟车辆数据集中的黑烟尺寸散点图
图2 黑烟车辆数据集中的车辆尺寸散点图
2 CenterNet算法原理
2.1 简介
基本思想是用中心点(即目标框的中心点)表示目标,尺寸作为目标性质可以使用图像在中心点处的特征直接回归。关键在于中心点估计,而CenterNet采用全卷积编解码网络架构生成图像的热力图,其峰值点即对应于目标中心点。如图3 所示,整体架构有三部分组成:编码器,解码器,任务组件。其中编码器为常见主干网络,如ResNet[13],DLA[14],Hourglass[15]等,解码器为连续的上采样操作(或者编码完成后解码,或者编解码交互),任务组件包含三部分:热力图定位,偏差回归,尺寸回归。整体网络采用稠密的热力图监督信号学习,其推断无需NMS。
图3 CenterNet整体网络架构
2.2 损失函数
最后,整体检测任务损失如下:
其中λoff,λsize分别权衡偏差回归和尺寸回归的重要性,后面所有实验采用λoff=1,λsize=0.1。
3 基于注意机制的双分支黑烟车辆检测网络
针对CenterNet 在黑烟车辆检测任务上存在的缺陷,本文在其基础上设计了一个基于注意机制的双主干黑烟车辆检测网络。首先黑烟车辆数据集规模过小,无法发挥深度复杂网络的优势。其次,虽然没有公开的黑烟检测数据集,但是公开的车辆检测数据集却很多。针对这一现状,本文决定针对黑烟和车辆目标分别使用一个主干网络提取针对性的特征表示。因为需要检测的黑烟是车辆排出的尾气,所以黑烟一定在车辆周围。首先黑烟远离车辆必会稀薄,其次其他类型的黑烟(如燃烧产生的黑烟)也非本文需要检测的目标,所以靠近车辆的黑烟才是关键。针对黑烟车辆目标检测的关系:黑烟必定在车辆尾部,车辆尾部不一定有黑烟,本文引入注意机制对这种关系进行建模。
基于注意机制的双分支黑烟车辆检测网络架构如图4所示。
图4 基于注意机制的双分支黑烟车辆检测网络架构
基于CenterNet 在黑烟车辆检测上的速度和效果,同时考虑实际应用需求,黑烟编码器和车辆编码器都选取ResNet18,但黑烟编码器中的正常卷积改为可形变卷积(针对黑烟是气态这种特征)。如图4 所示,设黑烟编码器生成的特征图为F1,车辆生成的特征图为F2,则融合后的特征图如下:
其中K为1×1 的卷积和,*表示卷积运算,⊗表示逐元素相乘。其意义是使用车辆特征图F2生成注意机制来指导黑烟特征图,使得黑烟特征图在同时出现黑烟和车辆的区域响应最大,这样可以抑制类似黑烟的背景区域(如阴影,道路上轮胎留下的痕迹等)的响应,可以提升黑烟的检测精度。
4 实验结果及分析
4.1 数据集简介
因目前没有公开的监控场景下的黑烟车辆数据集,所以人工采集并标注了9965 张分辨率为360×640的黑烟车辆图片(共25820个框,其中9070个黑烟框,16750 个车辆框),随机选取其中80%作为训练集,10%作为验证集,10%作为测试集。
4.2 实验设置
为比较各种编码器和解码器在黑烟车辆数据集上的检测效果和速度,本实验尝试了轻量级ShuffleNet V2[16],ResNet 系列,DLA 系列以及Hourglass,其中ShuffleNet V2 和ResNet系列只是作为编码器,解码部分采用如图4所示的常规反卷积上采样,而DLA 系列以及Hourglass 则是编解码交互的架构。训练细节:统一输入图像大小为512×512,选取随机翻转,伸缩(0.6~1.3),裁剪和色彩抖动来增强数据,使用Adam来优化整体损失。推断细节:为进一步提速,没有在测试时做翻转和多尺度;另外,为增加推断速度,将部分前处理运算放入GPU中。
4.3 CenterNet算法准确率
详细的对比实验结果如表1 所示,不仅给出了黑烟、车辆的检测AP及整体的mAP,还测试了检测的速度(包括前后处理)和占用显存。
表1 基于CenterNet的黑烟车辆测试集实验结果
4.4 基于注意机制的双分支黑烟车辆检测网络准确率
对提出的基于注意机制的双分支黑烟车辆检测网络进行了一系列对比试验并进行分析,实验结果见表2。
表2 基于注意机制的双分支黑烟车辆检测网络实验结果
4.5 实验分析
从表1 来看:基于ResNet18 的CenterNet 在黑烟、车辆及整体数据集上都取得了最好的检测效果,且在检测速度及显存占用上与轻量级主干网络ShuffleNetV2 相当。从ResNet34 与DLA34 的结果对比来看,不同深度及分辨率的特征融合确实能提升效果,且只对推断速度造成微弱降低。从ResNet系列及Hourglass 的实验结果来看,增加网络的深度并没有提升检测效果,甚至还不如ResNet18。
此外,车辆的检测效果确实要比黑烟好,这与前面所说的黑烟没有固定形态有关。据此,本文认为增加网络深度却没有提升的原因有两方面:一是黑烟车辆数据集规模过小,无法发挥复杂网络的表示能力;二是没有在其他类似黑烟车辆的大规模数据集上做预训练以进行迁移。鉴于实际应用需求和上述实验结果,本文选择基于ResNet18 的CenterNet作为监控场景下黑烟车辆检测的基本解决方案,并基于上述分析进一步改进基于ResNet18 的CenterNet 网络架构,提出基于注意机制的双分支黑烟车辆检测网络。
从表2 对比结果来看,与预期的一样,基于注意机制的双分支黑烟车辆检测网络对比基于ResNet18 的CenterNet 有了明显提升。其中车辆AP 的提升证明了使用公开车辆检测数据集做迁移学习确实有效,黑烟AP 的提升证明了基于注意机制的特征融合确实能提升黑烟的检测精度。
5 结语
本文将基于深度学习的CenterNet 模型应用于黑烟车辆检测问题,并针对黑烟车辆检测任务做了以下方面的改进:1)本文尝试了多种类型的编码器和解码器,以得出最适合黑烟车辆检测任务的主干网络;2)对于黑烟数据集规模过小导致增加网络深度精度却没有提升的问题,使用双主干网络分别提前针对性的特征表示;3)针对黑烟车辆检测的关系,提出基于注意机制的特征融合,使用车辆特征图生成注意机制来指导黑烟特征图的训练。实验结果表明,基于注意机制的双分支黑烟车辆检测网络相较于CenterNet 在黑烟、车辆AP 及整体数据集上的mAP 都有明显的提升,但是该算法的检测速度降低了不少。