首页 > 其他分享 >计算机视觉:YOLO V1目标检测

计算机视觉:YOLO V1目标检测

时间:2024-12-21 12:32:00浏览次数:5  
标签:检测 物体 YOLO 网格 目标 V1 视觉

1 目标检测概述

1.1目标检测

        目标检测(Object Detection)的任务是找出图像中所有感兴趣的目标(物体),确定它们的类别和位置

计算机视觉中关于图像识别的四类任务

        分类-Classification:解决“是什么?”的问题,即给定一张图片或一段视频判断里面包含什么类别的目标。

        定位-Location:解决“在哪里?”的问题,即定位出这个目标的的位置。

        检测-Detection:解决“在哪里?是什么?”的问题,即定位出这个目标的位置并且知道目标物是什么。

        分割-Segmentation:分为实例的分割(Instance-level)和场景分割(Scene-level),解决“每一个像素属于哪个目标物或场景”的

基于深度学习的两类目标检测算法分类

        (1)One Stage

        (经过1个CNN模型即可直接得到最终的检测结果(创新点)包含物体的类别概率和位置坐标值)

        “一步法”核心理念:在原图上进行密集抽样,产生大量的Bouding box,然后进行分类和回归。

        不用RP,直接在网络中提取特征来预测物体分类和位置

        任务流程:特征提取–> 分类/定位回归。

        常见的one stage目标检测算法有:OverFeat、YOLOv1、YOLOv2、YOLOv3、SSD和RetinaNet等。

        

        (2)Tow Stage

        先进行区域生成,该区域称之为region proposal(简称RP,一个有可能包含待检物体的预选框),再通过卷积神经网络进行样本分类。

        任务流程:特征提取 –> 生成RP –> 分类/定位回归。

        常见tow stage目标检测算法有:R-CNN、SPP-Net、Fast R-CNN、Faster R-CNN和R-FCN等。

1.2目标检测发展历程

2 YOLO V1 概述

2.1 基本结构

        YOLOv1采用一个卷积神经网络,借鉴于GoogleNet,主要包含卷积层和最后的两层全连接层。YOLOv1的网络结构较为简单,且是大部分YOLO优化中最关键的部分。

模块一

        核心思想

       1:卷积神经网络最后一层卷积输出的特征图S×S,将其位置映射至原始图像,图像被分成S×S个网格(grid cell), 

        2:如果物体的Ground Truth(样本的标签)中心落在某个网格中,则这个网格就负责预测这个物体

                (网格预测B个大小Bounding box,最终使用与Ground truth的IOU相对较大的Bounding box检测物体)

        3:网格输出维度

                (每个网格使用B(B=2)个Bbox进行回归预测,共产生5个值 置信度confidence,包含物体的可能性大小 回归坐标(x, y, w, h) 2)每个网格还要预测C个类别概率,以判断当前cell属于哪个类别C 因此,1个网格的输出维度是(5×B+C) S×S个网格,输出就是S × S×(5×B+C))

模块2

2.2 回归坐标

        1:理解YOLO输出的Bbox框中的坐标xpre,  ypre,  wpre, hpre

                Bbox框坐标(xpre,  ypre,  wpre, hpre)

                        xpre是模型预测框的中心点横坐标(原始图像坐标空间)

                        ypre是模型预测框的中心点纵坐标(原始图像坐标空间)

                        wpre是预测框宽度(原始图像坐标空间)

                        hpre是预测框高度(原始图像坐标空间)

        *注意 xpre,  ypre,  wpre, hpre需要“规范化”至[0,1]

        2:计算 x,  y,  w, h

        

3 YOLO V1 训练过程

3.1 训练过程

        根据图片的标注GroundTruth边界框,与模型输出的7×7×30的预测结果与进行比较,计算loss和梯度,反向调整参数

3.2 训练样本

·

        1:样本标签

                图中蓝色、黄色、红色的框就是标注的GT框,类别是狗,自行车,汽车

                中心点分别落在蓝色、黄色、红色阴影网格

                如对于黄色网格来说,其中自行车的分类概率1,其余19个分类概率是0

                在上图中,只有3个网格的分类概率得到确定【正例】;其余(49-3)个网格的分类概率是0【负例】

        2:置信度Confidence

        

                1个网格会使用2个Bbox回归预测,最终使用IOU较大的检测物体

3.3 损失函数(网络实际输出值与样本标签值之间的偏差)?????

        YOLOv1使用一个联合的目标函数,包括定位误差、类别误差和置信度误差。这在YOLOv3将被更换。

4 YOLO V1总结

        每个网格只预测2个Bbox,当物体的长宽比不常见,效果较差

        小物体检测问题

               原始图片只划分为7x7的网格,当两个物体靠的很近时,只能检测到一个物体 

