06- 算法解读 Fast R-CNN (目标检测)

要点:

  • Fast R-CNN 属于 Two-stage detector

回归损失参考:https://www.cnblogs.com/wangguchangqing/p/12021638.html


Fast R-CNN算法

Fast R-CNN 是作者 Ross Girshick R-CNN 后的又一力作。同样使用 VGG16 作为网络的 backbone 与R-CNN相比训练时间快9倍,测试推理时间快213倍,准确率从 62%提升至66% ( Pascal VOC 数据集上 )
Fast R-CNN算法 流程可分为3个步 骤:
  • 一张图像生成1K~2K个 候选区域 ( 使用 Selective Search 方法)
  • 将图像输入网络得到相应的 特征图 ,将 SS算法 生成的候选框投影 到特征图上获得相应的 特征矩
  • 将每个特征矩阵通过 ROI pooling 层缩放到 7x7大小的特征图 ,接着 特征图展平通过一系列全连接层得到预测结

2.1 一次性计算整张图像特

R-CNN 依次将候选 框区域输入卷积神 经网络得到特征。

Fast-RCNN将整张图像送入网络,紧接着从 特征图像上提取相应的候选区域。这些候选 区域的特征不需要再重复计算。

2.2 RoI Pooling Layer

RoI Pooling Layer(感兴趣区域池化层)是用于从卷积特征图中提取感兴趣区域的一种机制。RoI指的是Region of Interest(感兴趣区域),它是指在输入图像中通过目标检测算法得到的边界框。

RoI Pooling Layer的作用就是将不同大小的RoI区域映射为相同大小的输出。具体来说,它首先将每个RoI区域划分成固定大小的子区域,然后对每个子区域做最大池化操作,得到一个固定大小的输出。这样做的好处是可以保证不同大小的RoI区域都能够被处理,并且将它们映射为相同大小的输出特征图,便于后续的分类和回归任务。不限制输入图像的尺寸

2.3 分类器

输出N+1个类别的概率(N为检测目标的种类, 1为背景)共N+1个节点

2.4 边界框回归器

输出对应N+1个类别的候选边界框回归参数(dx, dy, dw, dh),共(N+1)x4个节点

边界框回归器

输出对应N+1个类别的候选边界框回归参数(dx, d_y, d_w, d_h),共(N+1)x4个节点

G^x = P_wd_x (P) + P_x

G^y = P_h d_y (P) + P_y

G^w = P_w exp(d_w (P))

G^h = P_h exp(d_h (P))

P_x , P_y , P_w , P_h  分别为候选框的中心x,y坐标,以及宽高

G^x , G^y , G^w , G^h 分别为最终预测的边界框中心x,y坐标,以及宽高

2.5 Multi-task loss

 

 2.6 Cross Entropy Loss 交叉熵损失

1. 针对多分类问题(softmax输出,所有输出概率和为1)

 2. 针对二分类问题sigmoid输出,每个输出节点之间互不相干)

 

2.7 Fast R-CNN

 

猜你喜欢

转载自blog.csdn.net/March_A/article/details/130567541