Rotational Region CNN
R2CNN
论文Rotational Region CNN for Orientation Robust Scene Text Detection与RRPN(Arbitrary-Oriented Scene Text Detection via Rotation Proposals)均提出了检测出任意角度的文字目标框的方法.两篇论文是同一年出的(2017,R2CNN在RRPN之后3个月,并且在论文中做了结果对比),两个方法的主要区别在于得到候选框角度的网络位置,在RRPN中是在RPN中产生带角度的候选框\((cx,cy,w,h,\theta)\),在后续的RCNN中对候选框分类和回归候选框位置.R2CNN作者认为RPN产生的矩形候选区域足以供RCNN得到更进一步的类别信息和角度信息.因此将角度信息的获取放在了RCNN中.但是作者指出直接使用角度表示并不稳定,如对于角度分别为90度和-90度的box,在不严格区分头尾的情况下可看作相同的角度,但是数值计算上却相差很大.论文采用的box表示法是(x1,y1,x2,y2,h),即宽边上的两个点坐标和高度.在RCNN中在原来两条分支,分类和边框回归分支的基础上再加一条分支,用来输出任意角度的rbox(添分支的方式与mask r-cnn类似).使用不同的权重控制每个分支对整体loss的比例:
\[
\mathcal L(p,t,v,v^*,u,u^*)=L_{cls}+\lambda_1t\sum_{i\in\{x,y,w,h\}}L_{reg}(v_i,v^*_i) \\
+\lambda_2t\sum_{i\in\{x1,y1,x2,y2,h\}}L_{reg}(u_i,u^*_i)
\]
实验结果表明两个box回归分支同时使用比单独使用任意角度的box回归分支效果好.
由于文字通常是长条形,在ROIPooling中仅使用7x7正方形网格提取特征可能不太合适,作者采用了三种尺寸(7x7,11x3,3x11)得到三个特征之后拼接起来.F score有大约1%的提升.RRPN需要按照倾斜角度进行ROIPooling,而R2CNN不需要,因此计算较为方便.R2CNN在ICDAR2015的检测结果F score比RRPN高出5%.由于R2CNN是基于坐标轴方向的box得到任意角度的rbox,因此这种方法很容易迁移到SSD,YOLO等方法中.
TextBoxes++
这是白翔等人在2018年1月初公布的一篇关于文字检测的论文,是TextBoxes的升级版.
其借鉴SSD等网络的做法使文字检测能够end-2-end训练,并与R2CNN类似,在输出坐标对齐的矩形框时同时输出任意角度的目标框(R2CNN中也提到该方法可以用于SSD,YOLO这种方法上,TextBoxes++引用了R2CNN).
TextBoxes++除了输出水平的矩形还可输出更紧确的任意四边形 quadrilateral \((x^q_1,y^q_1,x^q_2,y^q_2,x^q_3,y^q_3,x^q_4,y^q_4)\)或者倾斜的矩形\((x^r_1,y^r_1,x^r_2,y^r_2,h^r)\).这种倾斜矩形表示法采用和R2CNN相同的表示法,不采用角度\(\theta\)表示的原因是数据集中\(\theta\)分布有bias,即不均衡,使得模型会与数据强相关(而R2CNN指出90度与-90度代表相同的结果时数值计算不稳定).这两种表示法的一个主要区别是任意四边形可以是不规则的,对不规则的艺术字等效果更好,将图片拉伸缩放后倾斜的矩形会变形,重设置为矩形则不够贴切.实验结果中表明任意四边形表示法比任意角度的矩形表示法高2.5%.
anchor(default box)的生成方式:
长宽比按照1,2,3,5,1/2,1/3,1/5设计,anchor均设置为水平的矩形,而不像RRPN那样设置多角度的矩形或者DMPNet(Y. Liu and L. Jin, “Deep matching prior network: Toward tighter multi-oriented text detection,” in Proc. CVPR, 2017.)那种多角度的任意四边形.并考虑到文字图片通常在竖直方向上相对比较稠密,因此通过在竖直方向上对anchor增加偏移使得竖直方向上anchor box比较稠密,能够覆盖更多的文字区域.
考虑到文字的形状特点,在卷积层做的改变是采用矩形而不是方形的卷积核.用3x5代替3x3,这样能够减少多余区域带来的噪声.
测试时级联NMS提高四边形NMS速度,具体做法是先对水平的矩形以较高的IOU(如0.5)去除多余的目标框,接着对任意的四边形或任意角的矩形以较低的IOU(如0.2)去除多余框.
与文字识别相结合提升检测结果,CRNN也是一个端到端训练的网络,可以和它相结合提升检测的精度,其做法是将识别得到的score与检测的score相结合得到新score.由于检测分数\(s_d\)的阈值与识别\(s_r\)的阈值通常相差较大(0.6 vs 0.005),因此不能直接将两者相加,可以采用调和均值(harmonic mean):
\[
S={2\times e^{s_d+s_r}\over e^{s_d}+e^{s_r}} \tag{$m={2\over {1\over a}+{1\over b}}$}
\]
在ICDAR 2015 Incidental Text dataset上通过识别结果改进检测器可获得1.3%的提升.
数据增广:改进了SSD的随机裁剪的增广方式.SSD增广随机裁剪时要求裁剪的目标与ground truth之间的Jaccard(IOU)超过阈值.这样裁剪出的图片的目标占比较大,这种情况在文字数据集中很少出现,因此需要避免这种情况,方法便是约束裁减后的目标占原ground truth的比例.
不足之处:
- 有目标遮挡和较大的字符间隙
- 垂直的文字,由于此类数据较少
- 弯曲文字
对这些问题处理的比较好的方法有:linking segment和EAST.
Rotational Region CNN的更多相关文章
- 论文阅读笔记三:R2CNN:Rotational Region CNN for Orientation Robust Scene Text Detection(CVPR2017)
进行文本的检测的学习,开始使用的是ctpn网络,由于ctpn只能检测水平的文字,而对场景图片中倾斜的文本无法进行很好的检测,故将网络换为RRCNN(全称如题).小白一枚,这里就将RRCNN的论文拿来拜 ...
- Rotation Proposals
Rotation Proposals 论文Arbitrary-Oriented Scene Text Detection via Rotation Proposals 这篇论文提出了一个基于Faste ...
- R2CNN论文思路记录
Rotational region cnn 我们的目标是检测任意方向的场景文本,与RRPN类似,我们的网络也基于FasterR-CNN ,但我们采用不同的策略,而不是产生倾斜角度建议. 我们认为RPN ...
- R2CNN模型——用于文本目标检测的模型
引言 R2CNN全称Rotational Region CNN,是一个针对斜框文本检测的CNN模型,原型是Faster R-CNN,paper中的模型主要针对文本检测,调整后也可用于航拍图像的检测中去 ...
- 大规模视觉识别挑战赛ILSVRC2015各团队结果和方法 Large Scale Visual Recognition Challenge 2015
Large Scale Visual Recognition Challenge 2015 (ILSVRC2015) Legend: Yellow background = winner in thi ...
- 2017-2018_OCR_papers汇总
2017-2018_OCR_papers 1. 简单背景 基于深度的OCR方法的发展历程 近年来OCR发展热点与趋势 检测方法按照主题进行分类 2. ECCV + CVPR + ICCV +AAAI ...
- Coursera, Deep Learning 4, Convolutional Neural Networks, week3, Object detection
学习目标 Understand the challenges of Object Localization, Object Detection and Landmark Finding Underst ...
- 【目标检测】Faster RCNN算法详解
Ren, Shaoqing, et al. “Faster R-CNN: Towards real-time object detection with region proposal network ...
- 目标检测-Faster R-CNN
[目标检测]Faster RCNN算法详解 Ren, Shaoqing, et al. “Faster R-CNN: Towards real-time object detection with r ...
随机推荐
- Python基础——for/while循环
Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ 上学期间,常常遇到这样的情景:为了惩罚学生,老师会说:"XXX,你先去操场上跑10圈再回来继续反省.&qu ...
- OSI网络模型
OSI中的层 功能 TCP/IP协议族 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 表示层 数 ...
- CodeForces - 727E Games on a CD 字符串Hash
题意:有n个单词,每个单词长度为k,顺时针将它们写成一个圆圈串.现在知道g个长度为k的单词,是否可以从这g个单词中选择n个形成这个圆圈串?如果有多个答案,任意输出一个. 思路 可以发现,如果枚举第一个 ...
- 【BZOJ2095】 Bridge
Time Limit: 1000 ms Memory Limit: 128 MB Description YYD为了减肥,他来到了瘦海,这是一个巨大的海,海中有n个小岛,小岛之间有m座桥连接,两个 ...
- 【BZOJ1834】 网络扩容
Time Limit: 1000 ms Memory Limit: 128 MB Description 给定一张有向图,每条边都有一个容量C和一个扩容费用W.这里扩容费用是指将容量扩大1所需的费 ...
- tcp/ip 卷一 读书笔记(1)tcp/ip 概述
TCP/IP协议概述 术语 广域网 WAN 局域网 LAN TCP/IP四层网络模型 TCP/IP通常被认为是一个四层协议系统 网络接口层 包括arp,rarp协议,包括操作系统中的网卡驱动程序和对应 ...
- ubuntu 下命令行播放器mplayer 使用详解
ubuntu 下命令行播放器mplayer 使用详解 2011-01-02 21:00:42| 分类: Linux/Unix | 标签: |字号大中小 订阅 使用 MPlayer 播放媒体文件最简 ...
- R学习笔记(4): 使用外部数据
来源于:R学习笔记(4): 使用外部数据 博客:心内求法 鉴于内存的非持久性和容量限制,一个有效的数据处理工具必须能够使用外部数据:能够从外部获取大量的数据,也能够将处理结果保存.R中提供了一系列的函 ...
- 【mongodb系统学习之七】mongodb的关闭
七.mongodb的关闭: 1).直接根据进程id杀死mongodb进程,如图(注意,kill -9要慎用,这个是强制关闭进程,可能导致文件损坏,尽量不要用,可以直接kill不加参数): 2).如果不 ...
- Java Breakpoint
1.错误描述 Java Breakpoint Unable to install breakpoint in com.you.humb.web.commom.dao.impl.ExportDaoImp ...