问题

        (1)目标检测是什么样的任务?
        (2)基于深度学习的目标检测算法主要分为哪两类?
        (3)这两类算法分别有哪些代表性的算法?
        (4)YOLO V1利用什么类型的网络提取原始图片的特征和进行目标检测?
        (5)YOLO V1 最后一层输出的数据维度怎么计算。
        (6)谈一谈你对YOLO V1 中采用的NMS(非极大值抑制)的理解?
        (7)用自己的话说一说:YOLO V1中如何进行样本训练的?
        (8)谈一谈你对YOLO V1 中采用的损失函数的理解?

标签:检测,物体,YOLO,网格,目标,V1,视觉
From: https://blog.csdn.net/Helowr/article/details/144618813

相关文章

  • 【寒武纪mlu220模型移植】(一)目标检测YoLoV8
    前言:目标检测可能是大家用的比较多的,先完善这一篇吧。yolov5的导出可以参考官方文档。并且博主比较懒,已经做过一遍的事情,不想验证第二遍,如果有步骤错误或者疏漏导致中间遇到了问题,可以先自己debug,流程大致就是这样的。一、修改源码首先是拉取yolov8最新的源码,最新的commit即可,任......
  • 《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
    第四十五章人脸识别实验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)正点原......
  • VINS-Mono工程笔记(八):纯视觉SFM及视觉IMU对齐
    1.视觉SFM理论及流程1)理论及流程        假设滑窗中一共有11帧,首先需要选取一个枢纽帧,利用枢纽帧和最后一帧通过对极约束求出这两帧之间的相对位姿。对枢纽帧的要求是:一方面要求枢纽帧离最后一帧尽可能远,因为离最后一帧比较近时,二者之间的平移比较小,使得三角化精度......
  • 如何使用Yolov8训练使用——智慧煤矿检测井下作业 矿工煤矿工作人员检测 液压支撑防护
    煤矿井下开采异常检测数据集,用于目标检测智慧矿井智能分析应用数据集包含6类目标:1.煤矿工作人员检测2.液压支撑防护板检测(液压支撑防护板所有角度如防护板0到30度,30度到60…等多角度检测,防护板异常等)3.大煤块检测(输送带上的异物,锚杆,煤矸石等类别)4.采煤机拖揽检测5.......
  • 1v1视频软件源码,如何优化快速排序算法低效问题?
    1v1视频软件源码,如何优化快速排序算法低效问题?快速排序快速排序也遵循分治的思想,它与归并排序不同的是,快速排序是原地排序,而且快速排序会先排序当前数组,再对子数组进行排序,它的算法步骤如下:1、哨兵划分:选取数组中最左端元素为基准数,将小于基准数的元素放在基准数左边,将......
  • YOLOv5裂缝检测系统,YOLOv5裂缝识别检测,YOLOv5训练自己的裂缝数据集,深度学习裂缝识别
    项目源码+数据集(订阅2024年深度学习专栏获取源码,订阅后私信订阅截图+项目名+邮箱):请订阅下方专栏获取源码https://blog.csdn.net/m0_68036862/category_12294299.html?spm=1001.2014.3001.5482摘要裂缝是结构安全中常见的损伤形式,尤其在道路、桥梁、建筑物等基础设施中,裂......
  • 深度学习YOLOv5驾驶疲劳检测,YOLOv5训练自己的驾驶疲劳数据集,yolov5安全驾驶检测
     项目源码+数据集(订阅2024年深度学习专栏获取源码,订阅后私信订阅截图+项目名+邮箱):请订阅下方专栏获取源码https://blog.csdn.net/m0_68036862/category_12294299.html?spm=1001.2014.3001.5482背景1.交通安全的迫切需求疲劳驾驶是全球范围内交通事故的重要诱因之一。据......
  • 合合信息亮相CSIG AI可信论坛,全面拆解AI视觉内容安全的“终极防线”
    合合信息亮相CSIGAI可信论坛,全面拆解视觉内容安全的“终极防线”!......
  • NV12数据转OpenCV的Mat
    //将NV12转换为BGRvoidnv12ToBgr(constunsignedchar*yuvData,intwidth,intheight,Mat&bgrImage){//计算每个平面的大小intySize=width*height;intuvSize=(width/2)*(height/2);//创建一个包含NV12数据的Mat对象Ma......
  • 【数据集】厨房明火数据集2916张YOLO+VOC格式
    数据集格式:VOC格式+YOLO格式压缩包内含:3个文件夹,分别存储图片、xml、txt文件JPEGImages文件夹中jpg图片总计:2916Annotations文件夹中xml文件总计:2916labels文件夹中txt文件总计:2916标签种类数:1标签名称:["fire"]每个标签的框数:fire框数=9421总框数:9421图片清晰度(......