【Keras计算机视觉OCR】文字识别算法中DenseNet、LSTM、CTC、Attention的讲解(图文解释 超详细)

本文涉及的产品
车辆物流识别,车辆物流识别 200次/月
票证核验,票证核验 50次/账号
小语种识别,小语种识别 200次/月
简介: 【Keras计算机视觉OCR】文字识别算法中DenseNet、LSTM、CTC、Attention的讲解(图文解释 超详细)

觉得有帮助麻烦点赞关注收藏~~~

一、OCR文字识别的概念

利用计算机自动识别字符的技术,是模式识别应用的一个重要领域。人们在生产和生活中,要处理大量的文字、报表和文本。为了减轻人们的劳动,提高处理效率,从上世纪50年代起就开始探讨文字识别方法,并研制出光学字符识别器。

OCR(Optical Character Recognition)图像文字识别是人工智能的重要分支,赋予计算机人眼的功能,可以看图识字。如图6-1所示,图像文字识别系统流程一般分为图像采集、文字检测、文字识别及结果输出四个部分。

二、文字识别算法

卷积神经网络是图像识别的主要方法,也同样适用于字符的识别,但文本识别不同于其他的图像识别,文本行的字符间是一个序列,彼此之间也有一定关系,同一文本行上的不同字符可以互相利用上下文信息,因此可以采用处理序列的方法例如循环神经网络来表示,CNN和RNN两种网络相结合可以提高识别精度,CNN用来提取图像的深度特征,RNN用来对序列的特征进行识别,以符合文本序列的性质,从而形成统一的端到端可训练模型

下面将介绍DenseNet+LSTM+CTC的结合方式 将特征提取 序列预测和解码集成到一个统一的网络模型中

1:基于DenseNet网络模型的序列特征提取

DenseNet是一种有效的图像识别算法,该网络的优点在于减轻了深层网络梯度消失问题,增强了特征图的传播利用率,减少了模型参数量,在ResNet的基础上进一步加强了特征图之间的连接,构造了一种具有密集连接方式的卷积神经网络

DenseNet网络模型的核心组成部分是密集连接模块,这个模块中任意两层之间均直接的连接,即网络中的第一层、第二层 第L-1层的输出都会作为第L层的输入,同时第L层的特征图也会直接传递给后面所有层作为输入

 

2:基于LSTM结构的上下文序列特征提取

文本行是一个序列,含有丰富的上下文信息,同一文本行中的不同字符可以互相利用上下文信息,这对于字符的识别具有重要的影响,一些模糊的字符在观察其上下文时更容易区分,在卷积网络之后,构建了一个循环网络,用于提取文本序列的上下文序列特征

双向LSTM能在访问之前信息的同时,访问字符之后的信息,故能从正反两个方向提取文本行中的语义信息,有助于文本行识别任务,因此 双向LSTM可以同时处理上文和下文信息来提取上下文序列特征

字符序列的解码方式

在文本识别网络模型中,LSTM输出的序列中的字符要与标签中字符的位置一一对应,若使用softmax函数作为损失函数进行训练,训练网络参数时需要在图像上标注出每个的位置信息,使用手工标注对其样本工作量非常大,所以需要解码使字符位置一一对应 下面介绍两种常用的机制

1:基于CTC解码机制

CTC机制常用于文字识别系统,解决序列标注问题中输入标签与输出标签的对齐问题,通过映射韩叔叔将其转换为预测序列,无序数据对齐处理,减少了工作量,被广泛用于图像文本识别的损失函数计算,多用于网络参数的优化

解码是模型在做预测的过程中将LSTM输出的预测序列通过分类器转换为标签序列的过程,解码过程中的分类方式为最优路径编码,输出计算概率最大的一条路径作为最终的预测序列,即在每个时间点输出概率最大的字符

 

2:Attention模型注意力机制解码方式

注意力机制被广泛用于序列处理Seq2Seq任务中,注意力模型借鉴了人类视觉的选择性注意力机制,其核心目标是从众多信息中选出对当前任务目标来说重要的信息,忽略其他不重要的信息

