首页 > 其他分享 >Yolo系列 V1和V2的对比

Yolo系列 V1和V2的对比

时间:2024-10-22 21:47:31浏览次数:9  
标签:YoloV2 YoloV1 卷积 检测 Yolo 网格 目标 V1 V2

在计算机视觉领域中,目标检测是一个核心问题,旨在识别图像中所有感兴趣的目标,并给出它们的类别和位置。近年来,随着深度学习技术的发展,目标检测领域取得了巨大的进步。Yolo(You Only Look Once)系列算法以其出色的速度和合理的精度,在实时目标检测任务中占据了重要的地位。本文将详细介绍Yolo系列中的V1和V2两个版本,并对比它们的差异。

YoloV1

YoloV1是Yolo系列目标检测算法的开山之作,具有重要的开创性意义。它将目标检测任务转化为一个回归问题,摒弃了传统的两阶段目标检测方法中先提取候选区域再进行分类的步骤,极大地提高了检测速度。

架构

YoloV1采用一个单一的卷积神经网络(CNN),将输入图像划分为SxS的网格。每个网格负责检测其中心点落在该网格内的目标。模型直接输出边界框(bounding boxes)和对应的类别概率。每个网格预测固定数量的边界框及其置信度。

输入层

输入图像的尺寸固定为448×448,主要是因为YoloV1的网络中,卷积层最后接了两个全连接层,而全连接层要求输入的数据是固定尺寸的。

卷积层

共有24个卷积层,用于对输入图像进行特征提取,不断地提取图像的抽象特征。在3x3的卷积后接1x1卷积,既降低了计算量,也提升了模型的非线性能力。

全连接层

2个全连接层位于卷积层之后。第一个全连接层将卷积得到的分布式特征映射到样本标记空间,把输入图像的所有卷积特征整合到一起;第二个全连接层将所有神经元得到的卷积特征进行维度转换,最后得到与目标检测网络输出维度相同的维度。除最后一层使用线性激活函数外,其余层都使用LeRU激活函数。

网格划分与边界框预测

将输入图像划分为7×7的网格。如果目标的中心落在某个网格内,那么这个网格就负责预测该目标。每个网格预测2个边界框,每个边界框需要预测5个值,分别是中心坐标(x, y)、宽(w)、高(h)以及置信度(confidence)。

类别预测

由于Pascal VOC数据集共有20个物体类别,所以每个网格还需要预测20个类别的概率值,表示该网格位置存在任一种类别的可能性。

损失函数

损失函数包括位置误差、置信度误差(前景和背景)和分类误差。

优点与缺点

YoloV1的速度非常快,标准版本每秒可以处理45帧图像,极速版本甚至可以每秒处理150帧图像,完全满足视频的实时检测要求。此外,它的假阳性率低,在区分前景和背景区域方面表现较好,检测错误的情况较少。然而,YoloV1的检测精度相对较低,特别是对于小物体以及靠得特别近的物体,检测效果不好。

YoloV2

YoloV2在YoloV1的基础上进行了多项改进,包括采用更深的特征提取网络、引入锚框(anchor boxes)机制、使用批量归一化(Batch Normalization)以及支持在更高分辨率下进行训练等,显著提高了检测速度和准确度。

网络结构

YoloV2使用Darknet-19作为其基础网络结构,Darknet-19是一个深度卷积神经网络,包含19个卷积层和5个最大池化层。它的设计哲学是减少计算量,同时保持足够的特征表达能力。

锚框机制

为了预测不同尺寸的目标,YoloV2引入了锚框的概念。每个网格单元不再只预测一个边界框,而是预测多个与锚点尺寸相关的边界框。这些锚点是预先定义的,基于训练数据集中目标尺寸的分布。使用多个锚点可以提高对不同尺寸目标的检测能力。

特征金字塔网络(FPN)

YoloV2通过特征金字塔网络(FPN)来捕捉不同尺度的特征,从而提高对小目标的检测能力。FPN的核心思想是将深层网络中的高语义信息和浅层网络中的高分辨率信息结合起来,使得YoloV2能够在不同尺度的特征图上进行检测,从而检测到不同大小的目标。

损失函数

YoloV2定义了一个复合损失函数,用于同时优化定位和分类误差。损失函数主要由边界框坐标损失、目标置信度损失和分类损失三部分组成。

优点与改进

YoloV2在保持较快检测速度的同时,显著提升了检测性能,尤其是在小目标检测方面有了一定的改善。此外,YoloV2还通过数据增强和在线难例挖掘(Online Hard Example Mining, OHEM)等技术进一步提高了模型的泛化能力。

对比
  • 网络结构:YoloV1使用较浅的网络结构,而YoloV2采用了更深的Darknet-19网络结构,提高了特征提取能力。

  • 边界框预测:YoloV1每个网格预测固定数量的边界框,而YoloV2引入了锚框机制,提高了对不同尺寸目标的检测能力。
  • 训练策略:YoloV2在训练策略上进行了优化,使用了更高分辨率的输入图像和多尺度训练,使得模型对不同尺度的目标具有更好的适应性。
  • 检测性能:YoloV2在保持较快检测速度的同时,显著提升了检测精度,尤其是在小目标检测方面。
