街景字符编码识别-字符识别模型

OCR技术简介

街景字符编码识别是一个光学字符识别(Optical Character Recognition, OCR)问题,OCR指对文本资料的图像文件进行分析识别,获取文字及版面信息的过程。即将图像中的文字进行识别,并以文本的形式返回。

典型的OCR问题解决思路是图像预处理-检测文字区域-文本识别,其中影响识别准确率的技术瓶颈是文字检测和文本识别,而这两部分也是OCR技术的重中之重。模糊、扭曲、畸变、复杂背景和光线不清等图像问题也是影响识别准确度的因素。

文本检测识别模型

文本检测识别问题与图像物体检测的思路较为相似,但也有一些区别,因此直接应用经典图像物体检测模型做识别可能需要做一些改进(如针对文本特征的proposal生成)来进一步适配任务。

文本检测识别问题与图像物体检测的区别

  • 字符可以有不同的大小、字体、颜色、亮度、对比度等。
  • 文本行可能有横向、竖向、弯曲、旋转、扭曲等式样。
  • 图像中的文字区域还可能会产生变形(透视、仿射变换)、残缺、模糊等现象。
  • 文字可以出现在平面、曲面或折皱面上;文字区域附近有复杂的干扰纹理、或者非文字区域有近似文字的纹理,比如沙地、草丛、栅栏、砖墙等。
  • 普通物体存在明显的闭合边缘轮廓,而文本没有
  • 文本中包含多个字符,而字符之间是有间隔的

很多文本检测模型是基于经典物体检测模型如Faster-RCNN,YOLO等进行改进的,图文识别任务中充当特征提取模块的基础网络,常来源于通用场景的图像分类模型VGGNet,ResNet、InceptionNet、DenseNet等。
对于不定长字符识别问题,目前的基于神经网络的工作使用CNN+RNN+CTC或CNN+RNN+attention的方式解决,其中RNN可引入上下文关联信息。

下面将介绍一些经典的文本检测模型。

CTPN(Detecting Text in Natural Image with Connectionist Text Proposal Network)

CTPN是目前流传最广、影响最大的开源文本检测模型。文本行被看成一个字符sequence,用细粒度的proposal定位文本,而不是一般物体检测中单个独立的目标。

它用VGG16模型进行特征提取,在特征图上生成anchor,生成的anchor输入BLSTM+全连接层压缩特征,全连接层特征输入到三个分类或者回归层中,得到bounding box位置和anchor的类别信息。

CRNN

CRNN基于CNN+RNN实现特征提取和分类,最后采用联结时序分类(Connectionist Temporal Classification, CTC)来处理序列不定长的问题。

街景字符识别模型选择

由于SVHN数据集中识别对象是门牌字符,因此扭曲和畸变较少,数据相对简单一些,但部分图仍有场景其他字符干扰。
当我们将SVHN的不定长字符识别问题用填充方法“补成”定长问题来解决时,就免去了CTC解码的步骤。同时由于街景门牌识别不需要上下文信息,RNN模块也不是必须的,可用CNN+Softmax初步进行分类识别,再根据出现的问题改进。

参考:
OCR技术简介
自然场景文本检测识别技术综述
文本检测综述
CTPN-自然文本场景检测学习笔记
端到端不定长文字识别CRNN算法详解
一文读懂CRNN+CTC文字识别
完全解析RNN, Seq2Seq, Attention注意力机制

你可能感兴趣的:(街景字符编码识别-字符识别模型)