计算机视觉: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 中采用的损失函数的理解?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值