基于深度学习的自然场景文字识别系统研究 faster-RCNN + CRNN (一)

1引言

近年来,基于深度学习的OCR技术在文字识别的精准度和效率上有着显著的提升,而场景OCR技术还需要进一步完善。目前主流的自然场景文字识别主要分为两个部分,即文字检测和文字识别。1)在文字检测方面,目前在水平文字检测和斜向文字检测方面均有较为成熟的研究成果。乔宇团队发表的CTPN算法在水平文字检测方面取得了不错的效果,EAST和Seglink算法可用于检测斜向文字。2)在文字识别方面,主流的是CNN+RNN+CTC模型。此外仍有不少团队将Attention机制运用到文字识别当中,强化了网络挖掘文本特征信息的能力。目前自然场景文字识别的准确率仍然不高,本项目将在已有深度学习模型的基础上,进一步改进文字检测和文字识别算法,以能达到较好的识别效果。
整体以将识别的文字串进行切分整合,成为逐个单个文字进行识别输出。全过程从对原始识别文字图像开始进行第一步处理,将图像中的多余的冗杂信息进行清除,其次进行切分整理,将其拆分。此过程中需要判断不符合条件的图像进行处理,最后进行分类识别,输出结果。

2faster-RCNN

2.1faster-RCNN使用方法
  1. 利用RPN提取整张测试图像
  2. 利用CNN对 整张测试图像的区域进行特征提取,不再像RCNN进行在整张测试图像上划分区域分别进行特征提取
  3. 利用RPN生成Anchor box,对测试图像进行识别切分整合,过滤后通过softmax判断测试图像类别,进行二分类,此时将softmax与CNN进行整合,使其处于同一个网络中,在区域特征提取的同时进行物体的类别判定,以提高效率
  4. 通过Rol pooling层进行feature map的尺寸固定
  5. 利用多任务损失函数进行分类概率和边框回归联合训练
2.2FASTER-RCNN 整体框架

测试图像提取 生成待测候选区域 CNN特征提取 softmax二分类 尺寸固定 位置精修
在这里插入图片描述
图 1 Faster R-CNN模型
在这里插入图片描述
图 2 Faster R-CNN整体流程

由此可得,Faster R-CNN算法主要由三部分构成:
1、数据集image input:对测试图像的提取
2、RPN候选框提取:对测试图像的特征进行分析提取
3、Faster R-CNN检测目标部分

2.3Region Proposal Network
2.3.1核心思想

RPN的核心思想是使用CNN卷积神经网络直接产生Region Proposal,使用方法是滑动窗口,anchor机制和边框回归可以得到多尺度多长宽比的Region Proposal。
RPN网络是全卷积网络,可以针对生成检测建议框的任务端到端地训练,能够同时预测出object的边界和分数。
传统物体检测算法是使用滑动窗口进行原图扫描后提取各个窗口特征,RPN根据此思路,加以修改,以共享卷积层的运算、提高效率为目的,通过一个矩形窗口和每个特征点作为中心进行扫描,即利用滑动窗口中存在一个小网络,用来判断矩形窗口内是否存在需要计算机识别的物体。

2.3.2整体流程框架

在这里插入图片描述
图 3 RPN框架

测试图像进入RPN后,对其进行特征提取分割整合。

在这里插入图片描述
图4

如上图中标识:
① rpn_cls:对测试图像的特征进行分类
② rpn_bbox:获得测试图像特征的坐标位置信息

逐像素Bbox回归纠正
通过计算anchor box与ground truth之间的偏移量进行学习分析,进一步对特征提取部分Anchors进行相关条件的判断,进行越界部分和重叠部分的剔除。

2.3.3平移不变性

即在测试图像的分辨率、比例不同的情况下利用此类操作,在同一个权值的网络中进行正确的识别。比如人脸识别中,小的人脸(2424的分辨率)和大的人脸(1080720)如何在同一个训练好权值的网络中都能正确识别。
Faster R-CNN方法:通过卷积核中心生成九种不同比例的特征提取图像框,即平移不变性的应用,使在不同场景中具有不同比例的文字提取中均可正确识别输出结果。
利用此种性质,也可以防止一些重要窗口被遗漏,造成数据丢失。

3CRNN

3.1特点

1)直接识别提取图像的序列,不论是单个文字图像或是多个文字图像的拼接
2)具有直接从原始图像数据提取特征信息的能力
3)存在对于测试图像的前期类似切割整合的预处理操作
4)可以产生序列标签
5)不要求序列的长度固定,可以任意长度,只需保证测试图像中数据高度相同
6)具有更少的参数,尺寸更小

3.2网络结构

在这里插入图片描述
图 5 CRNN整体结构
CRNN网络由三个主要部分组成:卷积层Convolutional layers、循环层Recurrent layers、转录层Transcription layer。

Convlutional Layers卷积层,一个普通的CNN网络,用于提取测试图像的基本特征;
Recurrent Layers循环层,一个深层双向LSTM网络,用于继续提取文字序列中所包含的特征,并为转录层作准备;
Transcription Layers转录层,接收到循环层的信息,转换成文字,用于最后结果输出

三个部分的作用分别为:
1、卷积层:对图像进行深层特征的提取,找到特有属性,并整合将信息交送至循环层
在这里插入图片描述
要求输入图像的数据等高,才可产生特征序列

2、循环层:产生每个文字的特征序列每一帧的预测值,将所拥有的信息交送至转录层

在这里插入图片描述
图 7
3、转录层:将循环层生成的帧预测序列通过转换成为单个文字进行输出最终结果

下文链接
https://blog.csdn.net/dzcera/article/details/122955774

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值