首页 > 其他分享 >《深度学习》YOLO v1网络架构 、损失值、NMS极大值抑制

《深度学习》YOLO v1网络架构 、损失值、NMS极大值抑制

时间:2024-10-24 21:16:35浏览次数:6  
标签:候选框 置信度 NMS 预选 YOLO 网格 v1

目录

一、Yolo系列v1

1、核心思想

2、示例

3、流程图解析

二、YOLO系列v1损失函数

1、位置误差

2、置信度误差

3、类别概率损失

三、NMS非极大值抑制

1、概念

2、步骤

四、YOLO v1优缺点

1、优点

1)速度快

2)端到端

3)多尺度预测

4)网络结构简单

2、缺点

1)对小目标检测效果差

2)每个网格只能生成两个框,且只能预测一个类别


一、Yolo系列v1

1、核心思想

        将一幅图像分成SxS个网格(grid cell),如果某个object的中心落在这个网格中,则这个网格就负责预测这个object。YOLO v1将图像分为7*7个网格

2、示例

        对于上图,YOLOv1将输入图片划分成7×7的网格,每个网格允许预测出2个边框(bounding box),这些边框的大小可以超出当前网格的范围,对于每个边框,YOLOv1都预测了5个参数,分别是中心坐标(x, y)、宽度w、高度h以及置信度confidence。置信度反映了模型对边框内包含物体的信心程度以及边框的准确度。

3、流程图解析

        YOLOv1的网络结构主要由卷积层、池化层以及最后的全连接层组成。

        网络的输入448x448x3的彩色图片输出是7x7x30的张量(tensor)。

        7x7表示将输入图片划分成了7*7个网格(grid),每个网格负责检测其内的物体。

        30表示每个网格内的30个预测信息,包括20个类别概率(以PASCAL VOC数据集为例,该数据集共20个类别)、2个预选框(bounding box)及其置信度(每个边界框包含中心点坐标x、y,宽度w、高度h以及一个置信度分数)。

        坐标点x,y(相对于网格单元格边界的框的中心)用对应网格的归一化到0-1之间,w,h用图像的width和height归一化到0-1之间。

二、YOLO系列v1损失函数

1、位置误差

        如上图所示,其为位置误差的计算公式,其中\lambda对应的值为一个系数,表示如果你觉得位置误差更重要,那么就设置大一点,置信度误差与分类误差也是同样的意思

        第二个红框内的符号表示第i个网格的第j个预选框,如果负责预测物体,那么整体的值为1,反之为0

        前面的求和符号s平方表示网格的格式,例如YOLO v1中的网格个数为7*7,然后B表示预选框的个数,此处数值为2,后面的x表示预选框的中心点的坐标x,y,以及预选框的宽w、高h。

2、置信度误差

        \lambda的值所表示的意思和上述一致,但是第二个像阿拉伯数字1noobj的符号,其所表示的值和上述位置误差中的相反,此处表示第i个网格,第j个预选框,如果不负责预测物体,那么他的值为1,否则为0,

        C的表示置信度的值,置信度C的值 = Pr类别概率 * IOU

        类别概率表示边界框(预选框)内存在对象的概率,若存在对象则为1,不存在则为0,IOU为预测的位置框和真实值的框相交集的值除以并集的值的大小。

        Ci表示模型预测出来的置信度的值,C^i的值表示实际计算得到的置信度的值

3、类别概率损失

        这里第一个求和符号后面的小符号,表示第i个网格是否包含物体,如果包含,那么其值为1,否则为0 

        pi(C)-p^i(C)表示预测的类别的概率减去真实标签的概率,例如模型输出20类别的结果,即有20个数据,其中有预测到狗的概率,加入标签打的是狗,只需要将20个数据中预测狗额概率的值取出来,然后减去1,在对结果平方即可

三、NMS非极大值抑制

1、概念

        在目标检测过程中,通常会生成大量的候选框,当前v1版本有2个复选框,这些候选框可能会有重叠或者包含关系。为了减少重叠的候选框,避免重复检测同一个目标,使用非极大值抑制可以筛选出最佳的目标框。

        例如上图中,同一个人脸被多个预选框预测出来,导致了预选框的重叠,此时可以将置信度低的抑制了,只保留最大的那个。

2、步骤

        1)对所有的候选框根据某个评分指标(例如置信度得分)进行排序,得到一个有序列表;

        2)选择评分最高的候选框,并将其添加到最终的目标框列表中;

        3)计算当前选择的候选框与其他未选择的候选框的重叠区域,并计算重叠区域与两个候选框面积的比值;

        4)如果重叠区域与两个候选框面积的比值超过了设定的阈值,则将该候选框从列表中移除;

        5)重复步骤2~4,直到所有的候选框都被处理完毕。

四、YOLO v1优缺点

1、优点

        1)速度快

                YOLO v1的设计初衷就是实现实时目标检测,相较于其它目标检测算法如R-CNN和SSD,YOLO v1在保持较高准确率的同时,能够达到更快的检测速度,每秒处理上百张图片。

        2)端到端

                YOLO v1是一个端到端的算法,它将目标检测任务作为一个单一的回归问题进行处理,通过在全局上直接预测目标的类别和位置,避免了复杂的后处理步骤。

        3)多尺度预测

                YOLO v1在训练和测试阶段都会对不同尺度的图像进行处理,通过将输入图像划分为网格单元,并生成边界框,确保对不同尺度的目标能够进行有效的检测。

        4)网络结构简单

                YOLO v1的网络结构相对简单,由24个卷积层和2个全连接层组成。这种端到端的网络结构使得YOLO v1易于实现和部署。

