Rotation Proposals

论文Arbitrary-Oriented Scene Text Detection via Rotation Proposals
这篇论文提出了一个基于Faster R-CNN的支持任意角度旋转的场景文字检测框架.在Fast R-CNN的部分与论文Rotated Region Based CNN for Ship Detection的思路基本一致.不过多了候选框生成RPN的部分.
加入旋转角度的Faster R-CNN pipline如下:
R-FRCN

数据预处理

给每个标记的bbox添加旋转角度,得到5元组(x,y,h,w,θ).其中(x,y)代表中心点坐标,(h,w)是短边和长边.

Rotation Anchors

Faster R-CNN中anchors的定义是以(16,16)为基准,得到三种长宽比(0.5,1,2),三种尺度(8,16,32)的anchors,总共9个.论文提出对长宽比进行适当调整,以符合大多数文字区域的长宽比情况.另外,添加了6个不同的角度.因此在特征图上每个点预测3x3x6个box.
anchor策略如下图:
anchor-strategy

bbox回归

学习的目标是anchor与ground-truth box之间的映射关系(仿射变换与指数映射),而普通的方法里边学习的目标通常就是标签,有所不同.那么,为什么要学习一个修正值(regression),而不是直接学习真正的坐标呢?
因为在特征图上对每个点对应的原图区域进行是否是后选区域的二分类,坐标是通过类似滑窗的方式就能确定的,无需学习.这种滑窗搜索的方式还不够精确,可以再通过一个卷积学习一个变换(anchor与ground-truth box这两个框之间的映射关系可能相对比较固定,可以学习这个映射关系).
注意的是这里新增的对于角度的仿射变换是 θa − θg + kπ.

针对旋转的方法适配

  1. IoU的计算要考虑倾斜度:
    skew-iou

  2. NMS除了考虑IoU,置信度,也可以考虑倾斜度,保留角度差值较小的.

  3. RRoI Pooling Layer
    RROIPooling

需要对有角度的roi区域仿射变换到与坐标轴对齐的矩形数组中,再采用max pooling得到相同尺寸的特征图.

相似论文:
另一篇论文R2CNN: Rotational Region CNN for Orientation Robust Scene Text Detection提出了不同的做法,在RPN中任然使用与坐标平行的box做法,在分类网络中加入旋转角度.

版权声明:本文为makefile原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/makefile/p/Rotation-Proposals.html