原文站点:https://senitco.github.io/2017/03/03/text-detection-recognition/

  The task of Chinese text detection is to localize the regions in a 2D image which contain Chinese characters. The task of Chinese text recognition is, given the localized regions including text, to convert each region into machine-encoded text. It is an important technique for understanding text information in 2D images, and many other applications such as text-to-speech, machine translation, text mining, etc.

Course

  Image Analysis and Understanding

Project

  Chinese Text Detection and Recognition

Description

  The task of Chinese text detection is to localize the regions in a 2D image which contain Chinese characters. The task of Chinese text recognition is, given the localized regions including text, to convert each region into machine-encoded text. It is an important technique for understanding text information in 2D images, and many other applications such as text-to-speech, machine translation, text mining, etc.

Deadline

  April 11, Tuesday, 2017

Overview

  图像文本一般分为两大类,图形文本(Graphic text)和场景文本(Scene text),图形文本通常是指覆盖在图像上的机器打印的文本,如图片水印、视频字幕等;而场景文本则是自然场景中物体上的文本,如墙壁上的标语、衣服上的文字等。最近大部分的研究都集中在自然场景中文本检测与识别上,由于受到场景复杂、光照变化、成像随意等因素的影响,这一研究任务具有较大的挑战性,但其应用领域十分广泛,包括文字转语音、多语言翻译、自动化生产等。
  对于文本检测,需要在一幅2D图像上准确定位到文本区域,而识别则是在此基础上将其识别转换为机器编码的文字。此次项目设计,主要针对自然场景中文本图像,采用多种方法进行检测并作对比,在定位到文本区域的基础上,采用Tesseract的开源库做进一步的识别。

