ROTATED REGION BASED CNN FOR SHIP DETECTION 基于旋转区域的CNN舰船检测

这篇文章是2017年ICIP(International Conference on Image Processing)会议的文章,由中国科学院大学作者团队撰写。下面我对文章进行解读,有不当之处,希望看官多多指点。

ABSTRACT 摘要

最先进的自然图像目标检测网络最近展示了令人印象深刻的性能。然而,高分辨率卫星图像中舰船检测的复杂性暴露了这些网络在遥感图像中常见的条状旋转组合目标检测方面的有限能力。基于旋转区域的CNN (RR-CNN)可以学习和准确提取旋转区域的特征,并对旋转物体进行精确定位。RR-CNN有三个重要的新组件,包括旋转感兴趣区域(RRoI)池化层、旋转边界盒回归模型和多任务之间的非最大抑制(NMS)多任务方法。在公共船舶数据集HRSC2016上的实验结果证实,RR-CNN的性能大大优于基线。

摘要部分简洁明了,指出了sota性能的自然场景图像目标检测在卫星图像上的不足之处,这种不足之处是由于遥感图像的视角造成的,遥感图像的视角与水平视角相比较是十分开阔的,导致需要检测出来的物体是在更大范围尺度图像中的,其前景信息较少,反之背景信息更多。基于这个问题作者提出了自己的解决方案,RR-CNN网络架构,用来提取和学习旋转区域的特征。

INTRODUCTION 简介

近年来,骨干深度卷积神经网络的发展[1,2,3,4]以及R-CNN[5]、Fast R-CNN[6]、Faster R-CNN[7]和SSD[8]等目标检测框架的改进推动了目标检测的发展。由于对精确定位的要求,目标检测是一项比图像分类更为复杂的任务。为了解决这一问题,这些与各种主干相结合的检测框架基于不同的区域特征提取策略。
区域特征提取策略是这些检测框架的一个重要区别。R-CNN[5]基于特殊对象提议方法,该方法通常依赖于简单的特征和快速的评估。例如,参见选择性搜索(SS)方法[9]。然后,对直接由图像生成的每个建议区域进行卷积运算,不进行共享计算,导致效率低下。Fast R-CNN[6]也是基于特殊对象提议方法,但对整个图像进行卷积运算,并通过感兴趣区域(RoI)池化层的方式提取每个特征图中每个提议的卷积特征。与R-CNN相比,Fast R-CNN节省了大量的计算时间,暴露出提案生成时间的瓶颈。Faster R-CNN[7]引入了区域提议网络(RPN)来代替特殊的区域提议方法。RPN与检测网络共享卷积计算,提高了算法的质量。SSD[8]还对整个输入图像执行卷积操作,但基于几个特征映射中每个位置上的一小组默认框生成固定大小的边界框集合。SSD中没有计算的默认盒子的作用与Faster R-CNN中的RPN相同。基于物体总是独立的自然图像的目标检测在这些检测网络中得到了很大的发展。然而,它们的强度不足以完成遥感图像中常见的条状旋转组合物体检测任务,特别是如图1所示的舰船检测。现有的船舶检测工作[10,11,12,13]不能在图1所示的集群中准确定位船舶,或者是手工工作,没有鲁棒性。
理想的船舶检测模型需要共享卷积计算,经过端到端训练,最重要的是对旋转区域的特征提取要准确。在表1中,我们列出了前面介绍的当前最先进的CNN检测框架的属性。利用这些网络在复杂背景下对船舶进行检测存在两个挑战,这也是我们的动力:对无噪声信息的旋转区域特征提取的需求和对船舶精确定位的旋转边界盒(RBB)回归。从图1(b)中可以看出,Fast R-CNN结合SRBBS建议方法[14]很难区分停靠在一起的两艘船。
本文提出了一种基于旋转区域的CNN舰船检测方法,该方法能够准确提取旋转边界盒的特征,并在区域之间进行共享卷积计算。我们的贡献如下:
1 我们引入的RR-CNN比最先进的探测器和基线要精确得多。
2 我们提出了RRoI池化层作为一种辅助结构来提取旋转区域的特征。
3 本文提出的辅助结构可以插入到表1中的所有检测框架中。

Figure 1
Table 1
第一个链接旋转物体检测的挑战:,图a是真值,图b是基于SRBBS方法的Fast R-CNN检测结果,图c是作者团队的检测结果。
第二个链接是网络的特性:对旋转区域进行精确的特征提取、共享卷积计算和端到端训练。

简介部分主要是介绍了当前阶段比较主流的模型框架,SSD、FASTER-RCNN等,并列举了各个模型的特性,文末作者提出了本文的主要贡献。作者主要想解决的还是旋转物体的检测准确率的问题,提出RR-CNN就是提取旋转区域特征。

THE ROTATED REGION BASED CNN 基于CNN的旋转区域

Model 模型

RR-CNN方法包括辅助结构和骨干网,可以是任何经典模型,如Alexnet[1]和VGG-16[2]等。辅助结构包括三个关键组件:RRoI池化层(第2.1.1节)、RBB回归模型(第2.1.2节)和面向NMS的多任务(第2.1.3节)。

