目标检测“Cascade R-CNN: Delving into High Quality Object Detection”

目前的目标检测器主要使用IOU=0.5定义正负样本,这通常会产生很多接近负样本的检测结果。但检测性能又会随着IOU的提高而下降,主要是由于:1)IOU提高,正样本数量减少,出现训练过拟合;2)检测器最优时IOU与输入假设时inference-time不匹配。论文提出Cascade RCNN解决这个问题,包含多级检测器使用上升的IOU训练。

IOU=0.5训练,会生成较多的噪声框,如fig1(a)所示,论文的目标是生成高质量的检测框,如图1(b)所示。作者使用了定位和检测性能衡量检测器的指标。定位性能是输入proposal的IOU的函数,检测性能是IOU阈值的函数。如图1(c)所示,每个box回归器在IOU接近训练的IOU时效果最好,而图1(d)显示,对于IOU阈值低时,u=0.5的检测器比u=0.6效果好,IOU阈值高时相反。实际上,检测器只有在高质量的proposal时才有较高质量的检测结果。但是,仅在训练时提升proposal的IOU是起反作用的,大的IOU对应较少的训练正样本,易导致过拟合。

论文提出的Cascade RCNN解决上述问题,它使用上一阶段的输出训练下一阶段。从图1(c)观察,输入一些样本到回归器,通常可以得到IOU更高的输出。经过一阶段的训练,正样本的IOU会更高,可以用于下一阶段的迅雷,且不会造成样本不均的问题。这类似于bootstrapping,但与其进行困难负样本挖掘不同的是,Cascade RCNN旨在调整正样本的bbox,找到近似负样本的正样本用于下一阶段的训练。

**其他目标检测方法**

1.两步法

Faster RCNN,R-FCN,FPN,MS-CNN

2.单步法

Yolo,SSD,RetinaNet(Focal Loss)

3.多步法

AttractioNet

**目标检测**

以Faster RCNN为例,第一步是生成proposal的网络,第二步使用ROI检测子网络精修,最终分配给每个假设一个类别和一个bbox。

1.bbox回归

最小化L2 损失函数:

为使得回归对尺度和位置不变,Lloc通常在偏置向量上执行,即:

还有一些方法使用多步回归精修bbox,称为迭代bbox回归:

但实际上,由于bbox分布的变化,两次以上的回归不再有效。

2.分类损失:

3.integral loss

为使检测器在每个IOU级表现差不多,对每个级别的IOU优化一个损失,并组合:

这种损失函数忽略了不同级别具有不同正样本的问题,高质量的检测器就易过拟合。Cascade CNN就解决了不同IOU级别样本过少的问题:

 

Cascade RCNN的损失函数在t步为:

其中

 

Faster RCNN,Iterative BBox,integral loss,Cascade RCNN的结构分别如下图所示:

实验结果

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值