SIGAI特约作者
其它机器学习、深度学习算法的全面系统讲解可以阅读《机器学习-原理、算法与应用》,清华大学出版社,雷明著,由SIGAI公众号作者倾力打造。
陈泰红
研究方向:机器学习、图像处理
目标检测是很多计算机视觉应用的基础,比如实例分割、人体关键点提取、人脸识别等,它结合了目标分类和定位两个任务。现代大多数目标检测器的框架是 two-stage,其中目标检测被定义为一个多任务学习问题:1)区分前景物体框与背景并为它们分配适当的类别标签;2)回归一组系数使得最大化检测框和目标框之间的交并比(IoU)或其它指标。最后,通过一个 NMS 过程移除冗余的边界框(对同一目标的重复检测)。
本文首先综述近年来二维目标检测的优化方向,之后介绍CVPR2019目标检测最新进展,包括优化IoU的GIoU,优化anchor设计的GA-RPN,以及single-stage detection的FSAF。
二维目标检测的优化方向
二维目标检测实现和优化方向包括backbone、IoU、损失函数、NMS、anchor、one shot learning/zero shot learning等。
1基于目标检测的backbone和特征提取
目标检测的backbone一般基于ImageNet预训练的图像分类网络。图像分类问题只关注分类和感受视野,不用关注物体定位,但是目标检测领域同时很关注空间信息。如果下采样过多,会导致最后的feature map很小,小目标很容易漏掉。很多基础架构网络,比如ResNet、Xception、DenseNet、FPN、DetNet、R-CNN,PANet、等神经网络提取图像的上下文信息,不断在特征提取方向优化。
2基于优化的算法
包括UnitBox,IoU-Net[1],旷视科技ECCV2018有一篇论文是引入IoU-Net,其能预测检测到的边界框和它们对应的真实目标框之间的 IoU,使得该网络能像其分类模块一样,对检测框的定位精确程度有所掌握,神经网络在Backbone引入IoU-Net做边界修订。
3基于优化损失函数的方法
包括L1和L2,Focal loss等。
4基于优化NMS的方法
包括Soft-NMS,Softer-NMS,以及Relation Netwrok,ConvNMS,NMS Network,Yes-Net等,详细可参看本人一篇笔记《目标检测算法中检测框合并策略技术综述》[2]。
5、基于Anchor生成的算法,比如Sliding window、Region Proposal Network (RPN) 、CornerNet、meta-anchor等。
6、one-shot learning以及zero shot learning都属于迁移学习领域,主要研究的是网络少样本精准分类问题,单样本学习能力。CVPR2019有一篇基于one-shot learning[7],值得关注。
GIoU
Motavation
在目标检测的评价体系中,有一个参数叫做 IoU (Intersection over Union),简单来讲就是模型产生的目标窗口和原来标记窗口的交叠率。具体我们可以简单的理解为: 即检测结果(DetectionResult)与 Ground Truth 的交集比上它们的并集,即为检测的准确率 IoU :
l o U = D e t e c t i o n R e s u l t ⋂ G r o u n d T r u t h D e t e c t i o n R e s u l t ⋃ G r o u n d T r u t h loU= \frac{DetectionResult\bigcap GroundTruth}{DetectionResult\bigcup GroundTr