The RRoI pooling layer 旋转感兴趣 区域的池化层

准确地提取船舶区域特征是十分重要的。然而,Fast R-CNN和Faster R-CNN都是基于边界框的RoI池化层提取区域特征,在舰船检测任务中往往会覆盖过多的噪声信息。R-CNN在卷积层之前从图像中提取区域数据,相当于在数据层和第一卷积层之间放置一个特殊的RoI池化层。SSD使用默认盒子,而不是RoI池。当有多艘船只停泊在一个边界盒区域内时,分类器很难区分这些船只。[15]中使用的像素级自由形式RoI池可以准确提取特征,但仍然从左到右、从上到下将特征池化,导致鲁棒性不足。Liu等[14]证明了船舶旋转边界盒(rbb)边界方式的优点。本文提出了基于RBB的旋转感兴趣区域(RRoI)池化层
RRoI池化层也从有效感兴趣区域内的特征通过最大池化得到一个固定空间范围为H × W的小特征图,如RoI池化层[6]。然而,我们的图层是基于RBB的。我们将每个RRoI定义为五元组(x,y, w, h, a)指定RBB的中心位置(x,y),宽度(较长的边),高度和旋转角度(−90◦和90◦之间)。当旋转角度为零时,这种特殊情况相当于RoI池化层。固定空间范围的框选从左到右,从上到下,以较长的一侧为水平线排列,如图2所示。
RRoI池独立应用于每个特征映射通道内的每个旋转区域,如RoI池[6]。通过RRoI池化层前向传播数据的过程如图2所示,建模为
y m r j y_{mrj} ymrj= m a x i ∈ B ( m , r , j ) ( x i ) max_{i\in\Beta(m,r,j)}(x_{i}) maxiB(m,r,j)(xi)
其中m是第m个特征图,r是第r个RBB区域, y m r j y_{mrj} ymrj是第j个输出,对应于属于该区域固定空间范围的第j个目标框, B ( m , r , j ) \Beta(m,r,j) B(m,r,j)是第m个特征图中第r个区域第j个框选的像素集合。
RRoI池化层支持反向传播,它被定义为

其中 x m i x_{mi} xmi是第m个特征映射中的第i个输入,L是损失函数,损失函数对每个输出∂L/∂ y m r j y_{mrj} ymrj的偏导数由下一层计算。为了加快计算速度,我们可以在前向传递过程中存储max-pooling的索引。

figure2

The RBB regression model RBB回归模型

表1中最先进的检测网络预测边界盒(BBs),以提高定位性能。[5]中引入BB回归模型并加以改进[6]。他们使用比例不变平移(SIT)和相对于对象建议的对数空间高度/宽度偏移作为回归目标, L 1 L_{1} L1函数作为定位任务损失。
但是,作为[14]的介绍,RBB可以比BB更准确地定位船只。此外,BBs之间的NMS会导致稀疏窗口来定位所有船只,如图1(b)所示。在这生成框中,RR-CNN输出rbb。我们将RBB回归模型定义为
ROTATED REGION BASED CNN FOR SHIP DETECTION 基于旋转区域的CNN舰船检测_第1张图片
其中u是RRoI训练时的标签, v = ( v x v_{x} vx, v y v_{y} vy, v w v_{w} vw, v h v_{h} vh, v α v_{\alpha} vα)是RBB回归目标的真值, t u t_{u} tu=( t u x {t^x_{u}} tux, t u y {t^y_{u}} tuy, t u w {t^w_{u}} tuw, t u h {t^h_{u}} tuh, t u α {t^{\alpha}_{u}} tuα)是一个预测的框的位置,我们定义它为 v v v, P P P = ( P x P_{x} Px , P y P_{y} Py, P w P_{w} Pw, P h P_{h} Ph, P α P_{\alpha} Pα)是RBB的推荐区域,,α等于 P α P_{\alpha} Pα, G G G= ( G x G_{x} Gx, G y G_{y} Gy, G w G_{w} Gw, G h G_{h} Gh, G α G_{\alpha} Gα)是RBB的真实标签,元素 P P P G G G的意义是一样的五个位置坐标, 2.1.1节和λ是一个常数(λ= 0.5)。式(4)中的 L 1 L_{1} L1函数与[6]中的 L 1 L_{1} L1函数相同。在图3(a)中,我们展示了对方程(5)和(6)中SIT的直观理解。在发布数据集HRSC2016的基线方法BL2中(在第3节中介绍)也提出了一个与我们的SIT不同的RBB回归模型。在方法BL2中,建议P中心的SIT是G和P之间的水平/垂直距离除以P在水平/垂直方向上的宽高投影。然而,由于旋转导致不一致的归一化,投影是不稳定的。在我们的方法中,我们标准化了距离,直接由P的宽/高在宽/高方向上的投影,更加稳定。在测试阶段,我们可以通过转换将输入推荐区域 P P P转换为预测的真值RBB, G ^ \hat{G} G^ =( G x ^ \hat{G_{x}} Gx^ G y ^ \hat{G_{y}} Gy^ G w ^ \hat{G_{w}} Gw^ G h ^ \hat{G_{h}} Gh^ G α ^ \hat{G_{\alpha}} Gα^).,转换公式如下。
ROTATED REGION BASED CNN FOR SHIP DETECTION 基于旋转区域的CNN舰船检测_第2张图片

