首页 > 其他分享 >《YOLO目标检测》—— YOLO v2 详细介绍

《YOLO目标检测》—— YOLO v2 详细介绍

时间:2024-10-23 22:20:12浏览次数:3  
标签:YOLOv2 卷积 检测 模型 YOLO 19 v2

文章目录


YOLO v2,又称为YOLO9000,是YOLO(You Only Look Once)系列算法中的一个重要版本,由Joseph Redmon等人在2016年提出。该算法在目标检测领域取得了显著的成就,以其高效、准确的特点受到了广泛关注。以下是对YOLO v2的详细介绍:

一、核心原理

YOLO v2将目标检测问题视为一个单个的回归问题,通过在图像上划分网格并在每个网格上预测边界框(Bounding Boxes)和类别概率来实现目标检测。这种方法的优点是能够快速地处理图像并给出检测结果。

二、网络框架

  1. Darknet-19:YOLO v2采用了一个新的基础模型(特征提取器),称为Darknet-19。它包括19个卷积层和5个最大池化(maxpooling)层,主要用于提取图像特征。Darknet-19的设计原则与VGG16一致,主要采用3x3卷积,并且在3x3卷积之间使用1x1卷积来压缩特征图通道数以降低模型计算量和参数。使用Darknet-19后,YOLOv2的计算量减少了约33%,同时保持了较高的检测精度。
  • 如下图:
    在这里插入图片描述
  • Darknet-19最终采用global avgpooling 做预测
    在这里插入图片描述
    • 上图是yolov2的网络结构,前18层卷积结构和分类模型的前18层一样,第13个卷积层生成的特征图的尺寸为26x26x512,在这个卷积层接上paththrough结构

三、改进策略

相对于YOLO v1的改进,如下图:
在这里插入图片描述

  1. Batch Normalization(批次归一化)

    • YOLO v2在每个卷积层后面都添加了Batch Normalization层,以加快收敛速度,降低模型过拟合。
    • 这一改进使得YOLO v2的平均准确率均值(mAP)提升了2.4%。
  2. hi-res classifier(高分辨率分类器)

    • YOLO v2使用ImageNet预训练模型,并将输入图像的分辨率从224x224提高到448x448进行了10轮训练的微调
    • 使模型的mAP提升了约4%。
  3. Convolutional With Anchor Boxes

    • 原来的YOLO是利用全连接层直接预测bounding box(预选框)的坐标,而YOLOv2借鉴了Faster R-CNN的思想,引入anchor。
    • 首先将原网络的全连接层和最后一个pooling层去掉,使得最后的卷积层可以有更高分辨率的特征。
    • 在检测模型中,YOLOv2不是采用448x448的图片作为输入,而是采用416x416大小的图片。因为YOLOv2模型下采样的总步长为32 ,对于416x416大小的图片,最终得到的特征图大小为13x13,维度是奇数,这样特征图恰好只有一个中心位置。
    • 对于一些大物体,它们中心点往往落入图片中心位置,此时使用特征图的一个中心点去预测这些物体的边界框相对容易些(因为大的物体一般会占据图像的中心,所以希望用一个中心点去预测,而不是4个中心点去预测),所以在YOLOv2设计中要保证最终的特征图有奇数个位置
  4. Dimension Cluster

    • YOLOv2采用k-means聚类方法对训练集中的边界框做了聚类分析。
    • 因为设置先验框的主要目的是为了使得预测框与ground truth(真实框)的IOU更好,到聚类中心的距离越小越好,但IOU值是越大越好,所以使用 1 - IOU,这样就保证距离越小IOU值越大
    • 因此:
      在这里插入图片描述
    • 下图为在VOC和COCO数据集上的聚类分析结果,随着聚类中心数目的增加,平均IOU值(各个边界框与聚类中心的IOU的平均值)是增加的,但是综合考虑模型复杂度和召回率,发表此模型论文的作者最终选取5个聚类中心作为先验框,其相对于图片的大小如右边图所示。
      在这里插入图片描述
    • 但值得注意的是,在YOLO v2的最终实现中,先验框还是采用了预设的方式。
  5. New Network:Darknet-19 :

    • 模型结构在上面的网络框架中 已经介绍过,使用Darknet-19后,YOLOv2的计算量减少了约33%,同时保持了较高的检测精度。
  6. Direct Location Prediction

    • Direct Location Prediction:是一种方法,其目的是进行位置微调,预测偏移量。它用于限制偏移量,以防止在训练时出现发散。这种方法预测的是相对位置,即相对于网格的偏移量
    • 边界框的中心坐标如下计算:
      在这里插入图片描述
    • 但是上面的公式是无约束的,预测的边界框很容易向任何方向偏移,因此每个位置预测的边界框可以落在图片任何位置,这导致模型的不稳定性,在训练时需要很长时间来预测出正确的偏移量。
    • 所以,YOLOv2弃用了这种预测方式,而是沿用YOLOv1的方法,就是预测边界框中心点相对于对应网格左上角位置的相对偏移值,为了将边界框中心点约束在当前网格中,使用sigmoid函数处理偏移值,这样预测的偏移值在(0,1)范围内(每个网格的尺度看做1)
    • 计算公式和示例如下图:
      在这里插入图片描述
  7. Fine-Grained Features

    • 在上面的网络结构中提到在卷积层接上paththrough结构,passthrough层中以前面更高分辨率的特征图为输入,然后将其连接到后面的低分辨率特征图上
    • 高辨率的图片经passthrough层处理之后就变成4x13x13x512的新特征图,这样就可以与后面的13x13x1024特征图连接在一起形成13x13x3072大小的特征图
    • 这样的融合方法,可以找到更多的特征目标
    • 如下图:
      在这里插入图片描述
  8. Multi-Scale Training

    • 由于YOLOv2模型中只有卷积层和池化层,所以YOLOv2的输入可以不限于416x416大小的图片
    • 由于YOLOv2的下采样总步长为32,输入图片大小选择一系列为32倍数的值,最小的图像尺寸为320x320,最大的图像尺寸为608x608
    • YOLO v2 在训练过程中每间隔一定的训练轮数,便会改变输入图片的大小,以此来提高模型对不同尺寸图片处理的能力
      在这里插入图片描述

