online demo的地址:http://textdet.com/
代码的开源地址:code
论文地址:paper
不过这个demo网址会时不时的不可用,可能是访问的人多的缘故或者其它原因.
翻译得不怎么好,希望大家留言批评指正
Connectionist Text Proposal Network(CTPN)
(a) 为CTPN的网络结构图,我们用一个3*3的滑动窗口,在VGG16的最后一层卷积图(conv5)上滑动。这些序列化的窗口循环的用一个双向LSTM(BLSTM)相连接,每个窗口的卷积特征(3*3*C)作为BLSTM的256D输入,BLSTM包括两个128D(dimension)的LSTMs,这个RNN层连接到了一个512D的全连接层,然后接一个输出层。输出层同时预测该区域是否是文本区域的得分,这k个anchor的y轴坐标和侧细化偏移(side-refinement offsets)。
(b) CTPN输出序列化的固定宽度的精细文本提议区域,每个方框的颜色代表是否是文本的得分,得分为正的方框会显示出来。
贡献
(a) 我们把文本检测问题转换成定位一系列细粒度文本提议。因此我们提议了一个anchor回归机制,能够同时对每个提议文本区域预测垂直定位和文本的得分,并且得到了一个较高的精度。
(b) 我们提出了一个内部网络循环机制,用以连接在卷积特征图里面的序列化文本提议,这使得我们的检测器能够利用文本行的上下文信息,使得能检测更具有挑战性的场景。
(c) 这两种方法实现的无缝的集成,使得满足文本序列的本质。规整成了一个端到端训练的模型。我们的方法可以在一个过程中处理多刻度(multi-scale)和多语言的文本。避免了进一步过滤和改进。
(d) 我们的方法取得了很好的效果,在ICDAR 2013上达到了0.88的F-measure,而别人的方法只能达到0.83.在ICDAR2015上达到了0.61的F-measure,其他人的方法只有0.54.另外,计算也非常高效,通过使用VGG16模型,每张图片用时0.14s(ICDAR 2013)。
组成部分
损失函数
误差函数如下,
每一个anchor就是一个训练样例,i是一个mini-batch中一个anchor的索引,si是anchor i的预测概率。Si*={0,1}是ground truth, j 是y坐标回归的合法的anchor的索引。一个合法的anchor就是一个正anchor,或者能覆盖ground truth>0.5的文本提议,Vj和Vj*分别是y坐标的预测值和ground truth.k是side-anchor的索引。Λ1和λ2是平衡不同任务的损失权重。Ls_cl是分损失函数,我们这里用了softmax,Lv_re和L0_re是回归损失函数,我们用smooth L1函数来计算它们。Ns,Nv,No是规范化参数
实验结果