Oriented Object Detection in Aerial Images with Box Boundary-Aware Vectors(BBAVectors)实现遥感图像旋转框目标检测

本文将结合原论文和个人理解进行解读。

论文地址:https://arxiv.org/pdf/2008.07043.pdf
代码地址:GitHub - yijingru/BBAVectors-Oriented-Object-Detection: [WACV2021] Oriented Object Detection in Aerial Images with Box Boundary-Aware Vectors

首先,为什么现在遥感图像目标检测都热衷于采用旋转框去检测,因为遥感(航空)图像中物体或目标通常是以任意方向显示的,并且目标多密集排列,需要实现密集预测。而通过旋转框进行遥感图像目标检测,则会很大程度缓解密集预测造成的少检、漏检的情况。

一些专业名词:

OBB:定向边界框
HBB:水平边界框
RBB:旋转边界框(RBB指的是除水平边界框外的所有定向边界框)

Oriented Object Detection in Aerial Images with Box Boundary-Aware Vectors这篇文章提出基于盒边界感知矢量的航空图像定向目标检测。

一 论文大概介绍

该文在center+wh+\theta确定旋转框的基础上,提出Box boundary-aware vectors(BBAVectors)回归框边界感知向量去生成旋转框。

center+wh+\theta存在的缺点:

(1)一个较小的角度变化对训练中的总损失影响较小,但它可能会导致预测框和地面真实框之间存在较大的IOU差异。因为实际评价框检测的指标是使用IoU,而IoUSmooth L1是不等价的,多个检测框可能有相同大小的Smooth L1 Loss。如图1所示。
(2)总是在一个旋转后新坐标系中学习
wh,对网络联合学习所有box参数是一个挑战。如图2(a)的旋转框方法。
 

图1 相同的损失值差异很大的IOU

Box boundary-aware vectors(BBAVectors)针对上述缺点提出的方法:

(1)所有任意定向的对象共享同一坐标系,学习四个象限中的四个矢量,在一些局部特征模糊和弱时共享更多的相互信息。如图2(b)。
(2)在(1)的基础上加入wh\alpha参数,解决仅在(1)下很难捕捉几乎与xy轴对齐的框。如图2(c)。

图2 中心点方法(a)与BBAVectors(b)(c)方法

 图2说明:(a)基线方法的定向边界框(OBB)描述,称为中心+wh+θ,其中w,h,θ是OBB的宽度、高度和角度。注意,OBB的w和h是在每个物体的不同旋转坐标系中测量的;(b) 所提出的方法,其中t、r、b、l是上、右、下和左框边界感知向量。对于所有任意定向的对象,在笛卡尔坐标系的四个象限中定义盒边界感知向量;(c) 示出了矢量非常接近xy轴的拐角情况,即可以采用HBB方法检测。

 本文贡献:
(1)首先检测对象的中心关键点,然后在此基础上回归框边界感知向量(BBAVectors),以捕获定向边界框。对于所有任意定向的对象,盒边界感知向量分布在笛卡尔坐标系的四个象限中。
(2)为了缓解在角点情况下学习向量的困难,将定向边界框进一步分类为水平边界框和旋转边界框。
(3)实现表明,学习框边界感知向量优于直接预测定向边界框的宽度、高度和角度。

二 方法介绍

图3 BBAVectors网络结构图

图3所示说明:该方法的总体架构和面向边界框(OBB)描述。输入图像在被馈送到网络之前被调整大小为608×608。该体系结构建立在一个U形网络上。在上采样过程中,采用跳过连接来组合特征图。该架构的输出包括四个映射:热图P、偏移映射O、盒参数映射B和方向映射α。中心点的位置是从热图和偏移图中推断出来的。在中心点处,学习框边界感知向量(BBAVector)。输出映射的分辨率为152×152。HBB指的是水平边界框。RBB表示除HBB之外的所有定向边界框。符号t、r、b、l是指BBA向量的顶部、右侧、底部和左侧向量,we和he是OBB的外部宽度和高度。解码后的OBB显示在红色边界框中。

1.特征提取网络

采用ResNet101的卷积层1-卷积层5作为该模型的主干网络。首先将遥感图像调整为608×608大小的图像送入ResNet101网络,之后经过一次4倍下采样将输出图像特征由608×608×3变为152×152×C,C代表卷积输出通道数。再之后经过四次下采样与三次上采样输出大小为152×152×256的特征图。

将得到的152×152×256的特征图x分为四个分支,分别得出相应的参数:
(1)特征图x经过3×3卷积和1×1卷积,将256通道降为N通道,其中N为特征图上包含的种类数;
(2)特征图x经过3×3卷积和1×1卷积,将256通道降为2通道,得出中心点的(x,y)偏差值;
(3)特征图x经过两个7×7卷积,将256通道降为10通道,学习四个象限的矢量值及检测框的wh,共10个参数;
(4)特征图x经过3×3卷积和1×1卷积,将256通道降为1通道,得出判断采用HBB还是RBB的参数\alpha

2.热图(用于定位目标关键点及中心点位置)