四、性能表现

YOLO v2在速度和准确性方面取得了较大的改进。它能够在实时环境中运行,处理速度可达30~45 FPS(Frames Per Second),非常适合需要快速响应的应用场景,如视频监控和自动驾驶。同时,YOLO v2还通过数据增强等技术进一步提高了模型的泛化能力,能够检测多种尺寸和形状的目标。在VOC2007测试集上,YOLO v2以67FPS的推理速度达到76.8%mAP;在大尺寸输入下,以40FPS的推理速度达到78.6%mAP。

标签:YOLOv2,卷积,检测,模型,YOLO,19,v2
From: https://blog.csdn.net/weixin_73504499/article/details/143169874

相关文章

  • 救生衣穿戴识别检测系统
    救生衣穿戴识别检测系统基于FasterRCNN框架模型,救生衣穿戴识别检测系统通过摄像头对画面中的人员进行实时检测。系统使用先进的图像识别算法,能够准确判断人员是否穿戴救生衣和呼吸设备等安全装备。救生衣穿戴识别检测系统一旦系统发现人员未按照着装要求进行穿戴,系统会立刻进行抓......
  • 防爆服穿戴检测识别 工服工帽穿戴监测系统
    防爆服穿戴检测识别工服工帽穿戴监测系统利用AI智能算法进行实时监控和识别,防爆服穿戴检测识别工服工帽穿戴监测系统通过在工厂的不同区域部署摄像头,系统能够对现场员工的穿戴情况进行全程监控。防爆服穿戴检测识别工服工帽穿戴监测系统采用先进的图像分析和深度学习技术,可以根......
  • 工鞋工服穿戴识别 工帽防护服穿戴检测系统
    工鞋工服穿戴识别工帽防护服穿戴检测系统基于AI视觉智能分析算法,具备精确、高效的穿戴识别能力。工鞋工服穿戴识别工帽防护服穿戴检测系统根据不同车间的着装要求选择对应的AI着装模型,对员工的工鞋、工服、工帽和防护服进行识别。一旦系统发现员工未按要求穿戴,系统立即进行抓拍,并......
  • 基于三帧差算法的运动目标检测系统FPGA实现,包含testbench和MATLAB辅助验证程序
    1.算法运行效果图预览(完整程序运行后无水印)   将FPGA的仿真结果导入到MATLAB中,分别得到MATLAB的结果和FPGA的结果:   2.算法运行软件版本vivado2019.2 matlab2022a 3.部分程序(完整版代码包含详细中文注释和操作步骤视频)`timescale1ns/1ps////C......
  • 《深度学习》YOLO V3 网络构架解析
    目录一、YOLOV3 1、了解YOLOv32、3个scale3、残差连接二、YOLOv3核心网络构架1、核心网络构架2、输入映射到输出3、先验框设计4、softmax层替代一、YOLO系列V3 1、了解YOLOv3        相比于YOLOv1和v2,YOLOv3最大的改进就是网络结构,使其更适合小目标......
  • 基于MATLAB车道检测与跟踪
    MATLAB车道检测与跟踪读了车道检测这个论文,我理解了利用matlab对车道识别算法进行仿真研究,从仿真的结果中提出具有一定实时性鲁棒性的识别方法。车道检测是智能车辆发展的智能因素。近年来对这项目的研究都是针对特定的环境和道路状况给出了不同的解决方案。近年来,自主驾驶技......
  • 2024小白YOLOv8环境配置
    目录前言一、PyCharm的安装1.下载 2.安装步骤二、配置YOLOv8的虚拟环境1.Anaconda中创建一个虚拟环境 2.Pycharm中使用虚拟环境(1)下载YOLOv8开源包(要挂梯子)(2)在设置中找到解释器,选择创建好的YOLOv8环境(3)配置终端的启动路径(4)启动终端,下载YOLOv8依赖包 (5)下载权重......
  • KerasCV YOLOv8实现交通信号灯检测
    关注底部公众号,回复暗号:13,免费获取600多个深度学习项目资料,快来加入社群一起学习吧。1.项目简介本项目旨在通过深度学习模型实现交通信号灯的检测,以提高交通管理系统的智能化水平,增强驾驶辅助功能。随着智能交通系统的快速发展,准确地识别交通信号灯对于无人驾驶汽车和高......
  • Yolo 系列v2简介
    简介YOLOv2(YouOnlyLookOnceversion2)是一种用于目标检测的深度学习模型,由JosephRedmon等人于2016年提出。yolov2在v1的基础上进行了一些改进使它在保持高速检测的同时,显著提升了检测的精度和泛化能力,成为实时目标检测领域的重要算法之一 。YOLOv2在YOLOv1的......
  • AI智能分析视频分析网关算法定制智能分析网关V4安全帽检测/反光衣检测/通用工服检测算
    在现代工业和社会活动中,工作场所的安全越来越受到重视。为了确保员工的安全,许多行业都制定了严格的安全规范,其中包括正确佩戴个人防护装备,如安全帽和反光衣。然而,人工监控这些规范的执行情况往往效率低下,且容易出现疏漏。随着人工智能技术的发展,AI智能分析网关应运而生,它通过先进......