zoukankan      html  css  js  c++  java
  • 梳理检测论文-Refinement Neural Network

    Single-Shot Refinement Neural Network for Object Detection

    目录

    1. motivation

    2. RefineDet 解析(Network Architecture)

         2.1 backbone 的构造

         2.1 ARM的作用与构造

         2.2 ODM的作用与构造

         2.3 TCB 模块解析

         2.4 multi-task loss function:

         2.5 Two-Step Cascaded Regression(两步级联的回归)

         2.6 Negative Anchor Filtering

    3. Training and Inference

          3.1 Data Augmentation

          3.2 Backbone Network

          3.3 Anchor的设计与匹配

    4. 总结

        4.2 技术总结

        4.2.1 数据的处理(voc0712.py)

    1. motivation

    对于目标检测的方法按照处理流程可以分为:2-stage approach 和 1-stage approach; 两者在处理速度和准确率上各有千秋:

    两步法(2-stage)[1],[2],[3] 先生成候选目标框集合(稀疏),然后进一步对它们进行分类和回归; 2-stage方法在一些比赛中取得了较好的性能;例如 faster R-CNN,往往具有很高的准确率,但速度相对而言并不快;

    一步法(1-stage)[4],[5] 通过在位置、尺度和高宽比上的规则和密集抽样来检测物体.其主要优点是计算效率高,其检测精度通常落后于两阶段法,其主要原因之一是类别不平衡问题。例如 SSD,yolo,却可以获得很高的速度 为了克服两者缺点、继承双方的优点

    基于此, 本篇论文提出的模型 RefineDet致力于将两者的优点结合起来, 弥补两者的缺点, 即:获得比2-stage 方法更好的准确率,并且具有与1 stage媲美的效率。

    2. RefineDet 解析(Network Architecture)

    本章主要讲解RefineDet每个模块的功能和实现方法;

    RefineDet 的框架结构与SSD[4]有点类似, 总工作流程如下:

    1. 网络通过前馈生成固定数量的bounding box和分数;分数代表了这些box中某些类别的可能性。
    2. 使用non-maximum suppression产生最终的结果。

    从结构上看,RefineDet主要由两个内部链接的模块组成:anchor强化模块(anchor refinement module, ARM)和物体检测模块(object detection module,ODM)。TCB模块是用于连接ARM和ODM的一个模块;

    2.1 backbone 的构造

    网络的主框架可以是VGG或者Resnet; 为了方便起见这里以VGG16为例,作为backbone.

    backbone是通过删除VGG的分类层后,再添加两个基本网络的辅助结构(即,在ImageNet 上预训练的VGG-16 和ResNet-101 )来构建的; 为了表达方便,将删除分类层的VGG16称为base, 添加的辅助结构叫做extras,  网络的构造如下:

    clipboard

    实现代码: 1. base 的vgg

  • 相关阅读:
    python --异常处理
    Python -- 函数对象
    python --循环对象
    python --循环设计
    python --模块
    python --文本文件的输入输出
    xpee.vbs
    oracle 有个xe版本
    POI对Excel单元格进行颜色设置
    POI进行ExcelSheet的拷贝
  • 原文地址:https://www.cnblogs.com/greentomlee/p/10841056.html
Copyright © 2011-2022 走看看