论文:Speed/accuracy trade-offs for object detectors

比较主流的目标检测网络,Faster R-CNN , R-FCN , SSD

Introduction:

目标检测网络中,
mPA。。。
运行时间和占用内存也很重要,好的模型经常依赖于model ensemboing 和 multicrop 方法,这样对于应用来说too slow.
我们会探索现代检测系统 speed/accuracy trade-off。
主要的贡献如下:
1.对现代卷积检测网络做了详细的研究,解释了为什么好的模型具有相似的设计。
2.使用tensorflow统一实现了几个模型。
3.我们发现 Faster R-CNN 减少proposals数量可以在不大量损害精度的情况下大大提高速度。使得其可以和比较快的 SSD 和 RFCN 竞争。
SSD对特征提取器的敏感程度没有 Faster R-CNN 和 R-FCN 深。
4.使用不同的 meta-architecture 和feature-extractor 的组合,取得一个好的模型。

2.Meta-architecture

R-CNN 是第一个卷积检测网络。
Fast-RCNN 先将一个图片输入到特征提取器然后再crop。
上面两个都依赖一个额外的proposal generator,但是最近的研究表明 proposal 也可以用卷积网络产生。
这里写图片描述
SSD是一个single feed-forward 卷积网络,直接预测分类和anchor offsets,不需要第二个stage.
Faster R-CNN 由两个stage组成,一个是RPN网络,图片经过特征提取器,选取某一层特征用来预测没有类别信息的box proposals,使用如下的损失函数:
这里写图片描述
第二个stage,使用 box proposals 在feature map上来crop features。之后将特征送到特征提取器对每一个proposal来预测一个类别和与类对应的box refinement.使用的loss function 还是上面的式子。
R-FCN类似于Faster R-CNN只是把提取出来的proposal应用在了最后一步上。可以取得和Fater 差不多的准确度,但是运行速度快一点。

3.1 Architectural configuration

在所有的meta-architerctures上,都需要一个卷积特征提取器来获得high-level features。
所以这个特征提取器也很重要。
我们选择了六个feature extractors,分别是 VGG-16,Resnet-101, Inception v2 , Inception v3 , Inception Resnet (v2) , MobileNet.
MobileNet可以获得VGG-16的精准度,但只用到其 1/30 的computational cost 和 model size.

proposal 的数量
通常是300,但是我们在10-300之间探索最优的值。

对stride的改动
对于Resnet-101 有少许的改动,将output stride 从 32 改为 16。通过将conv5-1的stride从2变为1,并将其之后的层使用 artous convolutions。

使用 Smooth L1 loss function.

3.3 Input size configuration
Faster R-CNN 和 R-FCN中将输入图片的短边 sacled to M ,在SSD中,将图片resize到 M*M。我们对每一个模型,都训练了两个versions。一个将 M = 300 ,称为 low-resolution .一个将 M = 600,称为 high-resolution.
每种情况,SSD都比Faster 或者 R-FCN 处理更少的pixels.
对于Faster R-CNN 和 R-FCN 我们不是使用的 4-stage 训练过程,而是使用的end-to-end 过程。我们将 ROI-Pooling和 Position-sensitive ROI Pooling用tensorflow里面的 crop_and_resize操作取代。这个方法使用双线性插值来resample一个图片到一个尺寸。

3.6 Model Details
4.Results
这里写图片描述
Accuracy vs time: 平均来说,R-FCN 和 SSD 比 Faster R-CNN 快。Faster 虽然慢但是精度高,每个image至少需要100 ms.

最优边界的关键点:
Fastest :
SSD w/MobileNet.
SSD with Inception v2 和 Mobilenet 是最快模型里最精准的。
Mobilenet大约是inception v2速度的两倍,精度上损失不太大。
Sweet Spot:
R-FCN w/Resnet or Faster R-CNN w/Resnet and only 50 proposals.
具有速度和精度的最佳平衡。
Most Accurate:
Faster R-CNN w/Inception Resnet at stride 8.
速度很慢,大概一秒。
具体如下表所示:
这里写图片描述

