Faster R-CNN中RPN的分析

本文深入剖析Faster R-CNN的区域提议网络(RPN),包括其原理、anchor机制、minibatch概念以及RPN损失函数中的SmoothL1Loss。同时探讨了Detectron中RPN的代码实现细节,如SpatialNarrowAs操作和权重的使用。
摘要由CSDN通过智能技术生成

Faster R-CNN原文地址

摘要

Faster R-CNN是object detection的里程碑之作。它提出了RPN,即一种用CNN来提取proposal的网络。

为了更好地理解RPN的代码实现细节,充分理解它用到的SmoothL1Loss是很必要的。

本文简述了RPN的作用,讨论了RPN的loss以及SmoothL1Loss的语义及其作用,最后分析了RPN的代码实现。

RPN的原理

RPN简介

RPN是一个输入global feature map,输出许多可能RoI的网络。
RoI就是所谓的感兴趣区域,相当于是物体bbox的candidate。RPN输出的RoI也被称为proposal。

RPN的anchor

RPN的基本原理就是利用有一定stride(比如16像素)的滑动窗口在原图上枚举proposal中心,对每个中心产生多个不同长宽比(例如0.5,1,2三种),不同大小(比如大中小三种)的bbox。这些产生的bbox被叫做anchor。

如果对每个中心有三种长宽比、三种大小,我们就能得到9个anchor。

RPN的minibatch

下文中你会见到minibatch这种说法。
minibatch就是RPN每次输出的proposal的数量。
如果RPN对每一张图片输出了256个proposal,那么我们就说minibatch=256。

RPN的loss及其分析

RPN的loss如下。
L ( { p i } , { t i } ) = 1 N c l s ∑ i L c l s ( p i , p i ∗ ) + λ 1 N r e g ∑ i p i ∗ L r e g ( t i , t i ∗ ) L(\{p_i\},\{t_i\}) = {1\over N_{cls}}\sum_i{L_{cls} (p_i,p_i^*)} + \lambda{1\over N_{reg}}\sum_i{p_i^*L_{reg}(t_i,t_i^*)} L({ pi},{ ti})=Ncls1iLcls(pi,pi)+λNreg1ipiLreg(ti,ti)

  • loss的结构。
    这个loss是一种multi-task loss。所谓多任务loss。
    这里,它是cls(proposal的分类)和reg(proposal的bbox的位置回归、微调)两个任务各自的loss之加权和。
    之所以说是加权和,主要表现在reg项乘了一个 λ \lambda λ,它一个灵活的超参数,需要人为设定。原文提到 λ = 10 \lambda=10 λ=10

  • loss的符号。
    i i i 是一个minibatch中所有anchor的索引。
    p i p_i pi是对anchor i i i的预测结果。 p i ∗ p_i^* pi是anchor i

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Faster R-CNNRPN(Region Proposal Network)是一种用于生成候选目标框的子网络。RPN的主要目标是通过在输入图像上滑动一个小的窗口(称为锚框),对每个锚框进行分类和回归,从而生成候选目标框。 RPN的工作流程如下: 1. 输入图像通过基础的卷积神经网络(通常是共享特征提取网络)进行特征提取,并获得一系列特征图。 2. 对于每个位置,在特征图上生成多个不同尺度和宽高比的锚框。这些锚框覆盖了输入图像的不同区域,并提供了不同尺度和宽高比的候选目标框。 3. 对于每个锚框,RPN通过一个分类分支和一个回归分支来预测其是否包含一个对象以及调整其边界框的位置。分类分支输出两个概率,表示锚框是前景(包含目标)或背景(不包含目标)的概率。回归分支则用于预测锚框相对于真实目标框的位置调整。 4. 根据分类分支的前景概率和回归分支的位置调整,选择具有高概率且经过位置调整的锚框作为候选目标框。 5. 最后,通过非极大值抑制(NMS)来消除高度重叠的候选目标框,以生成最终的目标检测结果。 RPN通过共享特征提取网络和锚框的多尺度生成,实现了高效的目标检测框架。它能够在不同尺度和宽高比的锚框上进行准确的目标分类和位置回归,从而提供了丰富的候选目标框供后续的目标检测任务使用。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值