Speed/accuracy trade-offs for modern convolutional object detectors
来源:互联网 发布:c语言有多少个函数 编辑:程序博客网 时间:2024/06/05 19:06
论文:https://arxiv.org/abs/1611.10012
1、Motivation
这篇文章通过大量的实验,主要权衡了三种被称为“元结构”(meta-architectures)的主流,教我们如何选择速度和精度满足要求的检测器。充分的对比了Faster RCNN、RFCN和SSD优缺点,并且实验的设计非常系统。
2、作者做了哪些实验
<1> 首先作者在TensorFlow里复现了Faster RCNN、RFCN和SSD三种方法,在统一框架下进行比较。
<2> Feature extractor的影响。实验的不同的主干网络:VGG16、Resnet-101、Inception v2、Inception v3、Inception Resnet(v2)和MobileNet。
<3>-<9>
3、元结构
4、实验及结论
<1>Accurancy VS time
从上图可以看出SSD,R-FCN在速度上要远远超过Faster R-CNN,但是在精度上Faster R-CNN领先,R-FCN紧随其后。但是Faster R-CNN可以通过设置region proposal来降低处理速度,如Faster R-CNN w/ResNet 50 poposal。
速度选择:SSD,R-FCN,Faster R-CNN w/Resnet 101
精度选择:Faster R-CNN
<2>Feature extractor
从下图可以看到,SSD对Feature extractor并不是很敏感,Faster RCNN和RFCN对特征的好坏很敏感。我们还是可以看出ResNet-101的效果比其他的略好。
<2>、输入尺寸的影响
作者给出了下图,但是我觉得这张图很乱,并没有清楚展示出我想知道的结果。作者得到的结论是输入尺寸增大会提升map,速度会变慢等。我想要比较的是:当输入尺寸不断增加,SSD效果的提升和Faster RCNN系列方法的提升哪个大,即输入尺寸的提升对哪种方法的提升更大。作者做的实验也只是输入尺寸为300和600的对比,我觉得还可以试一试更大一点输入尺寸的效果。
<3> 目标尺寸的影响
从下图可以看出,SSD在小目标上的表现实在是太差了,但是大目标上的表现和two stage的方法还是差不多的,甚至在VGG16、Inception v2和MobileNet上更好。
从上图可以看出,三种基础架构对于大目标检测准确率均比较高,总体来说SSD在大目标检测上表现的比较好,但是在小目标检测上均比较低,SSD最低。
大目标:首选SSD。Faster R-CNN也可以。
小目标:Faster R-CNN,R-FCN
<4> 图片大小的影响
比较了分辨率对于检测器的影响,从图可以看出,图像分辨率增大后,Faster R-CNN与R-FCN检测率均提高,而SSD没有太大改变。
<5>、proposals的数量
从图(a)可以看出,当proposal 设置为10的时候mAP离最高的mAP:35也相差了不到5个点(proposal=300),最佳的是在proposal=50的情况。图(b)也表现出了同样的trade-off。
<6>、Flops
图7再次印证了SSD的处理速度要比其它两个架构的快很多。从图8看出当FLOPs对等的情况下Inception与MobilNet这两种特征提取器处理速度要远比其它提取器要高。
<7> Memory
从图9图10可以看出,MobileNet架构与Inception架构相比较其它几个,同等条件下需要的内存较少,尤其是MobileNet架构。
<8>Good localization at .75 IOU means good localization at all IOUthresholds
从图11看出,当检测器在较大的IOU(.75)上表现出较差的性能的时候,往往在小的IOU(.5)上表现出同样的性能。这两个IOU较好的拟合了IOU在0.5~0.95上的情况,并且在IOU=0.75的时候曲线表现的稍微紧凑些。
<9> ensemble
作者显式的选择了一系列差异较大的模型,如果两个模型的category-wise AP vectors的cosine距离较大则认为这两个模型相似。
4、一些值得注意的实验细节
<1> 作者在实施Resnet和Inception Resnet时使用了atrous convolution来增大分辨率。更进一步,作者还测试了把conv4_3的stride也将为1,效果也有提升,但是速度也会受到影响。
<2> 对于SSD的额外层,作者使用truncated normal distribution with a standard deviation of σ = .03进行初始化。
<3> 对于SSD,作者没有使用SGD,而是用了RMSProp。
- Speed/accuracy trade-offs for modern convolutional object detectors
- Speed/accuracy trade-offs for modern convolutional object detectors
- Speed/accuracy trade-offs for modern convolutional object detectors
- READING NOTE: Speed/accuracy trade-offs for modern convolutional object detectors
- 目标检测“Speed/accuracy trade-offs for modern convolutional object detectors”
- 论文笔记之---Speed and accuracy trade-offs for modern convolutional object detectors
- 论文阅读-《Speed/accuracy trade-offs for modern convolutional object detectors》
- [论文笔记]Speed/accuracy trade-offs for modern convolutional object detectors
- 论文:Speed/accuracy trade-offs for object detectors
- object_detection API论文Speed/accuracy trade-offs for...的详细中文翻译
- LocNet: Improving Localization Accuracy for Object Detection
- LocNet: Improving Localization Accuracy for Object Detection
- Fully-Convolutional Siamese Networks for Object Tracking
- 论文研读--LocNet: Improving Localization Accuracy for Object Detection
- Performance Trade-offs of the Windows 2000 Component Execution Environment
- 物体跟踪-Fully-Convolutional Siamese Networks for Object Tracking
- JSON for Modern C++
- 5 Ways To Boost Typing Speed And Accuracy
- adsl 采集 php curl
- 洛谷1108低价购买(动态规划练习题)
- 在Window(操作系统64位)下使用Anaconda安装TensorFlow
- Cocos2d-x 3.x游戏开发之旅---<把角色放在屏幕中间>
- JPEG
- Speed/accuracy trade-offs for modern convolutional object detectors
- Qt读取json文档内容
- 基于MFC框架的C++游戏开发(二)建立工程、调整窗口
- websocket 学习笔记
- 在你的代码之外,服务时延过长的三个追查方向(上)
- 联想电脑怎么进入bios设置u盘启动
- Python requests模块学习笔记
- Cocos2d-x 3.x游戏开发之旅---<Lambda>
- NFS原理流程及RPC服务的介绍