Method & Model

  文本检测方法来源于ECCV 2016上的一篇文章——Detecting Text in Natural Image with Connectionist Text Proposal Network,是一种基于Faster R-CNN的端到端的检测方法。R-CNN是目标检测领域中十分经典的方法,相比于传统的手工特征,R-CNN将卷积神经网络引入,用于提取深度特征,后接一个分类器预测搜索区域是否包含目标及其置信度,并取得了相对而言较为准确的检测结果,而Fast R-CNN和Faster R-CNN则是R-CNN的升级版本,在准确率和实时性方面都得到了较大的提升。在Fast R-CNN中,首先需要使用Selective Search的方法提取图像的proposals,也就是候选目标区域。而新提出的Faster R-CNN模型则引入了RPN网络(Region Proposal Network)提取proposals,RPN是一个全卷积网络,通过共享卷积层特征大大缩短了proposals提取的时间,Fast R-CNN基于RPN提取的proposal作进一步的检测和识别。因此Faster R-CNN模型主要由两大模块组成:RPN候选框提取模块和Fast R-CNN检测模块,如下图所示。

  在Faster R-CNN中,利用VGG-16进行特征提取,RPN网络结构如图2所示,在conv5卷积层用一个n x n的滑动窗口生成一个512维的全连接层,该层后接两个子连接层:分类层(cls-layer)和回归层(reg-layer),cls-layer用于判断检测的proposal是目标还是背景,reg-layer则用于预测proposal的宽高和中心锚点的坐标,滑动窗口的处理方式保证了两个子连接层关联了conv5的全部特征空间。在RPN中有一个较为重要的概念——Anchor,对于一个滑动窗口,可以同时预测多个proposal,假设proposal最多为k个,k个proposal对应k个参考候选框(reference box),这k个参考候选框即为Anchor,通过取不同的scale和aspect ratio,对应不同的Anchor,Faster R-CNN模型k值为9,即3种不同的scale和aspect ratio确定当前滑动窗口位置处对应的9个Anchor,最后cls-layer和reg-layer输出参数的数量分别为2k和4k。对于一幅W x H的卷积特征层,对应 W x H x k个Anchor,所有的Anchor都具有尺度不变性。

  训练RPN时,一个Mini-batch是由一幅图像中任意选取的256个proposal组成的,其中正负样本的比例为1 : 1。如果正样本数不足,则多补充一些负样本以满足有256个proposal可以用于训练。在RPN训练开始时,共享的VGG卷积层参数可以直接拷贝ImageNet中训练好的模型参数,剩余层参数用标准差为0.01的高斯分布初始化。RPN在提取到proposal后,通过训练Fast R-CNN进行检测和识别,而RPN和Fast R-CNN共用了VGG的卷积层,因此采用交替训练的方式实现卷积层特征共享。Faster R-CNN一个较为突出的贡献就是引入RPN,将proposal部分嵌入到了内部网络,因此整个网络模型即可完成端到端的检测任务,而不需要先执行proposal的搜索定位算法。
  Faster R-CNN在目标检测方面能取得良好的效果,但文本检测和一般的目标检测不同,文本是一系列字符、笔画或单词的序列集合,而不是一般目标检测中独立的目标,同一文本序列上的不同字符可能差异较大、距离长短不一,检测出一个完整的文本行可能比检测单个目标的难度要大。因此针对文本检测这种特殊的情况,论文中提出了一种Recurrent Connectionist Text Proposal Network (CTPN)的检测方法,算法思想和Faster R-CNN类似,通过搜索定位多个候选文本框(Text Proposal),对每个proposal做分类判决,包括proposal为文本、非文本的概率以及proposal的坐标位置。不同的是,CTPN中定义的Anchor是fine-scale的,在水平方向固定宽度为16个像素,而在垂直方向考虑k(=10)种尺寸,这和RPN中同一个滑动窗口考虑9个Anchor,分别为3种不同的scale和aspect ratio有所不同,正是考虑了文本和一般目标检测的差异,作者认为预测文本的垂直位置比水平位置要更容易,在proposal生成网络中,最后的输出分别为proposal的分类概率以及proposal的高度、中心锚点的y坐标以及在水平方向的偏移量,因为宽度是固定的,不予考虑。CTPN与Faster R-CNN还有一个较大的不同之处就是将RPN换成了双向的长短时记忆网络(BLSTM),VGG-16的conv5卷积层(W x H x C),不是直接连接到全连接层,而是将每一行的所有滑动窗口对应的3 x 3 x C特征输入到BLSTM中,用于编码Text Proposal的上下文信息,更加准确地检测文本区域。单向LSTM的维数为128,因此得到W x 256的输出,然后将BLSTM连接到512维的全连接层,全连接层后接3个子连接层,分别用于预测proposal的类别信息、在垂直方向的高度和y坐标以及在水平方向的偏移量。CTPN的整体网络结构和提取的Text Proposal示意图如图3所示,在得到多个细长的Text Proposal后,文中利用一种文本行构造算法,将多个Text Proposal合并成一个完整的文本区域,其主要思想是根据一定的约束条件,将相邻的Text Proposal两两合并,直到没有公共元素为止。

Detection Results

Conclusion

  在文本检测中用到的这种基于Faster R-CNN的算法模型,针对自然场景的多语言文本能取得良好的检测结果,比较适用于水平方向的文本检测,对于非水平方向的文本,该模型虽然也能有效检测,但不能获取文本的整体偏转信息,不利于后续的文本识别,因此在检测到文本区域后,对文本的整体偏转角度做了进一步的检测和校正。在识别任务中,主要用到了Tesseract的开源库,该OCR引擎对于中文的识别效果不是太理想。

Reference

Text Detection and Recognition in Imagery: A Survey
Course Website: Image Analysis and Understanding
R-CNN,SPP-NET, Fast-R-CNN,Faster-R-CNN系列检测方法解读
Detecting Text in Natural Image with Connectionist Text Proposal Network
Paper Reading: CTPN
Source Code: CTPN
Text Detection and Recognition Resource –1
Text Detection and Recognition Resource –2
Text Detection and Recognition Resource –2

关于Tesseract OCR引擎的安装和配置:
依赖库Leptonica的编译
Tesseract-OCR的编译和配置
OCR引擎的Python接口

