目标检测论文解读3——Fast R-CNN
背景
deep ConvNet兴起,VGG16应用在图像分类任务上表现良好,本文用VGG16来解决检测任务。SPP NET存在CNN层不能fine tuning的缺点,且之前的方法训练都是分为多个阶段,特征提取+SVM分类+边框回归,这些问题在Fast R-CNN上都得到了解决。
方法
网络模型采用VGG16结构,跟SPP NET相比有如下改进。
ROI pooling
将最后的max pooling层换成RoI pooling层,可以认为是SPP NET的特殊情况,只有一层金字塔,feature map被分为H*W个bin,作max pooling。
bbox regressor
网络末尾采用两个不同的全连接层,分别输出分类和位置结果,实现了end-to-end的训练过程。
CNNs参数更新
其实SPP NET也并不是不能更新CNNs的参数,只是这样开销太大,这是因为SPP NET先是将一堆图片的ROI求出来,打乱后随机取N张训练,这些ROI可能来自于很多不同的图片,这样如果要进行反向传播,必须保存这些图片训练中各层的feature map,开销巨大;Fast R-CNN采用了分层的思想,只在R=2张原图中取N个ROI,这样只用计算存储两张图片,开销大大降低。
总结
是在SPP NET的基础上做出的改进,让训练过程变成end-to-end,整个网络的参数都能更新。
缺点
ROI的提取采用的还是SS方法。
目标检测论文解读3——Fast R-CNN的更多相关文章
- AAAI2019 | 基于区域分解集成的目标检测 论文解读
Object Detection based on Region Decomposition and Assembly AAAI2019 | 基于区域分解集成的目标检测 论文解读 作者 | 文永亮 学 ...
- 目标检测论文解读5——YOLO v1
背景 之前热门的目标检测方法都是two stage的,即分为region proposal和classification两个阶段,本文是对one stage方法的初次探索. 方法 首先看一下模型的网络 ...
- 目标检测论文解读1——Rich feature hierarchies for accurate object detection and semantic segmentation
背景 在2012 Imagenet LSVRC比赛中,Alexnet以15.3%的top-5 错误率轻松拔得头筹(第二名top-5错误率为26.2%).由此,ConvNet的潜力受到广泛认可,一炮而红 ...
- 目标检测论文解读10——DSSD
背景 SSD算法在检测小目标时精度并不高,本文是在在SSD的基础上做出一些改进,引入卷积层,能综合上下文信息,提高模型性能. 理解 Q1:DSSD和SSD的区别有哪些? (1)SSD是一层一层下采样, ...
- 目标检测论文解读13——FPN
引言 对于小目标通常需要用到多尺度检测,作者提出的FPN是一种快速且效果好的多尺度检测方法. 方法 a,b,c是之前的方法,其中a,c用到了多尺度检测的思想,但他们都存在明显的缺点. a方法:把每图片 ...
- 目标检测论文解读12——RetinaNet
引言 这篇论文深刻分析了one-stage的模型精度比two-stage更差的原因,并提出Focal Loss提高精度. 思路 在论文中,作者指出,造成one-stage模型精度差的原因主要是:正负样 ...
- 目标检测论文解读4——Faster R-CNN
背景 Fast R-CNN中的region proposal阶段所采用的SS算法成为了检测网络的速度瓶颈,本文是在Fast R-CNN基础上采用RPN(Region Proposal Networks ...
- 目标检测论文解读9——R-FCN
背景 基于ResNet 101的Faster RCNN速度很慢,本文通过提出Position-sensitive score maps(位置敏感分值图)来给模型加速. 方法 首先分析一下,为什么基于R ...
- 目标检测论文解读6——SSD
背景 R-CNN系列算法检测速度不够快,YOLO v1检测准确率较低,而且无法检测到密集目标. 方法 SSD算法跟YOLO类似,都属于one stage的算法,即通过回归算法直接从原图得到预测结果,为 ...
随机推荐
- ESP8266 SDK开发: 外设篇-GPIO输入检测
前言 官方提供了以下函数检测引脚输入状态 检测GPIO5 if( GPIO_INPUT_GET(5) == 0 ) GPIO5当前为低电平 if( GPIO_INPUT_GET(5) == 1 ) G ...
- Spring security 知识笔记【内存角色授权】
一.原有的配置文件中,增加注解@EnableGlobalMethodSecurity(prePostEnabled = true) 二.原有配置文件中,内存新建账号的时候添加角色 package El ...
- 黑客最喜欢的15个Nmap扫描命令,熟练掌握你也能成为黑客大神
1.针对IP或主机的基本Nmap扫描 nmap IP 现在,如果要扫描主机名,只需替换主机的IP,如下所示: nmap 域名 2.扫描本地或远程服务器上的特定端口或扫描整个端口范围 nmap -p 1 ...
- Elasticsearch由浅入深(十一)索引管理
索引的基本操作 创建索引 PUT /{index} { "settings": {}, "mappings": { "properties" ...
- c++ 使用 vcpkg
1. 打开下载地址:https://github.com/Microsoft/vcpkg 2. 直接下载到本地某个盘 3. 配置环境变量: 4. 打开下载到本地的vcpkg有可能叫vcpkg-mast ...
- 推荐一款移动端天气App即刻天气
推荐一款移动端天气App即刻天气 一 应用描述 即刻天气预报是一个提供全国各城市15日天气预报和空气质量的APP,包含全国3000个城市天气预报,3万个乡镇天气,15日及48小时空气质量预报,是万千用 ...
- Django文件上传【单个/多个图片上传】
准备工作 python:3.6.8 django:2.2.1 新建django项目 确定项目名称.使用的虚拟环境[当然这个也可以后期修改].app的名称 创建成功,选择在新的窗口中打开 图片上传 修改 ...
- Laravel自定义排序
如果数据库的status字段有0,1,2,3几种状态,如果想让status为1,2的状态排在最前面 那么可以这样: $obj = $obj->orderByRaw(DB::raw('FIELD( ...
- golang语言特性
1. 垃圾回收 a. 内存⾃动回收,再也不需要开发⼈员管理内存 b. 开发人员专注业务实现,降低了心智负担 c. 只需要new分配内存,不需要释放 2. 天然并发 a. 从语⾔层面⽀持并发,⾮常简 ...
- 服务器个人环境下pytorch0.4.1编译warp-ctc遇到的问题及解决方法
一.关于warp-ctc CTC可以生成一个损失函数,用于在序列数据上进行监督式学习,不需要对齐输入数据及标签,经常连接在一个RNN网络的末端,训练端到端的语音或文本识别系统.CTC论文 CTC网络的 ...