旋转目标(遥感/文字)检测方法整理(2017-2019)
链接:https://zhuanlan.zhihu.com/p/98703562
最近在整理一篇遥感目标检测论文的relate work部分,趁机把近几年遥感(主要关注)、场景文字旋转目标检测论文方法和code整理一下,时间仓促有疏漏之处望多多指出。
首先放上DOTA数据集官网(http://captain.whu.edu.cn/DOTAweb/index.html),官网提供水平和旋转目标提交接口,可以看到检测结果实时排行榜(http://captain.whu.edu.cn/DOTAweb/results.html),目前前五名分别来自武汉大学夏桂松团队、南京理工大学pca_lab、Cyber 公司、中科院电子所以及阿里idst。点开前面加号可以看到有的团队的方法介绍。
DOTA旋转目标赛道实时排名(2019年12-22)以下方法介绍按照论文提交时间顺序
1.RRPN(两阶段文字检测 华科白翔组)
时间:3 Mar 2017
题目:《Arbitrary-Oriented Scene Text Detection via Rotation Proposals》
链接:https://arxiv.org/abs/1703.01086
创新:
应该是第一个基于RPN架构引入旋转候选框实现任意方向的场景文本检测。基于旋转的anchor得到旋转ROI,然后提取相应特征,效果可以
pipeline预定义anchor2.EAST (单阶段文字检测器 旷世科技)
时间:11 Apr 2017
题目:《EAST: An Efficient and Accurate Scene Text Detector》
链接:https://arxiv.org/pdf/1704.03155.pdf
知乎解读:https://zhuanlan.zhihu.com/p/37504120
创新:
- 提出单阶段的检测框架figure3。提出一种新的旋转目标定义方式(特征点到旋转框的四边距离以及角度信息),如下图c,图d,e分别预测四个距离和角度信息
- 应该算是比较早的anchor-free方法检测旋转目标的尝试,将旋转的ground-truth box向内按比例缩小一个范围如下图左上角(a)中的绿色框,特征点落在这个绿色框内作为正样本。2019年的一篇 anchor-free 水平框目标检测器FoveaBox 和这个思路有点相似(https://arxiv.org/abs/1904.03797)
- 提出一个Locality-Aware NMS,加速nms过程
3. R2CNN (两阶段文字检测 三星中国)
时间:29 Jun 2017
题目:《R2CNN: Rotational Region CNN for Orientation Robust Scene Text Detection》
链接:https://arxiv.org/ftp/arxiv/papers/1706/1706.09579.pdf
知乎解读:https://zhuanlan.zhihu.com/p/41662351
创新:
- 提出一种新的旋转目标定义方式(检测 顺时针顺序的四个角点中的 前两个角点x1 y1 x2 y2和矩形高)
- 整体使用faster rcnn框架,考虑到某些文字框的宽高差距很大,在ROI pooling时 除了使用7x7的pooled size 还增加了3x11和11x3 两种pooled size。3x11可以更好地捕捉水平特征,这对于检测宽大于高的框比较有好处,而11x3可以更好地捕捉竖直特征,这对于检测高大于宽的框比较有好处。
4.RR-CNN(两阶段舰船检测 中科院自动化所)
时间:Sept. 2017
题目:《ROTATED REGION BASED CNN FOR SHIP DETECTION》
链接:https://ieeexplore.ieee.org/document/8296411
创新:
- 提出RRoI pooling layer,提取旋转目标特征
- 回归旋转目标模型
- 传统NMS针对同类目标做,这篇文章针对多类别提出多任务NMS(看论文没看太懂)
5. DRBOX(两阶段目标检测 中科院电子所)
时间:26 Nov 2017
题目:《Learning a Rotation Invariant Detector with Rotatable Bounding Box》
链接:https://arxiv.org/pdf/1711.09405.pdf
创新:
- 网络pipeline如下,论文时间比较早,没具体说使用了什么网络结构,参考其他论文说法,DRBOX类似RPN结构
- 比较早的说明了用水平框检测旋转目标存在的问题
6. TextBoxes++(单阶段 华科白翔组)
时间:9 Jan 2018
题目:《TextBoxes++: A Single-Shot Oriented Scene Text Detector》
链接:https://arxiv.org/pdf/1801.02765.pdf
知乎链接:https://zhuanlan.zhihu.com/p/33723456
创新:
- 在SSD基础上检测水平框和旋转框
- 使用不规则卷积核:
textboxes++中采用3x5的卷积核,以便更好的适应长宽比更大的文字
- 使用OHEM策略
训练过程采用OHEM策略,不同于传统的OHEM,训练分为两个stage,stage1的正负样本比为1:3,stage2的政府样本比为1:6
- 多尺度训练
由于Textboxes++采用了全卷积结构,因此可以适应不同尺度的输入。为了适应不同尺度目标,采用了多尺度训练。
- 级联NMS
由于计算倾斜文字的IOU较为耗时,因此作者采用级联NMS加速IOU计算,先计算所有所有框的最小外接矩形的IOU,做一次阈值为0.5的NMS,消除一部分框,然后再计算倾斜框的IOU的基础上做一次阈值为0.2的NMS。
7. Learning roi transformer for oriented object detection in aerial images(cvpr2019 武大夏桂松 两阶段)
时间 1 Dec 2018
题目:《Learning roi transformer for oriented object detection in aerial images》
论文链接:https://arxiv.org/abs/1812.00155
创新:
- 基于水平anchor,在RPN阶段通过全连接学习得到旋转ROI(区别于RRPN设置很多旋转anchor,因为这篇文章是从水平anchor学习得到旋转ROI,减小了计算量),基于旋转ROI提取特征,然后进行定位和分类
- Rotated Position Sensitive RoI Align
基于旋转框提取roi特征
8. R2PN(两阶段)
时间: August 2018
题目:《Toward arbitrary-oriented ship detection with rotated region proposal and discrimination networks》
创新:
- 感觉和RRPN比较像,基于旋转anchor,通过RPN得到旋转ROI,基于旋转ROI提取特征,然后进行定位和分类。和Learning roi transformer这篇文章区别 是前者是旋转anchor,后者是水平anchor,计算量更小。
9. R2CNN++(SCRDet) (两阶段 中科院电子所)
时间:17 Nov 2018
题目:《SCRDet: Towards More Robust Detection for Small, Cluttered and Rotated Objects》
链接:https://arxiv.org/abs/1811.07126
添加特征融合和空间、通道注意力机制。基于水平anchor,通过RPN预测粗糙ROI, 然后检测头实现对目标的任意角的坐标预测(x,y,w,h,θ),pipeline如下:
pipline创新:
- SF-Net:把两个不同层的feature map进行定制化融合 有效检测小目标
- MDA-Net: 使用通道注意力和像素级别的注意力机制检测密集目标和小目标
- 提出改进版的smooth L1loss 解决旋转目标在垂直时角度(从0°会突变到-90°) 存在变化不连续问题
10. CAD-Net (两阶段)
时间:3 Mar 2019
题目:《CAD-Net: A Context-Aware Detection Network for Objects in Remote Sensing Imagery》
链接:https://arxiv.org/pdf/1903.00857.pdf
创新点:
- 提出GCNet(Global Context Network),在进行目标检测时融入全局上下文信息
- 提出PLCNet(pyramid local context network)引入空间注意力学习目标协同关系,
11R3Det (单阶段旋转目标检测 上交&南理&旷世)
时间 Aug 2019
题目:《R3Det: Refined Single-Stage Detector with Feature Refinement for Rotating Object》
论文链接:https://arxiv.org/abs/1908.05612
code:https://github.com/SJTU-Thinklab-Det/R3Det_Tensorflow
解读链接:https://ming71.github.io/R3Det
创新:
- 旋转目标检测(水平目标检测也)可能存在某个anchor所在的特征点的感受野和目标位置、形状不匹配 (如下图左上角,绿色框是anchor,它所在的特征点只能看到这艘船的一部分,那么直接用这个点的特征去回归anchor 以拟合ground truth(红色框)不一定准确),所以这篇论文分两个stage:first stage 从anchor预测旋转框(橙色框),如下图红色数字1->2,这时候橙色框范围和真实目标就很接近了,然后根据橙色框提取特征(我理解为类似ROI pooling特征提取),通过这个特征回归到ground truth,如下图中红色数字2->3.
- 网络结构沿用RetinaNet的结构,并引入了feature refinement 模块,并且可以叠加多次
最近有几篇检测旋转目标的新论文,思路有点相似。
1.《Gliding vertex on the horizontal bounding box for multi-oriented object detection》 来自华科白翔组&武大夏桂松
链接:https://arxiv.org/abs/1911.09358
创新:
整体结构采用基于水平anchor的RPN结构,检测头同时输出水平框和旋转框的预测结果。旋转框是在水平框的基础上预测旋转框四个顶点相对水平框四个顶点的偏移量得到的。
从水平框结果得到旋转框结果pipeline 检测头同时输出水平框和旋转框2.IENet(anchor-free)
链接:https://arxiv.org/abs/1912.00969
检测头思路和上面那篇比较像,但是整体结构和fcos类似,也就是anchor-free思路,同时引入了注意力机制
未完待续..