论文精读:Feature Pyramid Networks for Object Detection

news/2024/7/10 1:59:18 标签: 目标检测, 人工智能, 计算机视觉

文章目录

  • 1. 摘要
    • 1.1 背景
    • 1.2 提出新方法
    • 1.3 贡献
  • 2. 引言
    • 2.1 提出问题
    • 2.2 叙述Feature pyramid
    • 2.3 叙述深度卷积网络
    • 2.4 Feature pyramid的局限
    • 2.5 使用deep ConvNet计算多尺度特征的方式
    • 2.6 提出我们的方法
    • 2.7 贡献
  • 3. 相关工作
    • 3.1 手工工程特征和早期神经网络
    • 3.2 深度卷积目标检测
    • 3.3 使用多层次的方法
  • 4. Feature Pyramid Networks
    • 4.1 目的
    • 4.2 Feature Pyramid Networks结构
      • 4.2.1 Bottom-up pathway
    • 4.2.2 Top-down pathway
    • 4.2.3 Lateral connection
  • 5.应用
    • 5.1 Feature Pyramid Networks for RPN
    • 5.2 Feature Pyramid Networks for Fast R-CNN

1. 摘要

1.1 背景

  1. 特征金字塔是识别系统中用于检测不同尺度的物体的基本组件
  2. 由于其计算和存储的密集性,在深度学习中很少用到他

1.2 提出新方法

提出一个自上而下的架构与横向连接的金字塔结构,以建立高层次的语义特征图在所有尺度,叫做Feature Pyramid Network (FPN)

1.3 贡献

将FPN用在Faster-RCNN上实现了先进的单模型结果

2. 引言

2.1 提出问题

  1. 识别不同尺度的物体是计算机视觉的一个基本挑战

2.2 叙述Feature pyramid

  1. 建立在图像金字塔上的特征金字塔形成了识别不同尺度标准解决方案的基础
  2. 特征化图像金字塔在手工设计特征的时代被大量使用,例如DPM
    在这里插入图片描述

2.3 叙述深度卷积网络

  1. 对于识别任务,工程化的特征在很大程度上被深度卷积网络(ConvNets)计算的特征所取代
  2. 除了能够表示更高级别的语义之外,ConvNets对尺度的变化也更鲁棒
  3. 但即使具有这种鲁棒性,仍然需要金字塔来获得最准确的结果
    在这里插入图片描述

2.4 Feature pyramid的局限

  1. 推断时间增加
  2. 占用内存多

2.5 使用deep ConvNet计算多尺度特征的方式

  1. 深度ConvNet逐层计算特征层次结构,特征层次结构具有固有的多尺度金字塔形状。
  2. 该网络内特征层次结构产生不同空间分辨率的特征图,例如SSD,但是SSD是从高级特征开始构造金字塔的,因此他对检测小目标也造成了一定的损失。
    在这里插入图片描述

2.6 提出我们的方法

  1. 目标是利用ConvNet的特征层次结构的金字塔形状,同时创建一个在所有尺度上都具有强大语义的特征金字塔。
  2. 提出一种新的架构,该架构通过自上而下的路径和横向连接将低分辨率、语义强的特征与高分辨率、语义弱的特征相结合。

在这里插入图片描述

2.7 贡献

  1. 该结构结合Faster RCNN在COCO数据集上取得了领先的结果
  2. 在COCO上将Average Recall提高了8个点,在目标检测上提高了2.3mAP
  3. 在PSCAL上提高了3.8mAP
  4. 可以用所有尺度进行端到端的训练,并且在训练/测试时一致地使用

3. 相关工作

3.1 手工工程特征和早期神经网络

  1. SIFT特征最初是在尺度空间极值处提取的,并用于特征点匹配
  2. HOG和后来的SIFT特征都是在整个图像金字塔进行密集计算的

3.2 深度卷积目标检测

  1. OverFeat采用了类似于早期神经网络人脸检测器的策略,将ConvNet作为图像金字塔上的滑动窗口检测器。
  2. R-CNN采用了一种基于区域提议的策略,其中每个提议在使用ConvNet分类之前都进行了尺度归一化。
  3. PPnet证明,这种基于区域的检测器可以更有效地应用于在单个图像尺度上提取的特征图
  4. Fast R-CNN [11]和Faster R-CNN主张使用从单个尺度计算的特征,因为它在准确性和速度之间提供了良好的权衡。然而,多尺度检测仍然表现得更好,特别是对于小对象。

3.3 使用多层次的方法

  1. Hypercolumn、CN在多个尺度上对每个类别的部分分数求和以计算语义分割
  2. HyperNet,ParseNet和ION,在计算预测之前连接多个层的特征,这相当于对转换后的特征进行求和。
  3. SSD 和MS-CNN在特征层次结构的多个层预测对象,而不组合特征或分数
  4. U-Net and Sharp-Mask利用横向/跳过连接,将跨分辨率和语义层级的低级特征映射关联起来...

4. Feature Pyramid Networks

4.1 目的

  1. 利用卷积神经网络(ConvNet)的金字塔特征层次结构(从低到高的语义层次),构建一个从头到尾都具有高级语义的特征金字塔。
  2. 以任意大小的单尺度图像作为输入,并以全卷积的方式在多个层级上输出按比例大小的特征图

4.2 Feature Pyramid Networks结构

4.2.1 Bottom-up pathway

  1. Bottom-up的过程就是将图片输入到backbone ConvNet中提取特征的过程
  2. Backbone输出的feature map的尺寸有的是不变的,有的是成2倍的减小的。对于那些输出的尺寸相同的层,把他们归为一个stage,那么每个stage的最后一层输出的特征就被抽取出来。