Multi-task for NMS 非极大值抑制的多任务

表1中最先进的方法和方法BL2都包括非最大抑制(NMS)阶段,只将抑制保持在类内。船舶检测任务的类之间没有NMS会导致不可接受的结果,如图3(b)所示。在本文中,我们添加多任务损失来学习每个提议的NMS评分。我们定义损失函数为
在这里插入图片描述
其中p为用softmax软件计算的离散概率分布,C为包含后台类的类号, λ 1 λ_{1} λ1 λ 2 λ_{2} λ2为超参数,v和 t u {t^u} tu与2.1.2节相同, L n m s L_{nms} Lnms L l o c L_{loc} Lloc L n m s L_{nms} Lnms分别为分类任务、定位任务和网管任务的损失函数。本文的 L n m s L_{nms} Lnms与[6]中的 L n m s L_{nms} Lnms相同, L l o c L_{loc} Lloc的定义见2.1.2节, L n m s L_{nms} Lnms定义为C = 2的 l c l s l_{cls} lcls

Training 训练

在本文中,我们将我们的辅助结构插入到Fast R-CNN框架中,使用我们的组件代替相应的组件。然而,我们的组件也可以应用到Faster R-CNN或SSD,但需要进行额外的调整。我们选择SRBBS方法[14]作为我们的建议方法,它与BL2方法相同。 L n m s L_{nms} Lnms的训练样本与 L c l s L_{cls} Lcls的训练样本相同,但阳性样本均标记为“1”,阴性样本均标记为“0”。训练过程与Fast R-CNN没有区别。

EXPERIMENTS 实验

我们在公共数据集HRSC20161[14]上评估了我们的方法。该数据集包含从谷歌地球收集的1061幅图像。训练、验证和测试集包括分别是436张1207个样本,181张541个样本和444张1228个样本。HRSC2016中的舰船探测任务包括L1、L2和L3三个级别的任务。我们排除了潜艇、气垫船和带有“困难”标签的样本,就像他们在[14]中做的那样。三个任务分别包含1个类、4个类和19个类。
在本文中,我们选择HRSC2016中的BL2方法作为我们的基线,并通过RBB进行评估。BL2基于Fast R-CNN,结合SRBBS建议生成方法和RBB回归模型。此外,为了与Fast R-CNN进行比较,我们还采用了基于SRBBS的Fast R-CNN作为我们的比较方法(CP)。我们的方法有两种变体。与BL2相比,第一个变体(RC1)增加了RRoI池化层和我们的新RBB回归模型的额外组件。第二个(RC2)包含2.1节中介绍的所有三个组件。我们使用标准平均精度(AP)来衡量一个类的性能和平均平均精度(mAP)[5]为所有类。我们实验中使用的参数与BL2中使用的参数相同。
实验结果如表3所示。L2和L3任务AP值的详细情况分别如表4和表2所示。我们可以看到,变量RC1在三个任务上都比CP和BL2方法分别高出了+18.5到+20.0和4.8到6.1 mAP点。与RC1相比,由于类之间的NMS,我们的方法RC2在L2和L3任务上的mAP值更低。然而,RC2在L1和L2任务中产生的mAP值仍然高于BL2。值得注意的是,由RC2得到的检测样本比由CP、BL2和RC1生成的相互重叠的检测样本更适合实际应用,如图3(b)和图4所示。

CONCLUSION 结论

我们提出了基于旋转区域的CNN (RR-CNN),用于高效和准确的旋转目标检测,特别是用于遥感图像中的船舶检测。RR-CNN具有三个主要特征:RRoI池化层、新的RBB回归模型和不同类之间的NMS。与现有的目标检测框架相比,RR-CNN具有对旋转区域特征提取准确的优势。在未来的工作中,我们将尝试将RR-CNN与Faster RCNN或SSD框架相结合,设计特殊的骨干网,学习旋转不变的CNN特征。

personal summary

作者提出以前的旋转组合目标检测在准确度上存在不足,于是作者提出了RR-CNN(Rotate Region CNN)的模型架构用来精确定位旋转的目标。在传统方法上改变了ROI Pooling ,变为RROI Pooling,同时也采用最大池化的方法。然后在旋转框的回归,主要是在提议的框选 P P P做出距离的标准化,直接在 P P P的宽、高方向进行投影,这样会更加稳定。最后是多任务的NMS,定义一个多任务损失来学习每个NMS的提议评分。作者作核心的思想就是在传统的目标检测的区域提议的方形框变为旋转框,然后在提议的旋转框进行回归和损失函数的设定。

你可能感兴趣的:(cnn,深度学习,目标检测)