YOLO目标检测基本思想

个人理解有关YOLO目标检测技术的实现基本思想。

YOLO简介

YOLO

首先,YOLO的全称是YOU ONLY LOOK ONCE:只需要浏览一次就可以识别出图中的物体的类别和位置,也被称为Region-free方法

图片经过深度学习神经网络,颈部(FPN,PANet...)多尺度特征融合,头部(密集预测<YOLO>/稀疏预测)

其将特征图划分为S×S的格子(grid cell),每个格子对落入其中的目标进行检测,一次性预测所有格子所含目标的边界框,定位置信度,所有类别概率向量。

类别置信度得分既和分类置信度有关也和定位置信度有关。

条件类别概率×框置信度得分=类别置信度得分

预测和格子之间的区别在于,预测通常是基于过去的数据和模型进行推测未来的趋势或结果,可能涉及到对多种因素的分析和考虑。而格子则更多地关注于当前时刻或瞬间的状态,通常只需要关注一个特定的区域或场景。

1/图片进行缩放

2/经过卷积网络

3/进行非极大抑制

截的图

 上图可见检测出了人,狗,马三个类别。

预测时从预测的特征图出发,检测的格子的一些属性包括边界框的坐标,目标性得分,和分类得分(比如coco数据集有80个类别,得到80个类别的得分),有多少个不同尺度的边界框的预测。

多尺度融合

其实可以简单的理解为把一个图片变成不同尺寸的图像,然后进行采样,下采样倍数小(一般是浅层)的特征感受野小,适合处理小目标。

可以理解为,提取出来的特征图越小(分辨率越低),就适合处理较大目标的实例分析结果。分辨率越高的,就做小目标的,因为特征图小的无法提供必要的分辨率信息。

具体就是,会将一个图片分成不同大小的网格,如果图片大小是416×416的话,那么分成13×13的网格特征图是一定会比分成52×52的特征图大的,那么越大的特征图他输出的目标就越简单,可能会导致部分大目标信息被分散到多个特征点上,从而增加了大目标识别的难度,就适合小目标。

截的图

低分辨率(越小)的特征图可以将大目标的信息集中在一个或少数几个特征点上就适合来处理较大的目标,但同时他在进行处理的时候有很多小目标的信息或许就会丢失,所以小目标要结合分别率高的特征图处理。

但具体操作还是需要结合具体任务和目标来进行选择。

其有两种网络结构,第一种是并行多分支网络,第二种是串行的跳层连接结构。

具体可见大佬的:  多尺度融合介绍 - 知乎 (zhihu.com)

锚框(Anchor)机制

是一组提前预定义的边框,这些框的宽高和数据集中目标物体的宽高大体是一致的。我们在检测之前确定的一系列候选框。我们默认,图片上会出现的所有物体,都会被我们设定的anchor boxes所覆盖。不然计算量会很大。

据说在YOLOV1上没有这个东西,所以早期训练导致框乱飞,V2生成之后框就在预测的范围内偏移就好了。

YOLO算法的基本思想

YOLOV3/V4:某个目标的中心坐标坐落在哪个格子中,就由它来预测该目标,每个格子都会预测3个不同尺度的边界框。

YOLOV5:可以跨层预测,匹配数范围可以是3~9个。

预测到的特征图有三个维度,其中两个就是上文说的13×13(52×52等),还有一个维度是B×(5+C),其中B是边界框数量(V3/V4就是3),C表示边界框的类别数,对于VOC数据集是20(coco就是80),5表示的是四个坐标信息和一个目标性得分。

非极大抑制

找到局部极大值,并筛除(抑制)邻域内其余的值。

简单说就是我们在测试时会出现比较多的预测框,比较IOU做非极大抑制。得到一个比较合适的预测框。将其他的不是很好的预测框筛掉。(为了提高Recall)

名词不懂可以见上一篇

损失函数

评估模型预测结果与真实结果之间差异的函数,通常被用作优化目标,即用于调整模型参数以最小化预测结果的误差。

其中我们研究的包括:

分类损失

定位损失(预测框边界和GT之间的误差)

置信度损失(框的目标性等)

总的损失函数就是其中三个相加,或许还会与一些损失因子相关,具体分析吧。

参考视频:最适合新手入门的【YOLOV5目标实战】教程!基于Pytorch搭建YOLOV5目标检测平台!环境部署+项目实战(深度学习/计算机视觉)_哔哩哔哩_bilibili

  • 17
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值