CN113221870A - 一种用于移动终端的ocr识别方法、装置、存储介质及设备 - Google Patents
一种用于移动终端的ocr识别方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN113221870A CN113221870A CN202110592738.1A CN202110592738A CN113221870A CN 113221870 A CN113221870 A CN 113221870A CN 202110592738 A CN202110592738 A CN 202110592738A CN 113221870 A CN113221870 A CN 113221870A
- Authority
- CN
- China
- Prior art keywords
- channel number
- characters
- vector sequence
- identified
- vectors
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000012015 optical character recognition Methods 0.000 title description 106
- 239000013598 vector Substances 0.000 claims abstract description 462
- 238000012545 processing Methods 0.000 claims abstract description 53
- 230000009467 reduction Effects 0.000 claims abstract description 35
- 238000012795 verification Methods 0.000 claims description 47
- 238000013518 transcription Methods 0.000 claims description 23
- 230000035897 transcription Effects 0.000 claims description 23
- 102100032202 Cornulin Human genes 0.000 claims description 15
- 101000920981 Homo sapiens Cornulin Proteins 0.000 claims description 15
- 238000012549 training Methods 0.000 claims description 13
- 238000013527 convolutional neural network Methods 0.000 claims description 11
- 230000002457 bidirectional effect Effects 0.000 claims description 8
- 238000011946 reduction process Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 abstract description 28
- 238000004364 calculation method Methods 0.000 description 23
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 125000004122 cyclic group Chemical group 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000002372 labelling Methods 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
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
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/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- 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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Character Discrimination (AREA)
Abstract
本申请公开了一种用于移动终端的OCR识别方法、装置、存储介质及设备,该方法包括:移动终端首先获取待识别的目标图像,然后利用预先构建的OCR识别模型,对目标图像进行识别,得到初始文本向量序列,接着,对初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列,进而可以对处理后的初始文本向量序列进行识别,得到目标图像中文字的识别结果。可见,由于本申请中移动终端在确定出目标图像的初始文本向量序列后,不是直接对其进行分类识别,而是先根据文字的常用程度对其进行分级和降维处理,然后再进行分类识别,从而能够减少识别过程的计算量,提高识别速度,进而满足用户的需求。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种用于移动终端的OCR识别方法、装置、存储介质及设备。
背景技术
随着人工智能(Artificial Intelligence,简称AI)技术的不断突破和各种智能终端设备的日益普及。多种多样的智能应用在移动终端中频繁出现。目前,人们对于移动终端设备(如手机、平板电脑等)的使用要求越来越高。并且随着移动终端中安装的应用越来越多,端上对于光学字符识别(Optical Character Recognition,简称OCR)识别技术的需求也逐渐强烈。
目前在进行OCR识别时,通常采用的识别方案是基于大量标注数据,利用深度学习神经网络模型,学习图像到对应文本的映射关系,用以识别出其他图像中的文本。但当通过移动终端进行OCR识别时,由于终端设备的体积等因素限制,导致了终端设备的计算能力和处理速度相对服务端大型计算设备来说都要弱一些,又由于中文的字符较多(如常用汉字约有1000个,一般常用汉字约有2000个,不常用汉字约有7000个),进而导致在终端设备上进行OCR识别以得到图像对应的中文文本时,不仅无法复用服务端模型,并且进行OCR识别的计算速率也较低,实时性较差,从而无法满足大部分用户的要求。
发明内容
本申请实施例的主要目的在于提供一种用于移动终端的OCR识别方法、装置、存储介质及设备,能够有效减少在终端设备上进行OCR识别的计算量,提高识别速度,进而满足用户的需求。
本申请实施例提供了一种用于移动终端的OCR识别方法,包括:
获取待识别的目标图像;
利用预先构建的OCR识别模型,对所述目标图像进行识别,得到初始文本向量序列;
对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列;其中,所述对所述初始文本向量序列进行分级包括根据文字的常用程度对所述初始文本向量序列进行分级,得到分级结果;所述降维处理包括根据所述分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度;
对所述处理后的初始文本向量序列进行识别,得到所述目标图像中文字的识别结果。
一种可能的实现方式中,所述文字的常用程度的分类包括常用文字、一般常用文字和非常用文字;所述降维处理包括降低所述一般常用文字和所述非常用文字对应的初始文本向量序列的维度。
一种可能的实现方式中,所述预先构建的OCR识别模型为CRNN网络模型;所述CRNN网络模型包括卷积层、循环网络层、转录层、全连接层和输出层;所述利用预先构建的OCR识别模型,对所述目标图像进行识别,得到初始文本向量序列,包括:
在将所述目标图像输入所述CRNN网络模型后,利用所述卷积层提取所述目标图像的卷积特征;所述卷积层包括卷积神经网络CNN;
将所述卷积特征输入所述循环网络层后,利用所述循环网络层提取所述目标图像的文字序列特征;所述循环网络层包括深层双向长短期记忆网络LSTM;
将所述文字特征输入所述转录层后,利用所述转录层对所述文字序列特征进行分类识别,得到初始文本向量序列。
一种可能的实现方式中,将所述初始文本向量序列中的每一文字向量作为待识别向量;所述待识别向量的通道数为第一通道数;所述对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列,包括:
通过所述全连接层将所述第一通道数的待识别向量转换为第二通道数的待识别向量;所述第二通道数小于所述第一通道数;
通过所述全连接层将所述第一通道数的待识别向量转换为第三通道数的待识别向量;所述第三通道数小于所述第二通道数;
将所述第一通道数的待识别向量、所述第二通道数的待识别向量和所述第三通道数的待识别向量共同作为处理后的初始文本向量序列。
一种可能的实现方式中,所述第一通道数的待识别向量是用来确定常用文字的概率;所述第二通道数的待识别向量是用来确定一般常用文字的概率;所述第三通道数的待识别向量是用来确定非常用文字的概率。
一种可能的实现方式中,将所述初始文本向量序列中的每一文字向量作为待识别向量;所述待识别向量的通道数为第四通道数;所述对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列,包括:
通过所述全连接层对所述第四通道数的待识别向量进行分类,确定所述待识别向量对应的文字所属的汉字分类类型;所述汉字分类类型包括常用汉字类、一般常用汉字类和非常用汉字类;
当所述待识别向量对应的文字属于所述常用汉字类时,直接将由所述第四通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;
当所述待识别向量对应的文字属于所述一般常用汉字类时,通过所述全连接层将所述第四通道数的待识别向量转换为第五通道数的待识别向量,并将由所述第五通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;所述第五通道数小于所述第四通道数;
当所述待识别向量对应的文字属于所述非常用汉字类时,通过所述全连接层将所述第四通道数的待识别向量转换为第六通道数的待识别向量,并将由所述第六通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;所述第六通道数小于所述第五通道数。
一种可能的实现方式中,所述第四通道数的待识别向量是用来确定常用文字的概率;所述第五通道数的待识别向量是用来确定一般常用文字的概率;所述第六通道数的待识别向量是用来确定非常用文字的概率。
一种可能的实现方式中,所述对所述处理后的初始文本向量序列进行识别,得到所述目标图像中文字的识别结果,包括:
利用所述输出层对所述处理后的初始文本向量序列进行识别,确定所述第一通道数的待识别向量对应的文字为常用文字的概率;确定所述第二通道数的待识别向量对应的文字为一般常用文字的概率;以及确定所述第三通道数的待识别向量对应的文字为非常用文字的概率;或者,确定所述第四通道数的待识别向量对应的文字为常用文字的概率;确定所述第五通道数的待识别向量对应的文字为一般常用文字的概率;以及确定所述第六通道数的待识别向量对应的文字为非常用文字的概率;
根据各个所述概率,确定各个所述文字的识别结果。
一种可能的实现方式中,所述OCR识别模型的构建方式如下:
获取样本图像;
根据所述样本图像以及所述样本图像对应的文本识别标签对初始OCR识别模型进行训练,生成所述OCR识别模型。
一种可能的实现方式中,所述方法还包括:
获取验证图像;
将所述验证图像输入所述OCR识别模型,获得所述验证图像的文本识别结果;
当验证图像的文本识别结果与所述验证图像对应的文本标记结果不一致时,将所述验证图像重新作为所述样本图像,对所述OCR识别模型进行更新。
本申请实施例还提供了一种用于移动终端的OCR识别装置,所述装置包括:
第一获取单元,用于获取待识别的目标图像;
第一识别单元,用于利用预先构建的OCR识别模型,对所述目标图像进行识别,得到初始文本向量序列;
处理单元,用于对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列;其中,所述对所述初始文本向量序列进行分级包括根据文字的常用程度对所述初始文本向量序列进行分级,得到分级结果;所述降维处理包括根据所述分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度;
第二识别单元,用于对所述处理后的初始文本向量序列进行识别,得到所述目标图像中文字的识别结果。
一种可能的实现方式中,所述文字的常用程度的分类包括常用文字、一般常用文字和非常用文字;所述降维处理包括降低所述一般常用文字和所述非常用文字对应的初始文本向量序列的维度。
一种可能的实现方式中,所述预先构建的OCR识别模型为CRNN网络模型;所述CRNN网络模型包括卷积层、循环网络层、转录层、全连接层和输出层;所述第一识别单元包括:
第一提取子单元,用于在将所述目标图像输入所述CRNN网络模型后,利用所述卷积层提取所述目标图像的卷积特征;所述卷积层包括卷积神经网络CNN;
第二提取子单元,用于将所述卷积特征输入所述循环网络层后,利用所述循环网络层提取所述目标图像的文字序列特征;所述循环网络层包括深层双向长短期记忆网络LSTM;
第一获得子单元,用于将所述文字特征输入所述转录层后,利用所述转录层对所述文字序列特征进行分类识别,得到初始文本向量序列。
一种可能的实现方式中,将所述初始文本向量序列中的每一文字向量作为待识别向量;所述待识别向量的通道数为第一通道数;所述处理单元包括:
第一转换子单元,用于通过所述全连接层将所述第一通道数的待识别向量转换为第二通道数的待识别向量;所述第二通道数小于所述第一通道数;
第二转换子单元,用于通过所述全连接层将所述第一通道数的待识别向量转换为第三通道数的待识别向量;所述第三通道数小于所述第二通道数;
第二获得子单元,用于将所述第一通道数的待识别向量、所述第二通道数的待识别向量和所述第三通道数的待识别向量共同作为处理后的初始文本向量序列。
一种可能的实现方式中,所述第一通道数的待识别向量是用来确定常用文字的概率;所述第二通道数的待识别向量是用来确定一般常用文字的概率;所述第三通道数的待识别向量是用来确定非常用文字的概率。
一种可能的实现方式中,将所述初始文本向量序列中的每一文字向量作为待识别向量;所述待识别向量的通道数为第四通道数;所述处理单元包括:
分类子单元,用于通过所述全连接层对所述第四通道数的待识别向量进行分类,确定所述待识别向量对应的文字所属的汉字分类类型;所述汉字分类类型包括常用汉字类、一般常用汉字类和非常用汉字类;
第三获得子单元,用于当所述待识别向量对应的文字属于所述常用汉字类时,直接将由所述第四通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;
第四获得子单元,用于当所述待识别向量对应的文字属于所述一般常用汉字类时,通过所述全连接层将所述第四通道数的待识别向量转换为第五通道数的待识别向量,并将由所述第五通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;所述第五通道数小于所述第四通道数;
第五获得子单元,用于当所述待识别向量对应的文字属于所述非常用汉字类时,通过所述全连接层将所述第四通道数的待识别向量转换为第六通道数的待识别向量,并将由所述第六通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;所述第六通道数小于所述第五通道数。
一种可能的实现方式中,所述第四通道数的待识别向量是用来确定常用文字的概率;所述第五通道数的待识别向量是用来确定一般常用文字的概率;所述第六通道数的待识别向量是用来确定非常用文字的概率。
一种可能的实现方式中,所述第二识别单元包括:
识别子单元,用于利用所述输出层对所述处理后的初始文本向量序列进行识别,确定所述第一通道数的待识别向量对应的文字为常用文字的概率;确定所述第二通道数的待识别向量对应的文字为一般常用文字的概率;以及确定所述第三通道数的待识别向量对应的文字为非常用文字的概率;或者,确定所述第四通道数的待识别向量对应的文字为常用文字的概率;确定所述第五通道数的待识别向量对应的文字为一般常用文字的概率;以及确定所述第六通道数的待识别向量对应的文字为非常用文字的概率;
确定子单元,用于根据各个所述概率,确定各个所述文字的识别结果。
一种可能的实现方式中,所述装置还包括:
第二获取单元,用于获取样本图像;
训练单元,用于根据所述样本图像以及所述样本图像对应的文本识别标签对初始OCR识别模型进行训练,生成所述OCR识别模型。
一种可能的实现方式中,所述装置还包括:
第三获取单元,用于获取验证图像;
获得单元,用于将所述验证图像输入所述OCR识别模型,获得所述验证图像的文本识别结果;
更新单元,用于当验证图像的文本识别结果与所述验证图像对应的文本标记结果不一致时,将所述验证图像重新作为所述样本图像,对所述OCR识别模型进行更新。
本申请实施例还提供了一种用于移动终端的OCR识别设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述用于移动终端的OCR识别方法中的任意一种实现方式。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述用于移动终端的OCR识别方法中的任意一种实现方式。
本申请实施例提供的一种用于移动终端的OCR识别方法、装置、存储介质及设备,移动终端首先获取待识别的目标图像,然后利用预先构建的OCR识别模型,对目标图像进行识别,得到初始文本向量序列,接着,对初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列,其中,对初始文本向量序列进行分级包括根据文字的常用程度对初始文本向量序列进行分级,得到分级结果;降维处理包括根据分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度,进而可以对处理后的初始文本向量序列进行识别,得到目标图像中文字的识别结果。可见,由于本申请实施例中移动终端在通过预先构建的OCR识别模型确定出目标图像的初始文本向量序列后,不是直接对其进行分类识别,而是先根据文字的常用程度对其进行分级和降维处理,以降低后续进行分类识别的数据量,从而使得整个OCR识别过程的计算量大幅降低,这样,依靠终端设备自身的算力即可快速完成对目标图像的识别,并将识别结果更快的展示给用户,以提高用户体验。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种用于移动终端的OCR识别方法的流程示意图;
图2为本申请实施例提供的OCR识别模型的结构示意图;
图3为本申请实施例提供的目前对初始文本向量序列进行分类处理的结构示意图;
图4为本申请实施例提供的对初始文本向量序列进行分级和降维处理的结构示意图之一;
图5为本申请实施例提供的对初始文本向量序列进行分级和降维处理的结构示意图之二;
图6为本申请实施例提供的对初始文本向量序列进行分级和降维处理的结构示意图之三;
图7为本申请实施例提供的构建OCR识别模型的流程示意图;
图8为本申请实施例提供的验证OCR识别模型的流程示意图;
图9为本申请实施例提供的一种用于移动终端的OCR识别装置的组成示意图。
具体实施方式
随着各种智能终端设备的日益普及,在移动终端上安装的应用越来越多,端上对于OCR识别技术的需求也逐渐强烈。OCR识别技术对于图像文本的理解具有重大意义,有助于用户在移动终端设备上快速进行图像识别。
目前的OCR识别技术主要是基于大量标注数据,利用深度学习神经网络模型,学习图像到对应文本的映射关系,用以识别出其他图像中的文本,广泛应用于图像扫描等领域。但由于中文的字符较多(如常用汉字约有1000个,一般常用汉字约有2000个,不常用汉字约有7000个),而受限于体积等因素的限制,移动终端的计算能力和处理速度相对服务端大型计算设备来说都要弱一些,如果在移动终端直接复用服务端的OCR识别模型,端上的推理速度和模型大小将不能满足大部分需求,从而无法快速、实时的将OCR识别结果展示给用户。因此,如何提高移动终端上的OCR识别速率,以满足用户需求是目前亟待解决的技术问题。
为解决上述缺陷,本申请提供了一种用于移动终端的OCR识别方法,移动终端首先获取待识别的目标图像,然后利用预先构建的OCR识别模型,对目标图像进行识别,得到初始文本向量序列,接着,对初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列,其中,对初始文本向量序列进行分级包括根据文字的常用程度对初始文本向量序列进行分级,得到分级结果;降维处理包括根据分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度,进而可以对处理后的初始文本向量序列进行识别,得到目标图像中文字的识别结果。可见,由于本申请实施例中移动终端在通过预先构建的OCR识别模型确定出目标图像的初始文本向量序列后,不是直接对其进行分类识别,而是先根据文字的常用程度对其进行分级和降维处理,以降低后续进行分类识别的数据量,从而使得整个OCR识别过程的计算量大幅降低,这样,依靠终端设备自身的算力即可快速完成对目标图像的识别,并将识别结果更快的展示给用户,以提高用户体验。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
第一实施例
参见图1,为本实施例提供的一种用于移动终端的OCR识别方法的流程示意图,该方法包括以下步骤:
S101:获取待识别的目标图像。
在本实施例中,将采用本实施例在移动终端上进行OCR识别的任一图像节点定义为目标图像。并且,需要说明的是,本实施例不限制目标图像的类型,比如,目标图像可以是由红(R)、绿(G)、蓝(B)三原色组成的彩色图像、也可以是灰度图像等。
还需要说明的是,本实施例中目标图像的表现形式为(Height,Width,Channel),即(高度,宽度,通道),例如,目标图像的尺寸大小可以为(32,100,3)。
可以理解的是,在移动终端上,目标图像可以根据实际需要,通过截屏、拍摄等方式获得,例如,用户在移动终端的聊天类APP中将朋友发送的图像进行保存并作为目标图像,或者将利于端上相机拍摄到的包含文字的图像作为目标图像等,在获取到目标图像后,可以利用本实施例提供的方案在移动终端上实现对该目标图像的OCR识别。
S102:利用预先构建的OCR识别模型,对目标图像进行识别,得到初始文本向量序列。
在本实施例中,通过步骤S101获取到待识别的目标图像后,为了快速识别出目标图像对应的文本信息,可以利用预先构建的OCR识别模型,对目标图像进行识别,得到初始文本向量序列,用以通过后续步骤S103-S104,实现对目标图像的快速识别。
其中,一种可选的实现方式是,预先构建的OCR识别模型为CRNN网络模型,如图2所示,该识别模型包括卷积层(Convlutional Layers)、循环网络层(Recurrent Layers)、转录层(Transcription Layers)以及图2中未示出的全连接层(fully connected layer)和输出层。在此基础上,本步骤S102的具体实现过程可以包括下述步骤A1-A3:
步骤A1:在将目标图像输入CRNN网络模型后,利用卷积层提取目标图像的卷积特征。
在本实现方式中,通过步骤S101获取到待识别的目标图像后,为了快速识别出目标图像对应的文本信息,首先可以将其输入至OCR识别模型,比如,如图2所示,可以将尺寸大小为(32,100,3)的目标图像输入如图2所示的CRNN网络模型的卷积层,其中,卷积层的具体结构可根据实际情况设定,比如可以将卷积层设定为一个普通的卷积神经网络(Convolutional Neural Networks,简称CNN),利用卷积层可以提取目标图像的卷积特征(Convolutional feature maps),即,可以将尺寸大小为(32,100,3)的目标图像转换为(1,25,512)大小的卷积特征矩阵,如图2所示,用以执行后续步骤A2。
步骤A2:将卷积特征输入循环网络层后,利用循环网络层提取目标图像的文字序列特征。
在本实现方式中,通过步骤A1提取出目标图像的卷积特征后,进一步可以将其输入至OCR识别模型的循环网络层,以利用循环网络层在卷积特征的基础上继续提取目标图像的文字序列特征。其中,循环网络层的具体结构可根据实际情况设定,比如可以将循环网络层设定为深层双向长短期记忆网络(Long Short-Term Memory,简称LSTM)。
举例说明:基于上述举例,如图2所示,由于卷积层的CNN网络输出的卷积特征矩阵的尺寸大小是(1,25,512),则对于循环网络层的深层双向LSTM来说,最大时间长度为T=25,即,表明在循环网络层有25个时间输入且每个输入的列向量为512,如图2所示,也就是将尺寸大小为25×512的特征向量序列输入循环网络层的深层双向LSTM,并通过该深层双向LSTM提取出目标图像的文字序列特征,用以执行后续步骤A3。
步骤A3:将文字特征输入转录层后,利用转录层对文字序列特征进行分类识别,得到初始文本向量序列。
在本实现方式中,通过步骤A2提取出目标图像的文字序列特征后,进一步可以将其输入至OCR识别模型的转录层,以利用转录层对该文字序列特征进行分类识别,得到初始文本向量序列,且其中每一初始文字向量的尺寸大小为1×128×128,用以执行后续步骤S103。举例说明:基于上述举例,如图2所示,可以将循环网络层输出的目标图像的文字序列特征输入至转录层,以通过转录层对其进行分类识别,得到初始文本向量序列“-s-t-aatte”,用以执行后续步骤S103。
需要说明的是,对于OCR识别模型的具体构建过程,可参见后续第二实施例的相关介绍。
S103:对初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列;其中,对初始文本向量序列进行分级包括根据文字的常用程度对初始文本向量序列进行分级,得到分级结果;降维处理包括根据分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度。
在本实施例中,通过步骤S102得到初始文本向量序列后,为了降低后续分类识别过程的计算量,可以先根据文字的常用程度,对初始文本向量序列进行分级,得到不同常用程度的文字分别对应的初始文本向量序列,作为分级结果,然后再根据分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度,得到处理后的初始文本向量序列,用以执行后续步骤S104,实现对目标图像的快速识别。
其中,文字的常用程度的分类包括常用文字、一般常用文字和非常用文字;降维处理包括降低一般常用文字和非常用文字对应的初始文本向量序列的维度。
具体来讲,在本申请实施例的一种可能的实现方式中,可以将初始文本向量序列中的每一文字向量作为待识别向量,并将待识别向量的通道数定义为第一通道数。则在此基础上,本步骤S103中“对初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列”的具体实现过程可以包括下述步骤B1-B3:
步骤B1:通过全连接层将第一通道数的待识别向量转换为第二通道数的待识别向量。
需要说明的是,对于初始文本向量序列中的每一待识别向量,现有识别方案采用的方式是直接对每一待识别向量进行分类识别,并在进行softmax处理后,将归一化分类识别结果直接进行输出。
举例说明:如图3所示,假设目标图像为包含文字“我的资料”的图像,在将其依次经过卷积层、循环网络层、转录层处理后,可得到尺寸大小为batch×1×128×128的初始文本向量序列,其中,batch表示序列的批号,且序列中的每一待识别向量对应的通道数(Channel)为128,高度(Height)为1,宽度(Width)为128,再将该128通道的待识别向量通过全连接层(即图3中的fc)处理后,可以得到处理后128通道的待识别向量为图3中的“batch×1×10000×128”,该向量表示待识别向量对应的文字分别作为10000个汉字中(包括1000个常用汉字、2000个一般常用汉字、7000个不常用汉字)每个中文字符的概率,用以通过后续步骤S104进行识别,以得到最终的识别结果。
但在现有的处理过程中,需要对128通道中每一通道向量通道都转换为10000个中文字符,计算量将达到128×batch×1×10000×128,即1280000×batch×1×128,这对于移动终端来说,后续进行分类识别的计算量较大,计算速率较慢。
因此,在本实现方式中,为了降低后续进行分类识别过程的计算量,对于初始文本向量序列中的每一待识别向量,首先需要通过全连接层将第一通道数的待识别向量转换为第二通道数的待识别向量,用以执行后续步骤B3。其中,第二通道数小于第一通道数,且第一通道数的待识别向量是用来确定常用文字的概率,第二通道数的待识别向量是用来确定一般常用文字的概率。
步骤B2:通过全连接层将第一通道数的待识别向量转换为第三通道数的待识别向量。
在本实现方式中,为了降低后续进行分类识别过程的计算量,对于初始文本向量序列中的每一待识别向量,不仅需要通过全连接层将第一通道数的待识别向量转换为第二通道数的待识别向量,还需要通过全连接层将第一通道数的待识别向量转换为第三通道数的待识别向量,用以执行后续步骤B3。其中,第三通道数小于第三通道数,且第三通道数的待识别向量是用来确定非常用文字的概率。
步骤B3:将第一通道数的待识别向量、第二通道数的待识别向量和第三通道数的待识别向量共同作为处理后的初始文本向量序列。
在本实现方式中,通过步骤B1和B2分别得到第二通道数的待识别向量和第三通道数的待识别向量后,进一步可以将第一通道数的待识别向量、第二通道数的待识别向量和第三通道数的待识别向量共同作为处理后的初始文本向量序列,这样,在通过执行后续步骤S104,对其进行分类识别时,可以大幅度降低处理的数据量。
其中,一种可选的实现方式是,第一通道数为128,第二通道数为64,第三通道数为32。
举例说明:基于上述举例,如图4所示,假设目标图像仍为包含文字“我的资料”的图像,在将其依次经过卷积层、循环网络层、转录层处理后,可得到尺寸大小为batch×1×128×128的初始文本向量序列后,可根据文字的常用程度的分类(即常用文字、一般常用文字和非常用文字的分类),分三层进行并行处理,这三层的处理方式分别如下:
第一层的处理方式是将该128通道的待识别向量通过全连接层(即图4中对应位置的fc)处理后,可以得到处理后的128通道的待识别向量为图4中的“batch×1×1000×128”,该向量表示待识别向量对应的文字分别作为1000个常用汉字中每个汉字的概率。
第二层的处理方式是先将该128通道的待识别向量通过全连接层转换(即图4中对应位置的降维)为64通道的待识别向量,然后再将该64通道的待识别向量通过全连接层(即图4中对应位置的fc)处理后,得到处理后的64通道的待识别向量为图4中的“batch×1×2000×128”,该向量表示待识别向量对应的文字分别作为2000个一般常用汉字中每个汉字的概率。
第三层的处理方式是先将该128通道的待识别向量通过全连接层转换(即图4中对应位置的降维)为32通道的待识别向量,然后再将该32通道的待识别向量通过全连接层(即图4中对应位置的fc)处理后,得到处理后的32通道的待识别向量为图4中的“batch×1×7000×128”,该向量表示待识别向量对应的文字分别作为7000个不常用汉字中每个汉字的概率。
进一步的,可以将处理后的128通道的待识别向量batch×1×1000×128、64通道的待识别向量batch×1×2000×128、32通道的待识别向量batch×1×7000×128共同作为处理后的初始文本向量序列,用以执行后续步骤S104。其中,用于后续进行分类识别的总计算量为480000×batch×1×128,即128×batch×1×1000×128+64×batch×1×2000×128+32×batch×1×7000×128=480000×batch×1×128,可见,相比于图3所示的现有识别方案的计算量128×batch×1×10000×128来说,计算量大幅度降低,从而能够提高后续进行分类识别的计算速率。
或者,在本申请实施例的另一种可能的实现方式中,还可以将初始文本向量序列中的每一文字向量作为待识别向量,并将待识别向量的通道数定义为第四通道数。则在此基础上,本步骤S103中“对初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列”的具体实现过程可以包括下述步骤C1-C3:
步骤C1:通过全连接层对第四通道数的待识别向量进行分类,确定待识别向量对应的文字所属的汉字分类类型。
在本实现方式中,为了降低后续进行分类识别过程的计算量,首先根据文字的常用程度的分类,将汉字分类类型划分为常用汉字类、一般常用汉字类和非常用汉字类。然后,对于初始文本向量序列中的每一待识别向量,可以通过全连接层对第四通道数的待识别向量进行分类,确定待识别向量对应的文字所属的汉字分类类型(即常用汉字类、一般常用汉字类和非常用汉字类中的一种),进而可以根据确定出的汉字分类类型,分别对应执行后续步骤C2、步骤C2、步骤C3或步骤C4。
步骤C2:当待识别向量对应的文字属于常用汉字类时,直接将由第四通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列。
在本实现方式中,当通过步骤C1判断出待识别向量对应的文字属于常用汉字类时,无需对其进行降维,可直接将由第四通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列,用以执行后续步骤S104,对其进行分类识别时,大幅度降低处理的数据量。其中,第四通道数的待识别向量是用来确定常用文字的概率。
步骤C3:当待识别向量对应的文字属于一般常用汉字类时,通过全连接层将第四通道数的待识别向量转换为第五通道数的待识别向量,并将由第五通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列。
在本实现方式中,当通过步骤C1判断出待识别向量对应的文字属于一般常用汉字类时,为了降低后续进行分类识别过程的计算量,需要对其进行降维处理,即需要通过全连接层将第四通道数的待识别向量转换为第五通道数的待识别向量,并将由第五通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列,用以执行后续步骤S104,对其进行分类识别时,大幅度降低处理的数据量。其中,第五通道数小于第四通道数,且第五通道数的待识别向量是用来确定一般常用文字的概率。
步骤C4:当待识别向量对应的文字属于非常用汉字类时,通过全连接层将第四通道数的待识别向量转换为第六通道数的待识别向量,并将由第六通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列。
在本实现方式中,当通过步骤C1判断出待识别向量对应的文字属于非常用汉字类时,为了降低后续进行分类识别过程的计算量,需要对其进行降维处理,即需要通过全连接层将第四通道数的待识别向量转换为第六通道数的待识别向量,并将由第六通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列,用以执行后续步骤S104,对其进行分类识别时,大幅度降低处理的数据量。其中,第六通道数小于第五通道数,且第六通道数的待识别向量是用来确定非常用文字的概率。
其中,一种可选的实现方式是,第四通道数为128,第五通道数为64,第;六通道数为32。
举例说明:如图5所示,首先将汉字分类类型分为常用汉字类(指的是前1000类)、一般常用汉字类(指的是第1001类)和非常用汉字类(指的是第1002类),假设目标图像为包含文字“我的资料”的图像,在将其依次经过卷积层、循环网络层、转录层处理后,可得到尺寸大小为batch×1×128×128的初始文本向量序列后,首先需要通过全连接层对初始文本向量序列中的每一待识别向量进行分类,确定出待识别向量对应的文字所属的汉字分类类型,即确定出待识别向量对应的文字是属于1000类以内的常用汉字类、第1001类对应的一般常用汉字类、或者是第1002类对应的非常用汉字类。
进一步的,当确定出待识别向量对应的文字是属于1000类以内的常用汉字类时,无需对其进行降维,可直接通过后续步骤S104对该待识别向量进行分类识别,以确定出其对应的识别结果。例如,如图6所示,对于初始文本向量序列中的“我”对应的待识别向量,在通过全连接层(即图6中对应位置的fc)对其进行分类后,确定出其属于1000类以内的常用汉字类,则进一步可以利用输出层的softmax函数对其经过全连接层fc处理后的128通道的待识别向量batch×1×1000×128进行归一化处理,得到该待识别向量对应的文字分别作为1000个常用汉字中每个汉字的概率,进而可以根据该输出概率,确定出最大概率值对应的识别结果“我”。
或者,当确定出待识别向量对应的文字是属于第1001类对应的一般常用汉字类时,为了降低后续进行分类识别过程的计算量,需要对其进行降维处理,即,需要通过全连接层将128通道的待识别向量转换为64通道的待识别向量,然后再将该64通道的待识别向量通过全连接层(即图5中对应位置的fc)处理后,得到处理后的64通道的待识别向量为图5中的“batch×1×2000×128”,进而可以通过执行后续步骤S104对其进行分类识别,以确定出其对应的识别结果。例如,如图6所示,对于初始文本向量序列中的“料”对应的待识别向量,在通过全连接层(即图6中对应位置的fc)对其进行分类后,确定出其属于第1001类对应的一般常用汉字类,则进一步可以通过全连接层将128通道的待识别向量转换为64通道的待识别向量,然后再将该64通道的待识别向量通过全连接层(即图6中对应位置中的fc)处理后,得到处理后的64通道的待识别向量为图6中的“batch×1×2000×128”,接着,再利用输出层的softmax函数对该处理后的64通道的待识别向量“batch×1×2000×128”进行归一化处理,得到该待识别向量对应的文字分别作为2000个一般常用汉字中每个汉字的概率,进而可以根据该输出概率,确定出最大概率值对应的识别结果“料”。
再或者,当确定出待识别向量对应的文字是属于第1002类对应的非常用汉字类时,为了降低后续进行分类识别过程的计算量,需要对其进行降维处理,即,需要通过全连接层将128通道的待识别向量转换为32通道的待识别向量,然后再将该32通道的待识别向量通过全连接层(即图5中对应位置的fc)处理后,得到处理后的32通道的待识别向量为图5中的“batch×1×7000×128”,进而可以通过执行后续步骤S104对其进行分类识别,以确定出其对应的识别结果。
这样,由于常用汉字的信息量大,需要更多的通道进行编码,而一般常用汉字和非常用汉字的信息量少,仅需要少量的通道进行编码即可。所以,本实施例通过上述分级和降维的处理方式,根据文字的常用程度的分类,针对不同类型的汉字使用不同通道数进行识别处理,从而可以有效降低移动终端进行OCR识别的计算量,提高计算速率。
S104:对处理后的初始文本向量序列进行识别,得到目标图像中文字的识别结果。
在本实施例中,通过步骤S103对初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列后,进一步可以利用OCR识别模型的输出层对处理后的初始文本向量序列进行识别,以确定出待识别向量对应的文字为各个汉字的概率,并根据该概率,确定文字的识别结果。
具体的,一种可选的实现方式是,可以利用OCR识别模型的输出层对处理后的初始文本向量序列进行softmax处理,以得到初始文本向量序列中每一待识别向量对应的文字分别作为各个汉字的概率的归一化后的值,即,确定出第一通道数的待识别向量对应的文字为常用文字的概率、第二通道数的待识别向量对应的文字为一般常用文字的概率、以及所述第三通道数的待识别向量对应的文字为非常用文字的概率;或者,确定出第四通道数的待识别向量对应的文字为常用文字的概率、第五通道数的待识别向量对应的文字为一般常用文字的概率、以及第六通道数的待识别向量对应的文字为非常用文字的概率,进而可将其中每一最大概率值对应的汉字作为其所属通道数的待识别向量对应的文字的最终的识别结果。
综上,本实施例提供的一种用于移动终端的OCR识别方法,移动终端首先获取待识别的目标图像,然后利用预先构建的OCR识别模型,对目标图像进行识别,得到初始文本向量序列,接着,对初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列,其中,对初始文本向量序列进行分级包括根据文字的常用程度对初始文本向量序列进行分级,得到分级结果;降维处理包括根据分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度,进而可以对处理后的初始文本向量序列进行识别,得到目标图像中文字的识别结果。可见,由于本申请实施例中移动终端在通过预先构建的OCR识别模型确定出目标图像的初始文本向量序列后,不是直接对其进行分类识别,而是先根据文字的常用程度对其进行分级和降维处理,以降低后续进行分类识别的数据量,从而使得整个OCR识别过程的计算量大幅降低,这样,依靠终端设备自身的算力即可快速完成对目标图像的识别,并将识别结果更快的展示给用户,以提高用户体验。
第二实施例
本实施例将对上述实施例中提及的OCR识别模型的构建过程进行介绍。
参见图7,其示出了本实施例提供的构建OCR识别模型的流程示意图,该流程包括以下步骤:
S701:获取样本图像。
在本实施例中,为了构建OCR识别模型,需要预先进行大量的准备工作,首先,需要收集大量包含常用汉字、一般常用汉字、非常用汉字的图像,比如,可以通过手机相机拍摄课本或杂志中的文章段落的图像,这些图像数据需要覆盖以上三类不同类型的文字场景,进而可以将收集到的各幅图像数据分别作为样本图像,同时,预先通过人工标注出这些样本图像对应的文本信息,用以训练OCR识别模型。
S702:根据样本图像以及样本图像对应的文本识别标签对初始OCR识别模型进行训练,生成OCR识别模型。
在本实施例中,通过步骤S701获取到样本图像后,在进行本轮训练时,可以将第一实施例中目标图像替换为本轮获取的样本图像,通过当前的初始OCR识别模型,按照第一实施例中的执行过程,便可以输出该样本图像对应的识别结果。
具体地,按照上述第一实施例中的步骤S101-S103,便可通过初始OCR识别模型确定出样本图像对应的识别结果。然后,可以将该识别结果与样本图像对应的人工标注的文本信息进行比较,并根据二者的差异对模型参数进行更新,直至满足预设的条件,比如达到预设训练次数,则停止模型参数的更新,完成OCR识别模型的训练,生成一个训练好的OCR识别模型。
需要说明的是,为了提高模型的识别准确率,还可以利用给定的目标函数,来构建OCR识别模型。比如,可以利用避开输入与输出手动对齐的一种方式CTC(ConnectionistTemporal Classification)作为目标函数,通过引入blank字符,来解决图像中某些位置内存在字符的问题,用以训练OCR识别模型,具体训练过程与现有方式一致,在此不再赘述。并且,还需要说明的是,本实施例对于目标函数的选取不进行限制,比如,可以选用CTC loss作为目标函数,以解决训练时字符无法对齐的问题,也可以根据实际情况或经验选择其他形式的函数作为目标函数进行训练。
通过上述实施例,可以根据样本图像训练生成OCR识别模型,进一步的,还可以利用验证图像对生成的OCR识别模型进行验证。具体验证过程可以包括下述步骤S801-S803:
S801:获取验证图像。
在本实施例中,为了实现对OCR识别模型进行验证,首先需要获取验证图像,其中,验证图像指的是可以用来进行OCR识别模型验证的图像信息,在获取到这些验证图像后,可继续执行后续步骤S802。
S802:将验证图像输入OCR识别模型,获得验证图像的文本识别结果。
通过步骤S801获取到验证图像后,进一步的,可以将验证图像输入OCR识别模型,以获得验证图像的文本识别结果,用以执行后续步骤S803。
S803:当验证图像的文本识别结果与验证图像对应的文本标记结果不一致时,将验证图像重新作为样本图像,对OCR识别模型进行更新。
通过步骤S802获得验证图像的文本识别结果后,若验证图像的文本识别结果与验证图像对应的人工标注的文本标记结果不一致,则可以将验证图像重新作为样本图像,对OCR识别模型进行参数更新。
通过上述实施例,可以利用验证图像对OCR识别模型进行有效验证,当验证图像的文本识别结果与验证图像对应的人工标注的文本标记结果不一致时,可以及时调整更新OCR识别模型,进而有助于提高识别模型的识别精度和准确性。
综上,利用本实施例训练而成的OCR识别模型,可以通过分级和降维的处理方式,针对不同类型的汉字使用不同通道数进行分类识别处理,从而可以有效降低移动终端进行OCR识别的计算量,提高计算速率。
第三实施例
本实施例将对一种用于移动终端的OCR识别装置进行介绍,相关内容请参见上述方法实施例。
参见图9,为本实施例提供的一种用于移动终端的OCR识别装置的组成示意图,该装置900包括:
第一获取单元901,用于获取待识别的目标图像;
第一识别单元902,用于利用预先构建的OCR识别模型,对所述目标图像进行识别,得到初始文本向量序列;
处理单元903,用于对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列;其中,所述对所述初始文本向量序列进行分级包括根据文字的常用程度对所述初始文本向量序列进行分级,得到分级结果;所述降维处理包括根据所述分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度;
第二识别单元904,用于对所述处理后的初始文本向量序列进行识别,得到所述目标图像中文字的识别结果。
在本实施例的一种实现方式中,所述文字的常用程度的分类包括常用文字、一般常用文字和非常用文字;所述降维处理包括降低所述一般常用文字和所述非常用文字对应的初始文本向量序列的维度。
在本实施例的一种实现方式中,所述预先构建的OCR识别模型为CRNN网络模型;所述CRNN网络模型包括卷积层、循环网络层、转录层、全连接层和输出层;所述第一识别单元902包括:
第一提取子单元,用于在将所述目标图像输入所述CRNN网络模型后,利用所述卷积层提取所述目标图像的卷积特征;所述卷积层包括卷积神经网络CNN;
第二提取子单元,用于将所述卷积特征输入所述循环网络层后,利用所述循环网络层提取所述目标图像的文字序列特征;所述循环网络层包括深层双向长短期记忆网络LSTM;
第一获得子单元,用于将所述文字特征输入所述转录层后,利用所述转录层对所述文字序列特征进行分类识别,得到初始文本向量序列。
在本实施例的一种实现方式中,将所述初始文本向量序列中的每一文字向量作为待识别向量;所述待识别向量的通道数为第一通道数;所述处理单元903包括:
第一转换子单元,用于通过所述全连接层将所述第一通道数的待识别向量转换为第二通道数的待识别向量;所述第二通道数小于所述第一通道数;
第二转换子单元,用于通过所述全连接层将所述第一通道数的待识别向量转换为第三通道数的待识别向量;所述第三通道数小于所述第二通道数;
第二获得子单元,用于将所述第一通道数的待识别向量、所述第二通道数的待识别向量和所述第三通道数的待识别向量共同作为处理后的初始文本向量序列。
在本实施例的一种实现方式中,所述第一通道数的待识别向量是用来确定常用文字的概率;所述第二通道数的待识别向量是用来确定一般常用文字的概率;所述第三通道数的待识别向量是用来确定非常用文字的概率。
在本实施例的一种实现方式中,将所述初始文本向量序列中的每一文字向量作为待识别向量;所述待识别向量的通道数为第四通道数;所述处理单元903包括:
分类子单元,用于通过所述全连接层对所述第四通道数的待识别向量进行分类,确定所述待识别向量对应的文字所属的汉字分类类型;所述汉字分类类型包括常用汉字类、一般常用汉字类和非常用汉字类;
第三获得子单元,用于当所述待识别向量对应的文字属于所述常用汉字类时,直接将由所述第四通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;
第四获得子单元,用于当所述待识别向量对应的文字属于所述一般常用汉字类时,通过所述全连接层将所述第四通道数的待识别向量转换为第五通道数的待识别向量,并将由所述第五通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;所述第五通道数小于所述第四通道数;
第五获得子单元,用于当所述待识别向量对应的文字属于所述非常用汉字类时,通过所述全连接层将所述第四通道数的待识别向量转换为第六通道数的待识别向量,并将由所述第六通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;所述第六通道数小于所述第五通道数。
在本实施例的一种实现方式中,所述第四通道数的待识别向量是用来确定常用文字的概率;所述第五通道数的待识别向量是用来确定一般常用文字的概率;所述第六通道数的待识别向量是用来确定非常用文字的概率。
在本实施例的一种实现方式中,所述第二识别单元904包括:
识别子单元,用于利用所述输出层对所述处理后的初始文本向量序列进行识别,确定所述第一通道数的待识别向量对应的文字为常用文字的概率;确定所述第二通道数的待识别向量对应的文字为一般常用文字的概率;以及确定所述第三通道数的待识别向量对应的文字为非常用文字的概率;或者,确定所述第四通道数的待识别向量对应的文字为常用文字的概率;确定所述第五通道数的待识别向量对应的文字为一般常用文字的概率;以及确定所述第六通道数的待识别向量对应的文字为非常用文字的概率;
确定子单元,用于根据各个所述概率,确定各个所述文字的识别结果。
在本实施例的一种实现方式中,所述装置还包括:
第二获取单元,用于获取样本图像;
训练单元,用于根据所述样本图像以及所述样本图像对应的文本识别标签对初始OCR识别模型进行训练,生成所述OCR识别模型。
在本实施例的一种实现方式中,所述装置还包括:
第三获取单元,用于获取验证图像;
获得单元,用于将所述验证图像输入所述OCR识别模型,获得所述验证图像的文本识别结果;
更新单元,用于当验证图像的文本识别结果与所述验证图像对应的文本标记结果不一致时,将所述验证图像重新作为所述样本图像,对所述OCR识别模型进行更新。
进一步地,本申请实施例还提供了一种用于移动终端的OCR识别设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述用于移动终端的OCR识别方法的任一种实现方法。
进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述用于移动终端的OCR识别方法的任一种实现方法。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本申请各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (13)
1.一种用于移动终端的OCR识别方法,其特征在于,所述方法包括:
获取待识别的目标图像;
利用预先构建的OCR识别模型,对所述目标图像进行识别,得到初始文本向量序列;
对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列;其中,所述对所述初始文本向量序列进行分级包括根据文字的常用程度对所述初始文本向量序列进行分级,得到分级结果;所述降维处理包括根据所述分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度;
对所述处理后的初始文本向量序列进行识别,得到所述目标图像中文字的识别结果。
2.根据权利要求1所述的方法,其特征在于,所述文字的常用程度的分类包括常用文字、一般常用文字和非常用文字;所述降维处理包括降低所述一般常用文字和所述非常用文字对应的初始文本向量序列的维度。
3.根据权利要求2所述的方法,其特征在于,所述预先构建的OCR识别模型为CRNN网络模型;所述CRNN网络模型包括卷积层、循环网络层、转录层、全连接层和输出层;所述利用预先构建的OCR识别模型,对所述目标图像进行识别,得到初始文本向量序列,包括:
在将所述目标图像输入所述CRNN网络模型后,利用所述卷积层提取所述目标图像的卷积特征;所述卷积层包括卷积神经网络CNN;
将所述卷积特征输入所述循环网络层后,利用所述循环网络层提取所述目标图像的文字序列特征;所述循环网络层包括深层双向长短期记忆网络LSTM;
将所述文字特征输入所述转录层后,利用所述转录层对所述文字序列特征进行分类识别,得到初始文本向量序列。
4.根据权利要求3所述的方法,其特征在于,将所述初始文本向量序列中的每一文字向量作为待识别向量;所述待识别向量的通道数为第一通道数;所述对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列,包括:
通过所述全连接层将所述第一通道数的待识别向量转换为第二通道数的待识别向量;所述第二通道数小于所述第一通道数;
通过所述全连接层将所述第一通道数的待识别向量转换为第三通道数的待识别向量;所述第三通道数小于所述第二通道数;
将所述第一通道数的待识别向量、所述第二通道数的待识别向量和所述第三通道数的待识别向量共同作为处理后的初始文本向量序列。
5.根据权利要求4所述的方法,其特征在于,所述第一通道数的待识别向量是用来确定常用文字的概率;所述第二通道数的待识别向量是用来确定一般常用文字的概率;所述第三通道数的待识别向量是用来确定非常用文字的概率。
6.根据权利要求3所述的方法,其特征在于,将所述初始文本向量序列中的每一文字向量作为待识别向量;所述待识别向量的通道数为第四通道数;所述对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列,包括:
通过所述全连接层对所述第四通道数的待识别向量进行分类,确定所述待识别向量对应的文字所属的汉字分类类型;所述汉字分类类型包括常用汉字类、一般常用汉字类和非常用汉字类;
当所述待识别向量对应的文字属于所述常用汉字类时,直接将由所述第四通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;
当所述待识别向量对应的文字属于所述一般常用汉字类时,通过所述全连接层将所述第四通道数的待识别向量转换为第五通道数的待识别向量,并将由所述第五通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;所述第五通道数小于所述第四通道数;
当所述待识别向量对应的文字属于所述非常用汉字类时,通过所述全连接层将所述第四通道数的待识别向量转换为第六通道数的待识别向量,并将由所述第六通道数的待识别向量构成的文本向量序列作为处理后的初始文本向量序列;所述第六通道数小于所述第五通道数。
7.根据权利要求6所述的方法,其特征在于,所述第四通道数的待识别向量是用来确定常用文字的概率;所述第五通道数的待识别向量是用来确定一般常用文字的概率;所述第六通道数的待识别向量是用来确定非常用文字的概率。
8.根据权利要求4至7任一项所述的方法,其特征在于,所述对所述处理后的初始文本向量序列进行识别,得到所述目标图像中文字的识别结果,包括:
利用所述输出层对所述处理后的初始文本向量序列进行识别,确定所述第一通道数的待识别向量对应的文字为常用文字的概率;确定所述第二通道数的待识别向量对应的文字为一般常用文字的概率;以及确定所述第三通道数的待识别向量对应的文字为非常用文字的概率;或者,确定所述第四通道数的待识别向量对应的文字为常用文字的概率;确定所述第五通道数的待识别向量对应的文字为一般常用文字的概率;以及确定所述第六通道数的待识别向量对应的文字为非常用文字的概率;
根据各个所述概率,确定各个所述文字的识别结果。
9.根据权利要求3所述的方法,其特征在于,所述OCR识别模型的构建方式如下:
获取样本图像;
根据所述样本图像以及所述样本图像对应的文本识别标签对初始OCR识别模型进行训练,生成所述OCR识别模型。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
获取验证图像;
将所述验证图像输入所述OCR识别模型,获得所述验证图像的文本识别结果;
当验证图像的文本识别结果与所述验证图像对应的文本标记结果不一致时,将所述验证图像重新作为所述样本图像,对所述OCR识别模型进行更新。
11.一种用于移动终端的OCR识别装置,其特征在于,所述装置包括:
第一获取单元,用于获取待识别的目标图像;
第一识别单元,用于利用预先构建的OCR识别模型,对所述目标图像进行识别,得到初始文本向量序列;
处理单元,用于对所述初始文本向量序列进行分级和降维处理,得到处理后的初始文本向量序列;其中,所述对所述初始文本向量序列进行分级包括根据文字的常用程度对所述初始文本向量序列进行分级,得到分级结果;所述降维处理包括根据所述分级结果将常用程度低的文字对应的初始文本向量序列的维度降为更低的维度;
第二识别单元,用于对所述处理后的初始文本向量序列进行识别,得到所述目标图像中文字的识别结果。
12.一种用于移动终端的OCR识别设备,其特征在于,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行权利要求1-10任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110592738.1A CN113221870B (zh) | 2021-05-28 | 2021-05-28 | 一种用于移动终端的ocr识别方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110592738.1A CN113221870B (zh) | 2021-05-28 | 2021-05-28 | 一种用于移动终端的ocr识别方法、装置、存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113221870A true CN113221870A (zh) | 2021-08-06 |
CN113221870B CN113221870B (zh) | 2024-05-24 |
Family
ID=77099193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110592738.1A Active CN113221870B (zh) | 2021-05-28 | 2021-05-28 | 一种用于移动终端的ocr识别方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113221870B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114283403A (zh) * | 2021-12-24 | 2022-04-05 | 北京有竹居网络技术有限公司 | 一种图像检测方法、装置、存储介质及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558367A (zh) * | 2004-01-16 | 2004-12-29 | 清华大学 | 中文文本自动分类用的特征降维方法 |
US20130204885A1 (en) * | 2012-02-02 | 2013-08-08 | Xerox Corporation | Document processing employing probabilistic topic modeling of documents represented as text words transformed to a continuous space |
CN107480680A (zh) * | 2017-07-28 | 2017-12-15 | 顺丰科技有限公司 | 基于OCR和Bi‑LSTM的识别图像中文字信息的方法、系统及设备 |
CN107832458A (zh) * | 2017-11-27 | 2018-03-23 | 中山大学 | 一种字符级的基于嵌套深度网络的文本分类方法 |
CN109117480A (zh) * | 2018-08-17 | 2019-01-01 | 腾讯科技(深圳)有限公司 | 词预测方法、装置、计算机设备及存储介质 |
CN112347246A (zh) * | 2020-10-15 | 2021-02-09 | 中科曙光南京研究院有限公司 | 一种基于谱分解的自适应文档聚类方法及系统 |
-
2021
- 2021-05-28 CN CN202110592738.1A patent/CN113221870B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558367A (zh) * | 2004-01-16 | 2004-12-29 | 清华大学 | 中文文本自动分类用的特征降维方法 |
US20130204885A1 (en) * | 2012-02-02 | 2013-08-08 | Xerox Corporation | Document processing employing probabilistic topic modeling of documents represented as text words transformed to a continuous space |
CN107480680A (zh) * | 2017-07-28 | 2017-12-15 | 顺丰科技有限公司 | 基于OCR和Bi‑LSTM的识别图像中文字信息的方法、系统及设备 |
CN107832458A (zh) * | 2017-11-27 | 2018-03-23 | 中山大学 | 一种字符级的基于嵌套深度网络的文本分类方法 |
CN109117480A (zh) * | 2018-08-17 | 2019-01-01 | 腾讯科技(深圳)有限公司 | 词预测方法、装置、计算机设备及存储介质 |
CN112347246A (zh) * | 2020-10-15 | 2021-02-09 | 中科曙光南京研究院有限公司 | 一种基于谱分解的自适应文档聚类方法及系统 |
Non-Patent Citations (2)
Title |
---|
孙源;胡志军;: "基于高频词和AUC优化的随机森林文本分类模型", 数学的实践与认识, no. 01 * |
胡婧;刘伟;马凯;: "基于机器学习的高血压病历文本分类", 科学技术与工程, no. 33 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114283403A (zh) * | 2021-12-24 | 2022-04-05 | 北京有竹居网络技术有限公司 | 一种图像检测方法、装置、存储介质及设备 |
CN114283403B (zh) * | 2021-12-24 | 2024-01-16 | 北京有竹居网络技术有限公司 | 一种图像检测方法、装置、存储介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113221870B (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Das et al. | Sign language recognition using deep learning on custom processed static gesture images | |
CN112860888B (zh) | 一种基于注意力机制的双模态情感分析方法 | |
CN110705233B (zh) | 基于文字识别技术的笔记生成方法、装置和计算机设备 | |
CN111026914B (zh) | 视频摘要模型的训练方法、视频摘要生成方法及装置 | |
US20200004815A1 (en) | Text entity detection and recognition from images | |
CN111753802B (zh) | 识别方法及装置 | |
CN111340123A (zh) | 一种基于深度卷积神经网络的图像分数标签预测方法 | |
CN110738102A (zh) | 一种人脸识别方法及系统 | |
WO2021208617A1 (zh) | 进出站识别方法、装置、终端及存储介质 | |
CN111738169A (zh) | 一种基于端对端网络模型的手写公式识别方法 | |
US11568140B2 (en) | Optical character recognition using a combination of neural network models | |
CN114170468B (zh) | 文本识别方法、存储介质及计算机终端 | |
CN112686243A (zh) | 智能识别图片文字的方法、装置、计算机设备及存储介质 | |
CN110633475A (zh) | 基于计算机场景的自然语言理解方法、装置、系统和存储介质 | |
CN111859957B (zh) | 情感原因子句标签的抽取方法、装置、设备及存储介质 | |
CN114677687A (zh) | 一种融合ViT与卷积神经网络的毛笔字体类型快速识别方法 | |
CN112560506A (zh) | 文本语义解析方法、装置、终端设备及存储介质 | |
CN115187456A (zh) | 基于图像强化处理的文本识别方法、装置、设备及介质 | |
CN113221870B (zh) | 一种用于移动终端的ocr识别方法、装置、存储介质及设备 | |
CN112560663B (zh) | 教学视频打点方法、相关设备及可读存储介质 | |
CN109472307A (zh) | 一种训练图像分类模型的方法和装置 | |
CN112750128B (zh) | 图像语义分割方法、装置、终端及可读存储介质 | |
CN111832657A (zh) | 文本识别方法、装置、计算机设备和存储介质 | |
CN112200216A (zh) | 汉字识别方法、装置、计算机设备和存储介质 | |
CN116563856A (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 |