您的位置:首页 > 移动开发 > Objective-C

Object Detection R-CNN进化史(R-CNN+Fast R-CNN+Faster R-CNN)

2018-03-25 11:23 549 查看

Background:

论文发表之前的一段时间内,Object detection以mAP(mean Average precision)进展缓慢,于是有些大神开始将Classification和Localization进行结合,从而诞生出一系列优秀的Detection方法

 1. propose R-CNNpaper:R-CNN

 2. 解决R-CNN瓶颈问题,提出了Fast R-CNNpaper: Fast R-CNN

 3. 解决Fast R-CNN瓶颈问题,提出了Faster R-CNNpaper:Faster R-CNN

 在此之间,还有一个SPPNet的东西,为Fast R-CNN做出了卓越贡献

对Object Detection的理解,就是在Classification的基础上,加上Locailzation,貌似很简单哈。但是在实践过程中,会遇到各种问题,such as:object’size、angle、multi object and so on.

一图理解CV task:



图1.Computer Vision Task。现在的R-CNN/Fast R-CNN/Faster R-CNN都是在解决Object Detection,说白了,就是multi target 的Classification+Localization。

introduce IOU(how to evalute the accuracy of Localization?)

我们如何衡量Localization的BBox的精度?我们一般使用IOU指标来衡量:IOU=SA∩SBSA∪SBIOU=SA∩SBSA∪SB



图2:

R-CNN

啥都不说,先上图,看图说话:

Classification网络结构大家都懂,我们在其基础上修改尾部,将其变为Localization的网络



图3:我们保留网络的卷积层,为了输出BBox,我们至少需要4个关于坐标信息x,y,width和height,于是我们针对specific task修改网络的output,从而变成一个回归问题,我们在Localization任务中,使用的L2 loss作为损失函数,即欧氏距离。网络结构如下所示


图4:R-CNN Architecture。此model包含3个important parts:①extracts around 2000 region proposals(挑选出2K个候选框,paper中采用的是selective search选框方式)②computes features for each proposal using a large convolutional neural network(针对每一个候选框使用CNN计算其对应的feature map)③classifies each region using class-specific linear SVMs(针对每一个候选框,使用总类别个数的Linear-SVMs对其进行分类,是则positive,否则negative)。

在这里我们就会发现R-CNN的一些弊端

假如我们选择了2K个候选框,R-CNN对每个候选框图片均进行了卷积+池化。。。于是一幅图片活生生要进行2K次forward。。。time wasting…

在Training时,Classification和Localization需要用到features map,于是我们需要存储Alexnet中P5的result,于是一幅图片大概需要2K倍的存储空间

注:我们这里使用的是Alexnet,但是要求就是input data固定大小,如何保证我们的候选框是符合要求的呢?(假设输入图片大小必须为227*227),我们如何对候选框图片进行crop/wrap呢?

各向异性缩放:不管图像长宽比例,直接缩放(有可能使图像变形,损失空间信息)

各向同性缩放:①直接在原始图片中,把BBox的边界进行扩展延伸成正方形,然后再进行裁剪;如果已经延伸到了原始图片的外边界,那么就用bounding box中的颜色均值填充。②先把bounding box图片裁剪出来,然后用固定的背景颜色填充成正方形图片(背景颜色也是采用bounding box的像素颜色均值)

Fast R-CNN

将R-CNN的运算的瓶颈问题解决掉,就是Fast R-CNN

先上图,看图说话:



图5:R-CNN进化版Fast R-CNN,摒弃了提取2K个候选框图片进行CNN forward的工程,将整个图片只进行一次CNN forward

Faster R-CNN

将Fast R-CNN的瓶颈问题解决掉,就是Faster R-CNN

先上图,看图说话



图6:好了,现在放弃了候选框的选择了,变成了使用网络来学习BBox,其中有个重要的改变就是引入了RPN net

写个outline,吃饭去啊

作者:gengmiao 时间:2018.03.25,原创文章,转载请保留原文地址、作者等信息

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  DL RNN进化史
相关文章推荐