网站导航做外链,建设银行短信带网站,百度域名注册流程,上海小程序开发公司排名源自#xff1a;电子学报
作者#xff1a;陈立 张帆 郭威 黄赟 李继中
“人工智能技术与咨询” 发布
摘 要
遥感场景下的高实时目标检测任务具有重要的研究价值与应用意义. 针对当前遥感图像目标检测模型由于目标多角度、排列密集以及背景复杂从而导致检测速度慢的…源自电子学报
作者陈立 张帆 郭威 黄赟 李继中
“人工智能技术与咨询” 发布
摘 要
遥感场景下的高实时目标检测任务具有重要的研究价值与应用意义. 针对当前遥感图像目标检测模型由于目标多角度、排列密集以及背景复杂从而导致检测速度慢的问题 提出一种级联式逆残差卷积结构Cascaded Inverted Residual Convolution CIRC. 该结构采用深度可分离卷积作为基本卷积单元 快速提升模型计算能力在此基础上 通过转置通道矩阵与级联深度卷积 并增加残差连接层数 达到强化目标多维特征的目的进一步进行多级模块堆叠 提高模型对目标的检测效果. 本文在RetinaNet基础上 利用CIRC设计了一个快速的轻量化目标检测网络—CIRCNCascaded Inverted Residual Convolution Net. 同时 在训练阶段引入角度变量并参与反向传播 在推理阶段对水平框加入角度偏置 有效提高定向目标与检测框匹配度. 在DOTA数据集上的实验结果表明 CIRCN在精度略受损失的情况下 检测速度达到42 fps 比基准算法提高了3.5倍. 结果验证了所提算法的有效性与可靠性.
关键词
遥感图像 / 目标检测 / 模型轻量化 / 深度可分离卷积 / 级联式逆残差卷积 / 通道混排
1 引言
目标检测Object Detection是计算机视觉和图像处理领域最具挑战性的分支之一旨在提取目标特征并得到感兴趣区域完成对象的检测与识别.近年来随着遥感技术的快速发展针对遥感图像的目标检测方法由于能够按照特定需求对海量数据进行自动化分析因此被大量应用于城镇建设、交通规划、地表勘测等重要方面具有重大的民生意义.
传统的目标检测方法一般按照人工选择检测窗口、获取图像特征、设计分类器的步骤进行检测这种方式会产生大量无关特征增加算法复杂度的同时影响模型鲁棒性1.随着深度学习在人工智能领域的全面铺开基于卷积神经网络2Convolutional Neural Networks CNN的目标检测方法利用高效卷积运算的方式显著降低模型参数量在水下生物检测3、车道线检测4、人脸识别5等诸多视觉场景中均取得良好结果.目前按照检测阶段的划分将基于CNN的目标检测方法分为双阶段检测器和单阶段检测器6.双阶段检测器使用区域候选网络Region Proposal Network RPN生成候选兴趣区域相比于单阶段检测器更具有精度优势单阶段检测器则在一个阶段内完成目标的分类与回归操作因此在检测速度方面更胜于双阶段检测器代表算法有YOLOYou Only Look Once7系列与SSDSingle Shot MultiBox Detector8系列等.
尽管CNN配合GPUGraphics Processing Unit等计算设备已经大幅提高目标检测模型的检测速度但是在遥感图像领域卷积神经网络的计算量与存储量依然是制约其工业落地的一大瓶颈. 在图1所示的两种场景下与自然场景下的水平拍摄角度不同遥感图像以俯瞰视角成像所包含的地表物体属于特定目标具有角度任意性、空间密集性、尺度多变性以及背景复杂性等特点为解决这些难点研究者们对此付出了巨大努力. 对于小目标的检测改进现有的遥感图像检测方法往往会引入特征金字塔网络9Feature Pyramid Network FPN并在其基础上进一步改良用以更好的融合多维度特征较为出名的有PANet10、AugFPN11以及BiFPN12等.然而FPN及其变体引入大量计算参数导致模型结构冗余为适应目标的多角度特性 Ma等13提出的RRPN首次采取角度枚举法利用密集锚框贴合目标的旋转角度类似的方法还有EASTEfficient and Accuracy Scene Text 14以及R2CNNRotational Region CNN15等等但是枚举过程需要大量的卷积计算支撑频繁的数据输入输出增加多余计算量在暴力枚举的思想基础上Yang等16提出R3Det算法利用特征精修模块Feature Refined ModuleFRM同时提高检测速度与精度Ding等17则是使用快速的旋转池化方式PS RoI Pooling在不需要增加锚框数的情况下通过削减特征通道数来提高双阶段检测器的检测效率.上述方法从训练方式、特征融合、锚框设计等不同角度对遥感图像检测方式进行探索在一定程度上改善了遥感图像的多类难题但是由于网络仍然采用大量的普通卷积计算在不考虑计算载体性能的情况下当图像大小以及像素密度增加时其时间复杂度将迅速提高使得检测模型的推理时间很难满足实际应用场景下实时性的要求.因此如何在保证检测精度的情况下实现一种快速的遥感图像目标检测方法是值得研究的一个方向. 图1 两种拍摄场景下的目标对比
(a) 水平拍摄角度 (b) 俯瞰拍摄角度 鉴于遥感场景下目标检测模型效率不高的问题为减少模型计算量降低算法实际运行时间结合模型轻量化思想提出一种小体积计算、低延时功耗的级联式逆残差Cascaded Inverted Residual Convolution CIRC轻量卷积方式并利用CIRC的叠加性构建新的特征提取网络同时对h-swish函数进行改进来优化基础网络的性能.本文在RetinaNet18的结构基础上引入旋转角度变量并结合CIRC设计了基于级联式逆残差结构的目标检测网络Cascaded Inverted Residual Convolution Net CIRCN实现对遥感图像目标的快速精准检测.
2 模型轻量化
相较于传统神经网络卷积神经网络利用稀疏连接和权值共享有效减少模型训练参数19在图像处理方面拥有独特的优越性.可是普通卷积难以满足特定场景及移动端设备对模型低延时的要求这促使卷积神经网络模型结构开始朝轻量化方向发展.模型轻量化的方式主要包括结构轻量化、模型压缩、知识蒸馏、量化剪枝等方面.其中结构轻量化直接从模型设计层面出发设计轻便式网络结构来有效减少计算量并降低模型实际运行时间.2017年Landola等20提出SqueezeNet该网络使用 卷积代替部分 卷积并通过减少输入通道数以及后置降采样来减少参数同年谷歌提出MobileNet21引入深度可分离卷积22构建网络大大减少模型大小和计算量为解决MobileNet使用ReLURectified Linear Unit 23函数破坏低维度特征信息的问题MobileNetV224在其基础上提出倒残差块Inverted Residuals Block该残差块结构只在输入与输出矩阵形状相同时使用对输入通道先升维后降维并使用Linear函数替换最后一层的激活函数ReLU6从而避免非线性函数破坏太多信息MobileNetV325则使用自动网络架构搜索技术26Neural Architecture Search NAS来寻找最佳的神经网络结构但这种方式在搜索阶段需要耗费巨大计算量对设备要求较高除了MobileNet系列外旷视提出的ShuffleNet27系列网络提出分组点卷积pointwise group convolutions和通道混排channel shuffle方法增加通道间信息交互的同时有效降低计算量.此外Wang等28提出的PeleeNet网络以及Han等29提出的GhostNet都在上述轻量化代表模型的思想上进行改进并取得较好的效果.
3 RetinaNet算法
2018年Lin等18提出一种新的损失函数Focal Loss用以解决单阶段检测器速度快但是精度落后于双阶段检测器的问题.Lin等人认为造成精度落后问题的核心原因在于图像中前背景foreground-background样本的极端不均衡导致的.为了解决这一问题Lin等这样定义Focal Loss 1 2
其中 r为常数 p表示类别 y为1时所得到的预测概率.
可以发现当 r0时Focal Loss即为普通的交叉熵函数若 r0pt 的增加会导致系数 (1-pt)r 的降低这就有效降低了简单样本的影响使得模型更注重于困难样本的训练.为了验证Focal Loss的效果Lin等设计了Retinanet算法RetinaNet网络结构可分为残差网络30Residual Network ResNet、特征金字塔网络Feature Pyramid Network FPN、分类子网络和回归子网络四个部分.首先图像作为ResNet的输入有效提取相应特征其次将相应特征通过FPN进行多尺度提取并强化利用从而获得包含多层上下文语义信息的特征图Feature Map最后将特征图送入分类子网络Class Subnets和回归子网络Box Subnets进行对象的分类与边框回归.
RetinaNet算法在单阶段检测算法中取得了较好的效果.原文实验结果表明当骨干网络backbone选取为Resnet-101图片输入的分辨率为800*800时RetinaNet的平均精准率Average Percision AP超越双阶段检测器中的Faster R-CNN算法使得单阶段检测器在耗时更低的情况下也能具备比双阶段检测器更优的性能.
4 CIRCN网络
4.1 网络整体结构 图2展示了CIRCN的网络整体结构网络共分为3个部分基础网络CIRC网络、特征金字塔网络以及分类与回归子网络.CIRC网络主要由 卷积核图例蓝箭头所示、 卷积核图例绿箭头以及CIRC模块图例红箭头所示具体操作详见4.2节按照不同步长及重复次数顺序堆叠用以扩张特征图通道提取图像初始特征特征金字塔网络将基础网络生成的特征提取层 C3(100×100)、 C4(50×50)和 C5(25×25) 作为输入同时以 C5为基本特征层首先进行上采样操作图例黄箭头所示两者进行加法操作图例蓝方块所示得到 P3(100×100)、 P4(50×50)与 P5(25×25) 三个尺度的特征图之后进行卷积操作图例紫箭头所示得到尺寸更小的 P6(13×13)和 P7(25×25)两个特征图.分类与回归子网络分别由五个 3×3大小的卷积层顺序组成其中除最后一层外其余四层均添加Relu函数.分类网络产生不同类别的可能得分并通过Sigmoid函数形成概率分布回归子网络则是在原有四元组坐标偏置基础上增加方向信息产生偏置五元组 利用五参数表示法生成旋转检测框并对其可视化. 图2 CIRCN的网络整体结构 4.2 卷积轻量化 4.2.1 深度可分离卷积单元
为有效减少计算参数本文使用深度可分离卷积替代标准卷积对CIRC网络进行相关设计.基于通道域与空间域相互独立的假设深度可分离卷积将标准卷积拆分为深度卷积Depthwise Convolution与点卷积Pointwise Convolution两个部分.图3和图4描述了普通卷积与深度可分离卷积的执行过程假设输入特征图 F的尺寸为 HF×WF×CM经过尺寸为 HK×WK×Cm×Cn的标准卷积核 K后得到尺寸为 HF×WF×Cn的输出特征 F所需要的计算量为 3
其中HK×WK与 HF×WF 分别是卷积核 K 和输入特征 F的大小 C1与 C2是输入特征和输出特征的通道数. 图3 标准卷积执行过程 图4 深度可分离卷积执行过程 在输入与输出特征尺寸相同的情况下若使用深度可分离卷积进行操作深度卷积首先对每个输入通道应用单个卷积核此时所需要的计算量为 4
此时再使用大小为 1×1的卷积核点卷积对深度卷积输出结果进行线性组合此时需要的计算量为 5
因此通过拆分卷积为深度方向和点方向两个步骤的方式深度可分离卷积相较于标准卷积的计算量减少率为 6
式6中可以看出深度可分离卷积大大减少了原有标准卷积的计算量例如MobileNet使用 3×3的卷积核时在精度损失很小的情况下降低了近9倍的计算时间.因此本文使用深度可分离卷积作为基础卷积单元是有效的.
4.2.2 级联式逆残差结构
深度可分离卷积可以有效降低模型FLOPsFloating Point of Operations但是它却忽略了必要的逐元素操作element-wise operation所带来的内存访问成本Memory Access Cost MAC提高包括激活函数、张量加法等等.除此之外频繁的IO读写、GPU并行策略以及卷积核的加载等因素均会影响模型的检测速度.因此综合考虑上述因素及遥感图像的相关特性本文提出包含通道混排的级联式逆残差模块如图5所示. 图5 两种步长的CIRC结构
(a)步长为1 (b)步长为2 4.2.2.1 通道拆分与混排
根据输入输出通道数相同可以最大化降低内存访问成本29的原则如图5a所示在模块初始阶段步长为1进行通道拆分操作. 假设输入特征 F通道数为 L在通道拆分层将其均分为 L1L2L/2 L1进入后续卷积层得到高维特征 L2利用跳跃连接直接与 作拼接使得输出特征通道数等同于输入特征.在图5b情况下由于卷积步长为2此时通道数需要扩充至原有数目的2倍因此并不需要进行通道拆分.此外由于遥感图像目标的特征通道繁杂在骨干网络生成的 C3、 C4和 C5层通道数分别达到了512、1 024和2 048若在通道拼接后不作任何处理会导致通道信息沟通阻塞弱化重要的目标特性包括边缘轮廓以及内部纹理等等.因此为增强多通道间联系在拼接操作之后使用ShuffleNet的通道混排channel shuffle操作 7 8
其中 Cm表示特征图 F的通道数 (g⋅n)表示对 Cm分成 g组每组包含 n个通道之后对四维矩阵 HF×WF×g×n进行 g和 n维度上的转置 最后对矩阵重新进行维度融合得到混排后的特征图矩阵HF×WF×Ct通道混排的流程如图6所示. 图6 通道混排流程 4.2.2.2 逆残差卷积级联
正向残差块利用逐点卷积对特征图通道先降维再升维的做法在自然图像的检测模型中已被证明有助于提高精度28.然而卷积层提取的特征取决于原始特征维度由于遥感图像的目标尺度差距大排列密集程度高因此需要更丰富的特征.若利用正向残差先对特征图进行压缩卷积层所提取的特征会更加有限从而导致检测精度的降低.因此本文对残差模块进行改进结合SandGlass模块思想31设计图5a、b虚线框内所示的级联式逆残差结构该结构分为顺序分支和跳跃分支分别可作如下数学表达 9 10 11
其中 F表示输入特征图 函数表示第 i 次点卷积和深度卷积 表示顺序分支和跳跃分支的计算值.顺序分支由一个深度卷积级联一个逆残差模块组成首先深度卷积属于轻量化卷积方式几乎不会对计算成本造成影响同时可以弥补 1×1卷积无法编码空间特征信息的局限性保证目标空间信息的完整性其次逆残差模块中的两个逐点卷积对特征图维度先升维再降维这一过程可以看作是残差的“逆过程”目的是为了增加深度卷积所处理的通道数从而丰富特征数量进一步提高检测精度.跳跃分支步长为2由两个深度卷积和一个逐点卷积组成末尾的深度卷积用于特征图的缩放.本文相比ShuffleNet增加了跳跃分支的连接宽度这有助于顶层高维特征保留更多的底层信息从而有效缓解遥感图像中小目标特征的丢失问题降低检测误差率.
4.2.2.3 激活函数改进
在低维空间尽可能保留感兴趣特征是十分必要的.常用的激活函数Relu因其以0为界的分段特性使得对低维空间的特征流形破坏较大25.因此在最后一层逐点卷积之后使用线性激活函数替代原有的Relu函数.同时Relu函数的输出上限为无穷大这会导致在低精度的情况下出现数值溢出从而造成精度损失.因此考虑到激活函数的缺陷以及计算成本本文将h-swish函数设置为深度卷积之后新的激活函数并对其进行简单改进将h-swish函数的上限值设置为6.改进后的h-swish函数公式如下 12
4.2.3 整体流程
基于本文所设计的CIRC模块将轻量级骨干网络的整体架构按表1所示方案设计如下.网络主要由级联式逆残差模块按照不同步长堆叠而成前两层采用标准卷积主要目的是对输入图像进行初始降采样与通道线性变换.阶段2至阶段5采用CIRC模块根据已有研究24逆残差的卷积通道扩张倍数设置为5~10区间内时会产生几乎相同的性能因此本文将通道扩张倍数设置为6.每个模块均按照步长先2后1 的顺序进行卷积操作考虑到计算量将步长为2的卷积操作重复次数设置为1步长为1的卷积操作次数在阶段2和阶段3设置为7阶段4和阶段5设置为3. 表1 基于CIRC的基础网络整体流程 5 实验评估
为了更好的探究基于CIRC的轻量化模型CIRCN对遥感图像目标的检测性能在DOTA32数据集上设计精度与速度的对比实验.实验运行环境见表2. 表2 实验运行环境 5.1 数据集介绍 DOTADataset for Object Detection in Aerial Images是遥感图像领域的大规模公开基准数据集用以评估计算机视觉任务的模型性能.本文使用的DOTA-v1.0版本包含来自多个传感器平台的约2 800张图像图像大小从800×800像素到4 000×4 000像素不等并按照123的数量比例分为验证集、测试集和训练集数据集共标记15种常见类别的188 282个检测对象包括直升机Helicopter HC、游泳池Swimming Pool SP、港口Harbor HA、环岛Roundabout RA、足球场Soccer Ball Field SBF、储罐Storage Tank ST、篮球场Basketball Court BC、网球场Tennis Court TC、船舶Ship SH、大型车辆Large Vehicle LV、小型车辆Small Vehicle SV、田径场Ground Track Field GTF、桥梁Bridge BR、棒球场Baseball Diamond BD和飞机Plane PL.
5.2 评估标准 评估标准按照性能指标分为精度评估标准与速度评估标准两大类.精度评估根据平均精度均值mean Average Precision mAP进行评判平均精度均值是 平均检测精度Average Percision AP在多类别条件下的平均值该指标融合召回率Recall与精准率Percision是目前目标检测模型最重要的精度评估指标速度评估标准包括局部指标与整体指标局部指标包括模型参数量、图像预处理时间、内存读取时间、实际运行时间整体速度指标使用每秒检测帧数展开评估.其中模型参数量表征模型容量与计算量包括图节点的权重偏置以及卷积层参数图像预处理时间指的是测试集原始图像被裁切为800×800 pixel规格子图的过程用时内存读取时间包括模型加载和逐元素操作等消耗用时实际运行时间指的是模型利用GPU在网络图结构上的实际推理时间反映检测网络的实际效能每秒检测帧数通过计算每秒处理的图像数进而判断模型的整体检测速度.
5.3 参数设置 合理的参数调整对神经网络模型的训练与推理是有利的.数据预处理阶段由于单张遥感图像分辨率过大将数据集图像沿正向横纵轴统一裁剪为800×800像素的子图作为模型输入子图像重叠步长为150像素.锚框Anchor设计阶段为适应遥感图像目标的尺度特点在五层特征图 P 3、 P 4、 P 5、 P 6、 P 7的每一个像素点预设15个锚框锚框尺度像素设置为32、64、128、256和512横纵比设置为 {1/5,1/3,1/2,1,2,3,5}缩放比为 {1,21/3,22/3}.实验使用4块GPU开展训练与推理批处理大小Batchsize设置为8.模型进行810 003次训练迭代初始学习率Learning Rate LR设置为 8e-5在23 k次迭代间均匀攀升至 5e-4并保持不变在650 k次迭代降至 5e-5.
5.4 对比实验 5.4.1 速度对比实验
为评估本文模型性能在上述参数配置下进行检测速度对比实验.实验采用DOTA训练集与验证集开展训练过程推理图像则采用测试集.实验共分析三类不同基础网络配置的RetinaNet-R模型以及两类常用遥感目标检测方法与CIRCN在DOTA上的速度性能差异.其中RetinaNet-R表示加入角度信息后的RetinaNet算法三类基础网络分别为ResNet50、MobileNetV2以及DarkNet5333两种遥感图像目标检测算法为R2CNN算法15和RRPN算法13模型共进行900k次训练迭代测试集图片共划分为15 655张800×800像素的子图.记录检测模型的骨干网络参数量Backbone Network Parameters BNP、网络参数量Network Parameters NP、图像预处理时间Preprocess Time PT、内存读取时间Memory Access Cost MAC、实际运行时间Running Time RT以及每秒检测帧数如表3所示. 表3 不同模型的速度性能比较 实验结果可由两方面展开分析1整体上相较于两种常见的遥感图像目标检测算法本文算法的参数量只有97 MiB整体缩减了约4倍体积这极大提高模型的存储性能使得工业设备便于开展进一步的多模型部署优化同时CIRCN在测试集上的内存读取和实际运行时间达到约47.46 s和294.12 s耗时只有RRPN算法的7%和12%检测速度达到42 fps是RRPN算法速度的8倍R2CNN算法速度的40倍这表明本文算法在遥感图像领域具有明显的效率优势.2局部上相较于不同基础网络配置的RetinaNet-R算法CIRC参数量只有ResNet50与DarkNet53的11%与5%但略高于MobileNetV2算法的内存读取时间和实际运行时间相比基础网络为ResNet50的基准算法减少了约近80%耗时每秒检测帧数达到基准算法的3.5倍这证明了CIRC模块在存储与运算上的高效性.
5.4.2 精度对比实验
为全面可靠的对模型性能进行评估继续采用上述算法开展精度对比实验.其中R2CNN算法和RRPN算法均以Faster-RCNN作为基础网络在相同实验环境基础上重新训练至收敛符合控制变量要求.所有算法模型均在DOTA测试集上推理结果交由DOTA官方服务器获得不同类别的平均检测精度AP与mAP如表4所示.图8展示了CIRCN在DOTA上的类别可视化检测结果. 表4 不同算法在DOTA数据集上的检测精度mAP (%) 速度和精度对比实验的综合结果表明1相比R2CNN算法与RRPN算法本文算法在速度提升40倍与8倍的情况下mAP下降了约2%和1%.这证明本文算法在精度损失很小的情况下极大提升了遥感图像目标的检测速度2相较于不 同基础网络配置的RetinaNet-R算法基础网络为MobileNetV2的检测速度虽然略高于CIRC但是两者的检测精度相比基准ResNet分别下降10.73%与3.2%前者的精度降幅远高于后者难以达到实际应用的要求 CIRC的精度损失对于高实时场景下的遥感图像目标检测可视化是可以接受的这也反映出CIRC模块的轻量化结构设计更适用于遥感图像的目标特点.
由此可知本文算法与其他算法在遥感图像不同指标的比较上均取得较优结果生成模型在高实时检测状态下保证了检测精度具备良好的可靠性. 图7 DOTA部分类别检测结果 5.5 消融实验 为进一步判别CIRC内部模块对遥感图像目标检测的性能影响本文消融实验按如下步骤进行设置基准模型、分离网络模块、进行模型训练和测试图像推理.实验以普通逆残差结构为基准模块激活函数采用Relu函数之后在基准模块上依次加入通道混排、级联逆残差以及改进后的h-swish函数.为保证实验结果的可对比性模型的训练与测试参数均保持严格一致.表5给出不同子配置网络消融后的精度变化. 表5 CIRC模块消融实验 实验结果显示通道混排操作通过融合遥感图像的多通道特征来增强目标的多维信息达到初步强化的效果提高模型2.13%的mAP值级联逆残差模块通过更宽的跳跃连接融合高维度与低纬度的特征对检测精度的提升作用最为显著提高模型4.45%的mAP值由于实验数据采用较高的float32精度因此激活函数的作用并不显著提高0.85%的mAP值.因此三种模块均促进了模型检测精度的提升这证明了CIRC结构设计的有效性.
6 结束语
本文提出了一个基于级联式逆残差网络的遥感图像轻量目标检测算法在基础网络中使用深度可分离卷积快速提升模型计算能力并提出级联式逆残差卷积结构通过强化目标多维特征提高模型对目标的检测效果.在DOTA数据集上的实验结果表明在精度略受损失的情况下本文算法相比基准算法大幅提升了对遥感图像目标的检测速度相比常用的遥感图像目标检测算法同样具备较大的速度优势.由于级联式逆残差卷积结构属于轻量级卷积在后续研究中将继续优化该模块的设计架构例如进行更深层次的堆叠或者引入注意力机制从而弥补模型在精度损失上的不足同时尝试移植到其它检测网络并采用结构重参数化的训练方法提升算法的普适性与鲁棒性.
声明:公众号转载的文章及图片出于非商业性的教育和科研目的供大家参考和探讨并不意味着支持其观点或证实其内容的真实性。版权归原作者所有如转载稿涉及版权等问题请立即联系我们删除。
“人工智能技术与咨询” 发布