OCR学习(2)CTPN学习

OCR学习(2)CTPN学习

CTPN(Connectionist Text Proposal Network)是一种文本检测算法(text detection),论文发表于2016年,是一种anchor-based算法,基于Faster-rcnn,是利用深度学习进行文本检测的经典算法之一,适用横向文本的检测。

论文阅读

论文原文:https://arxiv.org/pdf/1609.03605.pdf
1.网络结构:
首先利用VGG16(CNN)提取特征,选取conv5作为feature map。
之后在feature map上做滑动窗口,每个点都结合周围区域,得到33C的特征(C为特征图的个数)
之后将特征reshape后送入BLSTM(双向长短期记忆网络)
最后经过全连接层送入RPN网络得到text proposals的位置(对于每个预测中心点和宽度是确定的)和得分。
CTPN结束后通过文本线构造算法将proposals连接为文本框
在这里插入图片描述
2.Detecting Text in Fine-scale Proposals
VGG16是一种经典的CNN模型,用来提取空间特征,Ren提出可以在feature map上做sigle-scale的滑动窗口,利用RPN网络中大量的flexible anchors来检测多尺度的目标。
在这里插入图片描述

但是这是针对目标检测(object detectiong),目标一般有明确的边界,而文本不同,它由多个笔画和符号构成,很难区别不同的文字。
在这里插入图片描述
由于文本水平比竖直方向更难预测,它通过固定anchor的水平大小为16-pixel,只预测竖直方向的大小,来减少计算量,达到更高的准确性,这是CTPN对于Faster-rcnn的改变点之一。
在这里插入图片描述
并且在输入图片上的16像素,正好相当于conv5上的一个点。
在这里插入图片描述
anchor在竖直方向上为从11-273像素区间上分十挡,每档间为上一档的0.7倍,y轴相对坐标的计算公式如下:在这里插入图片描述
2.Recurrent Connectionist Text Proposals
为了提高文本检测准确度,上文将文本分成很多小的proposals,但仅仅分析单独的proposal,显然缺乏鲁棒性和可靠性。文本信息的一个特点就是,它是具有上下文语境的,利用RNN对上下文信息进行编码,极大的促进了文本识别工作。于是在CNN层后加入了BLSTM(一种双向的RNN,双向可以兼顾上文和下文)。隐层H的更新计算公式为:
在这里插入图片描述
未完待续

猜你喜欢

转载自blog.csdn.net/dbdxwyl/article/details/108349998