HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection

论文地址:http://arxiv.org/pdf/1604.00600.pdf

核心思想:

HyperNet:HyperNet网络基于设计的Hyper特征,这种特征主要先集合分等级的特征图,然后将其压缩到一个空间。这种Hyper特征同时具有足够深和很好的语义信息,在PASCAL VOC 2007和2012上可以通过每张图产生仅仅100个proposal,而达到很好的精度和效果,同时可以达到实时,GPU下 5 fps的速度。

本文是region-based 目标检测框架。相比与faster rcnn,hypernet更擅长处理小物体,并且产生更高质量的proposal。

                          HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection

Hyper方法主要的贡献有: 
(1)在仅仅 50 proposal情况下,可达到 recall 95%,在100 proposal情况下,达到 recall 97%,远远高于其他算法 ;
(2)在PASCAL VOC 2007和2012中, mAP分别达到76.3%和71.4%,比 Fast R-CNN提高 0.6 和 0.3 ;
(3)速度可以达到实时,用深的CNN模型时可以达到 5 fps;


整体的框架

如下:

HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection

Hyper Feature Production:

在Hyper特征形成细节上,由于不同层大小的不同,在低层添加了max pooling layer以完成降采样过程;而在高层,添加 deconvolutional operation (Deconv),去卷积化来形成上采样。这样作者认为得到的信息结合了更多的语义信息,同时形成一个特殊的空间,最后通过local response normalization (LRN)标准化,即得到 Hyper 特征。 

该特征主要有以下优点: 
(1)多级抽象,将不同高低的层的CNN特征结合 ;
(2)适当的分辨率,对于一个1000*600的图像的特征图分辨率正好调整至250*150,这个尺度对于检测很方便 ;
(3)计算效率,所有特征可以在proposal和detection产生前进行预计算好,做到没有计算冗余;

Region Proposal Generation:

作者在产生的hyper feature map上随机产生了不同大小和尺度的proposal,然后每一个都feed到ROI pooling里面去,然后对这每一个proposal做一个判断是不是proposal,其中使用了一个卷积作为降维和防止overfit。

这一步给我的感觉是整篇文章最大的瓶颈,因为70%的时间就在这一步。加速的方法是把卷积层放到了ROI Pooling前面,但是performance会下降。

Object Detection:

和fast rcnn到大同小异,Proposal 经过ROI Pooling之后增加一层卷积,然后做一个joint training。

(a)在FC前加入一个3x3x63的卷积使得分类器更加强大,且减少了一半的特征维度,facilatating;

(b)dropout从0.5修改为0.25;


Joint Training:

训练中的loss函数主要有两部分,类别loss,bounding box和positive box的loss,这里主要参考了其他文章,没有特别的地方。而proposal的产生部分参数,则主要参考R-CNN。
HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection

                                  HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection

加速方法

为了速度的提升,这里去除了ROI pooling层后面的3*3*4的卷积层加速,这样主要有两点优势:Hyper特征图数量大大减少,同时滑动窗分类器更加简单(from Conv-FC to FC)

                        HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection

总结:

整个framework的训练,先训练proposal generation这一块,然后再训练后面的detection,然后conv sharing 再train一遍。

本文的优点非常明显,proposal的质量非常高,top 100 proposal就达到了97%的recall(IOU 0.5),在IOU 0.7的情况下同样非常强,这应该得益于hyper feature map的原因。但是缺点是速度大于了1秒,当用加速版本,速度可以和faster rcnn基本持平。我认为在proposal generation这一步可以有一些思考的地方。