深度学习图像目标检测综述(一)

2 篇文章 0 订阅
2 篇文章 0 订阅

前言

最近实习期间对检测模型产生强烈兴趣,写次文章记录小白检测模型的学习之路,文章遵从RCNN家族开始基于检测模型的更迭,loss的进化还有区域提议RPN的发展出现逐一阐述。

RCNN

论文链接:https://arxiv.org/abs/1311.2524
作者信息:Ross Girshick, Jeff Donahue, Trevor Darrell, Jitendra Malik
RCNN是深度学习图像目标检测的开篇之作,之后的众多检测模型中,都有原作者Ross Girshick的贡献。
R-CNN的主要思路是:先提取出候选检测区域,将每个区域作为一个单一的图像样本利用CNN提取各个候选区域的特征,最后用分类器判别类别,用回归拟合边界。基本结构和步骤如下:
RCNN
RCNN采取分布式训练的方式:
1.首先利用公开分类数据集训练CNN部分
2.利用selective search的方式区域提议候选检测框(关于selective search细节参阅论文:Selective Search for Object Recoginition)
3.利用warp方法将图片归一到统一尺寸(受限于FC,CNN必须归一input_size)
4.warp后的候选区,IOU>=0.7标记label=1,IOU<=0.3标记label=0
5.CNN抽取feature map,每个类别利用SVM进行分类

RCNN训练过程

1.利用softmax loss训练分类模型,之后在纳入检测时,添加一个新的类别(背景类,负样本)进行微调
2.图像resize到224x224大小,之后区域提议生成多个候选框,将候选框内的样本warp到统一大小进入CNN提取feature map
3.当IOU>=0.5时,利用SVM基于CNN提取的feature map判定候选框内样本的类别
4.基于平滑的均方误差loss计算回归的四个点的偏移量,得到最终的区域提议框,四个点坐标偏移量映射如下图:
坐标映射
之所以利用平滑的均方误差,主要是为了防止梯度过大,导致梯度爆炸的情况发生。

Fast-RCNN

论文链接:https://arxiv.org/abs/1504.08083
作者信息:Ross Girshick
在Fast-RCNN与RCNN之间产生了SPPNet,SPPNet中的pooling方式启发作者,因此在Fast-RCNN中提出了ROI-pooling来在CNN内部完成feature map的尺寸归一,代替之前RCNN中的warp作用。
正是由于ROI-pooling的存在,确保无论CNN-backbone的输入图像尺寸为多大,最终都可以pooling到统一的结果。这使得将之前检测分类任务分布式训练归并成一步变成了可能。
Fast-RCNN仍采用selective search的方式区域提议检测候选框,但不同的是,其采用softmax loss和均方误差loss取和,联合训练的方式去优化backbone中的参数,加速模型收敛过程。
Fast-RCNN中选取vgg-16为backbone,图像输入后产生2k个候选框,并最终针对每个候选框内的样本都会返回分类预测的向量(predict vector)和检测坐标回归向量。Fast-RCNN的模型结构图如下图:
Fast-RCNN
根据上图可以看出,模型输入一个样本,多个候选区域,经过ROI pooling后会归一feature map的尺寸,之后追加两个FC层分别用于预测分类向量(predict vector)和坐标回归向量。
Fast-RCNN的损失函数为:
Loss
其中分类loss为交叉殇,回归loss为平滑均方误差loss:
L
平滑函数为:
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值