资源经验分享深度学习笔记(41) 候选区域

深度学习笔记(41) 候选区域

2019-09-11 | |  147 |   0

原标题:深度学习笔记(41) 候选区域

原文来自:CSDN      原文链接:https://blog.csdn.net/qq_32618327/article/details/99285706


深度学习笔记(41) 候选区域



1. 无对象区域

20190812090736745.png
记得滑动窗法吧,使用训练过的分类器
在这些窗口中全部运行一遍,然后运行一个检测器,看看里面是否有车辆,行人和摩托车
现在也可以运行一下卷积算法
20190812090813702.png
这里这个矩形区域(编号1)基本是空的,显然没有什么需要分类的东西
也许算法会在这个矩形上(编号2)运行,知道上面没有什么有趣的东西

这个算法的其中一个缺点是,它在显然没有任何对象的区域浪费时间


2. 候选区域

如果阅读一下对象检测的文献,可能会看到一组概念
所谓的候选区域,这在计算机视觉领域是非常有影响力的概念

Ross Girshick,Jeff Donahue,Trevor Darrell,Jitendra Malik提出一种叫做R-CNN的算法
意思是带区域的卷积网络,或者说带区域的CNN
这个算法尝试选出一些区域,在这些区域上运行卷积网络分类器是有意义的

所以这里不再针对每个滑动窗运行检测算法
而是只选择一些窗口,在少数窗口上运行卷积网络分类器

选出候选区域的方法是运行图像分割算法
分割的结果是下边的图像,为了找出可能存在对象的区域
比如说,分割算法在这里得到一个色块
20190812090944790.png
所以可能会选择这样的边界框(编号1),然后在这个色块上运行分类器
就像这个绿色的东西(编号2),在这里找到一个色块
接下来我们还会在那个矩形上(编号2)运行一次分类器,看看有没有东西
在这种情况下,如果在蓝色色块上(编号3)运行分类器,希望能检测出一个行人
如果在青色色块(编号4)上运行算法,也许可以发现一辆车

所以这个细节就是所谓的分割算法
先找出可能2000多个色块,然后在这2000个色块上放置边界框,然后在这2000个色块上运行分类器
这样需要处理的位置可能要少的多
可以减少卷积网络分类器运行时间,比在图像所有位置运行一遍分类器要快

特别是这种情况
现在不仅是在方形区域(编号5)中运行卷积网络
还会在高高瘦瘦(编号6)的区域运行,尝试检测出行人
然后在很宽很胖的区域(编号7)运行,尝试检测出车辆
同时在各种尺度运行分类器
这就是R-CNN或者区域CNN的特色概念


3. Faster R-CNN

基本的R-CNN算法是使用某种算法求出候选区域,然后对每个候选区域运行一下分类器
每个区域会输出一个标签,有没有车子?有没有行人?有没有摩托车?并输出一个边界框
但不会直接信任边界框,它也会输出一个边界框bx,by,bh和bw
这样就能在确实存在对象的区域得到一个精确的边界框
这样比单纯使用图像分割算法给出的色块边界要好
所以它可以得到相当精确的边界框

但现在R-CNN算法的一个缺点是太慢了
所以这些年来有一些对R-CNN算法的改进工作
Ross Girshik提出了Fast R-CNN算法,它基本上是R-CNN算法,不过用卷积实现了滑动窗法
最初的算法是逐一对区域分类的,所以Fast R-CNN用的是滑动窗法的一个卷积实现

事实证明,Fast R-CNN算法的其中一个问题是得到候选区域的聚类步骤仍然非常缓慢

所以另一个研究组,任少卿、何凯明、Ross Girshick和孙剑提出了更快的R-CNN算法(Faster R-CNN)
使用的是卷积神经网络,而不是更传统的分割算法来获得候选区域色块
结果比Fast R-CNN算法快得多
不过大多数Faster R-CNN的算法实现还是比YOLO算法慢很多

候选区域是一个有趣的想法,但这个方法需要两步,首先得到候选区域,然后再分类
相比之下,能够一步做完,类似于YOLO这个算法,是长远而言更有希望的方向


免责声明:本文来自互联网新闻客户端自媒体,不代表本网的观点和立场。

合作及投稿邮箱:E-mail:editor@tusaishared.com

上一篇:Python入门导读

下一篇:自动化专业如何转SLAM或机器学习岗?

用户评价
全部评价

热门资源

  • Python 爬虫(二)...

    所谓爬虫就是模拟客户端发送网络请求,获取网络响...

  • TensorFlow从1到2...

    原文第四篇中,我们介绍了官方的入门案例MNIST,功...

  • TensorFlow从1到2...

    “回归”这个词,既是Regression算法的名称,也代表...

  • 机器学习中的熵、...

    熵 (entropy) 这一词最初来源于热力学。1948年,克...

  • TensorFlow2.0(10...

    前面的博客中我们说过,在加载数据和预处理数据时...