目标检测-Owo Stage-YOLOv2

文章目录


前言

根据前文目标检测-One Stage-YOLOv1可以看出YOLOv1的主要缺点是:

  • 和Fast-CNN相比,速度快,但精度下降。(边框回归不加限制)

YOLOv2提出了一些改进策略,如anchor-based等


提示:以下是本篇文章正文内容,下面内容可供参考

一、YOLOv2的网络结构和流程

  1. 将影像输入卷积网络(DarkNet-19+残差连接)得到13 × 13特征图
  2. 引入anchor机制,与SSD不同的是,每个特征点对应5个anchor,且anchor的大小是由VOC 和 COCO数据集聚类得到的

ps:由于变为anchor-based算法,预测框由YOLOv1的98个变为845(13 × 13 × 5)个,mAP由69.5略微降到69.2,召回率却由81大大提升至88

  1. 将上一步得到的anchor输入分类和边框回归器
  2. 使用非极大值抑制NMS去除冗余窗口

下图可以比较清晰的看出YOLOv2的主要结构

其中,DarkNet-19的结构如下:

更详细的参数如下:

ps:上图中可以看出,残差连接时要保证两个特征图w,h的一致(从通道上进行拼接),这里通过PassThrough层将之前层的特征图进行了w,h的缩放,以和更深层特征图保持一致,PassThrough层的基本原理如下图:

之所以不用池化下采样,是想通过PassThrough保留featureMap的更多细节

二、YOLOv2的创新点

预处理

  • 使用了标准的数据增强方法:随机裁剪、旋转(random crops, rotations);色调、饱和度(hue, saturation);曝光偏移(exposure shifts)

网络结构

  1. backbone:改为Darknet-19,Darknet-19 的性能基本与 Resnet34 差不多,使得网络更轻量更快
  2. 引入了BN(Batch normalization) ,其优点如下:
    • 加快收敛;
    • 改善梯度,远离饱和区;
    • 允许大的学习率;
    • 对初始化不敏感;
    • 相当于正则化,使得有BN层的输入都有相近的分布;
    • 有了BN之后,就可以不用dropout了,或者说不能像原来一样用dropout了,这会导致训练和测试的方差偏移。
  3. 加入了anchor机制
  4. 细粒度特征(Fine-Grained Features):将最后一个最大池化层前的特征图经过Pass Through与后面的卷积特征图进行合并,Pass Through就是四分后再concat

训练

  1. 高分辨率的预训练,采用了448的输入进行微调,以便网络更好地处理更高分辨率的输入
  2. 多尺度训练:Yolov2每10个batches就会随机换一下输入的尺度({320, 352, ..., 608}),使得模型泛化于不同尺度的输入,这得益于adaptive pooling层。高分辨率的输入速度慢,但是对小目标的检测效果要好很多,低分辨率的输入速度快
  3. loss略微改动:(真阳样本的定位误差、confidence误差、分类误差)、预测框和anchor定位误差、负样本置信度误差,且5个子loss均有一个权重超参数
  4. 预测输入从448变为416,目的是让得到的feature map的size是一个奇数。这样的好处是,许多图片的中心点都是某个物体的中心,奇数保证中间是一个格子,而不是偶数那样四个格子抢占中心点
  5. 尝试了一种分类和检测的联合训练策略,类别数据集用于分类训练,检测数据集用于边框回归和分类,同时为了统一COCO数据集和ImageNet数据集类别,提出了一种层级分类方法

总结

通过网络结构和改进和一些tricks,YOLOv2精度大大提升,同时通过多尺度训练,使得相同的YOLOv2模型可以在不同的大小下运行,从而轻松实现速度和精度之间的折衷。

  • 在67 FPS的速度下,YOLOv2在VOC 2007上达到76.8mAP。
  • 在40 FPS的速度下,YOLOv2在VOC 2007上达到78.6mAP,性能优于当时的SOTA,如SSD和Faster RCNN ResNet,同时运行速度更快。
相关推荐
TG:@yunlaoda360 云老大2 小时前
腾讯WAIC发布“1+3+N”AI全景图:混元3D世界模型开源,具身智能平台Tairos亮相
人工智能·3d·开源·腾讯云
这张生成的图像能检测吗3 小时前
(论文速读)Fast3R:在一个向前通道中实现1000+图像的3D重建
人工智能·深度学习·计算机视觉·3d重建
心 爱心 爱3 小时前
Shape-Guided Dual-Memory Learning for 3D Anomaly Detection 论文精读
计算机视觉·3d·异常检测·工业异常检测·三维异常检测·多模态工业异常检测·二维异常检测
兴趣使然黄小黄5 小时前
【AI-agent】LangChain开发智能体工具流程
人工智能·microsoft·langchain
出门吃三碗饭6 小时前
Transformer前世今生——使用pytorch实现多头注意力(八)
人工智能·深度学习·transformer
l1t6 小时前
利用DeepSeek改写SQLite版本的二进制位数独求解SQL
数据库·人工智能·sql·sqlite
说私域6 小时前
开源AI智能名片链动2+1模式S2B2C商城小程序FAQ设计及其意义探究
人工智能·小程序
开利网络6 小时前
合规底线:健康产品营销的红线与避坑指南
大数据·前端·人工智能·云计算·1024程序员节
非著名架构师7 小时前
量化“天气风险”:金融与保险机构如何利用气候大数据实现精准定价与投资决策
大数据·人工智能·新能源风光提高精度·疾风气象大模型4.0
巫婆理发2227 小时前
评估指标+数据不匹配+贝叶斯最优误差(分析方差和偏差)+迁移学习+多任务学习+端到端深度学习
深度学习·学习·迁移学习