对含有文本的图片而言,文本识别输出的结果的顺序取决于文本行中字符的前后位置信息,引入注意力机制可以起到定位的作用,从而突出字符的位置信息,解决序列对齐问题,因此不需要标注文本的位置

Attention模型的原理是计算当前输入序列与输出序列的匹配程度,在产生每一个输出时,会充分利用输入序列上下文信息,对同一序列中的不同字符赋予不同的权重。

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
2月前
|
机器学习/深度学习 数据采集 数据可视化
【优秀python系统毕设】基于Python flask的气象数据可视化系统设计与实现,有LSTM算法预测气温
本文介绍了一个基于Python Flask框架开发的气象数据可视化系统,该系统集成了数据获取、处理、存储、LSTM算法气温预测以及多种数据可视化功能,旨在提高气象数据的利用价值并推动气象领域的发展。
|
3月前
|
文字识别 API 开发工具
印刷文字识别使用问题之如何提高OCR的识别率
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
3月前
|
文字识别 前端开发 API
印刷文字识别操作报错合集之通过HTTPS连接到OCR服务的API时报错,该如何处理
在使用印刷文字识别(OCR)服务时,可能会遇到各种错误。例如:1.Java异常、2.配置文件错误、3.服务未开通、4.HTTP错误码、5.权限问题(403 Forbidden)、6.调用拒绝(Refused)、7.智能纠错问题、8.图片质量或格式问题,以下是一些常见错误及其可能的原因和解决方案的合集。
|
2月前
|
机器学习/深度学习 文字识别 算法
百度飞桨(PaddlePaddle) - PaddleHub OCR 文字识别简单使用
百度飞桨(PaddlePaddle) - PaddleHub OCR 文字识别简单使用
111 0
|
3月前
|
并行计算 算法 Python
Dantzig-Wolfe分解算法解释与Python代码示例
Dantzig-Wolfe分解算法解释与Python代码示例
|
2月前
|
机器学习/深度学习 数据采集 存储
基于Python+flask+echarts的气象数据采集与分析系统,可实现lstm算法进行预测
本文介绍了一个基于Python、Flask和Echarts的气象数据采集与分析系统,该系统集成了LSTM算法进行数据预测,并提供了实时数据监测、历史数据查询、数据可视化以及用户权限管理等功能。
|
2月前
|
机器学习/深度学习 算法 数据可视化
基于Python flask的豆瓣电影数据分析可视化系统,功能多,LSTM算法+注意力机制实现情感分析,准确率高达85%
本文介绍了一个基于Python Flask框架的豆瓣电影数据分析可视化系统,该系统集成了LSTM算法和注意力机制进行情感分析,准确率高达85%,提供了多样化的数据分析和情感识别功能,旨在帮助用户深入理解电影市场和观众喜好。
|
4月前
|
机器学习/深度学习 存储 人工智能
算法金 | LSTM 原作者带队,一个强大的算法模型杀回来了
**摘要:** 本文介绍了LSTM(长短期记忆网络)的发展背景和重要性,以及其创始人Sepp Hochreiter新推出的xLSTM。LSTM是为解决传统RNN长期依赖问题而设计的,广泛应用于NLP和时间序列预测。文章详细阐述了LSTM的基本概念、核心原理、实现方法和实际应用案例,包括文本生成和时间序列预测。此外,还讨论了LSTM与Transformer的竞争格局。最后,鼓励读者深入学习和探索AI领域。
50 7
算法金 | LSTM 原作者带队,一个强大的算法模型杀回来了
|
3月前
|
机器学习/深度学习 人工智能 文字识别
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
|
3月前
|
文字识别 Java API
印刷文字识别操作报错合集之复制文字识别OCR的标注任务时出现报错,该怎么办
在使用印刷文字识别(OCR)服务时,可能会遇到各种错误。例如:1.Java异常、2.配置文件错误、3.服务未开通、4.HTTP错误码、5.权限问题(403 Forbidden)、6.调用拒绝(Refused)、7.智能纠错问题、8.图片质量或格式问题,以下是一些常见错误及其可能的原因和解决方案的合集。

热门文章

最新文章