首页 > 其他分享 >Region Proposal Network (RPN) 架构详解

Region Proposal Network (RPN) 架构详解

时间:2023-06-01 22:44:23浏览次数:47  
标签:Network 特征 标签 Region 锚点 每个 Proposal 我们 RPN

动动发财的小手,点个赞吧!

简介

如果您正在阅读这篇文章,那么我假设您一定听说过用于目标检测的 RCNN 系列,如果是的话,那么您一定遇到过 RPN,即区域提议网络。如果您不了解 RCNN 系列,那么我强烈建议您在深入研究 RPN 之前单击此处阅读这篇文章。

因此我们知道,在目标检测算法中,目标是生成候选框,可能包含我们目标的框,这些框将通过边界框回归方法进行定位,并由分类器分类到各自的类别。

在早期版本的物体检测算法中,这些候选框曾经是通过传统的计算机视觉技术生成的。其中一种方法是“选择性搜索”,但这种方法的缺点是它是离线的,而且计算量很大。

这就是 RPN(区域提议网络)方法通过在非常短的时间内生成候选框和最重要的地方,这个网络可以插入任何对象检测网络,这使得它对任何对象检测模型都更有用。

RPN

CNN 从特征图学习分类的方式,RPN 也学习从特征图生成这些候选框。可以使用下图演示典型的区域提议网络

让我们逐步了解上面的框图

Step 1

因此,在第一步中,我们的输入图像通过卷积神经网络,最后一层将特征映射作为输出。

Step 2

在这一步中,一个滑动窗口运行在上一步获得的特征图上。滑动窗口的大小是 n*n(这里是 3×3)。对于每个滑动窗口,都会生成一组特定的锚点,但具有 3 种不同的纵横比(1:1、1:2、2:1)和 3 种不同的比例(128、256 和 512),如下所示。

因此,对于 3 种不同的纵横比和 3 种不同的比例,每个像素总共可能有 9 个建议。特征图大小为 WxH 的锚框总数和特征图每个位置的锚点数量 K 可以表示为 WxHxK 。

下图显示了在大小为 (600, 900) 的图像的位置 (450, 350) 处的 9 个锚点。

上图中,三种颜色代表三种尺度或尺寸:128×128、256×256、512×512。

让我们挑出棕色的盒子/锚点(上图中最里面的盒子)。三个盒子的高宽比分别为1:1、1:2和2:1。

现在我们有 9 个锚框用于特征图的每个位置。但是可能有很多盒子里面没有任何物体。因此模型需要了解哪个锚框可能包含我们的对象。带有我们对象的锚框可以被归类为前景,其余的将是背景。同时模型需要学习前景框的偏移量以调整以适合对象。这将我们带到下一步。

Step 3

锚框的定位和分类是由 Bounding box Regressor layer 和 Bounding box Classifier layer 完成的。

Bounding Box Classifier 计算 Ground Truth Box 与 anchor boxes 的 IoU 分数,并以一定的概率将 Anchor box 分类为前景或背景。

Bounding box Regressor 层学习 x,y,w,h 值相对于被分类为前景的 Anchor Box 的 Ground truth Box 的偏移量(或差异),其中 (x,y) 是框的中心, w 和 h 是宽度和高度。

由于 RPN 是一个模型,并且每个模型都有一个要训练的成本函数,因此 RPN 也是如此。 RPN 的损失或成本函数可以写成

注意:- PN 不关心对象的最终类(例如猫、狗、汽车或人等)是什么。它只关心它是前景对象还是背景。

示例

让我们用一个例子来描述 RPN 的整个概念

因此,如果我们有一个大小为 600×800 的图像,在通过卷积神经网络 (CNN) 块后,该输入图像将缩小为一个 38×56 的特征图,每个特征图位置有 9 个锚框。那么我们将有 38569=1192 个提案或 Anchor Boxes 来考虑。每个锚框都有两个可能的标签(前景或背景)。如果我们将特征图的深度设置为 18(9 个锚点 x 2 个标签),我们将使每个锚点都有一个向量,该向量具有表示前景和背景的两个值(称为 logit 的法线)。如果我们将 logit 输入 softmax/logistic 回归激活函数,它将预测标签。

