理解Anchor、RPN真值与预测量、RPN卷积网络

RPN部分的输入、输出如下:

  • 输入:feature map、物体标签、即训练集中所有物体的类别与边框位置
  • 输出:Proposal、分类Loss、回归Loss,其中,Proposal作为生成区域,供后续模块分类与回归。两部分损失用作优化网络

理解Anchor

Anchor本质是在原图大小上的一系列的矩形框,但Faster RCNN将这一系列的矩形框和feature map进行了关联。具体做法是,首先对feature map进行3×3的卷及操作,得到每一个点的维度时512维,这512维的数据对应着原始图片上很多不同的大小与宽高区域的特征,这些区域的中心点都相同。如果下采样率为默认的16,则每一个点的坐标乘以16即可得到对应的原图坐标
为适应不同物体的大小与宽高,在作者的论文中,默认在每一个点上抽取了9种Anchors,具体Scale为{8,16,32},Ratio为{0.5,1,2},将这9种Anchors的大小反算到原图上,即得到不同的Proposal,如下图所示。由于feature map大小为37×50,因此一共有37×50×9=16650个Anchors。而后通过分类网络与回归网络得到每一个Anchor的前景背景概率和偏移量,前景背景概率用来判断Anchor是前景的概率,回归网络则是将预测偏移量作用到Anchor上使得Anchor更接近于真实物体坐标
在这里插入图片描述

RPN的真值与预测量

对于物体检测任务来讲,模型需要预测每一个物体的类别及其出现的位置,即类别、中心点坐标x与y、宽w与高h这5个量。由于有个Anchor这个先验框,RPN可以预测Anchor的类别作为预测边框的类别,并且可以预测真实的边框相对于Anchor的偏移量,而不是直接预测表框的中心点坐标x与y、宽高w与h
举个例子,如下图所示,输入图像中有3个Anchors与两个标签,从位置来看,Anchor A、C分别和标签M、N有一定重叠,而Anchor B位置更像是背景
在这里插入图片描述
首先介绍模型的真值。对于类别的真值,由于RPN只负责区域生成,保证recall,而没必要细分每一个区域属于哪一个类别,因此只需要前景与背景两个类别,前景即有物体,背景则没有物体
RPN通过计算Anchor与标签的IoU来判断一个Anchor是属于前景还是背景。IoU的含义是两个框的公共部分占所有部分的比例,即重合比例。在上图中,Anchor A与标签M的IoU计算公式如下所示
在这里插入图片描述
当IoU大于一定值时,该Anchor的真值为前景,低于一定值时,该Anchor的真值为背景
然后是偏移量的真值,仍以Anchor与标签M为例,假设Anchor A的中心坐标为x_a与y_a,宽和高分别为w_a与h_a,标签M的中心坐标为x与y,宽高分别为w与h,则对应偏移真值计算公式如下式:
在这里插入图片描述
位置偏移t_x与t_y利用宽与高进行了归一化,而宽高偏移t_w与t_h进行了对数处理,这样的好处是进一步限制了偏移量的范围,便于预测
有了上述真值,为了求取损失,RPN通过卷积网络分别得到了类别与偏移量的预测值,具体来讲,RPN需要预测每一个Anchor属于前景与背景的概率,同时也需要预测真实物体相对于Anchor的偏移量,记为t*_x、t*_y、t*_w和t*_h
另外,在得到预测偏移量后,可以使用下面的公式将预测偏移量作用到对应的Anchor上,得到预测框的实际位置x*、y*、w和h
在这里插入图片描述
如果没有Anchor,做物体检测需要直接预测每个框的坐标,由于框的坐标变化幅度大,使网络很难收敛与准确预测,而Anchor相当于提供了一个先验的阶梯,使得模型取预测Anchor的偏移量,即可更好地接近真实物体
实际上,Anchor是我们想要预测属性的先验参考值,并不局限于矩形框。如果需要,我们也可以增加其它类型的先验,如多边形框、角度和速度等

RPN卷积网络

为了实现上述的预测,PRN搭建了如下图所示的网络结构。具体实现时,在feature map上首先使用3×3的卷积进行更深的特征提取,然后利用1×1卷积分别实现分类网络和回归网络
在这里插入图片描述
在物体检测中,通常我们将有物体的位置称为前景,没有物体的位置称为背景。在分类网络分支中,首先使用1×1卷积输出18×37×50的特征,由于每个点默认有9个Anchors,并且每个Anchor只预测其属于前景还是背景,因此通道数为18。然后利用torch.view()函数将特征映射到2×333×75,这样第一维仅仅是一个Anchor的前景背景得分,并送到Softmax函数中进行概率计算,得到的特征再变换到18×37×50的维度,最终输出的是每个Anchor属于前景与背景的概率
在回归分支中,利用1×1卷积输出36×37×50的特征数,第一维的36包含了9个Anchors的预测,每一个Anchor有4个数据,分别代表了每一个Anchor的中心点横纵坐标及宽高这4个量相对于真值的偏移量

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丁天牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值