
点击上方“蓝字”关注咱们算法
背景介绍微信
文本检测网络
1.1 CTPN 的思路app
1.2 CTPN 的框架框架
(1)使用 VGG16 做为 base net 提取深度特征,获得 conv5_3(VGG 第 5 个 block 的第三个卷积层)的特征做为特征图,大小是 C×H×W。ide
(2)在上述的特征图上使用大小为 3×3 的滑动窗进行滑动,每一个窗口都能获得一个长度为 3×3×C 的特征向量,输出 9C×H×W 的特征图。其中每一个滑动窗口中心都会预测 k 个 anchor 的偏移值(anchor 可理解为上文提到文本小片,宽度固定为 16)。学习
(3)将上一步获得的特征输入到 256 的 BLSTM 中,获得长度为 H×W×256 的输出。flex
(4)将 BLSTM 的结果输入到 512 的 FC(Fully Connected layer,全链接层),获得 512×H×W 的结果。优化
(5)将 FC 特征输入到三个分类或者回归层中。三个结果的含义:编码
2k vertical coordinate(回归):k 个 anchor 的 y 坐标/高度偏移值;
2k 个 score(分类):k 个 anchor 为文字/非文字的分数;
k 个 side-refinement(回归):每一个 anchor 的水平偏移值,用于精修文本行的两个端点。
(6)使用 NMS(非极大值抑制算法)来滤除多余的 anchor。
(7)使用基于图的文本行构造算法,将获得细长矩形合并成文本行。
2.1 PixelLink 的思路
2.2 PixelLink 的框架
第一部分:网络结构
(1)PixelLink 的主干网络基于 CNN,采用 VGG16 做为特征提取器,将最后两个全链接层改为卷积层。
(2)提取不一样层的特征图,采用自顶向下的方法进行融合,融合操做包括先向上采样,而后再进行 Add 操做。特征融合的方式基于 FPN(feature pyramid network,金字塔特征网络),即卷积层的尺寸依次减半,但卷积核的数量依次增倍。
(3)输入到 2 个分类层中进行预测:
文本/非文本预测,输出 1x2=2 通道(文本/非文本);
链接预测,输出 8x2=16 通道(8 个邻域方向是否有链接)。
第二部分:实例分割并提取文本
(1)对于 Pixel(像素)、Link(链接)的预测结果,经过设定两个不一样的阈值获得 pixel positive 集合和 link positive 集合。
(2)根据 link positive 将 pixel positive 进行链接,获得 CCs(conected compoents,连通域)集合,集合中的每一个元素表明的就是文本实例。链接的规则采用的是 Disjoint set data structure(并查集)的方法。
(3)经过对上一步获得的 CCs(连通域)集合使用 OpenCV 的 minAreaRect (最小外接矩形)提取不一样大小的文本的外接矩形框。
(4)使用 disjoint-set(并查集)方法造成文本框。
(5)利用长度、宽度、面积、长宽比等信息,根据必定的阈值过滤上一步的文本框,去除噪声。
2.3 总结
(1)CTPN:因为加入 BLSTM,对水平文字检测效果很是好;因为框架限制,在其它方向的检测效果相对较差。采用边界框回归的方法,训练速度较慢。
(2)PixelLink:放弃边框回归,所有转化为分类任务,经过实例分割生成边界框。训练速度更快,效果更好。
文本识别
1.1 CRNN 的思路
1.2 CRNN 的框架
(1)卷积层:将图像输入到 CNN 卷积层,获得特征图。
(2)循环层:在上一步获得的特征图上按照必定的宽度从左到右生成特征序列,输入到循环层。循环层由一个 BLSTM 循环神经网络构成,预测每一个特征序列对应的字符结果。
(3)转录层:利用 CTC 模型,去掉上一步预测的结果中的空字符、重复字符并进行整合,解决字符对齐问题,最后获得输出结果。
总结
参考书籍/文章:
1.综述部分:
《深度实践OCR——基于深度学习的文字识别》,刘树春,贺盼,马建奇,王佳军等著
https://zhuanlan.zhihu.com/p/52335619
2.CTPN:
https://arxiv.org/pdf/1609.03605.pdf(论文原文:Detecting Text in Natural Image with Connectionist Text Proposal Network)
https://my.oschina.net/u/876354/blog/3047851
https://zhuanlan.zhihu.com/p/34757009
https://www.jianshu.com/p/109231be4a24
3.PixelLink
https://arxiv.org/pdf/1801.01315.pdf(论文原文:PixelLink: Detecting Scene Text via Instance Segmentation)
https://my.oschina.net/u/876354/blog/3056318
https://zhuanlan.zhihu.com/p/38171172
https://blog.csdn.net/qq_14845119/article/details/80953555
4.CRNN
https://arxiv.org/pdf/1507.05717v1.pdf(论文原文:An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition)
https://zhuanlan.zhihu.com/p/43534801
https://blog.csdn.net/imPlock/article/details/93143874



猜你喜欢
本文分享自微信公众号 - 金科优源汇(jkyyh2020)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。