假设 600×800 的图像在应用 CNN 后缩小 16 倍为 39×51 的特征图。 feature map 中的每个位置都有 9 个 anchors,每个 anchor 都有两个可能的标签(background,foreground)。如果我们将特征图的深度设置为 18(9 个锚点 x 2 个标签),我们将使每个锚点都有一个向量,该向量具有表示前景和背景的两个值(通常称为 logit)。如果我们将 logit 输入 softmax/logistic 回归激活函数,它将预测标签。现在,训练数据已包含特征和标签。模型将进一步训练它。

总结

区域提议网络 (RPN) 的输出是一堆框/提议,它们将被传递给分类器和回归器以最终检查对象的出现。简而言之,RPN 预测一个锚点是背景还是前景的可能性,并对锚点进行细化。

本文由mdnice多平台发布

标签:Network,特征,标签,Region,锚点,每个,Proposal,我们,RPN
From: https://www.cnblogs.com/swindler/p/17450462.html

相关文章

  • surrounded-regions
    Givena2Dboardcontaining'X'and'O',captureallregionssurroundedby'X'.Aregioniscapturedbyflippingall'O'sinto'X'sinthatsurroundedregion.Forexample,XXXXXOOXXXOXXOXXAft......
  • 2018-2019 ACM-ICPC Southeastern European Regional Programming Contest (SEERC 201
    题目链接:https://vjudge.net/contest/339284#overview A.Numbers待做B.BrokenWatchs=input()s=s.split("")A,B,C,N=list(map(int,s))n=(N-1)//2ret=N*N*N-3*N*(n)*(n-1)-N-3*N*(N-1)ans=retmod=1<<64if(A==BandB==C):......
  • /etc/netplan/network-manager-all.yaml 配置服务器ip
    本文为博主原创,转载请注明出处:/etc/netplan是用于配置Ubuntu系统网络接口的目录。在Ubuntu中,网络配置的默认工具为  Netplan,而/etc/netplan则是Netplan配置文件的存储位置。在/etc/netplan目录中,通常会有一个或多个YAML格式的文件,用来定义系统中的网络接......
  • Wallys/Qualcomm network chip/ipq9574/ipq9554/wireless connectivity solutions.
     QualcommWi-Fi7networkchipsolutionsIPQ9574andIPQ9554areadvancedwirelessconnectivitysolutionsdevelopedbyQualcommTechnologies.ThesechipsaredesignedtosupporttheWi-Fi7(802.11be)standard,whichofferssignificantimprovementsinspe......
  • [CVPR23 Highlight] Side Adapter Network for Open-Vocabulary Semantic Segmentatio
    **摘要本文提出了一个用于开放词汇语义分割的新框架SAN,将语义分割任务建模为区域识别问题,提取maskproposals并使用CLIP对mask进行识别。SAN可以重新利用CLIP的特征,因此其本身可以非常轻量;同时网络可以端到端地进行训练,从而使SAN适应冻结的CLIP模型。本文方法需要很少的参数量,且......
  • 文献阅读-Inferring Networks of Diffusion and Influence
    Authors: ManuelGomez-Rodriguez, JureLeskovec, AndreasKrause AuthorsInfo&ClaimsACMTransactionsonKnowledgeDiscoveryfromDataVolume5Issue4ArticleNo.:21pp1–37https://doi.org/10.1145/2086737.2086741  Abstract......
  • git团队协作_network
    Git教程:https://www.runoob.com/git/git-tutorial.htmlGit大全:Git大全-Gitee.comGit分支管理一种适合小团队的Git协作流程-知乎(zhihu.com)[GitHub的Fork是什么意思?-知乎(zhihu.com)](https://www.zhihu.com/question/20431718/answer/74250205?utm_campaign=s......
  • linphone-NetworkManger.java文件分析
    功能InterceptnetworkstatechangesandupdatelinphonecorethroughLinphoneManger翻译拦截网络状态的变化,并通过LinphoneManger更新linphone核心内容。NetworkManager.java/**......
  • docker删除网络报错:Error response from daemon: error while removing network
    在安装harbor发现docker的network已经存在了然后直径ls去查看发现存在如下,然后去rm删除的时候发现删不掉[root@st-test-hemu-harbor-2harbor]<2023052911:37:11>#dockernetworklsNETWORKIDNAMEDRIVERSCOPE35b4409d8f79bridge......
  • Uncovering the Representation of Spiking Neural Networks Trained with Surrogate
    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! PublishedinTransactionsonMachineLearningResearch(04/2023)......