M2Det 论文阅读心得[目标检测领域]

 

论文地址:https://arxiv.org/pdf/1811.04533.pdf

目前,在目标检测领域,为了应对不同尺度的检测目标,特征金字塔是必不可少的工具。一提到特征金字塔,大家第一时间想到的想到的一定是FPN,这一经典之作,已成为目前主流目标的检测网络的基本结构,得到了广泛的应用,想要了解的同学,可以去阅读相关的文献,这里就不分享了,其网络结构如下所示:

                                                                   M2Det 论文阅读心得[目标检测领域]_第1张图片

这篇文章,主要是在构造特征金字塔方面提出了自己的见解,这是一个非常根本的问题,如果构建更加鲁棒的特征,那么无论对单阶段还是双阶段的目标检测网络都具有十分重要的意义。在这里作者提出了一个MLFPN的结构(很多同学认为这是FPN的plus版,不过了解过之后还是觉得和FPN在思想上具有很大的差别,见仁见智吧),其中MLFPN有三部分组成,下面我们将逐一介绍这三个子结构。在介绍各个子结构之前,我们先来看一下网络的整体结构:

M2Det 论文阅读心得[目标检测领域]_第2张图片

 

首先第一个结构是FFM(Feture fusion moudle),该结构的作用是为了提供后面特征提取过程中要使用的base feaure。它的结构非常的简单,但却具有很重要的意义。其实看到这里,并结合上面的图,如果之前对FPN有所了解的同学,就可以发现出不一样的地方来了。这也是作者在摘要部分提出的一个点。首先我们展示一下FFM1的结构:

                                                      M2Det 论文阅读心得[目标检测领域]_第3张图片

FFM1的结构如上图所时,其结构其实和FPN中 融合不同resulution的特征时所用的结构是极其相似的,从某种意义上说,最后得到的Base feature,就是FPN网络中特征最丰富的那个特征。在摘要中,作者提到,FPN(举例说明)中提取的特征可能不适用于目标检测,给出的理由是FPN是使用从识别网络backbone中直接提取的特征。不同于识别任务,目标检测任务中,不同阶段的特征都是具有重要意义的(语义特征帮助判断区域属性,细节特征帮助准确判定区域的位置与边界)。说到这里,我们回头去看一下FPN甚至之前存在的其他特征金字塔结构,金字塔的单一尺度特征都没有包含特征提取backbone中的各个阶段的特征(FPN一般只融合到原图1/4大小的特征图)。不过我们可以看到FFM1得到的Base feature是一个非常丰富的原始特征,他包含特征提取网络中各个阶段的特征。后面的操作就是对该特征的进一步提纯和利用。这里我们就将FFM1的结构和作用介绍清楚了。这里我们暂时不介绍FFM2,当网络中需要使用它的时候,我们再作介绍。

 

下面我们要介绍的结构是TUM(Thinned U-shape Module). 从上面的整体结构图我们可以看到TUM是一个堆叠的结构,首先我们看一下单个TUM的结构:

                  M2Det 论文阅读心得[目标检测领域]_第4张图片

看到TUM的结构,我们很容易联想到U-net这个网络结构,虽然该结构是用于语义分割领域的,但是可以有助于我们理解TUM的功能和作用。该结构,分为两个过程,一个下采样,一个上采样。我们来看一下这两个过程,首先是下采样,这里使用了3×3,stride = 2的卷积操作实现下采样,下采样的主要作用是为了提取特征中对于任务反应明显的特征(个人理解,不准确),同时再缩小了resolution之后,便于感受野的扩大,有利于抽象特征的提取(也挺好理解的,下采样后,让原本远离的特征,能够相互交互)。然后是上采样过程,上采样的过程是结合下采样各层信息和上采样的输入信息来还原细节信息。这样我们就了解了单个TUM的工作了。通过单个TUM,我们就可以得到一个feature pyramid。

下面,我们再来讨论一下,堆叠的TUM是如何工作的,首先通过上面介绍的TUM,我们得到一个feature pyramid,这里面resolution和base feature 相同的特征图,我们把他看做pyramid中特征最丰富的特征图,同时他(我们称之为f_i)通过TUM之后,相较base feature特征更加抽象和纯净。但如果我们还想获取更加抽象的特征,我们就可以将特征f_i继续过TUM结构,这就是堆叠TUM产生的原因。但是这里作者考虑到了一点就是在TUM的过程中,细节信息或者说一些我们可能需要的信息会丢失,所以让不完整的特征去过TUM将会得到更加不完整的特征,这样是不可行的。所以,我们需要将丢失的细节信息进行补充,我们使用base feature来补充f_i,说到这里,可能会有担心加入base_feature会不会污染f_i,其实不必有这种担心,完全可以从另一个角度去理解,那就是f_i完全可以引导base_feature的提纯的过程,从而得到一个比f_i更加抽象的f_i+1,这样理解的话,通过一个又一个的TUM,我们可以得到抽象程度越来越高的特征(不过也不是越多越好,作者在后面会有讨论和验证)。下面是FFM2的结构用于base_feature和f_i的融合:

                                                              M2Det 论文阅读心得[目标检测领域]_第5张图片

说道这里,MLFPN的结构,我们大体就介绍完毕了,还剩下最后一部分,不过这一部分,大家理解起来特别容易,就是一个channel attention,下面就是其结构:

M2Det 论文阅读心得[目标检测领域]_第6张图片

将使用堆叠TUM得到的feature pyramid中尺度相同的特征concat到一起,然后过一个channel attention,非常地简单易懂。经过以上的操作之后,我们便可以得到一个拥有丰富且路棒的feature pyramid。我的论文笔记就到这里了,后面的实验部分就不介绍了,感兴趣的可以自己去看一下论文。内容全是个人理解,如果有错误的地方,希望大家能够及时指正,不要对大家造成误导,感谢大家。

你可能感兴趣的:(论文笔记)