计算机视觉——典型的目标检测算法(SPP-Net算法)(四)

姓名:贾轶名    学号:21011210011     学院:通信工程学院

【嵌牛导读】目标检测在现实中的应用很广泛,我们需要检测数字图像中的物体位置以及类别,它需要我们构建一个模型,模型的输入一张图片,模型的输出需要圈出图片中所有物体的位置以及物体所属的类别。在深度学习浪潮到来之前,目标检测精度的进步十分缓慢,靠传统依靠手工特征的方法来提高精度已是相当困难的事。而ImageNet分类大赛出现的卷积神经网络(CNN)——AlexNet所展现的强大性能,吸引着学者们将CNN迁移到了其他的任务,这也包括着目标检测任务,近年来,出现了很多目标检测算法。

【嵌牛鼻子】计算机视觉

【嵌牛提问】如何理解目标检测算法——SPP-Net

【嵌牛正文】

针对R-CNN对所有候选区域分别提取特征、计算量大的问题,2015年He等提出空间金字塔网络(Spatial Pyramid Pooling Network,SPP-Net)。SPP-Net 在最后一个卷积层和全连接层之间加入空间金字塔结构;使用多个标准尺度微调器对图像进行分割,将量化后的局部特征融合生成中层表达,在第五个卷积层的特征图上生成固定长度的特征向量,一次性提取特征避免重复特征提取,打破了固定尺寸输入的束缚。

R-CNN模型与SPPNet模型

       将侯选区域送到CNN里面提取特征向量时,因为CNN的输入图像需要固定大小,而候选区域的长宽都是不固定的,故需要对候选区域填充到固定大小,当对侯选区域做cropping或者warping操作,图片不完整包含物体,都会造成识别精度损失。 

       SPP-Net的解决办法是使用“空间金字塔变换层”将接收任意大小的图像输入,输出固定长度的输出向量这样就能让SPP-Net可接受任意大小的输入图片,不需要对图像做crop/wrap操作。

空间金字塔池化网络结构:

-

R-CNN模型与SPP-Net模型

在R-CNN中,每个候选区域都要塞到CNN内提取特征向量,一张图片有2000个候选区域,也就是一张图片需要经过2000次CNN的前向传播,这2000重复计算过程会有大量的计算冗余,耗费大量的时间。SPPNet提出了一种从候选区域到全图的特征映射(feature map)之间的对应关系,通过此种映射关系可以直接获取到候选区域的特征向量,不需要重复使用CNN提取特征,从而大幅度缩短训练时间。


SPP Net的实现过程:

(1)SPP Net把全图传入CNN得到全图的feature map;(2)让候选区域与feature map直接映射,得到候选区域的映射特征向量(这是映射来的,不需要过CNN);(3)映射过来的特征向量大小不固定,所以这些特征向量传入SPP层(空间金字塔变换层),SPP层接收任何大小的输入,输出固定大小的特征向量,再传给FC层。

上图SPPlayer分成1x1(塔底),2x2(塔中),4x4(塔顶)三张子图,对每个子图的每个区域作max pooling,出来的特征再连接到一起,就是(16+4+1)x256(kM)的特征向量。

无论输入图像大小如何,出来的特征固定是(16+4+1)x256维度。这样就实现了不管图像尺寸如何,SPP层的输出永远是(16+4+1)x256特征向量。

网络训练阶段:

论文中将网络的训练分为两种:Single-size和Multi-size。

Single-size的训练过程:

理论上说,SPP-net支持直接以多尺度的原始图片作为输入后直接BP即可。实际上,caffe等实现中,为了计算的方便,GPU、CUDA等比较适合固定尺寸的输入,所以训练的时候输入是固定了尺度了的。以224*224的输入为例:

在conv5之后的特征图为:13x13(a*a)    金字塔层bins:   n*n

将pooling层作为sliding window pooling,则windows_size=[a/n] 向上取整 ,stride_size=[a/n]向下取整。参数如下:

Multi-size training的训练过程:

使用两个尺度进行训练:224*224 和180*180

训练时,用224*224的图片训练一个epoch,之后用180*180的图片训练一个epoch,二者交替进行。

两种尺度经过SSP后,输出的特征维度都是(9+4+1)x256(kM)。

对于映射关系,论文中给出了一个公式:

假设(x’,y’)表示特征图上的坐标点,坐标点(x,y)表示原输入图片上的点,那么它们之间有如下转换关系,这种映射关系与网络结构有关:(x,y)=(S*x’,S*y’)

反过来,我们希望通过(x,y)坐标求解(x’,y’),那么计算公式如下:

其中S就是CNN中所有的strides的乘积,包含了池化、卷积的stride。

比如,对于下图的集中网络结构,S的计算如下:

论文中使用的是ZF-5:         S=2*2*2*2=16                  Overfeat-5/7 :               S =2*3*2 =12

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,951评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,606评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,601评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,478评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,565评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,587评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,590评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,337评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,785评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,096评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,273评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,935评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,578评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,199评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,440评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,163评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,133评论 2 352

推荐阅读更多精彩内容