介绍:
CTPN是在ECCV 2016提出的一种文字检测算法,是目前流传最广、影响最大的开源文本检测模型,可以检测水平或微斜的文本行。CTPN结合CNN与LSTM深度网络,能有效的检测出复杂场景的横向分布的文字,效果如图:

关键idea

  1. 采用垂直anchor回归机制,检测小尺度的文本候选框
  2. 文本检测的难点在于文本的长度是不固定,可以是很长的文本,也可以是很短的文本.如果采用通用目标检测的方法,将会面临一个问题:**如何生成好的text proposal**.针对上述问题,作者提出了一个vertical anchor的方法,具体的做法是只预测文本的竖直方向上的位置,水平方向的位置不预测。与faster rcnn中的anchor类似,但是不同的是,vertical anchor的宽度都是固定好的了,论文中的大小是16个像素。而高度则从11像素到273像素(每次除以0.7)变化,总共10个anchor.
  3. 采用RNN循环网络将检测的小尺度文本进行连接,得到文本行.
  4. 采用CNN+RNN端到端的训练方式,支持多尺度和多语言,避免后处理

CTPN网络结构
原始CTPN只检测横向排列的文字。CTPN结构与Faster R-CNN基本类似,但是加入了LSTM层。假设输入N Images:

  • 首先VGG提取特征,获得大小为 N×C×H×W
    的conv5 feature map。

  • 之后在conv5上做 3×3的滑动窗口,即每个点都结合周围 3×3 区域特征获得一个长度为 3×3×C 的特征向量。输出 N×9C×H×W 的feature map,该特征显然只有CNN学习到的空间特征。

  • 再将这个feature map进行Reshape

  • 然后以Batch=NHBatch=NHBatch=NH且最大时间长度 Tmax=WT_{max}=WTmax​=W 的数据流输入双向LSTM,学习每一行的序列特征。双向LSTM输出 (NH)×W×256(NH)×W×256(NH)×W×256 ,再经Reshape$恢复形状:

该特征既包含空间特征,也包含了LSTM学习到的序列特征。

  • 然后经过“FC”卷积层,变为N×512×H×WN×512×H×WN×512×H×W的特征。
  • 最后经过类似Faster R-CNN的RPN网络,获得text proposals,如图

总结

优点:
CTPN对于检测的边框在上下左右4个点上都比较准确,这点比EAST要好。

缺点:
(1)CTPN只可以检测水平方向的文本,竖直方向的话就会出现一个字一个字断开的想象。倾斜角度的话需要修改后处理anchor的连接方式,但是应该会引入新的问题。
(2)CTPN由于涉及到anchor合并的问题,何时合并,何时断开,这是一个问题。程序使用的是水平50个像素内合并,垂直IOU>0.7合并。或许由于BLSTM的引入,导致断开这个环节变差。所以对于双栏,三栏的这种文本,ctpn会都当做一个框处理,有时也会分开处理,总之不像EAST效果好。

OCR文本检测算法-CTPN模型相关推荐

  1. OCR文本检测模型:FCENet论文阅读笔记

    文章目录 前言 摘要(Abstract) 1. 介绍(Introduction) 2. 相关工作(Related Work) 3. 方法(Approach) 3.1 傅里叶轮廓嵌入(Fourier C ...

  2. AI实战:基于AdvancedEAST的自然场景图像文本检测算法

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx EAST文本检测与Keras实现 https://blog.csdn.net/linchuha ...

  3. CVPR 2019 | 文本检测算法PSENet解读与开源实现

    点击我爱计算机视觉标星,更快获取CVML新技术 作者:刘恒 编辑:CV君 PSENet文本检测算法来自论文<Shape Robust Text Detection with Progressiv ...

  4. 文本检测算法新思路:基于区域重组的文本检测

    摘要:文本检测是文本读取识别的第一步,对后续的文本识别有着重大的影响.本文主要介绍基于区域重组的文本检测算法. 本文分享自华为云社区<技术综述十三:弯曲文本检测算法(一)>,作者: 我想静 ...

  5. 4种基于像素分割的文本检测算法

    摘要:文本检测是文本读取识别的第一步,对后续的文本识别有着重大的影响.一般场景下,可以通过对通用目标检测算法进行配置修改,来实现对文本行的检测定位.本文主要介绍基于像素分割的文本检测算法. 本文分享自 ...

  6. 2020最新文本检测算法TextFuseNet

    向AI转型的程序员都关注了这个号???????????? 人工智能大数据与深度学习  公众号:datayx TextFuseNet: Scene Text Detection with Richer ...

  7. PSENet PANNet DBNet 三个文本检测算法异同

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx 这三个文本检测算法都是segment base算法,通过由下而上的方式,先对text进行seg ...

  8. 文本检测算法----TextFuseNet(IJCAI-PRICAI-20)

    多种文本检测算法性能对比及算法介绍 (https://blog.csdn.net/qq_39707285/article/details/108754444) TextFuseNet: Scene T ...

  9. 分割文本_PSENet、PANNet、DBNet三个文本检测算法异同

    点击蓝字关注我们 这三个文本检测算法都是segment base算法,通过由下而上的方式,先对text进行segment,然后再根据segment text,计算出text的instance PSEN ...

最新文章

  1. 职称考试还要考计算机 英语,强烈建议取消所谓的英语职称和计算机考试
  2. windows环境下pip安装python的包时候提示invalid syntax (转载CSDN)
  3. 专为Android加载图片Fresco:详细图解SimpleDraweeView加载图片基础
  4. Linux 进程通信fifo,Linux 进程通信之FIFO的实现
  5. 什么情况下会导致@Async异步方法会失效?
  6. php umount强制,php foreach 參數強制類型轉換的問題 | 學步園
  7. Java多线程学习十四:Lock 有哪几个常用方法?分别有什么用?
  8. java怎么申请变量_java怎么声明变量
  9. 《人件》--- 读书笔记
  10. java qq音乐接口 api,QQ音乐的各种相关API
  11. ui自动化html模板,UI自动化学习分享ppt模板
  12. 问题解决 之 转成PDF后Visio图中虚线看不清
  13. cubieboard服务器系统,Cubieboard 1搭建服务器安装Linux/Debian系统并移至内置Nand中
  14. 华为应用市场AGC研习社游戏课程上新,助力游戏开发者高效分发获量
  15. epub转换mobi
  16. 网页中怎样引导用户关注微信公众号
  17. 外贸老鸟帮新人点评、修改的5个开发信案例
  18. 【Linux】Linux发行版本的简介与选择
  19. python绘图——绘制正负区分的柱形图[ax.bar()]
  20. mapUnderscoreToCamelCase作用- 开启驼峰

热门文章

  1. mysql创建表时报Error : Tablespace for table '`database`.`temp`' exists.
  2. 导航条——调用网页助手小精灵
  3. python3.6编写程序,生成一个包含20个随机整数的列表,要求所有元素不相同,并且每个元素的值介于1~100之间。
  4. VMware vSphere client 中英文语言界面设置
  5. Node.js 模块以及npm包的管理和使用
  6. 解决前端split拆分字符串多个空格问题
  7. C++ - explicit关键字
  8. 游戏开发入门 一游戏开发概述
  9. 【Anaconda 的安装、简单使用及常见的错误解决】
  10. mysql数据库三层架构_数据库的三层架构