Cascade R-CNN 论文笔记

2018 年 6 月 28 日 统计学习与视觉计算组

CVPR 2018 论文 论文链接 https://arxiv.org/abs/1712.00726 代码链接 https://github.com/zhaoweicai/cascade-rcnn

1.摘要

作者对two-stage的检测器进行改进,提出了一个multi-stage目标检测网络----Cascade R-CNN。使用多个级联的检测器,用逐步递增的IoU阈值分别训练每个检测器, 每个检测器回归的bbox偏移作为下一个检测器的输入,从而提高每个检测器的精度。

2.概述

Two-stage检测器由两部分任务组成: (1)使用RPN或其他算法生成region proposals; (2)对每个proposal分类并回归bbox。 在训练时,需要根据IoU阈值,确定(1)中的正负样本。通常将阈值u设置为0.5,但是较低的阈值可能导致(1)输出的proposals 质量过低,进而影响(2)的训练。如Figure 1 (a)所示,u=0.5时输出了许多误检。作者希望可以学习到一个在高阈值u下的高质量检测器,如Figure 1 (b)所示。

作者通过设置不同的阈值u,探究阈值对定位和分类的影响,结果如Figure 1 (c), (d)所示。

在(c)中,横轴表示输入到(2)中的proposals与ground truth的 IoU,纵轴表示(2)中预测出的bbox与gt的IoU。

可以看出,很难用一个固定的阈值u来训练网络。使用u=0.5训练的网络,在输入低IoU时,回归的效果最好,但是输入的IoU较大时, 效果会很差。如果仅增加阈值u,通过(d)可以看出,网络的精度反而会下降。

通过(c),可以发现,输入到(2)中proposals的IoU与网络训练时使用的阈值u比较接近时,回归器的表现更好。因此作者提出了一个很巧妙的想法:训练多个阈值递增的检测器,每个检测器使用上一级输出的bbox回归结果,如Figure 3 (d)所示。这样每一级检测器都有足够多的高质量(高IoU)样本进行训练,并且回归的bbox也会越来越准确。

3.其他检测方法

作者列举了一些相似的工作,如Figure 3所示。

其中H0为检测的第一阶段,图中所有的B0均是第一阶段输出的proposals;H1H2等为检测器,负责对输入的proposals进行分类和bbox回归。

作者的工作基于(a) Faster R-CNN,对其检测部分进行改进,第一阶段使用RPN预测proposals。

回顾一下bbox回归的过程。边框坐标 b=(bx,by,bw,bh ),表示图像 x 的中心坐标和宽高,另候选区域坐标为 b,真实坐标为 g,那么 bbox 回归可以用公式表示为 gi=f(x,bi),损失函数表示为 Lloc (f(x,bi ),gi)。为了保证回归尺度和位置的不变性,通常对偏移量 Δ=(δx,δy,δw,δh ) 进行回归,具体定义

3.1 Iterative BBox

对bbox回归改进的一种做法如 Figure 3 (b) 所示,在预测阶段,迭代的使用 f 对bbox进行多次回归来改善回归结果

这种做法称为iterative bounding box回归。注意到,多次迭代是在预测阶段进行的,因此(b)中的检测器H1都是一样的,由一个固定的阈值u训练得出。

这样做存在两个问题: (1)从Figure 1 (c)中可以看出,使用u=0.5训练的检测器H1,对于下次输入的高质量IoU,再次回归结果通常并不是最优的,当输入的proposals的IoU>0.85时,回归结果反而会下降; (2)作者实验发现,每次迭代后输出的bbox分布都会有很大的变化,如Figure 2所示,检测器对第一阶段后的数据分布预测效果不是最好的。

3.2 Integral Loss

在分类阶段,分类器是关于输入图像区域 x 的函数,记为 h(x);输出是 M+1个类别,0 表示背景,给定义训练数据 (xi,yi),分类的损失函数定义为

Lcls (h(xi),yi),其中 yi 为区域 xi 的真实标签。由于bbox通常包含物体和背景两部分,因此使用IoU阈值u来确定x的真实标签

其中 gy 为目标 g 的真实类别标签。由于阈值u较小时,正样本有很多噪声,影响检测器精度;u较大时,正样本IoU很大,样本数量却变少,导致检测器训练时容易过拟合。

因此一个简单的想法是集成多个使用不同阈值u训练的分类器,如Figure 3 (c)所示,则优化的损失函数为

其中U={0.5,0.55,…,0.75},这种损失函数称为integral loss

作者通过实验发现,这种做法效果也不好,如Figure 4所示,在一阶段,不同IoU阈值u对应的正样本数量差别很大,导致使用高阈值u训练的分类器容易过拟合

4.Cascade R-CNN

基于上述实验,作者提出了如Figure 3 (d)所示的Cascade R-CNN,其bbox回归过程可以表示为

其中T是级联的检测器数量,检测器 ft 训练时的阈值u逐步提高。

