高精度目标检测算法-RFBNet

技术

picture.image

向AI转型的程序员都关注了这个号 👇👇👇

机器学习AI算法工程 公众号: datayx

论文:Receptive Field Block Net for Accurate and Fast Object Detection (CVPR2017)

链接:https://arxiv.org/abs/1711.07767

代码地址:https://github.com/ruinmessi/RFBNet

1 绪论部分:

   当前顶级目标检测器依赖于非常深的CNN主干网络,例如ResNet-101和Inception,优点是它们具有强大的特征表现能力,但是耗时严重。相反地,一些基于轻量级模型的检测器满足实时处理,但是精度是诟病。








  

在RFBNet这篇论文中,主要想利用一些技巧使用轻量级模型达到速度和精度并举的检测器。灵感来自人类视觉的感受野结构Receptive Fields (RFs) ,提出了新奇的RF block(RFB)模块,来验证感受野尺寸和方向性的对提高有鉴别鲁棒特征的关系。RFBNet是以主干网络(backbone)为VGG16的SSD来构建的。下面是讨论其有效性,两项基准测试实验和结果显示。RFBNet具备同非常深的主干网络检测器的精度,但是保持了实时性。

2 相关工作:

  这部分就不介绍了,主要是对目前一步法和两步法的一些利弊总结。有个比喻挺形象:YOLO定位精度差,小目标检出率低;SSD是YOLO的多尺度版本,对小目标检出有改善。

3.2 感受野模块:

  RFB是一个类似Inception模块的多分支卷积模块,它的内部结构可分为两个组件:多分支卷积层以及随后的膨胀卷积层。如下图

picture.image

3.2.1.多分支卷积层:

根据RF的定义,用多种尺寸的卷积核来实现比固定尺寸更好。具体设计:1.瓶颈结构,1x1-s2卷积减少通道特征,然后加上一个nxn卷积。2.替换5x5卷积为两个3x3卷积去减少参数,然后是更深的非线性层。有些例子,使用1xn和nx1代替nxn卷积;shortcut直连设计来自于ResNet和Inception ResNet V2。3.为了输出,卷积经常有stride=2或者是减少通道,所以直连层用一个不带非线性激活的1x1卷积层。


访问AI图谱 技术分享社区

https://loveai.tech


3.2.2.膨胀卷积层:

最初来自Deeplab,在保持参数量和同样感受野的情况下,用来获取更高分辨率的特征。图4,5展示两种RFB结构,每个分支都是一个正常卷积后面加一个膨胀卷积,主要是尺寸和膨胀因子不同。没有使用膨胀池化,主要是在组织不同RFs尺寸的时候,不够灵活。对于RFB,卷积核尺寸kernel size和膨胀因子dilate对检测器有细微影响,下面会讲。

picture.image

picture.image

3.3 RFBNet检测结构

picture.image

RFBNet检测器利用多尺度一步检测框架SSD,在其中嵌入RFB模块,使得轻量级主干SSD网络也能更快更准。RFB结构可以很容易集成到CNNs中,所以RFBNet检测网络保留了大部分SSD结构。主要修改是替换顶层卷积层为RFB,这些改动小但有用。如下图。

picture.image

3.3.1.轻量级主干

  为了便于比较直接使用SSD原始的主干网络,也就是VGG16。它是将fc6和fc7层转换成卷积层用于下采样参数,并且将pool5从2x2-s2改成3x3-s1.膨胀卷积用来填充空缺和所有dropout层,并移除fc8层。

3.3.2.多尺度特征图RFB

原始SSD,基础主干网络后面接着一系列重叠的卷积层,得到一系列空间分辨率减小而感受野增大的特征图。RFBNet保持了这种结构,也做了些改进,用RFB-b模块替换了原来L2归一化,达到从前面卷积层获取包含小目标的底层特征图。早期版本的RFB,使用的是膨胀max pool来模拟感受野方向性的影响。由于特征图太小,最后的卷积层只保留了部分,像5x5卷积核过大,无法使用而去掉。

3.3.3微调RFB参数

 主要就是调节RFB模块中卷积核kernel size以及膨胀因子dilate。RFB-a是调整后的结构,然后从conv4\_3层连出。再在后面接一些小的滤波器,对性能有一定提升。

picture.image

picture.image

picture.image


阅读过本文的人还看了以下:

分享《深度学习入门:基于Python的理论与实现》高清中文版PDF+源代码

《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码

《深度学习之pytorch》pdf+附书源码

将机器学习模型部署为REST API

FashionAI服装属性标签图像识别Top1-5方案分享

重要开源!CNN-RNN-CTC 实现手写汉字识别

yolo3 检测出图像中的不规则汉字

同样是机器学习算法工程师,你的面试为什么过不了?

前海征信大数据算法:风险概率预测

【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类

VGG16迁移学习,实现医学图像识别分类工程项目

特征工程(一)

特征工程(二) :文本数据的展开、过滤和分块

特征工程(三):特征缩放,从词袋到 TF-IDF

特征工程(四): 类别特征

特征工程(五): PCA 降维

特征工程(六): 非线性特征提取和模型堆叠

特征工程(七):图像特征提取和深度学习

如何利用全新的决策树集成级联结构gcForest做特征工程并打分?

Machine Learning Yearning 中文翻译稿

蚂蚁金服2018秋招-算法工程师(共四面)通过

全球AI挑战-场景分类的比赛源码(多模型融合)

斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)

python+flask搭建CNN在线识别手写中文网站

中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程

不断更新资源

深度学习、机器学习、数据分析、python

搜索公众号添加: datayx

picture.image

长按图片,识别二维码,点关注

访问AI图谱

https://loveai.tech

picture.image

picture.image

0
0
0
0
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论