Chinese Text Detection and Recognition相关推荐

  1. 基于深度学习的场景文本检测和识别(Scene Text Detection and Recognition)综述

    1. 引言 文字是人类最重要的创作之一,它使人们在时空上可以有效地.可靠的传播或获取信息. 场景中的文字的检测和识别对我们理解世界很有帮助,它应用在图像搜索.即时翻译.机器人导航.工业自动化等领域. ...

  2. CLEval: Character-Level Evaluation for Text Detection and Recognition Task 论文阅读

    CLEval: Character-Level Evaluation for Text Detection and Recognition Task 论文阅读 1.动机 2.主要思想 3.已有的相关方 ...

  3. 论文翻译-Scene Text Detection and Recognition: The Deep Learning Era

    论文翻译-Scene Text Detection and Recognition: The Deep Learning Era 原文地址:https://arxiv.org/pdf/1811.042 ...

  4. 【翻译】Rosetta Large Scale System for Text Detection and Recognition in Images

    Rosetta: Large Scale System for Text Detection and Recognition in Images(大规模图像文本提取和识别系统) 摘要 ​ 在本文中,我 ...

  5. 【论文翻译】Scene Text Detection and Recognition: The Deep Learning Era 场景文本检测和识别:深度学习时代

    原文地址:Scene Text Detection and Recognition: The Deep Learning Era 文章目录 摘要 1.引言 2.深度学习时代之前的方法 2.1概括 3. ...

  6. 【aixiv2016】DeepText A Unified Framework for Text Proposal Generation and Text Detection in Natural I

    本文转载自: http://www.cnblogs.com/lillylin/p/6118268.html Zhuoyao Zhong--[aixiv2016]DeepText A Unified F ...

  7. 《MA‑CRNN: a multi‑scale attention CRNN for Chinese text line recognition in natural scenes》论文阅读

    参考博文: CRNN的一个变种,可以读一读,看看相对于CRNN来说有什么变化?以及为什么? 文章目录 make decision step1:读摘要 step2:读Introduction step3 ...

  8. 基于全景分割Max-Deeplab的版面分析:Towards End-to-End Unified Scene Text Detection and Layout Analysis

    ​ 目录 一.全景分割介绍 二.Max-Deeplab 1.粗略框架 2.官方框架 3.详细框架 (1)Encoder (2)self-attention (3)Decoder (4)Output 4 ...

  9. 车道检测--VPGNet: Vanishing Point Guided Network for Lane and Road Marking Detection and Recognition

    VPGNet: Vanishing Point Guided Network for Lane and Road Marking Detection and Recognition ICCV2017 ...

最新文章

  1. python使用imbalanced-learn的OneSidedSelection方法进行下采样处理数据不平衡问题
  2. JDK8的日期时间类3
  3. 地图 c-suite_C-Suite的模型
  4. 得到第K个大的数算法研究
  5. Arduino笔记-使用RFID-RC522读取IC卡卡号
  6. 没有信号无服务器,没有信号不用怕“音离”你身边的便携式基站
  7. The Normal Distributions Transform: A New Approach to Laser Scan Matching
  8. 练手:微博热搜小爬虫
  9. python字符串与列表与运算_what's the python之基本运算符及字符串、列表、元祖、集合、字典的内置方法...
  10. 微软推送补丁的服务器叫什么,即将大规模推送: 微软介绍KB4023057易升补丁相关功能...
  11. Wolfram Mathematic流程控制
  12. 禁止电脑屏幕旋转快捷键
  13. 域用户登陆显示计算机图标,PC用户或域用户登陆后任务栏无显示桌面的小图标...
  14. 湖南省计算机等级考试(二级)题库 第六部分
  15. 达梦数据库-国产的荣光
  16. 2020年 Web 开发的最佳编程语言
  17. 学校更换门窗计算机桌椅,学校机房建设中需要注意的细节
  18. 检测MSWORD.OLB是否注册及注册的代码
  19. UR5 Gazebo仿真配置(不使用MoveIt)
  20. python课程报告模板_用Python做一次超酷的项目进度汇报,你值得拥有

热门文章

  1. MTCNN移植java_MTCNN移植安卓并检测视频中人脸
  2. day10-字符串作业-复写
  3. HTML5云图,HTML5/Three.js 百万粒子构成的云图
  4. CSS透明效果的实现的三种方式
  5. 高效的稳定性测试工具Fastbot的使用
  6. 数据库计算机实验报告总结,计算机软件数据库实验报告.docx
  7. 第一代到第四代计算机特点应用,第一代至第四代计算机依次是什么
  8. Linux Ubuntu 配置Anaconda3+cuda+cuDNN+torch
  9. Python学习:pwd模块
  10. 【精简版】计算机原理