YOLOV1学习

YOLOV1学习(输入的图像固定大小为448X448X3)
参考文献

模型结构

将输入的图像归一化为大小为448x448x3的图像,然后将经过中间24层的卷积后得到了7x7x1024的特征图,然后后面连接的是两个全连接层,分别是4096和1470,最后将1470reshape成7x7x30的张量。

问题0:①为什么是30,又为什么是7?②怎么解析?
答:①为什么是7是因为将输入图像划分成了7x7的grid cell,30是因为每个grid cell都会生成两个预测框,每个预测框又有5个参数(x,y,h,w,c),又因为这里是针对Pascal 数据集进行设计的,这个数据集中含有20个类,因此会有20个类别条件概率,因此对于每一个grid cell都有**(2x5+20=30)30个参数需要记录,因此最终的矩阵为7x7x30**
②根据①知道了每一个深度方向的信息代表什么,因此我们可以根据这个进行解析。深度方向有30维通道,1-5通道是第一个bounding box的x,y,h,w,c, 6-10是第二个bounding box的x,y,h,w,c,后面11-30则是每一类的条件概率值【p(第i类)/p(含物体)】。

注:真正的类别概率是:每一类的条件概率乘以置信度
置信度=p[object]是否包含物体的概率,条件概率=p【属于第i类的概率】/p[object]
p【属于第i类的概率】=置信度 * 条件概率

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wVF2VAoW-1629564873766)(en-resource://database/533:1)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZonZ4xEu-1629564873769)(en-resource://database/527:1)]

预测阶段

一、模型训练好的前提下目标检测的大体步骤

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qT5dGEKL-1629564873772)(en-resource://database/529:1)]

步骤一:划分网格

先将输入的图像划分为sxs个大小相等的网格;(s=7),每一个网格称之为grid cell
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2VR96r7v-1629564873775)(en-resource://database/519:1)]

问题1:这样划分的目的是什么?
答:用于生成预测框,将预测框的中心限制在网格中

步骤二:生成预测框bounding box

每个grid cell都会生成两个预测框,且预测框的中心在grid cell内,预测框的参数有:中心坐标(x,y),框宽高(h.w),以及是否为一个物体的置信度c(反应在框的粗细中,粗框表示置信度高),这里共生成7x7x2 = 98个bounding box
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FmjqlIXq-1629564873780)(en-resource://database/521:1)]

问题2:每一个grid cell的2个预测框是怎么生成的?
答:根据参数x,y,h,w,c生成的
问题3:怎么得到这几个参数?
根据7x7x30的矩阵所得

步骤三:生成条件概率

每一个grid cell还会预测一组条件类别概率,即在包含物体的前提下,是某一类物体的概率,称之为条件概率。根据条件概率可以绘制下图的class probability map图,每一个颜色表示不同的类别,这里是将20个概率中取最大的概率作为最终的概率绘制出来的
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wWlVAkbE-1629564873783)(en-resource://database/523:1)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A9rAIVBZ-1629564873785)(en-resource://database/535:1)]

问题4:条件概率有什么作用?
答:将每一个bounding box的置信度乘以条件概率,就可以得到bounding box的各类别的概率。
问题5:条件概率是怎么计算得到的?
根据7x7x30的矩阵所得

步骤四:根据步骤二和步骤三生成预测结果

根据bounding box和类别概率就可以得到预测结果。即根据问题4中得到的概率,就可以判别出每一个bounding box最终的预测结果,将属于背景的box剔除,然后利用NMS进行非极大值抑制,就得到了目标检测的结果
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gnMCt2zA-1629564873787)(en-resource://database/537:1)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F8NY3Ge5-1629564873790)(en-resource://database/531:1)]

问题6
①怎么训练网络,得到网络的参数,进而能够进行目标检测?
②怎么判断grid cell是否含有物体

二、预测阶段,后处理
1、预测阶段

对于一个grid cell来说,有两个预测框,每个预测框都有一个20维的类别概率,因此有每一个grid cell都会得到两个全概率即2x20,对于7x7的grid cell来说,就会得到7x7x2=98个20维的全概率向量
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NBcALAj8-1629564873794)(en-resource://database/539:1)]

2、后处理

后处理其实就是将98个预测框中低置信度的框和重复的框剔除,这个过程称之为NMS
① 先设置一个阈值,对于同一个类别概率小于p_thre的grid cell全部设置为0
②将不为0的grid cell按照高低顺序进行排列,取出概率最大的预测框;
③将所有的框跟概率大的框计算交并比,IOU,若交并比大于某一个阈值,则表明预测了同一个物体,将低概率的概率设置为0,;若交并比小于某一个阈值,则说明不是预测的同一个物体,保留这个预测框;
④对于每一个类别都是重复①-③步骤(即NMS),进行20次NMS后就会得到最终的结果。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z2Nyaww8-1629564873797)(en-resource://database/541:1)]

训练阶段

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有情怀的机械男

你的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值