2、缺点

        1)对小目标检测效果差

                由于输入图像大小为448x448,而输出特征图大小为7x7,因此YOLO v1在下采样过程中会丢失大量小目标的特征信息。这导致YOLO v1对小目标的检测效果不理想,容易出现漏检或误检的情况。

        2)每个网格只能生成两个框,且只能预测一个类别

                这一限制使得YOLO v1在处理多类别、多目标的情况时存在一定的局限性,例如图像重叠时,无法预测

标签:候选框,置信度,NMS,预选,YOLO,网格,v1
From: https://blog.csdn.net/qq_64603703/article/details/143133970

相关文章

  • 苹果CMS v10 忘记管理员密码的重置方法
    如果你忘记了苹果CMSv10的后台管理密码,可以通过以下步骤进行重置:备份数据库:在进行任何数据库操作之前,请确保备份当前的数据库,以防止数据丢失。登录数据库:使用数据库管理工具(如phpMyAdmin)登录到你的数据库。如果你使用的是宝塔面板,可以通过宝塔面板的数据库管理功能登......
  • 都市 天际线2|豪华中文|V1.1.10F1-天成之境-盛世华庭+全DLC|解压即撸|
     都市天际线II Cities:SkylinesII城市天际线通过有史以来最逼真的城市建造游戏,从头开始建设一座城市,并将其转变为繁荣的大都市。以前所未有的庞大规模进行建造,您的创意和问题解决能力都将面临全新层次的考验。利用深度模拟与生动运转的经济系统,您将能毫不......
  • [C++]在windows基于C++编程署yolov11-pose的openvino姿态估计模型cmake项目部署演示源
    【算法介绍】在Windows系统上,基于C++编程部署YOLOv11-Pose的OpenVINO姿态估计模型,可以通过CMake项目来实现。以下是简要介绍:首先,需要准备开发环境,包括安装OpenVINOToolkit、CMake、OpenCV和C++编译器(如GCC或MSVC)。OpenVINO是英特尔开发的一款用于优化和部署深度学习模型的工具套件......
  • [C++]在windows基于C++编程署yolov11-cls的openvino图像分类模型cmake项目部署演示源
    【算法介绍】在Windows系统上,基于C++编程部署YOLOv11-CLS的OpenVINO图像分类模型,可以通过CMake项目来实现。以下是简要介绍:首先,需要准备开发环境,包括安装OpenVINOToolkit、CMake、OpenCV和C++编译器(如GCC或MSVC)。OpenVINO是英特尔开发的一款用于优化和部署深度学习模型的工具套件,......
  • 从零开始学习 YOLOv8:目标检测与车牌识别实例
    1.引言什么是目标检测?目标检测就像是在寻找隐藏的宝藏。想象一下,你在一个巨大的图画里,里面藏着无数的物体,而你的任务是迅速找到其中的几样,比如说,一只流浪的小猫和一辆红色的小轿车。目标检测就是让计算机“眼明手快”,准确找出这些目标,甚至告诉你“喵,那个小猫正躲在花丛......
  • 【YOLOv11改进- 原理解析】 YOLO11 架构解析 以及代码库关键代码逐行解析
    YOLOv11目标检测创新改进与实战案例专栏文章目录:YOLOv11创新改进系列及项目实战目录包含卷积,主干注意力,检测头等创新机制以及各种目标检测分割项目实战案例专栏链接:YOLOv11目标检测创新改进与实战案例文章目录YOLOv11目标检测创新改进与实战案例专栏冷笑话......
  • YOLOv5-6.0训练出错及解决方法(RuntimeError)
    知识经验分享——YOLOv5-6.0训练出错及解决方法(RuntimeError)一、问题bug不知道小伙伴们在训练YOLOv5-6.0或者其他版本有没有遇到以下问题:RuntimeError:resulttypeFloatcan'tbecasttothedesiredoutputtypelongint二、解决方法步骤1:打开utils/loss.py文......
  • 《YOLO目标检测》—— YOLO v2 详细介绍
    文章目录一、核心原理二、网络框架三、改进策略四、性能表现YOLOv2,又称为YOLO9000,是YOLO(YouOnlyLookOnce)系列算法中的一个重要版本,由JosephRedmon等人在2016年提出。该算法在目标检测领域取得了显著的成就,以其高效、准确的特点受到了广泛关注。以下是对YOLOv2......
  • IObit Uninstaller Pro v14.0.0.17 解锁版 (强悍的驱动级软件卸载)
    IObitUninstallerProv14.0.0.17解锁版(强悍的驱动级软件卸载)IObitUninstaller,软件卸载程序。IObitUninstaller是款强悍的驱动级软件卸载工具,有强制卸载、批量卸载、安装监视器、文件粉碎、软件健康检查、卸载Windows更新补丁、移除浏览器工具栏和插件等功能。一、下载地址链......
  • GiliSoft Video Editor v18.2 激活版 (视频剪辑工具)
    几乎每个人都能拍摄视频,无论是用数码相机、智能手机还是专业摄像机,但直接观看原始视频往往缺乏趣味。GiliSoft视频编辑器能够帮助您制作引人入胜的剪辑影片,支持零质量损失地裁剪和合并视频片段,应用时尚的视频效果和滤镜,还可以添加音乐、标题等元素!一、下载地址链接:GiliSoftVide......