slide2 The Generalized R-CNN Framework for Object Detection

来源:互联网 发布:单片机识别条形码 编辑:程序博客网 时间:2024/06/05 00:33

通用的R-CNN框架用于目标检测
R-CNN(基于区域的卷积神经网络)region-base convolutional neural network


教程概述
覆盖的主题
  • 目标检测介绍(非常简短)
  • 通用的R-CNN框架
  • 单阶段vs多阶段检测器&速度/精度折中


边界框目标检测
需要完成两个任务:
分类:指出目标是什么类别 回归:指出目标在什么位置(用边界框标出来)

检测器发展到现在已经做到怎么样了?

在COCO数据集上目标检测的平均精度(%)
过去(最好的准则,2012,DPM,5%)
早期(2015,faster R-CNN 基于AlexNet,15%)
深度学习方法将精度提升到了3倍

2015到2017年,通过深度学习方法的发展,精度又提高了3倍

稳定的进步
R-CNN(2014) SPP-net(2014)
Fast R-CNN(2015) Faster R-CNN(2015)
R-FCN(2016)
Feature Pyramid Networks+Faster R-CNN(2017) Mask R-CNN(2017)



R-CNN(基于区域的卷积神经网络)
第一步,对于每张输入图片,利用Selection search(选择性搜索),edge Boxes, MCG等现有的目标候选框产生算法,产生大概2000个候选框

对每个候选框(尺寸不一)所包含的图片区域,进行裁剪或弯曲,得到固定大小的候选框作为网络的输入(由于后面连接有全连接层,所以需要固定大小的输入,以得到固定大小的特征向量,送入全连接层)

对于固定大小的候选框输入,利用卷积神经网络前向传播,得到固定尺寸的特征表达

对于得到的固定尺寸的特征表达,利用1vs rest 支持向量机分类器进行分类

对每个候选框的位置进行回归,优化候选框的位置

R-CNN存在的问题:
计算量非常大,对于每个候选框,都需要进行一次网络前向传播和分类、回归运算,速度非常慢

通用的R-CNN框架
可分为两个部分:对于每幅图像的计算,对于产生的每个候选框的计算
对于每幅图像的计算,也就是利用图像产生候选框同时生成相应的特征图;对产生的候选框的计算,也就是对候选框进行分类和回归,判断目标类别及位置

把输入图像变换成特征表达

利用输入图像计算得到候选框

对于每个候选框,根据候选框的位置,可以根据输入图像计算得到的特征图得到该候选框的特征表达

对于得到的特征表达,利用附加的操作(可以是裁剪,扭曲;也可以是SPP;也可以roi pooling),得到固定长度的特征向量。

对于得到的特征向量,利用多head操作执行特定任务(分类,回归,在mask rcnn中还可以是分割),这里面要用到multi-task损失函数。


由R-CNN到Fast R-CNN
轻量级的对于每个候选区域的计算,端到端的训练版本(SPP-net,利用空间金字塔池化,使得图像不用进行裁剪、扭曲操作)

  1. 利用全卷积网络提取特征
  2. 利用RoI池化层得到固定尺寸的输出
  3. 利用多层感知器进行分类和回归




阅读全文
0 0
原创粉丝点击