我很长一段时间一直都在作自动驾驶的物体检测性能调优,因此想总结整理一些小网络和检测框架的经验。git
文章会分红三个部分:github
第一部分将参照知乎@YaqiLYU 对小网络(经典网络)的分析而且结合的本身的理解。算法
第二部分详细介绍目前state-of-art的主流检测框架。网络
第三部分介绍了目标检测的问题及解决方案,目标检测在其余领域的拓展应用 框架
本部分针对小物体检测、不规则形状物体检测、检测算法中正负样本不均衡问题、物体被遮挡、检测算法的mini-batch太小、物体之间的关联信息被忽略等问题提出了解决方案。在这个部分最后本篇综述将介绍四篇改进网络结构以提高检测效果(包括准确率和速度)的论文,如改进基础网络以提高准确率的DetNet和针对移动端优化速度的Pelee网络等。性能
论文连接:https://arxiv.org/abs/1612.03144优化
开源代码:https://github.com/unsky/FPNspa
录用信息:CVPR20173d
论文目标:blog
引入Top-Down 结构提高小物体检测效果。
核心思想:
Feature Pyramid Networks (FPN) 是比较早提出利用多尺度特征和Top-Down结构作目标检测的网络结构之一,虽然论文中整个网络是基于Faster R-CNN 检测算法构建,但其总体思想能够普遍适用于目前常见的大部分目标检测算法甚至分类等的其余任务中。
总体来说, FPN 解决的问题以下:只用网络高层特征去作检测,虽然语义信息比较丰富,可是通过层层pooling等操做,特征丢失太多细节信息,对于小目标检测这些信息每每是比较重要的。因此,做者想要将语义信息充分的高层特征映射回分辨率较大、细节信息充分的底层特征,将两者以合适的方式融合来提高小目标的检测效果。
上图中做者首先介绍了四种常见的特征利用的方式,这里咱们一一说明。图中a部分展现了利用图像特征金字塔的方式作预测的方法,即经过将预测图片变换为不一样尺寸的图片输入网络,获得不一样尺寸的特征进行预测。这种方法行之有效,能够提高对各个尺寸目标的检测效果。
上图是imageNet 数据集中各个物体的尺寸分布,能够看到大部分物体尺寸集中在40-140像素之间。当咱们采用imageNet 的pretrain参数初始化咱们的基础网络时,网络实际上对40-140像素间的物体是较为敏感的。因此当物体目标过大太小的时候效果都会打折扣。而图像多尺度金字塔预测的方法也解决了这一问题。这个方法虽然行之有效可是缺点是效率低下。尤为是应用于相似于Faster R-CNN 这样的网络,迫于速度和显存的压力,端对端的训练难以实现。一般这种方法只应用于网络预测的阶段。
图中b部分展现的方法为利用单一尺度图片的最高层信息进行预测的方法,是平时最普遍被使用的一种方法,简单高效。可是缺点是因为尺度单一,应对多尺度的目标效果受限。
图中c部分展现了利用特征金字塔来作预测的方法。即采用不一样尺寸不一样深度的特征层分别进行预测,每层的感觉野和特征信息的丰富程度都不同,对不一样尺寸的目标响应也有所区别。其中高层特征更适合用于检测大目标,而低层特征细节信息更加丰富,感觉野也偏小,更适合用于检测小目标。咱们常用的SSD检测算法即便用了这种思路。该方法的缺点是低层的特征信息由于层数较浅,语义信息不太丰富,因此小目标的检测效果仍然不尽如人意。
图中d部分即为FPN的解决方案,利用Top-Down结构,融合了高层和底层的特征信息,使得底层的语义信息仍然很丰富的同时保持较大的分辨率,提高小物体的检测效果。
上图展现了FPN网络的特征融合方式,其中高层特征经过最近邻差值的方式增大两倍的尺寸,而底层的特征通过一个1*1的卷积作降维操做,这两层特征分别做像素级的相加完成融合。融合以后的特征能够通过一个3*3的卷积层以后输入用来预测,也能够再重复上面的操做,和更低层的特征进行融合。
算法效果:
上图展现了各个算法在COCO数据集上的对比。
论文连接:https://arxiv.org/abs/1612.06851
开源代码:无
录用信息:CVPR2017
论文目标:
1. 有效利用网络前层信息。使其既包含小物体细节信息,又包含高层抽象语义信息,提升小物体召回率。
2. 避免直接特征叠加致使维度太高。
核心思想:
本文是Google 对标Facebook FPN的一个算法,用与FPN不一样的方式实现了Top Down结构,主要是为了融合低层的细节特征和高层语义特征来提高小物体检测效果的一个方法。
本论文提出的Top Down modulation的结构主要关键点在于modulation这一过程,在该算法中,高底层的信息融合不是像FPN同样像素级叠加,而是经过卷积进行融合。由神经网络自主的选择选择哪些特征进行融合,实现这一“调制”过程。
1、总体网络结构:
首先对自下而上的CNN网络加入一个自上而下的Top Down网络,使用 lateral connections链接起来。经过这些connections 筛选合适的特征,经过Top Down 网络进行特征融合。
2、Top Down Modulation (TDM)网络基础模块:
未完