当前位置:网站首页>目标检测——Faster R-CNN 之 Fast R-CNN

目标检测——Faster R-CNN 之 Fast R-CNN

2022-08-11 05:23:00 壹万1w

目标检测——Faster-RCNN 之 Fast R-CNN

1、Fast R-CNN简介

Fast R-CNN是作者Ross Girshick继R-CNN后的又一力作。同样使用VGG16作为网络 的backbone,与R-CNN相比训练时间快9倍,测试推理时间快213倍,准确率从 62%提升至66%(在Pascal VOC数据集上)。

2、论文内容

2.1 算法流程

Fast R-CNN算法流程可分为3个步骤

  • 一张图像生成1K~2K个候选区域(使用Selective Search方法)
  • 将图像输入网络得到相应的特征图,将SS算法生成的候选框投影到 特征图上获得相应的特征矩阵
  • 将每个特征矩阵通过ROI pooling层缩放到7x7大小的特征图,接着将 特征图展平通过一系列全连接层得到预测结果
    在这里插入图片描述

2.1.1 一次性计算整张图像特征

  • R-CNN 和 Fast R-CNN特征提取的对比
R-CNNFast R-CNN
R-CNN依次将候选 框区域输入卷积神 经网络得到特征。Fast-RCNN将整张图像送入网络,紧接着从 特征图像上提取相应的候选区域。这些候选 区域的特征不需要再重复计算。
在这里插入图片描述在这里插入图片描述
对每个候选区域进行缩放,然后输入网络得到特征,在R-CNN中如果得到2k个候选框,就会进行2k次计算,会出现大量冗余现象直接把正常图像输入网络中得到特征图,然后通过候选区域原图和特征图的映射关系可以直接在特征图中得到特征矩阵,因此不需要重复计算

2.1.2 训练数据的正样本和负样本

在获取的数据中分为正样本和负样本
正样本:候选框存在我们需要的目标
负样本:候选框没有我们需要的目标(背景)
从2k个候选框中采集64个候选区域,这64个区域一部分为正样本,一部分为负样本
正样本和负样本的定义:
正样本:候选框和真实边界框IOU>0.5
负样本:候选框和真实边界0.1<IOU<0.5
需要知道的:并不是训练所有的候选框,而是选择一部分候选框进行训练

2.1.3 特征缩放

有了正样本后,通过ROI Pooling Layer把它缩放到统一尺寸
这里对特征图并没有限制输入图像的尺寸!!!
在这里插入图片描述
假设左图为特征矩阵,得到特征矩阵后将他划分为7*7=49份,然后对每个区域执行最大下采样(Max Pooling)操作,得到右图的含有数值的特征矩阵。
注:这里忽略了channel(维度),对于其他channel进行相同操作
在这里插入图片描述

2.1.4

  1. 把图像直接输入到CNN网络得到特征图
  2. 根据映射关系找到候选区特征矩阵
  3. 把特征矩阵通过ROI Pooling层缩放成指定尺寸
  4. 进行展平处理,通过两个全连接层FCs得到我们的ROI feature vector
  5. 在ROI feature vector的基础上并连两个全连接层5和6 ,其中5用于目标概率的预测,另一个用于边界框回归参数的预测
    在这里插入图片描述

关于目标概率预测的分类器

如果有20个类别,就输出21个概率
第一个概率:候选框为背景的概率
其余依次:候选框为每个类的概率
概率经过softmax处理,满足概率分布,21个概率和为1
在这里插入图片描述

关于边界框回归器

每个类别都会有四个参数(dx dy dw dz),所以N+1个类别就是(N+1)*4个参数节点
在这里插入图片描述
如何利用回归参数得到目标候选框?
此时的dx和dy:是用来调整候选边界框中心坐标的回归参数

在这里插入图片描述

2.1.5 Fast R-CNN损失计算

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

原网站

版权声明
本文为[壹万1w]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_45720073/article/details/126213032