CTPN
简介:
基于目标检测方法的文本检测模型,在Faster RCNN的基础上进行了改进,并结合双向LSTM增强了序列提取特征,通过anchor和gt的设计将文本检测任务转化为一连串小尺度文本框的检测。
解决问题:
文本长短不一,基于anchor的目标检测网络很难通过设置合适的anchors去适应不同的样本。
网络结构:
- 使用VGG提取网络特征获取大小为 N∗H∗W∗C 的特征图;
- nhwc, 提取33的框,n9chw->(nH)w9c
- 以 W为序列维度输入到一个双向的LSTM,学习每一行的序列特征;
- 送入RPN ,其中anchor宽度设置为16,高度为k个不同的值;
- NMS过滤;
- 文本框进行合并。(合并规则:水平距离小于50,文本框高的交并比大于0.7)。
存在的问题:
只能检测水平文本,无法检测带倾斜角度的文本。
EAST
简介:
基于像素回归的文本检测网络。
解决问题:
ctpn这类基于检测小文本框再合并的算法速度较慢,且无法检测倾斜文本。
网络结构:
1 Unet提取图像特征,增强特征提取能力;
2 两个输出头用于预测,一个输出score map用于预测每个像素的得分值,一个输出box信息(中心点坐标、宽、高、旋转角度;box四点坐标);
3 逐行合并的nms增加合并效率。
存在的问题:
可以处理的文本实例的最大大小与网络的感受野成比例。这限制了网络预测甚至更长文本区域的能力;
无法检测弯曲文本。
PSENET
简介:
psenet作为一种基于分割的方法,能够对任意形状的文本进行定位。其次,该模型提出了一种渐进的尺度扩展算法,该算法可以成功地识别相邻文本实例。
解决问题:
能够对任意形状的文本进行定位;
基于内核的思想可更加精准的分离相邻文本实例。
网络结构:
1 resnet+fpn提取特征;
2 输出7个渐进减少的内核图;
3 通过广度优先搜索(BFS),从最小的内核图逐步扩充到最大预测图:
(1) 从具有最小尺度的核S 1 S_1S开始(在此步骤中可以区分实例,不同实例有不同的连通域);
(2)通过逐步在较大的核中加入更多的像素来扩展它们的区域;
(3)完成直到发现最大的核.
存在的问题:
基于分割的文本检测模型无法区分重叠的文本实例,文本框较多时后处理时长很慢。
DBNET
简介:
基于分割的文本检测方法,延续了psenet的内核思想,提出了可微分二值化模块。
解决问题:
将阈值二值化过程变得可微,这一小小改动不仅可以增加错误预测梯度,也可以联合优化各个分支,得到更好的语义概率图。
网络结构:
1 resnet+fpn提取特征;
2 输出两个一个内核区域的概率图,和外核区域的阈值图;
3 通过阈值图与概率图的计算得出内核二值图。
(1)内核外核构建图:
(2)本质就是带参数K的sigmod函数,通过参数K=50来模拟hard截断二值化函数。
4 后处理直接对每个内核文本实例按比例进行外扩。
存在的问题:
基于分割的文本检测模型无法区分重叠的文本实例。
DBNET++
添加了注意力机制模块,在空间维度学习不同尺度和不同空间位置的权重,达到 scale-robust 特征融合。
近期新文章:
结合transformer,提出新的端到端文本检测识别网络/更精准的检测弯曲文本。
端到端文本识别:
TESTR:
在DETR的基础上提出适合文本端到端识别的算法,两个decoder分别输出charactor和polygon。
Deepsolo:
encoder输出Bezier曲线,decoder输出确切的曲线值。
弯曲文本检测(基于contour的文本检测):
DPtext_former:
encode输出box,对文本框的点进行重采样,decoder输出polygon,解决旋转角度过大或反向文本的多边形。
MixNET:
cnn输出polygon后,使用transformer得到更精准的polygon坐标。