总结

YoloV1和YoloV2在目标检测领域都有着举足轻重的地位。YoloV1以其独特的设计理念,将目标检测任务转化为一个单一的回归问题,实现了端到端的训练,非常适合实时应用场景。然而,它也存在一些不足,比如对小目标的检测效果欠佳。YoloV2在YoloV1的基础上进行了多方面的改进,显著提升了检测性能和泛化能力。总的来说,YoloV1和YoloV2都是目标检测发展历程中的重要里程碑,它们的创新设计和高效性能为后续的目标检测算法提供了宝贵的经验和借鉴。

标签:YoloV2,YoloV1,卷积,检测,Yolo,网格,目标,V1,V2
From: https://blog.csdn.net/2401_84670644/article/details/143169236

相关文章

  • 解决:YOLOv8训练数据集时P、R、mAP等值均为0的问题
    文章目录问题解决1.匹配pytorch与cuda的版本2.使用Adam优化器3.加大训练轮数epoch4.删除data/labels下的train.cache和val.cache问题使用YOLOv8训练自己的数据集时,出现P、R、mAP等值均为0的问题Modelsummary(fused):186layers,2,685,733parameters,0g......
  • PDF Shaper Professional v13.5 中文破解版
    PDFShaperProfessionalv13.5中文破解版https://www.aihao.cc/thread-93682-1-1.html新版变化Releasenotes-PDFShaperhttps://www.pdfshaper.com/release-notes.html•批量提取PDF中的文本、图像等内容•合并多个PDF文件为一个PDF即PDF合并功能•加密和解密PDF文......
  • YOLOv8模型改进 第十三讲 添加卷积和注意力融合模块(CAFM) 提升小目标和遮挡检测
             本文旨在介绍一种全新的改进机制——卷积和注意力融合模块(CAFM),并详细阐述其在YOLOv8中的应用,以显著提升模型性能。首先,CAFM的设计目的是融合卷积神经网络(CNNs)和Transformer的优势,从而能够对全局和局部特征进行有效建模。随后,我们将深入探讨该模块的模......
  • YOLO-物体检测
    #encoding:utf-8fromultralyticsimportYOLOfromPILimportImage,ImageDraw,ImageFontmodel=YOLO("yolov8n.pt")image1_path="img/guangzhou.jpg"result=model.predict(image1_path)img=Image.open(image1_path)draw=ImageDraw.......
  • YOLOv11模型改进-注意力-引入简单无参数注意力模块SimAM 提升小目标和遮挡检测
                本篇文章将介绍一个新的改进机制——卷积和注意力融合模块SimAM ,并阐述如何将其应用于YOLOv11中,显著提升模型性能。首先,SimAM是一种用于卷积神经网络的简单且无参数的注意力模块,它基于神经科学理论定义能量函数来计算3-D注意力权重,能有效提升网络......
  • 基于32位单片机的裸机开发:使用定时器进行任务调度 V2.0
     在嵌入式系统开发中,合理地管理和调度任务对于提高系统的实时性、可靠性和可维护性非常重要。本文将详细介绍一个基于定时器的任务管理系统的设计与实现,该系统无需使用系统滴答定时器(SysTick)来增加堆栈深度,而是采用基本的定时器来实现任务的分时执行。V2.0对比V1.0优点V2.0......
  • 《DNK210使用指南 -CanMV版 V1.0》第三十二章 音频FFT实验
    第三十二章音频FFT实验1)实验平台:正点原子DNK210开发板2)章节摘自【正点原子】DNK210使用指南-CanMV版V1.03)购买链接:https://detail.tmall.com/item.htm?&id=7828013987504)全套实验源码+手册+视频下载地址:http://www.openedv.com/docs/boards/k210/ATK-DNK210.html5)正点原......
  • 基于YOLOV5车牌检测的数据集
    数据集数量为四百张,内标签为face、green、blue、yellow。即人脸、绿色车牌、蓝色车牌、黄色车牌各一百张数据。本资源免费下载,因数据量较少可以给大家玩一下,不能作为任务来做的。图片均为网上数据,自己用工具标注,想要使用自动辅助标注工具可以看https://blog.csdn.net/willnzd......
  • Yolo v5简单理解
    YOLOv5(YouOnlyLookOnceversion5)是一个高效的目标检测模型,采用深度学习技术,旨在实现实时物体检测。它在准确性和速度之间达到了良好的平衡,适用于多种应用场景,如自动驾驶、视频监控和工业检测。技术上,YOLOv5使用了PyTorch框架,具有更好的可扩展性和灵活性。其结构包含了CSPN......
  • 服务器端训练yolov5使用tensorboard+端口转发 实时查看训练成果
    服务器端训练yolov5使用tensorboard+端口转发实时查看训练成果本文参照博客园的一位大佬(相当感谢!!!):本地浏览器查看云服务器训练模型的tensorboard界面-拾一贰叁-博客园服务器端操作运行train.py开始训练新开一个终端进入到yolov5目录输入tensorboard--logdirruns/exp{......