文本检测: CTPN
参考:
https://zhuanlan.zhihu.com/p/37363942
https://zhuanlan.zhihu.com/p/34757009
https://zhuanlan.zhihu.com/p/31426458 【 Faster RCNN 非常详尽】
对于理解RNN/LSTM首先推荐阅读以下2篇文章,里面有详细的公式推导:
简介
文章基本信息
论文题目:Detecting Text in Natural Image with Connectionist Text Proposal Network,简称CTPN.该文章是ECCV2016乔宇老师的文章
论文地址:https://arxiv.org/pdf/1609.03605.pdf
代码实现:https://github.com/tianzhi0549/CTPN(作者的caffe实现),
https://github.com/eragonruan/text-detection-ctpn(其他人tensorflow实现)
作者提供的caffe实现没有训练代码,不过训练代码可以参考faster-rcnn的训练代码
文本检测概述
文本检测可以看成特殊的目标检测,但它有别于通用目标检测.在通用目标检测中,每个目标都有定义好的边界框,检测出的bbox与当前目标的groundtruth重叠率大于0.5就表示该检测结果正确.
文本检测中正确检出需要覆盖整个文本长度,且评判的标准不同于通用目标检测,具体的评判方法参见(ICDAR 2017 RobustReading Competition).所以通用的目标检测方法并不适用文本检测。
原始CTPN只检测横向排列的文字。CTPN结构与Faster R-CNN基本类似,但是加入了LSTM层。假设输入 Images:
- 首先VGG提取特征,获得大小为
的conv5 feature map。
- 之后在conv5上做
的滑动窗口,即每个点都结合周围
区域特征获得一个长度为
的特征向量。输出
的feature map,该特征显然只有CNN学习到的空间特征。
- 再将这个的feature map每一行都作为一个
的数据流,输入Bi-directional LSTM(双向LSTM),学习每一行的sequence feature。经过reshape后最终输出
特征,既包含空间特征,也包含了LSTM学习到的序列特征。
- 再经过“FC”卷积层,变为
的特征
- 最后经过类似Faster R-CNN的RPN网络,获得text proposals,如图2-b。
图2 CTPN网络结构
更具体的网络结构,请使用netscope查看CTPN的deploy.prototxt网络配置文件。
接下来,文章围绕下面三个问题展开:
- 为何使用BLSTM
- 如何通过FC层输出产生图2-b中的Text proposals
- 如何通过Text proposals确定最终的文本位置,即文本线构造算法
回答这三个问题,基本原理就了解了。感谢作者,写的很详细。
详见知乎:https://zhuanlan.zhihu.com/p/34757009
文本检测: CTPN的更多相关文章
- 【OCR技术系列之六】文本检测CTPN的代码实现
这几天一直在用Pytorch来复现文本检测领域的CTPN论文,本文章将从数据处理.训练标签生成.神经网络搭建.损失函数设计.训练主过程编写等这几个方面来一步一步复现CTPN.CTPN算法理论可以参考这 ...
- 【OCR技术系列之五】自然场景文本检测技术综述(CTPN, SegLink, EAST)
文字识别分为两个具体步骤:文字的检测和文字的识别,两者缺一不可,尤其是文字检测,是识别的前提条件,若文字都找不到,那何谈文字识别.今天我们首先来谈一下当今流行的文字检测技术有哪些. 文本检测不是一件简 ...
- EAST 自然场景文本检测
自然场景文本检测是图像处理的核心模块,也是一直想要接触的一个方面. 刚好看到国内的旷视今年在CVPR2017的一篇文章:EAST: An Efficient and Accurate S ...
- 使用Keras基于AdvancedEAST的场景图像文本检测
Blog:https://blog.csdn.net/linchuhai/article/details/84677249 GitHub:https://github.com/huoyijie/Adv ...
- Scene Text Detection(场景文本检测)论文思路总结
任意角度的场景文本检测论文思路总结共同点:重新添加分支的创新更突出场景文本检测基于分割的检测方法 spcnet(mask_rcnn+tcm+rescore) psenet(渐进扩展) mask tex ...
- 对博弈活动中蕴含的信息论原理的讨论,以及从熵角度看不同词素抽象方式在WEBSHELL文本检测中的效果区别
1. 从赛马说起 0x1:赛马问题场景介绍 假设在一场赛马中有m匹马参赛,令第i匹参赛马获胜的概率为pi,如果第i匹马获胜,那么机会收益为oi比1,即在第i匹马上每投资一美元,如果赢了,会得到oi美元 ...
- Efficient and Accurate Arbitrary-Shaped Text Detection with Pixel Aggregation Network(利用像素聚合网络进行高效准确的任意形状文本检测)
PSENet V2昨日刚出,今天翻译学习一下. 场景文本检测是场景文本阅读系统的重要一步,随着卷积神经网络的快速发展,场景文字检测也取得了巨大的进步.尽管如此,仍存在两个主要挑战,它们阻碍文字检测部署 ...
- OpenCV_contrib里的Text(自然场景图像中的文本检测与识别)
平台:win10 x64 +VS 2015专业版 +opencv-3.x.+CMake 待解决!!!Issue说明:最近做一些字符识别的事情,想试一下opencv_contrib里的Text(自然场景 ...
- 常用CTPN、CRNN文本检测识别框架
一.SWT识别: yestinsong/Text-Detection( Text Detection System with MSER , SWT and Text Verification(fft ...
随机推荐
- AT070TN92 电源
第二版STM32 + RA8875 + AT070TN92 + 触摸屏 + USB + C++... http://www.amobbs.com/thread-5510972-1-1.html
- 关于DSP的GPIO的输入输出设置
DSP 28335 的 GPIO的输入设置: GPIO的输入设置时,除了将此GPIO设置为输入之外,还需要将此GPIO口的电平拉高 //RXD3 GpioCtrlRegs.GPBMUX2.bit.GP ...
- Ubuntu中升极下载4.2内核
http://tech.hexun.com/2015-09-11/179027013.html 从这段话中所表达出的意思可以了解,Linux Kernel 4.3版本已经开始进行,Linus Torv ...
- Windows下Linux 环境 Cygwin安装及配置 基本工具使用
用久了Ubuntu开发环境,切换到windows多少有些不爽,想在windows下享用linux便捷的工具可以安装强大的Cygwin,本人也是初次使用中学习.本文主要目的让你可以通过cygwin使用基 ...
- Unity5.0与Android交互
1. 目标 1) Unity3D可调用Android Java函数(在.jar中) 2) Java可调用Unity3D函数 3) Unity3D可调用Android C函数(在.so中) 2. 测试环 ...
- Maven之——仓库(下)
Maven之--仓库(下) 1. 快照版本号 Maven世界中不论什么项目或者构件都有自己的版本号. Maven在构建时检測到构件是快照版本号.而且当前构件不是最新版本号的时候.就会自己主动更新 ...
- sessionid与cookie
转自:http://smiky.iteye.com/blog/649164 发现自己真的是很笨,过去一直用jsp,从来不用怕心用户信息放在session里面会找不到,现在不用jsp,前台全用html, ...
- 解析Java的JNI编程中的对象引用与内存泄漏问题
JNI,Java Native Interface,是 native code 的编程接口.JNI 使 Java 代码程序可以与 native code 交互——在 Java 程序中调用 native ...
- 安装Office2007时出现1706错误的解决方案
前几天,重做了系统.周末因为接到一笔单子,很兴奋啊.第一次接到私活.然后就装Office2007,打算看需求的.居然安装的时候出现错误,提示1706错误,后面一串错误信息,也懒得看,以为是文件坏了. ...
- Android -- Android JUint 与 Sqlite
创建一个数据库 public PersonSQLit ...