我是靠谱客的博主 飞快眼睛,最近开发中收集的这篇文章主要介绍RCNN系列的box regression及其他,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

RCNN, Fast RCNN, Faster RCNN,针对每一分类做proposal regression,都是与类别相关的。

Faster RCNN的bbox,第一次粗回归,只有前景、背景2类,第二次位置精修就有n类(n可以是20,80等)类别更多、回归也更精细。

è¿éåå¾çæè¿°

RCNN

算法步骤 

- 一张图像生成1K~2K个候选区域 
- 对每个候选区域,使用深度网络提取特征 
- 特征送入每一类的SVM 分类器,判别是否属于该类 
- 使用回归器精细修正候选框位置

位置精修

回归器 
针对每一类目标,使用一个线性脊回归器进行精修。正则项λ=10000λ=10000。 
输入为深度网络pool5层的4096维特征,输出为xy方向的缩放和平移。 
训练样本 
判定为本类的候选框中,和真值重叠面积大于0.6的候选框。

Fast RCNN

算法步骤 

- 图像归一化为224×224直接送入网络。使用SS生成候选区域 
- 一张图像进入深度网络提取特征 
- 在特征图上框出候选区域作为输入,通过ROI pooling统一为NXM大小 
- 用深度网络分类和位置精修

位置精修

回归器 
针对每一类目标,使用深度网络回归

Faster RCNN

算法步骤 

- 使用深度网络提取特征 
- 使用RPN网络生成proposal 
- 此处相当于Fast RCNN网络。以RPN的输出作为输入,进行分类和位置精修

位置精修

回归器 
针对每一类目标,使用深度网络回归。

 

RPN结构

è¿éåå¾çæè¿°

共享特征

è¿éåå¾çæè¿°

 

 

 

Fast R-CNN框架与R-CNN有两处不同:

① 最后一个卷积层后加了一个ROI pooling layer;

② 损失函数使用了multi-task loss(多任务损失)函数,将边框回归直接加到CNN网络中训练。分类Fast R-CNN直接用softmax替代R-CNN用的SVM进行分类。

Fast R-CNN是端到端(end-to-end)的。

 

损失函数

RCNN, Fast RCNN的回归损失函数都是:

RCNN

总损失函数:

分类交叉熵+回归损失函数

 

Fast RCNN

总损失函数

1. CLS使用对数损失函数 

 

2. REG使用Smooth L1损失函数

                         

Faster RCNN

multi-task loss

其中,

其他:

RPN网络的输入可以是任意大小(但还是有最小分辨率要求的,例如VGG是228*228,这是因为图像的有效感受野很大,ZF是171像素,VGG是228像素)的图片

参考:

https://blog.csdn.net/shenxiaolu1984/article/details/51066975

https://blog.csdn.net/shenxiaolu1984/article/details/51036677

https://blog.csdn.net/shenxiaolu1984/article/details/51152614

https://www.cnblogs.com/bile/p/9117253.html

最后

以上就是飞快眼睛为你收集整理的RCNN系列的box regression及其他的全部内容,希望文章能够帮你解决RCNN系列的box regression及其他所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部