The effect of feature extractor:
这里写图片描述
经验上认为分类表现更好的检测表现更好。
如上图所示,Faster R-CNN 和 R-FCN对分类和检测的相关性比较明显,SSD对特征提取器的分类准确率表现出弱相关。

The effect of object size:
这里写图片描述
从上图可以看出,所有的模型都在 large object 上表现好。虽然SSD在small object 上表现差,但是其可以在lightweight feature extractor 上以比较快的速度,在 large object 上达到甚至超越其他两个模型。

The effect of image size:
一些人发现input resolution对检测精度有很大的影响。
实验发现, resolution 减少两倍,精度平均减少 15.88%,时间减少27.4%
这里写图片描述
一个解释是high resolution inputs 使得 small object 可以处理。上图表明,high resolution models在small object 上明显有更好的mPA(一些情况下可能是2倍),某种程度上在large object 上也有好的mPA.
我们也发现在small objects 上表现好的模型在 large 上也好(SSD不是).

The effect of the number of proposals:
在Faster R-CNN 和 R-FCN 里都是300。实验证明这个数字可以在不损害mPA的情况下大大减少。
sweet spot是50个proposals,这可以达到300个proposals 精度的96%,却可以减少3倍的运行时间。
这里写图片描述

Flops analysis:
这里写图片描述

Memory analysis:
这里写图片描述
拥有更大更给力的特征提取器需要更多的内存,Mobilenet是最优的,需要不超过 1Gb的内存

0.75的IOU是最佳的值

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
python2 main.py -d 0 -k 2 -C 4 zwh@zwh-virtual-machine:~/website-fingerprinting-master$ python2 main.py -d 0 -k 128 -C 4 zwh@zwh-virtual-machine:~/website-fingerprinting-master$ cat output/results.k128.c0.d0.C4.N775.t16.T4.output accuracy,overhead,timeElapsedTotal,timeElapsedClassifier 0.78125, 0/0, 0.65, 0.38zwh@zwh-virtual-machine:~/website-fingerprinting-master$ cd ~/website-fingerprinting-master zwh@zwh-virtual-machine:~/website-fingerprinting-master$ python2 main.py -d 0 -k 128 -C 5 zwh@zwh-virtual-machine:~/website-fingerprinting-master$ cat output/results.k128.c0.d0.C5.N775.t16.T4.output accuracy,overhead,timeElapsedTotal,timeElapsedClassifier 0.78125, 0/0, 2.03, 1.74zwh@zwh-virtual-machine:~/website-fingerprinting-master$ cd ~/website-fingerprinting-master zwh@zwh-virtual-machine:~/website-fingerprinting-master$ python2 main.py -d 0 -k 128 -C 6 zwh@zwh-virtual-machine:~/website-fingerprinting-master$ cat output/results.k128.c0.d0.C6.N775.t16.T4.output accuracy,overhead,timeElapsedTotal,timeElapsedClassifier 0.78125, 0/0, 0.47, 0.21zwh@zwh-virtual-machine:~/websitecd ~/website-fingerprinting-masterte-fingerprinting-master zwh@zwh-virtual-machine:~/website-fingerprinting-master$ python2 main.py -d 0 -k 128 -C 10 zwh@zwh-virtual-machine:~/website-fingerprinting-master$ cat output/results.k128.c0.d0.C10.N775.t16.T4.output accuracy,overhead,timeElapsedTotal,timeElapsedClassifier 0.78125, 0/0, 0.68, 0.34zwh@zwh-virtual-machine:~/websitecd ~/website-fingerprinting-masterte-fingerprinting-master zwh@zwh-virtual-machine:~/website-fingerprinting-master$ python2 main.py -d 0 -k 128 -C 14 zwh@zwh-virtual-machine:~/website-fingerprinting-master$ cat output/results.k128.c0.d0.C14.N775.t16.T4.output accuracy,overhead,timeElapsedTotal,timeElapsedClassifier 0.78125, 0/0, 0.49, 0.23zwh@zwh-virtual-machine:~/website-fingerprinting-master$ cd ~/website为什么改变——C(不同分类算法),网页识别率始终保持在0.78125
06-03

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值