论文题目:R2CNN:Rotational Region CNN for Orientation Robust Scene Text Detection
论文来源:2017CVPR
论文地址:https://arxiv.org/abs/1706.09579
论文代码:https://github.com/DetectionTeamUCAS/R2CNN_Faster-RCNN_Tensorflow

PS:总结在最后。


文章出发点:

作者提出了一个叫做Rotational Region CNN(R2CNN)的方法,该方法可用于自然场景中任意方向的文本检测。


贡献:

  1. 构建了一个新颖的任意方向场景文本检测的方法,该方法基于Faster R-CNN搭建的。RPN用于提取文本区域,修改后的Fast R-CNN用于文本区域分类、区域修正以及倾斜box的预测。
  2. 任意方向的文本检测问题是一个多任务问题。该方法的核心是对每个由RPN生成的候选框预测文本分数、轴对齐的box以及倾斜的最小box区域
  3. 为了充分利用文字特征,作者对每个RPN的候选区域都做了几个感兴趣池化操作,池化后的特征连结起来用于进一步的检测。
  4. 本文修改的Faster R-CNN添加了一个更小的anchor用于检测小的场景文本,最后用斜的NMS去后处理检测候选结果。

方法:

在本文中,作者考虑到角度并不能很好地表达特殊的点,因而没有采用角度信息。每个矩形框的标注包含5个值

,其中
是左上角点的坐标,
是顺时针方向的第二个点,
表示最小倾斜矩阵的高度。R2CNN的网络结构如下:

Rotational Region CNN

本文采用了两阶段目标检测方法,由区域提取和区域分类两部分组成。

RPN for proposing axis-aligned boxes

使用RPN生成轴对齐的bounding box来包围任意方向的文本。在轴对齐的box中文本会属于下列情形之一:1.水平方向的文本;2.垂直方向的文本;3.轴对齐对角线方向的文本。RPN能够生成面向任意文本的轴对齐框形式的文本区域。

为了解决小的场景文本的问题,在RPN中使用了更小尺寸的anchor,anchor的尺度为

ROIPoolings of different pooled sizes

由于一些文本的宽度大于他们的高度,本文尝试使用三种不同尺度的ROIPooling去捕捉更多的文本特征。池化后的特征进一步用于检测。具体来说,本文添加了两个池大小:11×3和3×11。

可以捕捉更多的水平特征,帮助检测宽度远远大于高度的水平文本。
可以捕获更多的垂直特征,对于高度远大于宽度的垂直文本检测很有用。

Regression for text/non-text scores, axis-aligned boxes, and inclined minimum area boxes

在本文的方法中,在RPN之后,本文将RPN生成的候选区域分类为文本或非文本,改进了包含任意方向文本的轴对齐的bounding box,预测了倾斜的bounding box。每个倾斜的box都与一个轴对齐的box相关联。尽管本文的检测目标是倾斜的边界框,但本文认为添加其他约束(轴对齐的边界框)可以提高性能。

Inclined non-maximum suppression

倾斜的交并比。对于紧密相邻的倾斜文本,正常的NMS可能会丢失一些文本,因为轴对齐框之间的IoU可能很高。但倾斜的NMS不会丢失文本,因为倾斜的IoU值低。

Training objective(Multi-task loss)

RPN的训练loss与Faster R-CNN的一样。

在每个候选区域的loss函数是文本/非文本分类loss和box回归loss的和。box的回归loss由两部分组成:轴对齐box的loss和倾斜的最小区域box的loss。在每个候选区域上,多任务loss函数定义如下:


实验:

Training Data

本文的训练数据集包含1000个来自ICDAR 2015的附加场景文本图片和2000个搜集到的文本图片。收集到的场景文本图片是不同于ICDAR 2015中的模糊文本的。为了支持任意面向场景的文本检测,本文通过旋转图像来增强ICDAR 2015训练数据集和我们自己的数据。在扩充之后,训练数据由39000张图片组成。

ICDAR 2015中的文本采用四个顺时针方向的四边形点坐标在单词水平上进行标记。通过计算包围四边形的最小面积矩形,从四边形中生成ground truth倾斜包围box(矩形数据)。然后计算最小轴对齐边框,该边框将包围文本作为ground truth轴对齐框。本文同样对采集的图像进行了类似的处理来生成ground truth数据。

Performance

本文在ICDAR 2015和ICDAR 2013两个数据集上评估了模型的性能。评估指标遵循ICDAR Robust Reading Competition的标准,为精度、召回率和F-measure。检测结果提交至竞赛网站,并在网上获得评比结果。

ICDAR 2015

该方法的召回率为79.68%,精密度为85.62%,F-measure为82.54%。

在实验中,作者主要分析了轴对齐box回归(

)、倾斜box回归(
)、anchor尺度、NMS以及不同尺度的ROIPoolings的影响。

首先在ICDAR 2015上对所有模型进行单尺度测试;然后对R2CNN-3、R2CNN-4以及R2CNN-5进行了多尺度测试。实验结果如下:

与其他方法的对比:

ICDAR 2013

ICDAR 2013测试数据集包含233张聚焦的场景文本图像。图片中的文字是水平的。由于我们可以估计轴向框和倾斜框,本文使用轴向框作为ICDAR 2013的输出。和其他方法的比较结果如下:

这证明本文设计的方法对于水平文本检测也有一定的优势。


