《ReDet:A Rotation-equivariant Detector for Aerial Object Detection》论文笔记

Posted m_buddy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《ReDet:A Rotation-equivariant Detector for Aerial Object Detection》论文笔记相关的知识,希望对你有一定的参考价值。

参考代码:ReDet

1. 概述

导读:这篇文章针对旋转目标检测问题提出了一种新的检测算法ReDet(Rotation-equivariant Detector),在该算法(为二阶段检测算法)中对旋转目标检测问题进行了细致分析,从特征抽取的backbone、fpn网络开始,到后期特征对齐阶段都进行了改进。具体来讲就是使用具有平移、旋转、镜像不变属性的网络单元构建特征抽取网络,从而使得特征抽取网络具有rotation-equivariance。之后在RRoI Align(rotation RoI)的基础上构建RiRoI Align(rotation-invariance)特征对齐算子。从而使得整体网络从最开始的设计上就展现出了对旋转目标检测任务的适应和鲁棒性。

文章中主要的亮点主要体现为如下的方面:

  • 1)具有旋转不变性的特征抽取网络,在之前的一些工作中对于旋转目标的适应是通过增加传统CNN网络的容量,以及增加对应场景的数据增广等策略方式实现的。但是这样的弥补措施实际上是不能从本质上弥补传统CNN网络所不具有的旋转不变性的(卷积与其它操作组合得到的CNN网络平移不变性也很有限)。但在这篇文章中使用具有旋转不变性的网络单元构建旋转不变特征抽取网络,这里将传统CNN网络与具有旋转不变性网络特征图进行对比:

    从上图中可以看到具有旋转不变性的特征抽取网络得到的特征更具有语义信息一些;
  • 2)优化RoI对齐操作,在RRoI Align操作中已经在spatial的维度上对特征进行对齐。正如上面说到的文章特征抽取网络生成的是具有不变属性的特征,而且这些不变属性是在channel-wise上进行编码的,因而在spatial-wise进行特征对齐的时候,同时对channel-wise进行对齐,进而提出了RiRoI Align的方法。将其与RRoI Align方法进行比较见下图所示:

    由于上述内容中文行的算法针对旋转目标检测场景做了全流程的适应工作,并且其中使用特殊的特殊网络单元使得文章的放在model size和performance上具有较大改进。将文章的方法与其它一些方法在这两个维度进行比较:

2. 方法设计

2.1 网络结构

文章的方法是一个二阶段的检测算法,其结构如下:

上图中最关键的两点(对应文章的主要工作核心):

  • 1)可以编码角度信息的特征图,从而在此基础上实现rotation equivariance,对应上图的(b)图;
  • 2)在spatial对齐的基础上添加channel维度的对齐操作,对应上图的(c)图;

2.2 特征抽取网络

文章的特征抽取网络是使用特殊单元进行构建的,其源自于下面的工作:

e2cnn

对应的文章中将方向信息编码到channel中去,对应空间划分为 N = 8 N=8 N=8组,每个组对应所包含的特征描述为 C N C_N CN。这个参数对性能的影响可以参见下表:

文章选择这种网络单元主要有如下几点好处:

  • 1)在该网络单元中会将参数在不同的组间进行共享,具有较高的参数利用效率,自然其对应的参数量就会变为原来基准的 1 N \\frac{1}{N} N1
  • 2)通过在channel为度上对角度信息编码,从而增加了网络对旋转角度的适应能力;

2.2 具有rotation-invariant属性的RoI Align

在RRoI Align操作中添加了对旋转目标的适应,从而实现在spatial上的对齐。在这篇文章的方法中通过对角度信息的显示编码得到rotation equivariance的特征,那么在对齐的过程中也对这个编码了角度信息的维度进行了对齐。首先文章将RPN网络得到的RoI角度信息提取,通过向下取整的方式对特征进行重排序:
f R = S C ( f R , r ) , r = ⌊ θ N 2 π ⌋ f_R=SC(f_R,r),r=\\lfloor\\frac{\\theta N}{2\\pi}\\rfloor fR=SC(fR,r),r=2πθN
其中, f R f_R fR代表的旋转不变性的特征, S C SC SC代表的重排序操作。由于在角度划分的时候并不是连续的是离散的,对此文章采用线性插值的方式对特征进行近似与优化,则优化之后的特征可以描述为:
f R ( i ) ^ = ( 1 − α ) f R ( i ) + α f R ( i + 1 ) \\hat{f_R^{(i)}}=(1-\\alpha)f_R^{(i)}+\\alpha f_R^{(i+1)} fR(i)^=(1α)fR(i)+αfR(i+1)
其中,加权系数为 α = θ N 2 π − r \\alpha=\\frac{\\theta N}{2\\pi}-r α=2πθNr。在上述的计算过程中其实是有插值范围的(上述的过程取的是 l = 2 l=2 l=2),而这个参数对性能的影响见下表:

3. 实验结果

文章的方法与其它一些典型旋转目标检测算法进行对比,性能比较见下表:

以上是关于《ReDet:A Rotation-equivariant Detector for Aerial Object Detection》论文笔记的主要内容,如果未能解决你的问题,请参考以下文章

20170924 a20170924 a

a++和++a的区别

逻辑代数

python运算符

运算符

arraylist排序 例如值 a104,a106,a102,a92,a98,a94 结果a92,a94,a98,a102,a104,a106