Is Faster R-CNN Doing Well for Pedestrian Detection?
ECCV 2016 Liliang Zhang & Kaiming He
原文链接:http://arxiv.org/pdf/1607.07032v2.pdf
摘要:行人检测被人 argue 说是特定课题,而不是general 的物体检测。虽然最近的深度物体检测方法 如: Fast/Faster RCNN 在general 的物体检测中,展现了强大的性能,但是对于行人检测却不太成功。本文研究了 Faster RCNN 在行人检测中存在的问题,发现 RPN 在单独的行人检测器中表现良好,但是随后的分类器却降低了该结果。我们猜想可能是如下两个原因导致的:
1. 对于处理小物体,feature maps 的分辨率较低;
2. 缺乏任何 bootstrapping strategy 来挖掘 hard negative examples。
基于这些观察,我们提出了一个简单但是非常有效的 baseline,利用 RPN后 通过 boosted forests 在共享的,高分辨率的卷积特征映射(using an RPN followed by boosted forests on shared, high-resolution convolutional feature maps)。在4个数据机上做了实验,得到了相当的精度和较好的速度。
动机:随着近来自动驾驶,智能监控中对于行人检测越来越重视,但当前效果较好的行人 detectors 一般采用 hybrid 方法,结合传统手工设计的feature 和 深度卷积feature。另一方面,Faster RCNN 在 general 的物体检测上效果很好,而且仅仅利用了深度卷积特征,而没有传统手工设计的 feature,而且在行人检测数据集上效果不好!
究其原因,可能有两点:
首先,卷积feature maps 对于检测小物体来说是低分辨率的。常规场景下的行人检测,如自动驾驶和智能监控,行人的尺寸都是很小的。对于小物体而言,RoI pooling layer 在低分辨率的 feature map 上可能导致 “plain”features 。这些 feature 在小物体上不具有区分性,所以降低了分类器的性能。我们对比此处,可以发现,手工设计的feature 有较好的分辨率。我们通过从更浅层的但是分辨率高的层上来进行 feature 的采样,利用 the hole algorithm 来增加 feature map 的尺寸。
其次,在行人检测问题上,错误的预测,一般都是由于 hard background instances 的混淆导致的。与此对应的是 general object detection 的混淆来源是 multiple categories。为了解决这些样本导致的问题,采用了级联的 Boosted Forest (BF),执行有效的 hard negative mining(bootstrapping)和 样本的 re-weight,来分类 RPN proposals。不像之前的方法利用手工设计的features 来训练 forest,我们重新利用 RPN 的卷积特征来训练。这种策略不但通过共享feature 降低了分类器的计算代价,也探索了深度学习到的features。
本文在此观察的基础上,提出了特别简单但是有效的baseline,基于 RPN and BF 的机制进行行人检测。我们的方法克服了上述两种困难,而且摆脱了传统手工设计 feature。
所提方法:本文的方法包括两个部分:RPN 用来产生 candidate boxes 和 卷积特征maps,以及 Boosted Forest 利用这些卷积特征进行分类。
1. RPN for Pedestrian Detection
这个和 Faster RCNN 貌似是一样的,咱不解释;
2. Feature Extraction:
根据 RPN 产生的 proposals,我们采用 RoI pooling 来区域中提取固定长度的 feature。这些 feature 可以用来训练 BF 。