基于深度学习的目标检测算法研究与应用综述张阳婷
张阳婷,黄德启,王东伟,贺佳佳;新疆大学 电气工程学院,乌鲁木齐 830017
摘要:
- 总结基于深度学习的目标检测技术
- 比较两阶段和单阶段网络架构的优缺点
- 分析经典算法的改进策略及应用现状
- 指出未来的研究方向
前言:深度学习推动目标检测发展;传统方法局限,深度学习模型表现卓越;两阶段和单阶段算法架构的比较;分析主干网络、数据集、评价指标及改进策略、强调平衡检测精度与速度来支持实时应用。
目标检测体系结构
- two-stage架构
R-CNN、、SPPNet、、Fast R-CNN、、Faster R-CNN、、Mask R-CNN、、Sparse R-CNN
**什么是R-CNN?**R:region
系统结合了区域建议和CNN,命名R-CNN:具有CNN特征的区域
- one-stage架构
OverFeat、、SSD、、YOLOv2、、YOLOv3、、YOLOv4、、YOLOv5、、YOLOv6、、YOLOv7
骨干网络
- 复杂的骨干网络
ZFNet、、VGGNet、、Inception、、ResNet
- 轻量级骨干网络
SqueezeNet、、Xception、、MobileNet、、ShuffleNet、PeleeNet
数据集与评价指标
- 数据集
ImageNet、、MS COCO、、PASCAL VOC、、DOTA、、WIDER Face、、KITTI Vision Benchmark Suite、、MVTec AD
- 评价指标
经典目标检测算法的改进策略
- 模型结构改进
引入更深的网络结构、、轻量级模型结构
-
损失函数设计
-
区域生成方法改进
-
上下文信息利用
引入注意力机制、、特征融合策略
-
数据增强技术
应用现状
- 人脸检测
- 显著目标检测
- 行人检测
- 遥感图像检测
深度学习的目标检测算法改进综述
杨 锋,丁之桐,邢蒙蒙 ,丁 波;山东中医药大学 中医学院,济南 255424
摘要
- 对传统目标检测和基于深度学习的目标检测两大类型进行综述
- 注意力机制、轻量型网络、多尺度检测、
前言
分类对比传统算法和基于深度学习算法;CNN模型;实时性差检测精度低;
文献总结:现有文献未能系统深入分析各类算法的网络结构、优势和性能对比,部分研究对单阶段和两阶段算法的改进进行了梳理,但未有效分类优化方案;
本文贡献:精确划分检测算法步骤,将改进方法归纳到具体步骤中,总结出通用的两阶段目标检测算法改进方式。将注意力机制分为通道注意力和空间注意力机制,丰富相关技术。总结通过优化网络结构提高检测精度的方法。
数据集与评价指标
-
数据集
Caltech数据集、、PASCAL VOC数据集、、ImageNet数据集、、MS COCO数据集、、Open Images数据集、、DOTA数据集、、TT100K数据集、、KITTI数据集、、TinyPerson数据集
-
评价指标
检测速度、、准确率、、召回率、、平均精确率、、mAP
基于候选区域的目标检测算法
- 基于Faster R-CNN的改进研究
- 对特征融合板块的改进研究
- 对ROI pooling操作模块的改进研究
- 对RPN的改进研究
- 对NMS的改进研究:提高预选框的选取精度、提高训练速度
- 基于R-FCN的改进算法
- 基于Mask R-CNN的改进算法
基于回归的目标检测算法
- YOLO系列算法改进
- SSD系列算法改进
其他改进方法
-
引入注意力机制
通道注意力机制、、空间注意力机制
-
轻量级网络
-
多尺度检测
解决多尺度目标分类问题、、解决多尺度目标定位问题、、解决多尺度目标检测问题
Rich feature hierarchies for accurate object detection and semantic segmentation Tech report (v5)
Ross Girshick Jeff Donahue Trevor Darrell Jitendra Malik’;UC Berkeley
论文概述:改论文提出了一种名为R-CNN(Regions with CNN features)的物体检测和语义分割方法,该方法结合了卷积神经网络(CNN)和去区域提议(region proposals)技术,实现了在PASCAL VOL数据集上物体检测性能的显著提升。
主要贡献
- 提出了R-CNN方法:该方法利用高容量的卷积神经网络对自底向上的区域进行特征提取和分类,从而实现物体的检测和分割。
- 监督与训练与微调:当标注的训练数据稀缺时,论文提出先在一个辅助任务上进行监督预训练,然后在特定领域数据上进行微调,这样可以显著提高性能
**RNN检测系统具体方法:**由三个模块组成
- 区域提议模块:生成与类别无关的区域建议,这些提议定义了检测器可用的检测候选集。文献中使用选择性搜索来生成大约2000个区域建议
- **特征提取模块:**使用大型CNN从每个区域提议中提取固定长度的特征向量。CNN架构包括5个卷积层和2个全连接层,通过前向传播计算特征
- 分类模块:使用特定类别的线性支持向量机(SVM)对每个区域进行分类。给定图像中所有评分区域,应用贪婪的非最大抑制来拒绝与更高评分选定区域具有较大交并比(loU)重叠的区域。
实验结果及解决问题
- 显著提升了目标检测的性能
- 通过将高容量的卷积神经网络(CNNs)应用于自下而上的区域提议中,以实现对象定位和分割,R-CNN方法在PASCAL VOC 2012数据集上实现了53.3%的平均精度均值(mAP),相比之前的最佳结果提升了30%以上。
- 在200类ILSVRC2013检测数据集上,R-CNN也显著优于之前表现最好的OverFeat方法,mAP从24.3%提高到31.4%。
- 对于标记数据稀缺(导致目前可用的数据不足以训练大型CNN)的应对
- 当标记的训练数据稀缺时,采用在大型辅助任务(如ILSVRC分类任务)上进行监督预训练,随后在特定领域数据集(如PASCAL VOC)上进行微调的方法,可以显著提升性能。
- 实验结果显示,微调操作使mAP性能提高了8个百分点,R-CNN在VOC 2010上的mAP达到54%,而高度调整的、基于HOG的可变形部件模型(DPM)的mAP仅为33%。
遗留问题
- 重复计算:R-CNN通过Selective Search方法生成约两千个候选框,这些选框都需要单独经过CNN网络提取特征。由于候选框之间会有重叠,因此存在不少重复计算,导致计算量依然很大。
- **速度慢:**R-CNN的处理效率速度还是很慢的
- 输入图像的尺寸限制:只有特定的尺寸才能进行图像的输入。强行输入尺寸图片会导致图片变形,以影响检测的性能。
总结:
- 首先是我导给了我两篇综述关于目标检测方向,而我看完这两篇综述后发现对于R-CNN这个词被提到的次数繁多,于是我就找到了2014年发布的这个最开始R-CNN起源的一篇英文文献以供阅读。
- 我看网上都说文献要重复读好多遍,我其实只读了一遍,我发现我读第二遍还是跟第一遍一样,读完也啥也不知道,而且也不能总揽全局以及发现他到底研究了什么,发现了什么,训练了什么。。。到底是该先总体看完之后,一段一段精度记笔记,还是全体阅读再去根据自己的话说出来文献之内要呢?前者我目前勉强能做到,可是后者显然就有点颤畏,因为我全体读完还是不知道读的什么,,都说多读几遍多读几遍,但是我感觉,方法是核心要义吧。像有些人学习一样,一天坐在那里学,还不如别人一个小时学的东西效率高,这种之所谓“假学习”在我身上是否也体现的淋漓尽致,希望下次再来的时候,会有更多的感悟和收获。