热图通常用于定位输入图像中的特定关键点,本文使用热图来检测航空图像中任意定向物体的中心点。文中使用的热图有K个通道,每个通道对应一个目标的类别。每个通道上的映射都通过一个s型函数传递。将特定中心点上的预测热图值视为目标检测的置信度。

假设c=(c_{x},c{_{y}})是有向边界框的中心点,在每个中心点c周围放置一个2D高斯来形成地面实况热图,从而确立中心点位置,其中,高斯具体怎么操作,以及限制的损失不再具体讲解,牵扯很深的基础功底,为了方便理解怎么通过高斯确立中心点,请参考下图4所示。

图4 采用高斯曲面拟合来确定中心点,中心点为整数。

3. 中心点偏差(为了补偿量化浮点数中心点和整数中心点之间的差异)

从预测的热图P中提取峰值点作为对象的中心点位置。这些中心点c是整数。但是,将一个点从输入图像缩小到输出热图会生成一个浮点数。为了补偿量化的浮点中心点和整数中心点之间的差异,预测一个偏移图,来使得缩放的浮点数中心与量化的整数中心点的直接差异更小,从而确保热图得到的中心点更为准确。

定义缩放的浮中心点与量化中心点之间的偏移量为:

o=(\frac{\bar{c_{x}}}{s}-\left \lfloor \frac{\bar{c_{x}}}{s} \right \rfloor,\frac{\bar{c_{y}}}{s}-\left \lfloor \frac{\bar{c_{y}}}{s} \right \rfloor)

通过smooth L1 损失函数来优化偏移量。

4.Box Parameter方框参数

为了解决center+wh+\theta这种方法的以下缺点:
(1)一个较小的角度变化对训练中的总损失有边际影响,但它可能会导致预测框和地面真实框之间存在较大的IOU差异。
(2)对于每个物体,其OBB的wh在一个相对于y轴有一个角度\theta的单独旋转坐标系中被测量。对网络联合学习所有对象的盒子参数是一个挑战。
提出使用盒边界感知向量来描述OBB。

盒边界感知向量(BBAVector)的提出:
(1)包含来自对象中心点的上t、右r、下b和左l向量,这四个矢量参数分布在笛卡尔坐标系的四个象限上。所有任意方向的目标都共享相同的坐标系,这将促进目标信息的相互传递,从而提高模型的泛化能力。
(2)为了便于在一些局部特征模糊和微弱时能够共享更多的相互信息,有意的去设计四个向量,而不是仅设置上t和下b或者右r和左l

 盒参数定义为b=[t,r,b,l,w_{e},h_{e}],其中上t、右r、下b和左l向量是BBAV向量,w_{e}h_{e}是一个OBB的外部水平box大小。因此由四个向量的2×4个参数及w_{e}h_{e}两个参数组成一共10个参数。这10个参数对应图3中第三个分支学习到的10个通道,就代表10个参数。依旧用smooth L1 损失进行参数优化。

 5.Orientation 方向判定 

针对物体几乎与xy轴对齐的情况,即目标方向与笛卡尔坐标系高度水平或垂直,不需要进行旋转框检测,并且采用RBB还会出现检测失败,如图5(b)所示,图5(c)为采用的HBB检测。

图5 输入图像(a)与RBB(b)检测及HBB(c)检测效果

 出现采用RBB检测无角度变化的目标失败的原因是在象限的边界处,向量的类型很难被区分。为了解决这一问题,将OBB分为两类,并分别处理他们。这两种类型的框是HBB和RBB,其中RBB涉及除水平框外的所有旋转边界框。这种分类策略的好处是,将小角度情况转换为水平情况,这很容易处理。当网络遇到拐角的情况时,方向类别和外部大小,可以帮助网络捕获准确的OBB。

因此定义了一个参数\alpha,由图3第四个分支,通过卷积学习到这一参数。
创建方向类参数\alpha,定义为:

\hat{\alpha }=\left\{\begin{matrix} 1(RBB) \rightarrow IOU(OBB,HBB)<0.95 & & \\ 0(HBB)\rightarrow otherwise& & \end{matrix}\right.

 当定向边界框(OBB)和水平边界框(HBB)之间的交叉过并集小于0.95时,采用旋转边界框RBB进行检测,当大于等于0.95时,采用水平边界框HBB进行检测,采用二元交叉熵损失进行训练优化。

 三 实验结果

 采用DOTA数据集和HRSC2016数据集进行实验验证。

在DOTA数据集下的实现结果map达到75.36.

 在HRSC2016数据集实现结果达到map88.6.

 四 结论

提出了一种基于盒边界感知向量和中心点检测的面向目标检测方法。该方法是单级的,不含锚定盒。与直接学习定向边界框的宽度、高度和角度的基线方法相比,所提出的基于盒边界感知向量的方法在捕获定向边界框方面表现得更好。在HRSC2016和DOTA数据集上的结果表明,所提出的方法优于目前的水平。

本文章重在解读所采用的方法及原理,详细的实验结果请直接参考论文,有问题评论区交流!!!

猜你喜欢

转载自blog.csdn.net/weixin_42715977/article/details/130407821