1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > yolo 深度学习_吴恩达深度学习笔记04.卷积神经网络 W3.目标检测(YOLO)

yolo 深度学习_吴恩达深度学习笔记04.卷积神经网络 W3.目标检测(YOLO)

时间:2022-11-02 22:03:29

相关推荐

yolo 深度学习_吴恩达深度学习笔记04.卷积神经网络 W3.目标检测(YOLO)

目录

1. 目标定位

2. 特征点检测

3. 目标检测

4. 滑动窗口的卷积实现

5. Bounding Box预测(YOLO)

6. 交并比

7. 非极大值抑制

8. Anchor Boxes

9. YOLO 算法

10. 候选区域

作业

参考:吴恩达视频课深度学习笔记

1. 目标定位

定位分类问题:

不仅要判断图片中是不是一辆汽车,还要「标记出它的位置」,用框「圈起来」

2. 特征点检测

Landmark 检测

3. 目标检测

基于「滑动窗口」的目标检测

将目标剪切出来,训练卷积网络以一定大小的窗口扫描图片,将窗口内的图片输入卷积网络预测更改窗口大小,重复上面步骤

滑动窗口目标检测算法「缺点」

「计算成本」,剪切出太多块,卷积网络要一个个地处理用的步幅很大,窗口个数少,可能会影响性能用小粒度或小步幅,窗口会特别多,这意味着超高的计算成本

4. 滑动窗口的卷积实现

「整张图片」进行卷积操作,「一次得到」所有预测值,如果足够幸运,神经网络便可以识别出目标的位置在卷积层上应用滑动窗口算法,「提高」了整个算法的「效率」不过这种算法仍然存在一个「缺点」,就是「边界框的位置可能不够准确」

5. Bounding Box预测(YOLO)

滑动窗口法中,「离散」的边界框可能没有一个能完美匹配汽车位置

一个能得到「更精准边界框」的算法是「YOLO」算法,YOLO(「You only look once」)意思是你只看一次,这是由Joseph Redmon,Santosh Divvala,Ross Girshick和Ali Farhadi提出的算法

YOLO算法有一个好处,它是一个「卷积」实现,运行速度「非常快」,可以达到「实时识别」

边界框定义还有其他更有效的方法,可能效果要更好一点

6. 交并比

IoU

7. 非极大值抑制

算法可能对同一个对象做出「多次」检测。「非极大值抑制」确保算法对每个对象「只检测一次」

「非极大值抑制」,非最大值意味着你「只输出概率最大」的分类结果,抑制很接近,但不是最大的其他预测结果

如果你尝试「同时检测三个对象」,比如说行人、汽车、摩托,那么输出向量就会有三个额外的分量。事实证明,正确的做法是「独立进行三次」非极大值抑制,对每个输出类别都做一次

8. Anchor Boxes

你想让一个格子检测出「多个对象」,就是使用 anchor box 这个概念

算法处理「不好」的情况:

如果你有两个anchor box,但同一格子有三个对象两个对象都分配到一个格子中,且它们的anchor box「形状也一样」出现的概率比较小,对性能的影响应该不会很大

怎么选择 anchor box呢?

一般「手工指定」anchor box形状,选择5到10个anchor box形状,覆盖多种不同的形状k - 平均算法,可以将两类对象形状「聚类」,选择「最具有代表性」的一组 anchor box,这是自动选择anchor box的高级方法

9. YOLO 算法

训练:预测:非极大值抑制:如果使用两个anchor box,那么9个格子中任何一个都会有两个预测的边界框,其中一个的概率很低。接下来你抛弃概率很低的预测。如果你希望检测(3种目标)行人,汽车和摩托车,那么你要做的是,对于「每个类别」单独运行非极大值抑制,运行三次来得到最终的预测结果。

10. 候选区域

候选区域是一个有趣的想法,但这个方法需要两步:

首先得到候选区域然后再分类

相比之下,类似于YOLO(You only look once)这个算法,能够一步做完,老师觉得长远而言更有希望

YOLO 网址:/darknet/yolo/

作业

待写,见下一篇,一起加油!

如遇链接失效,请查阅原文

我的CSDN博客地址 https://michael./

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。