作者的灵感来自于Figure 1 (c),比如一阶段输入proposal的IoU为0.55,那么通过u=0.5的回归器得到IoU为0.75的输出,再迭代的输入到后面的回归器,得到IoU为0.85,0.9的输出,回归的bbox质量逐步提高。同时,随着阈值u的提高,会过滤掉Figure 2中部分离群点;并且通过Figure 4可以看出,每个阶段输入对应阈值的proposals数量不会大量减少。 网络在第 t 个阶段的损失函数为

其中,h 为分类器,f 为回归器,对应的阈值为 u^t 并且 u^t>u^(t−1),b^t=ft−1 (x^(t−1),b^(t−1))。

5.实验

阈值对检测器的影响

图(a)中实线表示不同阈值的单检测器精度。图(b)为输入proposals中加入真实bbox结果。图(a)中虚线为分别用二,三阶段级联检测器预测的bbox代替原始的proposals的结果。

测试Cascade R-CNN中每个阶段每个检测器的精度。

与Iterative BBox和Integral Loss比较

通过下图(a)可以看出,iterative bbox三次迭代后回归质量很差。通过(b)可以看出即使使用集成,integral loss也没有太多精度上的提升。

各方法检测精度对比,Cascade R-CNN 在高阈值的评估规则下效果很好。

对比实验

测试各阶段检测器精度

测试使用不同IoU,是否对Δ进行归一化对结果的影响

级联检测器个数和预测时使用的检测器个数对结果的影响

与其他检测方法比较

与其他单阶段,多阶段检测器比较

泛化能力

在不同后端,不同检测算法上使用级联检测器

使用PASCAL VOC数据集测试

进一步说明作者提出方法的鲁棒性


登录查看更多
8

相关内容

专知会员服务
160+阅读 · 2020年4月21日
CVPR2020 | 商汤-港中文等提出PV-RCNN:3D目标检测新网络
专知会员服务
43+阅读 · 2020年4月17日
CVPR 2019:精确目标检测的不确定边界框回归
AI科技评论
13+阅读 · 2019年9月16日
目标检测中边界框的回归策略
极市平台
17+阅读 · 2019年9月8日
CVPR2018 目标检测算法总览(最新的目标检测论文)
极市平台
21+阅读 · 2018年12月21日
CornerNet: Detecting Objects as Paired Keypoints 论文笔记
统计学习与视觉计算组
7+阅读 · 2018年9月27日
论文笔记之Feature Selective Networks for Object Detection
统计学习与视觉计算组
21+阅读 · 2018年7月26日
CVPR 2018|Cascade R-CNN:向高精度目标检测器迈进
极市平台
10+阅读 · 2018年7月20日
Faster R-CNN
数据挖掘入门与实战
4+阅读 · 2018年4月20日
Fast R-CNN
数据挖掘入门与实战
3+阅读 · 2018年4月20日
Mask R-CNN 论文笔记
统计学习与视觉计算组
11+阅读 · 2018年3月22日
Arxiv
11+阅读 · 2019年4月15日
Zero-Shot Object Detection
Arxiv
9+阅读 · 2018年7月27日
Arxiv
5+阅读 · 2018年5月16日
Arxiv
5+阅读 · 2018年4月17日
Arxiv
11+阅读 · 2018年4月8日
Arxiv
7+阅读 · 2018年3月19日
Arxiv
4+阅读 · 2018年3月19日
VIP会员
相关VIP内容
专知会员服务
160+阅读 · 2020年4月21日
CVPR2020 | 商汤-港中文等提出PV-RCNN:3D目标检测新网络
专知会员服务
43+阅读 · 2020年4月17日
相关资讯
CVPR 2019:精确目标检测的不确定边界框回归
AI科技评论
13+阅读 · 2019年9月16日
目标检测中边界框的回归策略
极市平台
17+阅读 · 2019年9月8日
CVPR2018 目标检测算法总览(最新的目标检测论文)
极市平台
21+阅读 · 2018年12月21日
CornerNet: Detecting Objects as Paired Keypoints 论文笔记
统计学习与视觉计算组
7+阅读 · 2018年9月27日
论文笔记之Feature Selective Networks for Object Detection
统计学习与视觉计算组
21+阅读 · 2018年7月26日
CVPR 2018|Cascade R-CNN:向高精度目标检测器迈进
极市平台
10+阅读 · 2018年7月20日
Faster R-CNN
数据挖掘入门与实战
4+阅读 · 2018年4月20日
Fast R-CNN
数据挖掘入门与实战
3+阅读 · 2018年4月20日
Mask R-CNN 论文笔记
统计学习与视觉计算组
11+阅读 · 2018年3月22日
相关论文
Arxiv
11+阅读 · 2019年4月15日
Zero-Shot Object Detection
Arxiv
9+阅读 · 2018年7月27日
Arxiv
5+阅读 · 2018年5月16日
Arxiv
5+阅读 · 2018年4月17日
Arxiv
11+阅读 · 2018年4月8日
Arxiv
7+阅读 · 2018年3月19日
Arxiv
4+阅读 · 2018年3月19日
Top
微信扫码咨询专知VIP会员