总结:

  • 本文的方法是在Faster R-CNN的基础上进行改进的,目的是完成倾斜文本的检测。所设计的方法对Faster R-CNN的主体结构并没有太大的修改,该方法也可以换用其他的baseline,比如SSD和YOLO,对其他的检测框架有较强的适用性。
  • 在其他斜框检测方法中,一般都是引入了角度信息,而作者引入的是相邻两点坐标以及矩阵的高,这样可以在一定程度上解决如-90°与90°混淆的问题,有利于文本识别的使用。
  • 从实验结果上来看,R2CNN对倾斜和水平的文本检测都表现出了不错的优势,在对倾斜文本框进行检测时,数据集是对水平文本进行人为旋转构建的,与实际倾斜场景可能有些区别。

pads 文本不能修改_斜框检测经典网络(文本)- R2CNN相关推荐

  1. python nlp文本摘要实现_用TextRank算法实现自动文本摘要

    [51CTO.com快译]1. 引言 文本摘要是自然语言处理(NLP)领域中的应用之一,它必将对我们的生活产生巨大影响.随着数字媒体和出 版业的不断发展,谁还有时间浏览整篇文章/文档/书籍来决定它们是 ...

  2. textcnn文本词向量_基于Text-CNN模型的中文文本分类实战

    1 文本分类 文本分类是自然语言处理领域最活跃的研究方向之一,目前文本分类在工业界的应用场景非常普遍,从新闻的分类.商品评论信息的情感分类到微博信息打标签辅助推荐系统,了解文本分类技术是NLP初学者比 ...

  3. pads 文本不能修改_修改PDF文件很难?其实很简单,只是你少了一个好用的PDF编辑器...

    我们在办公时,经常会遇到各种不同格式的文件,遇到其他的文件格式还好说,最起码可以修改和编辑,但是PDF文件就不一样了,打开后只能看,不能直接进行编辑工作,这让很多人都找不到解决的方法,很令人头疼. 根 ...

  4. css wangeditor 修改_内容复制到wangEditor富文本编辑器样式排版错误重置方法

    从网站或者其他地方复制内容到wangEditor富文本编辑器样式排版错误解决方案 从网站或者其他地方复制内容到wangEditor富文本编辑器样式排版错误,粘贴到wangEditor时鼠标右击选择&q ...

  5. 小程序读取富文本mysql存储_微信小程序API 富文本·EditorContext实例

    EditorContext 基础库 2.7.0 开始支持,低版本需做兼容处理. EditorContext 实例,可通过 wx.createSelectorQuery 获取. EditorContex ...

  6. 文本上划线_如何在Word中对文本进行上划线

    文本上划线 Underlining is a common task in Word, and easily done, but what if you need to overline (also ...

  7. python文本分类算法_基于Naive Bayes算法的文本分类

    理论 什么是朴素贝叶斯算法? 朴素贝叶斯分类器是一种基于贝叶斯定理的弱分类器,所有朴素贝叶斯分类器都假定样本每个特征与其他特征都不相关.举个例子,如果一种水果其具有红,圆,直径大概3英寸等特征,该水果 ...

  8. python实现文本情感分析_用python实现简单的文本情感分析

    很久没在公众号发布新内容,在这段时间内没想到有这么多python爱好者关注了我,港真的,心里很兴奋激动. 今天给大家带来我刚刚实现了的简单多文本情感分析代码,代码环境python3.5 原理 比如这么 ...

  9. android 文本后图标_如何在Android中更改文本,图标等的大小

    android 文本后图标 Let's face it: no matter how good the screens are on our phones and tablets, the text ...

最新文章

  1. iOS 开发_..和self...的区别以及使用
  2. 量身定制规则引擎,适应多变业务场景
  3. sjms-2 创建型模式
  4. Mysql与Sql server,Sum函数跟Count函数
  5. android shell检查是否锁屏_ADB获取手机屏幕的状态(点亮与否)以及ADB点击事件基本操作...
  6. vim下更省心地用中文
  7. 07@Pattern_Note_命令模式
  8. Debian 9 Stretch国内常用镜像源
  9. idea 开源申请授权到期怎么办
  10. 保存时自动加分号_JavaScript 语句后应该加分号么?
  11. c语言代码图案代码大全,C语言图形代码.doc
  12. axi时序图_AXI总线学习
  13. 计算机word虚线分割,Word文档里的波浪线、虚线、分割线都是怎么打出来的?
  14. 论文BeautyGlow: On-Demand Makeup Transfer Framework With Reversible Generative Network(2019,妆容迁移)
  15. unity C# 时间换算记录
  16. 马云不是退休,而是进修,遵循“天道”,风清扬用大情怀修炼封神
  17. base64码通过http传输 +号变 空格 问题解决
  18. C6中休假申请与人事软件的跨服务器数据库整合,已处理。
  19. 微信小程序-退款业务
  20. JavaScript知识点-周2.md

热门文章

  1. c语言心形告白代码实现
  2. 怎么使用starwind部署iscsi_2019 年总结 - 多环境多版本的部署
  3. colspan会影响内部单元格宽度失效_电感失效分析
  4. java 递归深度优先遍历_Java基础 - 二叉树的遍历之深度优先遍历(递归遍历)
  5. 监控系统几种常见的光端机传输方案拓扑图
  6. [渝粤教育] 广东-国家-开放大学 21秋期末考试马克思主义基本原理概论(A)10882k1 (5)
  7. 【渝粤教育】广东开放大学 Python基础与应用 形成性考核 (21)
  8. 力扣算法001_两数之和
  9. android daemon 程序,(转)Android App Daemon
  10. ese如何实现支付 nfc_海运费如何实现快捷支付?答案有了