一、背景
? ? 识别和检测多尺度对象是计算机视觉中一个尤为重要的问题。解决改问题的常用方法目前有两种,一种是利用多尺度图像训练,一种构建特征金字塔网络,它们都能提取不同尺度的图像语义信息,完成目标的识别和检测任务。第一种方法虽然可以解决多尺度问题,但是存在的问题:需要构造多个不同尺度的图像进行训练和推理,增加了内存的使用量,且延长了推理时间,在实际应用场景中很难进行推广。如下图所示:
? ? ?而特征金字塔网络(简称FPN)有着和多尺度图像相似的功效,而仅需要单尺度图像即可完成目标的识别和检测。
二、网络结构
? ? ? 下图是FPN的网络结构。
? ? ? ?如图,FPN由两个部分构成:自底向上的下采样(Bottom-up pathway),自顶向下的上采样(Top-down pathway),横向连接(Lateral Connection)。
? ? ?Bottom-up pathway。?在任意单一尺度图像上进行下采样,得到多个不同分辨率的特征映射。
? ? ?Top-down pathway。通过对分辨率低、语义丰富的高层特征映射进行上采样,得到分辨率高的特征映射。
? ? ??Lateral Connection。将分辨率更高的特征映射和经过上采样的高层特征映射进行逐元素相加,具体如下图所示。
? ? ? ?首先对语义更丰富的高层特征映射进行2倍的上采样,同时,对Bottom-up过程中同级的的的特征映射进行1X1下采样(融合通道信息,减少通道数量),最后上采样的特征映射和下采样的特征映射做逐元素相加。本质上,是将高层语义(2倍上采样得到)和底层细节(1X1卷积下采样得到)进行融合,粗中有细,细中有粗。?
三、消融实验
? ? Top-down pathway 的重要性。不同层的语义丰富程度不同,分辨率高的特征映射语义欠缺,分辨率低的特征映射语义丰富,去掉Top-down pathway相当于仅保留单一尺度的语义信息。对于小物体的检测,可能结果会很差。
? ??Lateral Connection 的重要性。Top-down过程中的特征映射经过了多次的下采样和上采样,位置信息丢失较为严重,因此需要Bottom-up过程中产生的特征映射中进行补充,这些特征映射中位置信息相对比较丰富。
? ? 金字塔表示的重要性。这个不言而喻,模型可以在不同尺度的特征映射上进行训练,因此无论是对于较大的物体和较小的物体,模型都会有能力进行捕捉到。
四、总结
? ? FPN在我个人看来是深度学习领域比较重量级的创新,后期的多种类FPN的网络,或多或少都是为了解决多尺度问题而模仿FPN而产生。FPN的设计如此简单,因此它的泛化性会非常好,可以应用在多种不同的网络结构中,比如ResNet,Faster-RCNN等。
? ? ??
|