4.2.2 Top-down pathway

  1. Top-down的过程就是将高层得到的feature map进行上采样然后往下传递,这样做是因为,高层的特征包含丰富的语义信息,经过top-down的传播就能使得这些语义信息传播到低层特征上,使得低层特征也包含丰富的语义信息。
  2. 采样方法是最近邻上采样,使得特征图扩大2倍

4.2.3 Lateral connection

使用的原因:使用lateral connection加强相同Stage的特征,因为自下而上的特征图有较低级别的语义,但其激活更准确地定位,因为它被子采样更少的次数。

  1. 对于每个stage输出的feature map,都先进行一个1*1的卷积降低维度。
  2. 然后再将得到的特征和上一层采样得到特征图进行融合,就是直接相加
  3. 加完之后需要进行一个33的卷积才能得到本层的特征输出,使用这个33卷积的目的是为了消除上采样产生的混叠效应(aliasing effect),混叠效应该就是指上边提到的‘插值生成的图像灰度不连续,在灰度变化的地方可能出现明显的锯齿状’。
    在这里插入图片描述

5.应用

5.1 Feature Pyramid Networks for RPN

  1. 通过用FPN替换单尺度特征图来适应RPN
  2. 将相同的设计(3×3 conv和两个1×1 convs)附加到特征金字塔的每个层级上
  3. 由于头部在所有金字塔等级的所有位置上密集滑动,因此不必在特定等级上使用多尺度的anchor。相反,为每个层级设置单一锚框
  4. anchor 定义在{P2,P3,P4,P5,P6}上具有{322, 644,1282,2562,5122},并且分别在每个层级使用{1:2, 1:1, 2:1}的anchor。因此金字塔上共有15个anchor
  5. 如果anchor与ground-truth box的IoU大于0.7则为正样本,小于0.3则为负样本
  6. 头部的参数在所有金字塔的金字塔层级上都是共享的。表明可以将通用的头部分类器应用于以任何图像比例计算的特征
  7. 共享参数的良好性能表明金字塔各层次共享相似的语义层次

5.2 Feature Pyramid Networks for Fast R-CNN

  1. Fast R-CNN是一种基于区域的目标检测器,使用感兴趣区域池(Region-of-Interest, RoI)提取特征
  2. 将特征金字塔视为是由图像金字塔产生的。因此,通过以下方式将宽度 w w w和高度 h h h的RoI分配给特征金字塔的水平Pk

    在这里插入图片描述

    1. 224是ImageNet的预训练尺寸
    2. k0是w × h = 2242的RoI应映射到的目标层级

http://www.niftyadmin.cn/n/5054383.html

相关文章

uni-app:showModal消息提示(确认、取消)

效果 代码 <template><view><button longpress"handleLongPress">点我出现删除消息</button></view> </template><script>export default {data() {return {};},methods: {handleLongPress(e) {//删除设备uni.showModal(…

虹科分享 | 网络保险:有效承保网络风险解决方案

文章来源&#xff1a;虹科网络安全 点击阅读原文&#xff1a;https://mp.weixin.qq.com/s/myCFPYtVVz5TPSFQaKqvLg 网络风险似乎往往很难量化&#xff0c;这使得保险公司很难适当地承保其网络风险政策。威胁载体的数量和不断发展的威胁&#xff0c;如新型恶意软件/勒索软件&…

渗透测试之打点

请遵守中华人民共和国网络安全法 打点的目的是获取一个服务器的控制权限 1. 企业架构收集 &#xff08;1&#xff09;官网 &#xff08;2&#xff09;网站或下属的子网站&#xff0c;依次往下 天眼查 企查查 2. ICP 备案查询 ICP/IP地址/域名信息备案管理系统 使用网站…

网络工程师的技术之路:代理IP和Socks5代理的威力

随着数字化时代的不断深化&#xff0c;网络工程师的技术工具箱中出现了越来越多的利器&#xff0c;其中代理IP和Socks5代理无疑是最重要的两者之一。本文将深入探讨这两种技术在网络工程师的日常工作中的威力和应用。 代理IP&#xff1a;解锁全球化的大门 随着跨界电商和全球…

系统集成|第十二章(笔记)

目录 第十二章 沟通管理12.1 沟通的基本概念12.2 主要过程12.2.1 规划沟通管理12.2.2 管理沟通12.2.3 控制沟通 12.3 常见问题 上篇&#xff1a;第十一章、项目人力资源管理 下篇&#xff1a;第十三章、干系人管理 第十二章 沟通管理 沟通管理在项目计划、执行、监控过程中具有…

10kv后台配电监控系统

10kv电力系统应用广泛&#xff0c;在各行各业都发挥着举足轻重的作用&#xff0c;其运行状态直接影响到电力系统的稳定性和可靠性。 一、系统概述 10kV后台配电监控系统是指对10kV配电系统的各种设备进行实时监控、调节、保护、控制和调节的现代化管理系统。通过在电力…

排序:快速排序算法分析

1.交换排序 基于“交换”的排序︰ 根据序列中两个元素关键字的比较结果来对换这两个记录在序列中的位置。 快速排序属于交换排序的大类。 2.快速排序的算法思想 1.算法实现: 在待排序表 L [ 1... n ] L[1...n] L[1...n]中任取一个元素pivot作为枢轴(或基准&#xff0c;通常…

【解决】Unity3D中无法在MQTT事件中执行Animator

问题原因&#xff1a; 解决方法&#xff1a; 解决过程 1、在 Unity 中创建一个名为 MainThreadDispatcher 的脚本&#xff0c;用于处理主线程操作。 using System.Collections.Generic; using UnityEngine;public class MainThreadDispatcher : MonoBehaviour {private stati…