CN110738090B - 使用神经网络进行端到端手写文本识别的系统和方法 - Google Patents
使用神经网络进行端到端手写文本识别的系统和方法 Download PDFInfo
- Publication number
- CN110738090B CN110738090B CN201910654750.3A CN201910654750A CN110738090B CN 110738090 B CN110738090 B CN 110738090B CN 201910654750 A CN201910654750 A CN 201910654750A CN 110738090 B CN110738090 B CN 110738090B
- Authority
- CN
- China
- Prior art keywords
- sub
- image
- images
- handwritten text
- sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 37
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 44
- 230000015654 memory Effects 0.000 claims abstract description 21
- 230000000306 recurrent effect Effects 0.000 claims abstract description 15
- 239000013598 vector Substances 0.000 claims description 67
- 238000007781 pre-processing Methods 0.000 claims description 27
- 230000007246 mechanism Effects 0.000 claims description 22
- 230000004913 activation Effects 0.000 claims description 18
- 238000012805 post-processing Methods 0.000 claims description 18
- 238000012549 training Methods 0.000 claims description 18
- 230000000007 visual effect Effects 0.000 claims description 17
- 238000009826 distribution Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 15
- 238000000605 extraction Methods 0.000 claims description 14
- 238000010606 normalization Methods 0.000 claims description 13
- 238000011176 pooling Methods 0.000 claims description 10
- 230000007774 longterm Effects 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 7
- 230000001413 cellular effect Effects 0.000 claims description 6
- 230000003213 activating effect Effects 0.000 claims description 5
- 210000002569 neuron Anatomy 0.000 claims description 5
- 230000001902 propagating effect Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 238000013500 data storage Methods 0.000 claims description 4
- 230000001131 transforming effect Effects 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 abstract description 4
- 210000004027 cell Anatomy 0.000 description 10
- 238000001994 activation Methods 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000006403 short-term memory Effects 0.000 description 5
- 230000006872 improvement Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000010008 shearing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/30—Writer recognition; Reading and verifying signatures
- G06V40/33—Writer recognition; Reading and verifying signatures based only on signature image, e.g. static signature recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19173—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/22—Character recognition characterised by the type of writing
- G06V30/226—Character recognition characterised by the type of writing of cursive writing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Character Discrimination (AREA)
- Image Analysis (AREA)
Abstract
本公开提供了使用神经网络进行端到端手写文本识别的系统和方法。大多数现有的混合架构涉及高存储消耗和大量计算,以将离线手写文本转换成具有各自转换精度变化的机器可读文本。该方法将深度卷积神经网络(CNN)与基于RNN(递归神经网络)的编码器单元和解码器单元组合,以将手写文本图像映射到与扫描的手写文本输入图像中存在的文本相对应的字符序列。深度CNN用于从手写文本图像中提取特征,而基于RNN的编码器单元和解码器单元用于生成转换后的文本作为一组字符。与现有的混合架构相比,所公开的方法需要更少的存储消耗和更少的计算,并且具有更好的转换精度。
Description
优先权要求
本申请要求2018年7月19日提交的印度专利申请No.201821026934的优先权。上述申请的全部内容通过引用结合在此。
技术领域
本文的公开内容一般涉及离线模式下的手写文本识别,更具体地,涉及使用神经网络进行端到端手写文本识别的系统和方法。
背景技术
来自扫描的手写文本图像的离线手写文本识别(Handwritten TextRecognition,HTR)对于企业试图在当前数字世界中数字化大量手写扫描文档或报告是一个重要问题。离线手写文本识别(HTR)与在线模式相比具有更大的挑战性,在线模式除了利用文本图像之外还利用诸如笔划信息和轨迹之类的属性,而离线模式仅具有可用于特征提取的文档/报告的文本图像。
从技术上而言,手写文本识别(HTR)已经被表述为序列匹配问题,其中从输入数据(例如文档或报告的一行文本)提取的特征序列与由从相当于输入数据的文本中的字符组成的输出序列相匹配,主要使用隐马尔可夫模型(Hidden Markov Model,HMM)。然而,由于马尔可夫假设每个观察仅取决于当前状态,因此隐马尔可夫模型(HMM)未能利用输入文本序列中的上下文信息。递归神经网络(Recurrent Neural Network,RNN)解决了使用输入文本序列中的上下文信息的问题,其以隐状态对上下文信息进行编码。然而,递归神经网络(RNN)的使用限于可以对序列中的各个字符进行分段的情形,因为RNN目标函数在每个时间步长需要单独的训练信号。
基于将HMM与RNN组合的混合架构,本领域中可获得各种改进的系统和模型。连接主义时间分类(Connectionist Temporal Classification,CTC)与RNN结合使用被证明是一种有效的解决方案,其中连接主义时间分类(CTC)允许网络将输入序列直接映射到输出标签序列,从而不需要分段输入。然而,RNN-CTC模型的性能仍然受限于使用来自扫描的手写文本图像的手工特征来构建到RNN的输入序列。
多维递归神经网络(Multi-Dimensional Recurrent Neural Network,MDRNN)被称为用于手写文本识别(HTR)的第一端到端模型,其使用多维RNN层的层次结构,沿着两个轴处理输入文本图像,从而学习在两个方向上的长期依赖。在多维递归神经网络(MDRNN)中,沿垂直轴捕获字符的空间结构,同时沿水平轴编码序列信息。然而,与提取相同视觉特征的标准卷积操作相比,表达方式计算起来成本高昂。将卷积神经网络(ConvolutionalNeural Network,CNN)与深度一维RNN-CTC模型相结合的复合架构在标准手写文本识别(HTR)基准测试中提供了更好的性能,但是,一种具有更高的准确性、更少的存储消耗和更少计算的有效手写文本识别(HTR)方法总归是一个改进的领域。
发明内容
本公开的实施例提出技术改进,作为本发明人在传统系统中认识到的一个或多个上述技术问题的解决方案。
在一个方面,提供了一种用于使用神经网络进行端到端手写文本识别的系统,所述系统包括:一个或多个内部数据存储设备,可操作地耦接到一个或多个硬件处理器,用于存储被配置为由一个或多个硬件处理器执行的指令,所述指令被包括在以下之中:图像预处理模块,被配置为:接收扫描的手写文本输入图像;从扫描的手写文本输入图像获取一个或多个子图像,其中一个或多个子图像中的每个包括扫描的手写文本输入图像中存在的一行手写文本;以及将一个或多个子图像缩放成具有固定高度和可变宽度并保持其纵横比的一个或多个缩放子图像;特征提取模块,可操作地耦接到图像预处理模块并且被配置为通过应用卷积神经网络(CNN)将一个或多个缩放子图像中的每个变换为一个或多个特征映射,其中一个或多个特征映射包含相应子图像的视觉特征;映射到序列模块,可操作地耦接到特征提取模块并且被配置为通过在深度方向分离包括在一个或多个特征映射中的列,并且连接相应子图像的一个或多个特征映射的各个列,将一个或多个特征映射转换为特征向量序列;序列学习模块,可操作地耦接到映射到序列模块并且被配置为通过使用基于递归神经网络(RNN)的编码器单元和解码器单元,通过映射与每个特征向量序列相关联的视觉特征来生成一组或多组字符,其中一组或多组字符是为对应的子图像识别的机器可读文本,并且其中基于RNN的编码器单元和解码器单元的编码器单元被配置为针对每个特征向量序列生成上下文向量,并且基于RNN的编码器单元和解码器单元的解码器单元被配置为针对每个特征向量序列在上下文向量上应用条件概率分布,以生成用于对应子图像的一组字符;以及图像后处理模块,可操作地耦接到序列学习模块并且被配置为组合每个相应子图像的字符组以生成手写文本输出文件,其中手写文本输出文件是扫描的手写文本输入图像的识别出的文本版本。
在另一方面,提供一种用于使用神经网络进行端到端手写文本识别的处理器实现的方法,所述方法包括以下步骤:通过图像预处理模块预处理接收到的扫描手写文本输入图像,其中所述预处理包括:从所接收的扫描的手写文本输入图像中获得一个或多个子图像,其中每个子图像包括存在于扫描的手写文本输入图像中的一行手写文本;以及将一个或多个子图像缩放成具有固定高度和可变宽度并保持其纵横比的一个或多个缩放子图像;通过应用卷积神经网络(CNN),通过特征提取模块将一个或多个缩放的子图像中的每一个变换为一个或多个特征映射,其中所述一个或多个特征映射包含对应子图像的视觉特征;映射到序列模块通过在深度方向分离包括在一个或多个特征映射中的列,并且连接相应子图像的一个或多个特征映射的各个列,将一个或多个特征映射转换为特征向量序列;序列学习模块通过使用基于递归神经网络(RNN)的编码器单元和解码器单元,通过映射与每个特征向量序列相关联的视觉特征来生成一组或多组字符,其中一组或多组字符是为对应的子图像识别的机器可读文本,并且其中基于RNN的编码器单元和解码器单元的编码器单元被配置为针对每个特征向量序列生成上下文向量,并且基于RNN的编码器单元和解码器单元的解码器单元被配置为针对每个特征向量序列在上下文向量上应用条件概率分布,以生成用于对应子图像的一组字符;以及图像后处理模块对字符组进行后处理,其中后处理包括组合每个相应子图像的字符组以生成手写文本输出文件,其中手写文本输出文件是扫描的手写文本输入图像的识别出的文本版本。
在又一方面,提供一种计算机程序产品,包括具有在其中实现的计算机可读程序的非暂时性计算机可读介质,其中所述计算机可读程序在计算设备上执行时使得所述计算设备:通过图像预处理模块预处理接收到的扫描手写文本输入图像,其中所述预处理包括:从所接收的扫描的手写文本输入图像中获得一个或多个子图像,其中每个子图像包括存在于扫描的手写文本输入图像中的一行手写文本;以及将一个或多个子图像缩放成具有固定高度和可变宽度并保持其纵横比的一个或多个缩放子图像;通过应用卷积神经网络(CNN),通过特征提取模块将一个或多个缩放的子图像中的每一个变换为一个或多个特征映射,其中所述一个或多个特征映射包含对应子图像的视觉特征;映射到序列模块通过在深度方向分离包括在一个或多个特征映射中的列,并且连接相应子图像的一个或多个特征映射的各个列,将一个或多个特征映射转换为特征向量序列;序列学习模块通过使用基于递归神经网络(RNN)的编码器单元和解码器单元,通过映射与每个特征向量序列相关联的视觉特征来生成一组或多组字符,其中一组或多组字符是为对应的子图像识别的机器可读文本,并且其中基于RNN的编码器单元和解码器单元的编码器单元被配置为针对每个特征向量序列生成上下文向量,并且基于RNN的编码器单元和解码器单元的解码器单元被配置为针对每个特征向量序列在上下文向量上应用条件概率分布,以生成用于对应子图像的一组字符;以及图像后处理模块对字符组进行后处理,其中后处理包括组合每个相应子图像的字符组以生成手写文本输出文件,其中手写文本输出文件是扫描的手写文本输入图像的识别出的文本版本。
在本发明的一个实施例中,图像预处理模块还配置为:采用小批量训练技术,以通过在左侧和右侧上用相应的背景像素填充包含在批次中的一个或多个子图像以匹配批次中最宽子图像的宽度,来保持尺寸的均匀性;以及将随机失真引入一个或多个子图像以生成一个或多个子图像中的变化。
在本公开的实施例中,所述CNN包括连续地堆叠有带泄露线性整流函数(leakyReLU)激活的七个卷积层,其中通过执行以下操作来配置所述卷积层的带泄露线性整流函数激活:执行批量归一化以防止内部协变量移位并在传播到下一个卷积层之前加速训练;以及执行池化操作机制以执行至少一些卷积层的激活,以减少一个或多个子图像的维度。
在本公开的实施例中,所述编码器单元是通过组合两个长短期记忆(LSTM)单元形成的双向网络,并且所述解码器单元是具有单个LSTM单元的单向网络。
在本公开的实施例中,所述编码器单元和所述解码器单元包括两个循环层,每个LSTM单元中具有256个隐藏单元。
在本公开的实施例中,基于RNN的编码器单元和解码器单元由以下配置:通过剩余连接,通过其中包含的循环单元促进梯度流向随后的循环层;通过沿深度方向连接使用丢弃机制来规范编码器单元,而不修改循环连接以捕获长期依赖性;通过层标准化激活细胞神经元以防止由于小批量训练导致的协变量偏移;以及通过注意机制将解码器单元的隐状态与编码器单元的隐状态对准。
应当理解,前面的一般性描述和下面的详细描述都只是示例性和说明性的,并不是对要求保护的本公开的实施方式的限制。
附图说明
包含在本公开中并构成本公开的一部分的附图示出了示例性实施例,并且与说明书一起用于解释所公开的原理:
图1示出了根据本公开实施例的用于使用神经网络的端到端手写文本识别的系统的示例性框图。
图2是根据本公开实施例的包括在图1系统中的功能模块的示例性架构。
图3A至图3C示出了根据本公开实施例的用于使用神经网络进行端对端手写文本识别的处理器实现方法的流程图。
图4是示出根据本公开实施例的使用卷积神经网络(CNN)从扫描的手写文本输入图像的每个子图像的特征映射生成特征向量序列的图形表示。
图5是示出根据本公开实施例的使用具有注意力的基于递归神经网络(RNN)的编码器单元和解码器单元识别扫描的手写文本输入图像的每个子图像的手写文本的图形表示。
具体实施方式
参考附图描述示例性实施例。在附图中,附图标记的最左边的数字标识首次出现附图标记的图。为了方便起见,在整个附图中使用相同的附图标记来表示相同或相似的部分。虽然本文描述了所公开原理的示例和特征,但是在不脱离所公开实施例的精神和范围的情况下,修改、改编和其他实现是可能的。旨在将以下详细描述视为仅是示例性的,真实范围和精神由权利要求书指示(当包括在说明书中时)。
根据上下文,可互换地使用诸如字符、文本和序列之类的术语,以指示在转换之前或之后存在于扫描的手写文本输入图像中的文本。输出序列是指转换之后的已识别文本。
离线手写文本识别(HTR)几十年来一直是主要的研究问题,并且近来由于可以通过提取存储在手写文档中的数据并使用现代AI系统利用它来解锁的潜在价值而获得了发展动力。深度递归神经网络(RNN)模型,如多维长短期记忆(Multi-dimensional LongShort Term Memory,LSTM)单元表现出与传统的基于隐马尔可夫模型的方法(其基于马尔可夫假设并且因此缺乏RNN的代表性能力)相比,具有有效的手写文本识别的更高的性能。所公开的用于端到端手写文本识别的系统和方法将深度卷积神经网络(CNN)与基于RNN的编码器单元和解码器单元组合,以将手写文本图像映射到与扫描手写文本输入图像中存在的文本相对应的字符序列。深度CNN用于从手写文本图像中提取特征,而基于RNN的编码器单元和解码器单元用于生成转换后的文本作为一组字符。
现在参考附图,更具体地参考图1至图5,其中类似的附图标记在整个附图中始终表示相应的特征,示出了优选实施例,并且在用于使用神经网络的端到端手写文本识别的以下示例性系统和方法的背景下描述这些实施例。
图1示出了根据本公开实施例的用于使用神经网络的端到端手写文本识别的系统100的示例性框图。在一个实施例中,系统100包括一个或多个处理器104、通信接口设备或输入/输出(I/O)接口106、以及可操作地耦接到一个或多个处理器104的一个或多个数据存储设备或存储器102。作为硬件处理器的一个或多个处理器104可以实现为一个或多个微处理器、微计算机、微控制器、数字信号处理器、中央处理单元、状态机、图形控制器、逻辑电路和/或根据操作指令操纵信号的任何设备。在其他能力中,处理器被配置为获取并执行存储在存储器中的计算机可读指令。在一个实施例中,系统100可以在各种计算系统(例如膝上型计算机、笔记本、手持设备、工作站、大型计算机、服务器、网络云等)中实现。
I/O接口设备106可以包括各种软件和硬件接口,例如,web接口、图形用户接口等,并且可以促进各种网络N/W和协议类型内的多种通信,包括有线网络,例如LAN、线缆等,以及无线网络,例如WLAN、蜂窝网络或卫星。在一个实施例中,I/O接口设备可以包括一个或多个端口,用于将多个设备彼此连接或连接到另一个服务器。
存储器102可以包括本领域中已知的任何计算机可读介质,包括例如易失性存储器,例如静态随机存取存储器(SRAM)和动态随机存取存储器(DRAM),和/或非易失性存储器,例如只读存储器(ROM)、可擦除可编程ROM、闪存、硬盘、光盘和磁带。在一个实施例中,系统100的一个或多个模块(图2的102A到102E)可以存储在存储器102中。
图2示出了根据本公开实施例的包括在图1的系统100中的功能模块的示例性架构。在一个实施例中,功能模块包括图像预处理模块102A、特征提取模块102B、映射到序列(map-to-sequence)模块102C、序列学习模块102D和图像后处理模块(102E)。
图3A至图3C示出了根据本公开实施例的用于使用神经网络的端到端手写文本识别的处理器实现的方法300的流程图。在一个实施例中,可操作地耦接到一个或多个处理器104的一个或多个数据存储设备或存储器102被配置为存储被配置为由一个或多个处理器104执行方法300的步骤的指令。现在将参考图1的系统100的组件和图2的示例性架构的功能模块详细解释方法300的步骤。尽管可以按顺序描述过程步骤、方法步骤、技术等,但是这样的过程、方法和技术可以被配置为以交替顺序工作。换句话说,所描述的任何顺序或步骤顺序不一定表示必然以该顺序执行步骤。这里描述的过程的步骤可以以任何实际的顺序执行。此外,可以同时执行一些步骤。
根据本公开的实施例,图像预处理模块(图2的102A)被配置为在步骤302预处理接收的扫描的手写文本输入图像。预处理的步骤302包括:在步骤302a从接收的扫描的手写文本输入图像获得一个或多个子图像,其中每个子图像包括存在于扫描的手写文本输入图像中的一行手写文本,并在步骤302b,将一个或多个子图像进一步缩放成具有固定高度和可变宽度并保持纵横比的一个或多个缩放子图像。
在一个实施例中,所接收的扫描的手写文本输入图像可以是可由诸如扫描仪、多功能外围设备(MFP)设备、图像复制设备等标准扫描设备来扫描或处理的文件或文档。所接收的扫描的手写文本输入图像可以包括要被识别或转换成数字或机器可读文本的至少一行手写文本。在步骤302a,通过图像预处理模块(图2的102A)将接收到的扫描的手写文本输入图像分成一个或多个子图像,其中每个子图像包括扫描的手写文本输入图像中存在的一行手写文本。在一个实施例中,每个子图像中包括的一行手写文本可以是或可以不是完整的句子。
在一个实施例中,在步骤302b,通过图像预处理模块(图2的102A)对一个或多个子图像进行缩放或下采样,使得一个或多个子图像具有固定高度和可变宽度并保持纵横比。在一个实施例中,每个子图像包含具有256个强度等级的单个通道,并且固定高度可以在128个像素到32个像素的范围内。然而,调整每个子图像的宽度以保持相应子图像的纵横比,以减少系统100的计算次数和存储要求,如表1所示。
表1
在一个实施例中,预处理的步骤302还包括采用小批量训练技术,以通过在左侧和右侧用相应背景像素填充批次中包括的一个或多个子图像以匹配批次中最宽的子图像的宽度,并将随机失真引入一个或多个子图像以生成一个或多个子图像的变化,来维持尺寸的均匀性。在一个实施例中,通过执行包括平移、旋转、剪切和缩放的一组四个变换操作,在采用小批量训练技术的同时,在批次中的每个子图像中引入随机失真。使用高斯分布独立地对执行四个变换操作集合时的参数进行采样。例如,旋转操作的参数是角度的量。类似地,缩放操作的参数是分辨率的量。在一个实施例中,可以对一个或多个子图像执行来自四个变换操作的集合中的至少一个或者四个变换操作的集合中的零个,以生成变化,使得系统100可以处理每次迭代中先前未看到的子图像的集合。
根据本公开的实施例,特征提取模块(图2的102B)被配置为在步骤304通过应用卷积神经网络(CNN)将一个或多个缩放的子图像中的每一个变换为一个或多个特征映射,其中一个或多个特征映射包含相应子图像的视觉特征。
在一个实施例中,卷积神经网络(CNN)可以是没有完全连接层的标准卷积神经网络(CNN)。CNN用于通过自动学习一组基本非线性变换,以一个或多个特征映射的形式从每个缩放的子图像中提取丰富的视觉特征。提取的丰富视觉特征可以编码对应子图像中的局部属性,同时保持对应子图像中存在的对象的空间组织。
在一个实施例中,CNN包括串联堆叠的七个卷积层,具有带泄露线性整流函数激活。在一个实施例中,CNN的前六层包括具有1像素宽输入填充的3×3像素的内核大小,而第七层包括没有输入填充的2×2像素的内核大小。内核步幅在CNN中的七个卷积层的垂直和水平方向上都是1个像素。
在一个实施例中,通过执行批量归一化以防止内部协变量移位并在传播到后续卷积层之前加速训练以及用于激活卷积层的池化操作机制来减少一个或多个子图像的维度,来配置七个卷积层的带泄露线性整流函数激活。
在一个实施例中,池化操作机制包括总共四个最大池化层,其中两个具有2×1的内核大小以保持每个子图像中存在的手写文本的水平空间分布以及剩余两个最大池化层具有标准的2×2非重叠内核大小。表2示出了CNN中的每个卷积层的网络配置。
表2
根据表2,第一卷积层包含16个卷积滤波器,第二卷积层包含32个卷积滤波器,第三和第四卷积层各包含64个卷积滤波器,第五、第六和第七卷积层各包含128个卷积滤波器卷积过滤。第一卷积层和第二卷积层包括具有2×2非重叠内核大小的最大池化层,而第五卷积层和第六卷积层包括具有2×1内核大小的最大池化层。
在一个实施例中,接收的扫描的手写文本输入图像的每个子图像在被发送到特征提取模块(图2的102B)之前由图像预处理模块(图2的102A)反转,从而每个子图像的前景由较暗背景上的较高强度组成,用于卷积神经网络(CNN)激活以便于学习。
根据本公开的实施例,映射到序列模块(图2的102C)被配置为在步骤306通过在深度方向分离包括在一个或多个特征映射中的列,并且连接相应子图像的一个或多个特征映射的各个列,将一个或多个特征映射转换为特征向量序列。
在一个实施例中,通过连接一个或多个特征映射的各个列来构造特征向量序列。在一个实施例中,通过连接一个或多个特征映射的第i列来构造第i个特征向量。由于在步骤304由CNN执行的卷积运算的平移不变性,每列表示从左向右移动的垂直条带(称为感受野),如图4所示。由于在步骤302通过图像预处理模块(图2的102A)缩放每个子图像,特征向量序列包括唯一维度,而不对每个特征向量的序列长度施加任何限制。
根据本公开的实施例,序列学习模块(图2的102D)被配置为在步骤308通过映射与每个特征向量序列相关联的视觉特征,使用基于递归神经网络(RNN)的编码器单元和解码器单元,来生成一组或多组字符。一组或多组字符是为对应的子图像识别的机器可读文本。基于RNN的编码器单元和解码器单元的编码器单元被配置成为每个特征向量序列生成上下文向量。基于RNN的编码器单元和解码器单元的解码器单元被配置为针对每个特征向量序列在上下文向量上应用条件概率分布,以生成对应子图像的一组字符。
在一个实施例中,基于RNN的编码器单元和解码器单元的编码器单元和解码器单元都充当单独的递归神经网络。编码器单元基于对在步骤306获得的每个子图像的特征向量序列的理解,以上下文向量的形式构造紧凑表示,并且解码器单元通过在相同的紧凑表示上应用条件概率分布来生成对应子图像的数字化字符组或机器可读文本。
在一个实施例中,编码器单元将每个子图像的特征向量序列作为输入,其中Ts是序列长度,并生成相应的子图像的上下文向量c,其代表整个序列,使得在每个时间步长t,隐状态ht=g(xt,ht-1),最后,c=s(h1,....,hTs),其中g和s是一些非线性函数。
在一个实施例中,在编码器单元中使用长短期记忆(LSTM)单元,以学习由于存在存储单元而导致的长期依赖性。在一个实施例中,单个长短期记忆(LSTM)单元由四个门,即忘记f、输入i、更新u和输出o组成,其通过以最终单元状态仅编码特征向量序列的相关分量的方式选择性地累积和丢弃信息来修改每个时间步的单元状态ct。在每个时间步长t,单元和隐状态被更新为,
和,
其中,ft=σ(Wfxt+Ufht-1)
it=σ(Wixt+Uiht-1)
ut=tanh(Wuxt+Uuht-1)
ot=σ(Woxt+Uoht-1)
其中,σ()和tanh()表示元素级sigmoid和tanh操作,而W和U是线性变换的参数。最终的单元状态cTs用作相应子图像的上下文矢量。
在一个实施例中,编码器单元是双向网络。由于LSTM单元是单向的并且可能仅学习过去的上下文,所以通过组合两个LSTM单元来形成双向网络,以利用特征向量序列中的前向和后向依赖性。双向网络以相反的方向处理特征向量序列,如图5所示。两个LSTM单元的输出,在每个时间步长链接前向和后向/>以产生单个输出向量/>类似地,通过链接最终前向和后向状态/>形成最终单元状态。
在一个实施例中,由编码器单元生成的上下文向量cTs被提供作为对应子图像的解码器单元的输入。解码器单元是具有单个LSTM单元的单向网络。
在一个实施例中,仿射变换c1=Wa cTs,其中Wa是变换矩阵,c1用于初始化解码器单元的单元状态。解码器单元在每个时间步长t生成输出序列的令牌yt,受限于c1和自己先前的预测{y1,....,yt-1}。解码器单元学习输出序列y={y1,...,yTd}上的条件概率分布其中Td是序列长度。使用解码器单元,将每个条件被建模为p(yt|{yt,....,yt-1},c1)=softmax(g(yt-1,ht-1,c1)),其中g是非线性函数,ht-1是解码器单元的隐状态。
在一个实施例中,编码器单元和解码器单元都包括两个循环层,每个循环层在每个LSTM单元中具有256个隐藏单元,并且延伸到两层的深度以增强学习容量。
在一个实施例中,基于RNN的编码器单元和解码器单元由残余连接配置,以促进通过其中包括的循环单元的梯度流到后续循环层。沿着深度方向连接采用丢弃(dropout)机制来规范编码器单元,而不修改循环连接以捕获长期依赖性。采用层标准化来激活细胞神经元以防止由于小批量训练引起的协变量偏移。此外,采用注意机制来将解码器单元的隐状态与编码器单元的隐状态对准。
在一个实施例中,采用丢弃机制来保持基于RNN的编码器单元和解码器单元的容量以捕获长期依赖性。在一个实施例中,层归一化被用于基于RNN的编码器单元和解码器单元中的循环激活,以稳定隐状态动态并在系统100的训练期间更好地收敛。线性变换被应用于解码器单元上以生成logit,其中N是输出词汇量大小。对logit执行Softmax操作,以在每个时间步长定义输出词汇表上的概率分布。在一个实施例中,输出词汇量大小是语言中存在的字母的数量以及诸如空格,星号等的特殊字符。在一个实施例中,用于英语手写文本识别的输出词汇量大小为79,其包括26个字母和53个特殊字符。
在一个实施例中,诸如Bahdanau注意机制之类的注意机制被用作基于RNN的编码器单元和解码器单元的扩展,由此,对于特征向量序列,基于解码器单元先前隐状态和由编码器单元生成的注释序列/>的相似性在每个时间步长修改上下文向量。在一个实施例中,由于以下事实使用了注意机制:形成编码器单元和解码器单元之间的链接的上下文向量可能倾向于忘记特别是对于长序列的基本信息。在一个实施例中,长序列可以包含多于一个的手写文本句子。第i个解码器时间步长的上下文向量由下式给出,
每个的权重αij由下式给出
其中,
这里,a是与特征提取模块(图2的102B)的CNN和序列学习模块(图2的102D)的基于RNN的编码器单元和解码器单元一起训练的前馈网络。
因此,将上下文向量修改为输入注释的加权和,其中权重测量位置i处的解码器单元的输出与来自特征向量序列的位置j周围的序列特征向量的特征向量的相似程度。还采用了在Luong注意机制中使用的注意力输入馈送方法,由此将来自先前时间步长的上下文向量与当前时间步长的输入相连接,以进一步增强系统100的预测容量。
在一个实施例中,通过最小化累积分类交叉熵(cross-entropy,CE)损失来训练系统100,该累积分类交叉熵(CE)损失是针对输出序列中的每个预测字符独立计算的。对于输出序列y={y1,...,yTd},CE损失定义为其中p(yt)是时间步长t的真实等级的概率。
在一个实施例中,在每个时间步长到解码器单元的输入是来自可学习嵌入层的嵌入向量,对应于来自前一步骤的金预测,直到发出序列结束<eos>。使用基于时间的反向传播算法(Back Propagation Through Time,BPTT)在基于RNN的编码器单元和解码器单元上执行梯度下降,然后反向传播到CNN以更新网络权重和偏差。
在一个实施例中,通过为最终CE损失中的每个实例的贡献分配合适的权重来采用焦点损失技术,以解决由CE损失引起的类不平衡问题。最终的CE损失定义为F L(p)=-(1-p)γlog(p),其中p是真类概率,γ是可调焦点参数。
在一个实施例中,使用贪婪解码(Greedy Decoding,GD)来导出系统100的推断,该贪婪解码(GD)在每个时间步长处从softmax分布发出具有最高概率的类,作为该实例处的输出。贪婪解码操作的基本假设是最佳序列由每个时间步的最可能的令牌组成,这可能不一定是真的。
在一个实施例中,集束搜索解码算法用于通过在一组假设(称为束)上最大化联合分布来找到最佳序列。联合分布由下式给出
集束搜索解码算法在第一个时间步长选择前K类,其中K是束大小,并在下一个时间步长为它们中的每一个单独地获得输出分布。在K×N假设中,其中N是输出词汇量大小,基于乘积p(y1)×p(y3|y1)选择前K类。重复上述过程,直到束中的所有K线发射<eos>令牌。解码器单元的最终输出是在束中具有p(y1,y2,…,yTd的最高值的线。束尺寸被定义为等于输出词汇量大小。
根据本公开的实施例,图像后处理模块(图2的102E)被配置为在步骤310处对字符组进行后处理。后处理的步骤310包括为每个相应的子图像组合字符组以产生手写文本输出文件,其中手写文本输出文件是扫描的手写文本输入图像的识别文本版本。
在一个实施例中,图像后处理模块(图2的102E)被配置为以通过基于RNN的编码器单元和解码器单元按照为每个子图像识别字符组的顺序来组合字符组,以生成手写文本输出文件。
根据本公开的实施例,特征提取模块(图2的102B)和序列学习模块(图2的102D)都用作所公开的系统100中的连接组件,用于使用神经网络进行端到端手写文本识别。
根据本公开,使用用于单个扫描的手写文本图像的手写文本识别来解释使用神经网络的端到端手写文本识别的系统和方法,以便于理解。然而,所公开的系统和方法可以识别多个扫描的手写文本图像的手写文本。
实验结果:
使用字符差错率(Character Error Rate,CER)和误字率(Word Error Rate,WER)作为在扫描的手写文本输入图像的所有文本行上确定为平均值的性能度量,在公共可用数据集(例如IAM手写数据库v3:0(英语)和Nvidia TeslaK40 GPU上的RIMES数据库(法语))上评估使用神经网络进行端到端手写文本识别的所公开的系统和方法。采用小批量梯度下降来加速训练,并优化批次损失,这是序列损失的直接扩展,计算如下:
其中M是批次大小,yit表示批次的第i个实例的第t个时间步长。对于实验,批次大小被设置为16。Adam算法用作学习率为0:001的优化器。对所公开的系统100进行训练,直到获得测试验证准确度并且在30回合(epoch)之后实现。
表3示出了层标准化(Layer Normalization,LN)、焦点损失技术和集束搜索解码算法对所公开的系统100的影响。LN将系统100的基本模型的性能提高了大约3%。使用焦点损失技术还将系统100的准确度提高了1-3%,但是通过用集束搜索解码算法替换贪婪解码来实现主要改进,该算法将系统100的精度提高了4-5%。
表3
表4示出了所公开系统100和方法300与现有系统和方法在字符差错率(CER)和误字率(WER)方面准确性的比较。表5示出了在所公开系统和方法与现有CNN-1DRNN-CTC模型在最大GPU存储器消耗和可训练参数的数量方面的效率的比较。
表4
方法 | 存储(GB) | #参数的(Mi) |
CNN-1DRNN-CTC | 10.5 | 9.3 |
所公开系统和方法 | 7.9 | 4.6 |
表5
与现有系统和方法相比,所公开的系统和方法的字级精度得到改善,但是相比之下字符级精度略低。
根据本公开,使用神经网络进行端到端手写文本识别的系统和方法将输入(子图像)作为缩放或下采样版本,保持固定高度,其范围为128像素至32像素,在调整宽度的同时保持相应子图像的宽高比,从而实现手写文本识别计算次数减少以及存储需求减少。通过实验结果,通过下采样到每个子图像的原始尺寸的近十六分之一,实现计算减少61%,存储器消耗减少17%,而不影响整体精度。
根据本公开的实施例,使用神经网络的端到端手写文本识别的所公开系统和方法通过使用具有注意机制的基于RNN的编码器单元和解码器单元的手写文本识别实现了比现有CNN-1DRNN-CTC模型在准确性方面显著的改进。利用实验结果,使用神经网络的端到端手写文本识别的所公开系统和方法在可用数据集的准确度方面分别超过IAM和RIMES 3:5%和1:1%。
根据本公开,使用神经网络的端到端手写文本识别的系统和方法提供了用于使用扫描的手写文本输入图像执行有效的离线手写文本识别的完整端到端解决方案。
应当理解,保护范围扩展到这样的程序,并且除了其中具有消息的计算机可读装置之外;当程序在服务器或移动设备或任何合适的可编程设备上运行时,这种计算机可读存储装置包含用于实现该方法的一个或多个步骤的程序代码装置。硬件设备可以是任何类型的可以编程的设备,包括例如任何类型的计算机,如服务器或个人计算机等、或其任何组合。该装置还可以包括可以是例如硬件装置的装置,如专用集成电路(ASIC)、现场可编程门阵列(FPGA),或硬件和软件装置的组合,例如,ASIC和FPGA、或至少一个微处理器和至少一个存储器,其具有位于其中的软件模块。因此,该装置可以包括硬件装置和软件装置。这里描述的方法实施例可以用硬件和软件实现。该设备还可以包括软件装置。或者,实施例可以在不同的硬件设备上实现,例如,使用多个CPU。
本文的实施例可包括硬件和软件元件。以软件实现的实施例包括但不限于固件、驻留软件、微代码等。由本文描述的各种模块执行的功能可以在其他模块或其他模块的组合中实现。出于描述目的,计算机可用或计算机可读介质可以是能够包括、存储、通信、传播或传输程序以供指令执行系统、装置或设备使用或与之结合使用的任何装置。
所阐述的步骤被阐述以解释所示的示例性实施例,并且应该预期正在进行的技术开发将改变执行特定功能的方式。出于说明而非限制的目的,本文提供了这些实施例。此外,为了便于描述,这里任意地定义了功能构建块的边界。可以定义替代边界,只要适当地执行指定的功能及其关系即可。基于本文包含的教导,相关领域的技术人员将清楚替代方案(包括本文描述的那些方案的等同方案、扩展、变化、偏差等)。这些替代方案落入所公开实施例的范围和精神内。此外,词语“包含”、“具有”、“含有”和“包括”以及其他类似形式在意义上是等同的并且是开放式的,在这些词中的任何一个之后的一个或多个条目不意味着是这个物品或这些物品的详尽清单,也不意味着仅限于列出的该条目或这些条目。还必须注意,如本文和所附权利要求中所使用的(当包括在说明书中时),单数形式“一”、“一个”和“该”包括复数指代,除非上下文另有明确说明。
此外,一个或多个计算机可读存储介质可以用于实现与本公开一致的实施例。计算机可读存储介质指的是可以存储处理器可读的信息或数据的任何类型的物理存储器。因此,计算机可读存储介质可以存储用于由一个或多个处理器执行的指令,包括用于使处理器执行与本文描述的实施例一致的步骤或阶段的指令。术语“计算机可读介质”应该被理解为包括有形项并且不包括载波和瞬态信号,即,是非暂时的。示例包括随机存取存储器(RAM)、只读存储器(ROM)、易失性存储器、非易失性存储器、硬盘驱动器、CD ROM、DVD、闪存驱动器、磁盘和任何其他已知的物理存储介质。
本文公开内容和示例旨在仅被视为示例性的,所公开的实施例的真实范围和精神由所附权利要求书指示。
Claims (9)
1.一种用于使用神经网络进行端到端手写文本识别的系统(100),所述系统包括:
一个或多个内部数据存储设备(102),可操作地耦接到一个或多个硬件处理器(104),用于存储被配置为由一个或多个硬件处理器执行的指令,所述指令被包括在以下之中:
图像预处理模块(102A),被配置为:
接收扫描的手写文本输入图像;
从扫描的手写文本输入图像获取一个或多个子图像,其中一个或多个子图像中的每一个包括扫描的手写文本输入图像中存在的一行手写文本;以及
将一个或多个子图像缩放成具有固定高度和可变宽度并保持其纵横比的一个或多个缩放子图像;
特征提取模块(102B),可操作地耦接到图像预处理模块(102A)并且被配置为通过应用卷积神经网络CNN将一个或多个缩放子图像中的每一个变换为一个或多个特征映射,其中一个或多个特征映射包含相应子图像的视觉特征;
映射到序列模块(102C),可操作地耦接到特征提取模块(102B)并且被配置为通过在深度方向分离包括在一个或多个特征映射中的列,并且连接相应子图像的一个或多个特征映射的各个列,将一个或多个特征映射转换为特征向量序列;其中,所述CNN包括连续地堆叠有带泄露线性整流函数ReLU激活的多个卷积层,其中通过执行以下操作来配置所述卷积层的ReLU激活:
批量归一化以防止内部协变量移位并在传播到下一个卷积层之前加速训练;以及
执行池化操作机制以执行至少一些卷积层的激活,以减少一个或多个子图像的维度;
序列学习模块(102D),可操作地耦接到映射到序列模块(102C)并且被配置为通过使用基于递归神经网络RNN的编码器单元和解码器单元,通过映射与每个特征向量序列相关联的视觉特征来生成一组或多组字符,其中一组或多组字符是为对应的子图像识别的机器可读文本,并且其中基于RNN的编码器单元和解码器单元的编码器单元被配置为针对每个特征向量序列生成上下文向量,并且基于RNN的编码器单元和解码器单元的解码器单元被配置为针对每个特征向量序列在上下文向量上应用条件概率分布,以生成用于对应子图像的一组字符,其中基于RNN的编码器单元和解码器单元由以下配置:
通过剩余连接,通过其中包含的循环单元促进梯度流向随后的循环层;通过沿深度方向连接使用丢弃机制来规范编码器单元,而不修改循环连接以捕获长期依赖性;
通过层标准化激活细胞神经元以防止由于小批量训练导致的协变量偏移;以及
通过注意机制将解码器单元的隐状态与编码器单元的隐状态对准;以及
图像后处理模块(102E),可操作地耦接到序列学习模块(102D)并且被配置为组合每个相应子图像的字符组以生成手写文本输出文件,其中手写文本输出文件是扫描的手写文本输入图像的识别出的文本版本。
2.如权利要求1所述的系统,其中所述图像预处理模块还被配置为:
采用小批量训练技术,以通过在左侧和右侧上用相应的背景像素填充包含在批次中的一个或多个子图像以匹配批次中最宽子图像的宽度,来保持尺寸的均匀性;以及
将随机失真引入一个或多个子图像以生成一个或多个子图像中的变化。
3.如权利要求1所述的系统,其中所述CNN包括连续地堆叠有带泄露线性整流函数ReLU激活的七个卷积层。
4.如权利要求1所述的系统,其中所述编码器单元是通过组合两个长短期记忆LSTM单元形成的双向网络,并且所述解码器单元是具有单个LSTM单元的单向网络。
5.如权利要求4所述的系统,其中所述编码器单元和所述解码器单元包括两个循环层,每个LSTM单元中具有256个隐藏单元。
6.一种用于使用神经网络进行端到端手写文本识别的处理器实现的方法(300),所述方法包括以下步骤:
通过图像预处理模块预处理接收到的扫描手写文本输入图像(302),其中所述预处理包括:
从所接收的扫描的手写文本输入图像中获得一个或多个子图像,其中每个子图像包括存在于扫描的手写文本输入图像中的一行手写文本(302a);以及
将一个或多个子图像缩放成具有固定高度和可变宽度并保持其纵横比的一个或多个缩放子图像(302b);
通过应用卷积神经网络CNN,通过特征提取模块将一个或多个缩放的子图像中的每一个变换为一个或多个特征映射,其中所述一个或多个特征映射包含对应子图像的视觉特征(304);
通过映射到序列模块通过在深度方向分离包括在一个或多个特征映射中的列,并且连接相应子图像的一个或多个特征映射的各个列,将一个或多个特征映射转换为特征向量序列(306);其中,所述CNN包括连续地堆叠有带泄露线性整流函数ReLU激活的多个卷积层,其中通过执行以下操作来配置所述卷积层的ReLU激活:
批量归一化以防止内部协变量移位并在传播到下一个卷积层之前加速训练;以及
执行池化操作机制以执行至少一些卷积层的激活,以减少一个或多个子图像的维度;
通过序列学习模块通过使用基于递归神经网络RNN的编码器单元和解码器单元,通过映射与每个特征向量序列相关联的视觉特征来生成一组或多组字符,其中一组或多组字符是为对应的子图像识别的机器可读文本,并且其中基于RNN的编码器单元和解码器单元的编码器单元被配置为针对每个特征向量序列生成上下文向量,并且基于RNN的编码器单元和解码器单元的解码器单元被配置为针对每个特征向量序列在上下文向量上应用条件概率分布,以生成用于对应子图像的一组字符(308),其中基于RNN的编码器单元和解码器单元由以下配置:
通过剩余连接,通过其中包含的循环单元促进梯度流向随后的循环层;通过沿深度方向连接使用丢弃机制来规范编码器单元,而不修改循环连接以捕获长期依赖性;
通过层标准化激活细胞神经元以防止由于小批量训练导致的协变量偏移;以及
通过注意机制将解码器单元的隐状态与编码器单元的隐状态对准;以及
通过图像后处理模块对字符组进行后处理,其中后处理包括组合每个相应子图像的字符组以生成手写文本输出文件,其中手写文本输出文件是扫描的手写文本输入图像的识别出的文本版本(310)。
7.如权利要求6所述的方法,其中预处理步骤还包括:
采用小批量训练技术,以通过在左侧和右侧上用相应的背景像素填充包含在批次中的一个或多个子图像以匹配批次中最宽子图像的宽度,来保持尺寸的均匀性;以及
将随机失真引入一个或多个子图像以生成一个或多个子图像中的变化。
8.如权利要求6所述的方法,其中,所述CNN包括连续地堆叠有带泄露线性整流函数ReLU激活的七个卷积层。
9.一种非暂时性计算机可读介质,具有计算机可读程序存储其中,其中所述计算机可读程序在计算设备上执行时使得所述计算设备:
通过图像预处理模块预处理接收到的扫描手写文本输入图像,其中所述预处理包括:
从所接收的扫描的手写文本输入图像中获得一个或多个子图像,其中每个子图像包括存在于扫描的手写文本输入图像中的一行手写文本;以及
将一个或多个子图像缩放成具有固定高度和可变宽度并保持其纵横比的一个或多个缩放子图像;
通过应用卷积神经网络CNN,通过特征提取模块将一个或多个缩放的子图像中的每一个变换为一个或多个特征映射,其中所述一个或多个特征映射包含对应子图像的视觉特征;
通过映射到序列模块通过在深度方向分离包括在一个或多个特征映射中的列,并且连接相应子图像的一个或多个特征映射的各个列,将一个或多个特征映射转换为特征向量序列;其中,所述CNN包括连续地堆叠有带泄露线性整流函数ReLU激活的多个卷积层,其中通过执行以下操作来配置所述卷积层的ReLU激活:
批量归一化以防止内部协变量移位并在传播到下一个卷积层之前加速训练;以及
执行池化操作机制以执行至少一些卷积层的激活,以减少一个或多个子图像的维度;
通过序列学习模块通过使用基于递归神经网络RNN的编码器单元和解码器单元,通过映射与每个特征向量序列相关联的视觉特征来生成一组或多组字符,其中一组或多组字符是为对应的子图像识别的机器可读文本,并且其中基于RNN的编码器单元和解码器单元的编码器单元被配置为针对每个特征向量序列生成上下文向量,并且基于RNN的编码器单元和解码器单元的解码器单元被配置为针对每个特征向量序列在上下文向量上应用条件概率分布,以生成用于对应子图像的一组字符,其中基于RNN的编码器单元和解码器单元由以下配置:
通过剩余连接,通过其中包含的循环单元促进梯度流向随后的循环层;通过沿深度方向连接使用丢弃机制来规范编码器单元,而不修改循环连接以捕获长期依赖性;
通过层标准化激活细胞神经元以防止由于小批量训练导致的协变量偏移;以及
通过注意机制将解码器单元的隐状态与编码器单元的隐状态对准;以及
通过图像后处理模块对字符组进行后处理,其中后处理包括组合每个相应子图像的字符组以生成手写文本输出文件,其中手写文本输出文件是扫描的手写文本输入图像的识别出的文本版本。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201821026934 | 2018-07-19 | ||
IN201821026934 | 2018-07-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110738090A CN110738090A (zh) | 2020-01-31 |
CN110738090B true CN110738090B (zh) | 2023-10-27 |
Family
ID=67145731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910654750.3A Active CN110738090B (zh) | 2018-07-19 | 2019-07-19 | 使用神经网络进行端到端手写文本识别的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10839246B2 (zh) |
EP (1) | EP3598339B1 (zh) |
JP (1) | JP7311341B2 (zh) |
CN (1) | CN110738090B (zh) |
AU (1) | AU2019206010B2 (zh) |
CA (1) | CA3050025C (zh) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10839543B2 (en) * | 2019-02-26 | 2020-11-17 | Baidu Usa Llc | Systems and methods for depth estimation using convolutional spatial propagation networks |
US11388416B2 (en) * | 2019-03-21 | 2022-07-12 | Qualcomm Incorporated | Video compression using deep generative models |
CN111753822B (zh) * | 2019-03-29 | 2024-05-24 | 北京市商汤科技开发有限公司 | 文本识别方法及装置、电子设备和存储介质 |
US10984279B2 (en) * | 2019-06-13 | 2021-04-20 | Wipro Limited | System and method for machine translation of text |
US11023783B2 (en) | 2019-09-11 | 2021-06-01 | International Business Machines Corporation | Network architecture search with global optimization |
US10943353B1 (en) * | 2019-09-11 | 2021-03-09 | International Business Machines Corporation | Handling untrainable conditions in a network architecture search |
JP7417192B2 (ja) * | 2020-02-13 | 2024-01-18 | 京セラドキュメントソリューションズ株式会社 | 画像処理システムおよび画像処理プログラム |
CN111291696B (zh) * | 2020-02-19 | 2024-03-22 | 南京大学 | 一种基于卷积神经网络的手写东巴文识别方法 |
CN111353313A (zh) * | 2020-02-25 | 2020-06-30 | 四川翼飞视科技有限公司 | 基于进化神经网络架构搜索的情感分析模型构建方法 |
CN111401374A (zh) * | 2020-03-06 | 2020-07-10 | 湖南快乐阳光互动娱乐传媒有限公司 | 基于多任务的模型训练方法、字符识别方法及装置 |
JP7293157B2 (ja) * | 2020-03-17 | 2023-06-19 | 株式会社東芝 | 画像処理装置 |
CN111553363B (zh) * | 2020-04-20 | 2023-08-04 | 北京易道博识科技有限公司 | 一种端到端的图章识别方法及系统 |
CN111639527A (zh) * | 2020-04-23 | 2020-09-08 | 平安国际智慧城市科技股份有限公司 | 英文手写文本识别方法、装置、电子设备及存储介质 |
CN111786738B (zh) * | 2020-07-01 | 2022-06-03 | 中国人民解放军陆军工程大学 | 基于长短期记忆的抗干扰学习的网络结构及学习方法 |
US11461988B2 (en) * | 2020-07-23 | 2022-10-04 | Suresh Babu Revoled Konti | Method of transferring data between unconnected computing devices |
CN112926372B (zh) * | 2020-08-22 | 2023-03-10 | 清华大学 | 基于序列变形的场景文字检测方法及系统 |
CN114120336B (zh) * | 2020-08-25 | 2023-08-08 | 本源量子计算科技(合肥)股份有限公司 | 手写数字识别方法、系统、设备及计算机可读存储介质 |
CN112052852B (zh) * | 2020-09-09 | 2023-12-29 | 国家气象信息中心 | 一种基于深度学习的手写气象档案资料的字符识别方法 |
CN112183544B (zh) * | 2020-09-29 | 2024-09-13 | 厦门大学 | 一种融合双通道的三层架构数学公式识别方法、系统和存储设备 |
CN112257847A (zh) * | 2020-10-16 | 2021-01-22 | 昆明理工大学 | 一种基于CNN和LSTM预测地磁Kp指数的方法 |
CN112508023A (zh) * | 2020-10-27 | 2021-03-16 | 重庆大学 | 基于深度学习的零件喷码字符端到端识别方法 |
KR102472971B1 (ko) * | 2020-11-19 | 2022-12-02 | 네이버 주식회사 | 인공지능 모델을 이용한 동영상 인코딩 최적화 방법, 시스템, 및 컴퓨터 프로그램 |
RU2768211C1 (ru) | 2020-11-23 | 2022-03-23 | Общество с ограниченной ответственностью "Аби Продакшн" | Оптическое распознавание символов посредством комбинации моделей нейронных сетей |
EP4260293A1 (en) * | 2020-12-11 | 2023-10-18 | Ancestry.com Operations Inc. | Handwriting recognition |
CN112883818A (zh) * | 2021-01-26 | 2021-06-01 | 上海西井信息科技有限公司 | 文本图像识别方法、系统、设备及存储介质 |
CN112686219B (zh) * | 2021-03-11 | 2021-06-18 | 北京世纪好未来教育科技有限公司 | 手写文本识别方法及计算机存储介质 |
CN113313127B (zh) * | 2021-05-18 | 2023-02-14 | 华南理工大学 | 文本图像识别方法、装置、计算机设备和存储介质 |
CN113255668B (zh) * | 2021-06-22 | 2021-10-08 | 北京世纪好未来教育科技有限公司 | 文本识别方法、装置、电子设备、存储介质 |
CN113269189B (zh) * | 2021-07-20 | 2021-10-08 | 北京世纪好未来教育科技有限公司 | 文本识别模型的构建方法、文本识别方法、装置及设备 |
CN113283427B (zh) * | 2021-07-20 | 2021-10-01 | 北京世纪好未来教育科技有限公司 | 文本识别方法、装置、设备及介质 |
CN113344145B (zh) * | 2021-08-02 | 2021-11-19 | 智道网联科技(北京)有限公司 | 字符识别方法、装置、电子设备和存储介质 |
CN113591764B (zh) * | 2021-08-09 | 2024-06-07 | 广州博冠信息科技有限公司 | 手势识别方法、装置、存储介质和电子设备 |
CN113591882A (zh) * | 2021-08-11 | 2021-11-02 | 卓尔智联(武汉)研究院有限公司 | 汽车配件识别方法、计算机装置及可读存储介质 |
CN113963339B (zh) * | 2021-09-02 | 2024-08-13 | 泰康保险集团股份有限公司 | 一种信息提取方法和装置 |
CN113807340B (zh) * | 2021-09-07 | 2024-03-15 | 南京信息工程大学 | 一种基于注意力机制的不规则自然场景文本识别方法 |
KR20240065281A (ko) * | 2021-10-05 | 2024-05-14 | 구글 엘엘씨 | 벡터-양자화된 이미지 모델링 |
EP4379587A1 (en) | 2021-11-29 | 2024-06-05 | Samsung Electronics Co., Ltd. | Electronic device and method for masking or unmasking writing information in electronic device |
CN113837186A (zh) * | 2021-11-29 | 2021-12-24 | 中央民族大学 | 一种基于卷积神经网络的东巴象形文字识别方法及装置 |
CN114283411B (zh) * | 2021-12-20 | 2022-11-15 | 北京百度网讯科技有限公司 | 文本识别方法、文本识别模型的训练方法及装置 |
CN114445808A (zh) * | 2022-01-21 | 2022-05-06 | 上海易康源医疗健康科技有限公司 | 基于Swin Transformer的手写文字识别方法及系统 |
CN114118075B (zh) * | 2022-01-28 | 2022-04-22 | 北京易真学思教育科技有限公司 | 文本识别方法、装置、电子设备和存储介质 |
CN114821601A (zh) * | 2022-04-14 | 2022-07-29 | 北京知云再起科技有限公司 | 一种基于深度学习的端到端英文手写体文本检测识别技术 |
CN114998673B (zh) * | 2022-05-11 | 2023-10-13 | 河海大学 | 一种基于本地自注意力机制的大坝缺陷时序图像描述方法 |
CN115577118B (zh) * | 2022-09-30 | 2023-05-30 | 南京信息工程大学 | 一种基于混合分组排序和动态实体记忆规划的文本生成方法 |
CN115797952B (zh) * | 2023-02-09 | 2023-05-05 | 山东山大鸥玛软件股份有限公司 | 基于深度学习的手写英文行识别方法及系统 |
CN116630979B (zh) * | 2023-04-10 | 2024-04-30 | 雄安创新研究院 | 一种ocr识别方法、系统、存储介质和边缘设备 |
CN118334682A (zh) * | 2024-04-17 | 2024-07-12 | 重庆邮电大学 | 一种基于图形结构引导感知的跨模态手写文本识别方法 |
CN118095210B (zh) * | 2024-04-28 | 2024-06-25 | 腾讯科技(深圳)有限公司 | 文本处理方法、装置、产品、设备和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107180247A (zh) * | 2017-05-19 | 2017-09-19 | 中国人民解放军国防科学技术大学 | 基于选择性注意力卷积神经网络的关系分类器及其方法 |
CN108509881A (zh) * | 2018-03-22 | 2018-09-07 | 五邑大学 | 一种无切分的脱机手写汉字文本识别方法 |
US10217028B1 (en) * | 2017-08-22 | 2019-02-26 | Northrop Grumman Systems Corporation | System and method for distributive training and weight distribution in a neural network |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190087677A1 (en) | 2016-03-24 | 2019-03-21 | Ramot At Tel-Aviv University Ltd. | Method and system for converting an image to text |
US10354168B2 (en) | 2016-04-11 | 2019-07-16 | A2Ia S.A.S. | Systems and methods for recognizing characters in digitized documents |
US9881208B2 (en) | 2016-06-20 | 2018-01-30 | Machine Learning Works, LLC | Neural network based recognition of mathematical expressions |
US10846523B2 (en) | 2016-11-14 | 2020-11-24 | Kodak Alaris Inc. | System and method of character recognition using fully convolutional neural networks with attention |
US10733380B2 (en) * | 2017-05-15 | 2020-08-04 | Thomson Reuters Enterprise Center Gmbh | Neural paraphrase generator |
WO2019058372A1 (en) * | 2017-09-19 | 2019-03-28 | Ramot At Tel-Aviv University Ltd. | METHOD AND SYSTEM FOR RECOGNIZING IMAGE CONTENT |
US10262235B1 (en) * | 2018-02-26 | 2019-04-16 | Capital One Services, Llc | Dual stage neural network pipeline systems and methods |
-
2019
- 2019-07-03 EP EP19184180.8A patent/EP3598339B1/en active Active
- 2019-07-10 US US16/507,385 patent/US10839246B2/en active Active
- 2019-07-16 AU AU2019206010A patent/AU2019206010B2/en active Active
- 2019-07-17 CA CA3050025A patent/CA3050025C/en active Active
- 2019-07-18 JP JP2019132445A patent/JP7311341B2/ja active Active
- 2019-07-19 CN CN201910654750.3A patent/CN110738090B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107180247A (zh) * | 2017-05-19 | 2017-09-19 | 中国人民解放军国防科学技术大学 | 基于选择性注意力卷积神经网络的关系分类器及其方法 |
US10217028B1 (en) * | 2017-08-22 | 2019-02-26 | Northrop Grumman Systems Corporation | System and method for distributive training and weight distribution in a neural network |
CN108509881A (zh) * | 2018-03-22 | 2018-09-07 | 五邑大学 | 一种无切分的脱机手写汉字文本识别方法 |
Non-Patent Citations (8)
Title |
---|
24th internal conference,Iconip 2017guangzhou,china,november14-18,2017 proceeding,Part Ⅲ》.2017,3.1、 3.2部分,方程式(1)、(2). * |
ASTER: An Attentional Scene Text Recognizer with Flexible Rectification;Baoguang Shi;《IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE》;全文 * |
Baoguang Shi et.al.An End-to-End Trainable Neural Network for Image-Based Sequence Recognition and Its Application to Scene Text Recognition.《IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE 》.2016,第39卷(第1期),2.2 2.2 2.3.3节部分,附图1,2;表1. * |
Fenfen Sheng et.al."End-to-end chinese image text recoginiton with attention.《Neural information Processiong * |
Joan Puigcerver et.al.Are Multidimensional Recurrent Layers ReallyNecessary for Handwritten Text Recognition .《2017 14th IAPR International Conference on Document Analysis and Recognition》.2017,第1卷Abstract部分,3.1、 3.2节部分. * |
Residual LSTM: Design of a Deep Recurrent Architecture for Distant Speech Recognition;Jaeyoung Kim;《INTERSPEECH》;1591-1595 * |
The History Began from AlexNet: A Comprehensive Survey on Deep Learning Approaches.《ARXIV ORG,CORNELL UNIVERSITY LIBRARY 201 ON LIBRARY》.2018,全文. * |
WORDFENCE: TEXT DETECTION IN NATURAL IMAGES WITH BORDER AWARENESS;Andrei Polzounov;《2017 IEEE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING(icip) ,IEE》;1222-1226 * |
Also Published As
Publication number | Publication date |
---|---|
CN110738090A (zh) | 2020-01-31 |
JP2020017274A (ja) | 2020-01-30 |
CA3050025A1 (en) | 2020-01-19 |
US20200026951A1 (en) | 2020-01-23 |
US10839246B2 (en) | 2020-11-17 |
CA3050025C (en) | 2021-11-02 |
AU2019206010A1 (en) | 2020-02-06 |
AU2019206010B2 (en) | 2023-11-02 |
JP7311341B2 (ja) | 2023-07-19 |
EP3598339B1 (en) | 2024-09-04 |
EP3598339A1 (en) | 2020-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110738090B (zh) | 使用神经网络进行端到端手写文本识别的系统和方法 | |
Chowdhury et al. | An efficient end-to-end neural model for handwritten text recognition | |
Li et al. | Highly efficient forward and backward propagation of convolutional neural networks for pixelwise classification | |
Kalchbrenner et al. | Grid long short-term memory | |
CN111783705A (zh) | 一种基于注意力机制的文字识别方法及系统 | |
CN112329760A (zh) | 基于空间变换网络端到端印刷体蒙古文识别翻译的方法 | |
CN111738169A (zh) | 一种基于端对端网络模型的手写公式识别方法 | |
CN111639186B (zh) | 动态嵌入投影门控的多类别多标签文本分类模型及装置 | |
CN112163596B (zh) | 复杂场景文本识别方法、系统、计算机设备及存储介质 | |
CN112733768A (zh) | 基于双向特征语言模型的自然场景文本识别方法及装置 | |
Feng et al. | Focal CTC loss for Chinese optical character recognition on unbalanced datasets | |
US20220164533A1 (en) | Optical character recognition using a combination of neural network models | |
CN111985525A (zh) | 基于多模态信息融合处理的文本识别方法 | |
Ko et al. | Convolutional neural networks for character-level classification | |
Inunganbi et al. | Handwritten Meitei Mayek recognition using three‐channel convolution neural network of gradients and gray | |
Zia et al. | Recognition of printed Urdu script in Nastaleeq font by using CNN-BiGRU-GRU based encoder-decoder framework | |
Cui et al. | An end-to-end network for irregular printed Mongolian recognition | |
Retsinas et al. | Deformation-invariant networks for handwritten text recognition | |
Zheng et al. | Transformer-based hierarchical dynamic decoders for salient object detection | |
CN115797952B (zh) | 基于深度学习的手写英文行识别方法及系统 | |
CN116168394A (zh) | 图像文本识别方法和装置 | |
CN116798044A (zh) | 文本识别方法、装置,以及电子设备 | |
CN115063831A (zh) | 一种高性能行人检索与重识别方法及装置 | |
Valy et al. | Text Recognition on Khmer Historical Documents using Glyph Class Map Generation with Encoder-Decoder Model. | |
CN114529908A (zh) | 一种离线手写化学反应式图像识别技术 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |