CN111279359A - 用于图像内容识别的方法及*** - Google Patents
用于图像内容识别的方法及*** Download PDFInfo
- Publication number
- CN111279359A CN111279359A CN201880070610.5A CN201880070610A CN111279359A CN 111279359 A CN111279359 A CN 111279359A CN 201880070610 A CN201880070610 A CN 201880070610A CN 111279359 A CN111279359 A CN 111279359A
- Authority
- CN
- China
- Prior art keywords
- image
- image content
- neural network
- output
- layer
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 111
- 238000013528 artificial neural network Methods 0.000 claims abstract description 80
- 238000012545 processing Methods 0.000 claims abstract description 17
- 239000013598 vector Substances 0.000 claims description 39
- 230000001537 neural effect Effects 0.000 claims description 33
- 230000000306 recurrent effect Effects 0.000 claims description 26
- 230000015654 memory Effects 0.000 claims description 21
- 238000009826 distribution Methods 0.000 claims description 17
- 238000004891 communication Methods 0.000 claims description 11
- 238000003384 imaging method Methods 0.000 claims description 7
- 230000006403 short-term memory Effects 0.000 claims description 5
- 238000012935 Averaging Methods 0.000 claims description 4
- 210000005036 nerve Anatomy 0.000 claims description 2
- 230000007787 long-term memory Effects 0.000 claims 2
- 238000012549 training Methods 0.000 description 13
- 238000012015 optical character recognition Methods 0.000 description 12
- 238000013518 transcription Methods 0.000 description 12
- 230000035897 transcription Effects 0.000 description 12
- 238000012360 testing method Methods 0.000 description 10
- 230000002457 bidirectional effect Effects 0.000 description 8
- 238000002474 experimental method Methods 0.000 description 8
- 210000002569 neuron Anatomy 0.000 description 8
- 230000004913 activation Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 210000004027 cell Anatomy 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 238000011176 pooling Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 150000001875 compounds Chemical class 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 210000005266 circulating tumour cell Anatomy 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000004615 ingredient Substances 0.000 description 2
- 238000012432 intermediate storage Methods 0.000 description 2
- 238000013173 literature analysis Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- -1 steps Substances 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000002103 transcriptional effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- 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/40—Document-oriented image-based pattern recognition
-
- 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/196—Recognition using electronic means using sequential comparisons of the image signals with a plurality of references
- G06V30/1983—Syntactic or structural pattern recognition, e.g. symbolic string 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
-
- 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/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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/32—Normalisation of the pattern dimensions
-
- 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
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/98—Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
-
- 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/18—Extraction of features or characteristics of the image
- G06V30/1801—Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections
- G06V30/18019—Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections by matching or filtering
- G06V30/18038—Biologically-inspired filters, e.g. difference of Gaussians [DoG], Gabor filters
- G06V30/18048—Biologically-inspired filters, e.g. difference of Gaussians [DoG], Gabor filters with interaction between the responses of different filters, e.g. cortical complex cells
- G06V30/18057—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- 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
-
- 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
-
- 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/192—Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
- G06V30/194—References adjustable by an adaptive method, e.g. learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Biodiversity & Conservation Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Character Discrimination (AREA)
Abstract
一种识别图像内容的方法,包括将神经网络应用于图像,所述神经网络包含用于接收所述图像输入层、用于处理所述图像的多个隐藏层及用于根据所述多个隐藏层的多个输出以产生与一估计图像内容相关的输出的输出层。所述方法还包含将一神经网络分支应用于所述多个隐藏层的至少一层的一输出,所述神经网络分支独立于所述神经网络,并且具有一输出层,所述输出层用于产生与估计的一估计错误水平相关的输出;以及产生一组合输出,所述组合输出表示所述估计图像内容及所述估计错误水平。
Description
相关申请
本申请主张2017年9月19日提交的美国临时专利申请第62/560,275号的优先权,其内容通过引用整体并入本文。
技术领域
在一些实施例中,本发明涉及图像处理,并且更具体地但非排他地涉及图像内容识别。
背景技术
光学字符识别(optical character recognition,OCR)通常涉及将文本图像转换为代表实际文本字符的编码。基于拉丁文字字母的OCR技术可广泛使用,而且成功率很高。手写文本通常比打字文本面临着不同的识别挑战。
基于递归神经网络(recurrent neural networks,RNN)及其扩展的手写识别技术是本领域已知的。例如长短期记忆(long-short-term-memory,LSTM)网络,隐藏马尔可夫模型(Hidden Markov Models,HMMs)及其组合[S.A.Azeem及H.Ahmed)。使用隐藏马尔可夫模型识别离线***语手写单词的有效技术。国际文献分析与识别杂志(InternationalJournal on Document Analysis and Recognition,IJDAR),16(4):399–412,2013;T.Bluche,H.Ney及C.Kermorvant。序列训练的深度神经网络和递归神经网络用于手写识别的光学建模的比较。统计语言及语音处理(Statistical Language and SpeechProcessing)中,第199-210页,Springer,2014年;P.Doetsch,M。Kozielski和H.Ney。用于离线手写识别的快速可靠地训练的递归神经网络。在手写识别领域(Frontiers inHandwriting Recognition,ICFHR)中,2014年第14届国际会议,第279-284页,IEEE,2014年;H.El Abed和V.Margner。Icdar 2009***手写识别比赛。国际文献分析与识别杂志(IJDAR),14(1):3-13,2011;F.Menasri,J。Louradour,A。Bianne-Bernard和C.Kermorvant。Rimes-ICDAR2011竞赛中的A2iA法国手写识别***。在SPIE会议记录中,第8297卷,2012年;F.Stahlberg和S.Vogel。手写***语的qcri识别***。在图像分析和处理ICIAP 2015中,第276–286页。Springer,2015年]。
另一种方法,由Almazán等人发表。[J.Almazan,A。Gordo,A。Fornes和E.Valveny。具有嵌入属性的单词发现和识别。IEEE模式分析与机器智能学报,(12):2552–2566,2014年],将输入的单词图像编码为渔夫向量(Fisher Vectors,FV),可以将其视为高斯混合模型(Gaussian Mixture Model,GMM)的梯度在低级描述符上的聚合。然后,训练一组线性支持向量机械(Support Vector Machine,SVM)分类器,每个字属性中包含的每个二进制属性一个。典范相关分析(Canonical Correlation Analysis,CCA)用于链接预测属性的向量和从实际单词生成的二进制属性向量。
Jaderberg等人发表的另一种方法[M.Jaderberg,K。Simonyan,A。Vedaldi和A.Zisserman。用于自然场景文本识别的合成数据及人工神经网络。arXiv预印本arXiv:1406.2227,2014]使用对合成数据进行训练的卷积神经网络(convolutional neuralnetworks,CNNs)进行场景文本识别。
Shi等人的arXiv预印本arXiv:1507.05717公开一种神经网络,所述神经网络将特征提取,序列建模及转录集成到一个统一的框架中。所述网络由卷积层、循环层和转录层组成。
发明内容
根据本发明的一些实施例的一个方面,提供了一种识别图像内容的方法。所述方法包含:将一神经网络应用于图像,所述神经网络包含:一输入层,用于接收所述图像;多个隐藏层,用于处理所述图像;及一输出层,用于根据所述多个隐藏层的多个输出以产生与一估计图像内容相关的输出。所述方法还包含将一神经网络分支应用于所述多个隐藏层的至少一层的一输出,所述神经网络分支独立于所述神经网络,并且具有一输出层,所述输出层用于产生与估计的一估计错误水平相关的输出。所述方法还包含产生一组合输出,所述组合输出表示所述估计图像内容及所述估计错误水平。
根据本发明的一些实施例,所述神经网络分支包含产生多个输出值的至少一循环层。根据本发明的一些实施例,所述至少一循环神经层是一长短期记忆(LSTM)层。根据本发明的一些实施例,所述长短期记忆层是一双向层。
根据本发明的一些实施例的一个方面,提供了一种识别图像内容的方法。所述方法包括:将一神经网络应用于图像。所述神经网络包括:用于接收图像的一输入层,用于处理图像的多个隐藏层,以及用于基于隐藏层的输出产生及估计的图像内容有关的输出的输出层。所述方法还包括通过获得由神经网络产生的输出概率到两个最可能的识别来计算一置信度分数,并分配与两个概率之比或差相关的置信度分数。
根据本发明的一些实施例,所述方法还包括对所述多个输出值加总或平均,从而提供所述估计错误水平。
根据本发明的一些实施例,所述神经网络包含产生一组具有多个特征向量的一卷积神经子网络,每一特征向量对应于所述卷积神经子网络在所述图像中的不同窗口的一应用。
根据本发明的一些实施例,所述神经网络包含从所述卷积神经子网络接收所述多个特征向量的集合的一循环神经子网络,以及所述多个隐藏层的至少一层的输出是所述循环神经子网络的至少一层的一输出。根据本发明的一些实施例,所述循环神经子网络包含多个长短期记忆(LSTM)层。根据本发明的一些实施例,所述多个长短期记忆层的至少一层是一双向层。
根据本发明的一些实施例,所述循环神经子网络产生多个向量的一序列,所述方法包括将所述序列的每一个向量的一维度投影至与一符号***的一长度相对应的一预定维度上,以在所述符号***上提供多个概率分布的一序列,每一个概率分布与所述图像内的一区域相对应。
根据本发明的一些实施例,所述神经网络包含接收所述多个概率分布的序列并产生所述估计的一连结时序分类(CTC)层。
根据本发明的一些实施例,所述方法还包括在所述神经网络的所述应用之前将所述图像的一高度转换为一预定高度。
根据本发明的一些实施例,所述图像是多个手写符号的一图像。
根据本发明的一些实施例,所述图像是多个机器打印符号的一图像。
根据本发明的一些实施例,所述图像包括含有多个手写符号的至少一区域以及含有多个机器打印符号的至少一区域。
根据本发明的一些实施例,所述图像是一银行支票的一图像。
根据本发明的一些实施例,所述银行支票包含多个银行支票字段,针对所述多个银行支票字段的至少二个分别重复所述方法。
根据本发明的一些实施例的一个方面,提供一种计算机软件产品,包含存储有多个程序指令的一计算机可读介质,所述多个指令在被一计算机读取时,使所述计算机接收一输入图像,并执行根据上述方法,并且可选且优选地进行描述,详情请见下文。
根据本发明的一些实施例的一个方面,一种用于识别图像内容的***,所述***包含一成像***,用于对一物体成像以提供所述物体的一图像;及一图像处理器,配置用于:接收所述图像;将一神经网络应用于图像,所述神经网络包含:一输入层,用于接收所述图像;多个隐藏层,用于处理所述图像;及一输出层,用于根据所述多个隐藏层的多个输出以产生与一估计图像内容相关的输出;将一神经网络分支应用于所述多个隐藏层的至少一层的一输出,所述神经网络分支独立于所述神经网络,并且具有一输出层,所述输出层用于产生与估计的一估计错误水平相关的输出;及产生一组合输出,所述组合输出表示所述估计图像内容及所述估计错误水平。
根据本发明的一些实施例的一个方面,提供一种用于识别图像内容的***,所述***包括一网络接口,用于通过一通信网络接收一图像;及一图像处理器,配置用于:将一神经网络应用于图像,所述神经网络包含:一输入层,用于接收所述图像;多个隐藏层,用于处理所述图像;及一输出层,用于根据所述多个隐藏层的多个输出以产生与一估计图像内容相关的输出;将一神经网络分支应用于所述多个隐藏层的至少一层的一输出,所述神经网络分支独立于所述神经网络,并且具有一输出层,所述输出层用于产生与估计的一估计错误水平相关的输出;及产生一组合输出,所述组合输出表示所述估计图像内容及所述估计错误水平。
除非另有定义,否则本文中使用的所有技术及/或科学用语具有与本发明所属领域的普通技术人员通常所理解的相同含义。尽管与本文描述的那些类似或等同的方法和材料可以用于本发明的实施例的实践或测试中,但是下面描述了示例性的方法及/或材料。在有冲突的情况下,以专利说明书及其定义为准。另外,材料、方法和实施例仅是说明性的,并不意图必然是限制性的。
本发明实施例的方法及/或***的实现可以涉及手动、自动或其组合来执行或完成所选择的任务。而且,根据本发明的方法及/或***的实施例的实际仪器和设备,可以使用操作***通过硬件、软件、固件或它们的组合来实现几个选择的任务。
例如,根据本发明的实施例的用于执行选择的任务的硬件可以被实现为芯片或电路。作为软件,根据本发明实施例的所选任务可以被实现为由计算机使用任何合适的操作***执行的多个软件指令。在本发明的示例性实施例中,根据本文所述的方法及/或***的示例性实施例的一个或多个任务由数据处理器执行,例如,用于执行多个指令的计算平台。可选地,数据处理器包括用于存储指令及/或数据的易失性存储器及/或用于存储指令及/或数据的非易失性存储器,例如磁硬盘及/或可移动介质。可选地,还提供网络连接。还可选地提供显示器及/或用户输入设备,例如键盘或鼠标。
附图说明
这里仅通过示例的方式,参考附图描述了本发明的一些实施例。现在具体地具体参考附图,要强调的是,所显示出的细节是作为示例并且出于对本发明的实施例的说明性讨论的目的。就这一点而言,结合附图进行的描述对于本领域技术人员而言显而易见的是可以如何实践本发明的实施例。
在附图中:
图1是根据本发明的各个示例性实施例适合于识别图像内容的方法的流程图。
图2A和2B是根据本发明的各种示例性实施例适合于识别图像内容的神经网络及神经网络分支的代表性示例的示意图。
图3是根据本发明的各种示例性实施例适合于识别图像内容的计算机***的示意图。
图4A、图4B及图4C是显示来自根据本发明一些实施例进行的实验中使用的三个数据集的示例的图像。
图5是在根据本发明的一些实施例执行的实验中使用的错误预测分支的训练过程的示意图。
图6示出了在根据本发明的一些实施方式进行的实验中获得的接收工作特性(ROC)曲线。
图7A及7B显示根据本发明的一些实施例使用从以色列Yavne的Orbograph Ltd.拥有的测试仪获得的实验产生的ROC曲线。
图8A-D显示在根据本发明的一些实施例使用分别称为IAM、RIMES、SVT及IC13的测试集进行的实验中产生的ROC曲线。
图9显示来自Orbograph Ltd.拥有的测试集的非拒绝图像示例,所述示例在根据本发明的一些实施例执行的实验期间使用。
具体实施方式
在一些实施例中,本发明涉及图像处理,并且更具体地但非排他地涉及图像内容识别。
在详细解释本发明的至少一实施例之前,应当理解的是,本发明的应用并不一定限于在以下描述中的叙述及/或在附图及/或示例中出示的元件及/或方法的构造及布置细节。本发明能够具有其他实施例或者能够以各种方式被实践或执行。
图1是根据本发明的各种示例性实施例适于识别图像内容的方法的一流程图。应当理解的是,除非另外定义,否则以下描述的操作可以以许多组合或执行顺序同时或顺序地执行。特别地,流程图的顺序不被认为是限制性的。例如,以下描述或流程图中以特定顺序出现的两个或更多个操作可以以不同的顺序(例如,相反的顺序)或基本上同时地执行。此外,以下描述的几种操作是可选的,可能无法执行。
本文描述的操作的至少一部分可以由数据处理***来实现,例如专用电路或通用计算机,所述数据处理***被配置为接收数据并执行以下描述的操作。至少一部分操作可以由位于远程位置的云端计算设施来实现。
实现本实施例的方法的计算机程序通常可以通过通信网络或在诸如但不限于,软盘、CD-ROM、闪存设备及便携式硬盘驱动器。可以从通信网络或分发介质将计算机程序复制到硬盘或类似的中间存储介质。通过将代码指令从它们的分布介质或它们的中间存储介质中加载到计算机的执行存储器中,并配置计算机使其按照本发明的方法工作,可以运行计算机程序。在操作期间,计算机可以将通过中间计算获得的数据结构或值存储在存储器中,并提取这些数据结构或值以用于后续操作。所有这些操作对于计算机***领域的技术人员是众所周知的。
本文所述的处理操作可以借助于诸如DSP、微控制器、FPGA、ASIC等的处理器电路或任何其他常规及/或专用计算***来执行。
本实施例的方法可以用多种形式实施。例如,可以体现在有形的介质中,例如用于执行方法操作的计算机。可以体现在计算机可读介质上,所述计算机可读介质包括用于执行方法操作的计算机可读指令。在具有数字计算机能力的电子设备中也可以实现本发明,所述电子设备被布置为在有形介质上运行计算机程序或在计算机可读介质上执行指令。
参考图1所示,所述方法开始于10,并且可选地并且优选地继续至11,在所述时刻接收图像。所述图像通常包含属于字母的符号,包括但不限于字符、重音符号、数字及/或标点符号。在本发明的一些实施例中,所述图像包含手写符号,在这种情况下,字母是一组手写符号。在本发明的一些实施例中,所述图像包含打印符号,在这种情况下,字母是一组打印符号。还考虑了同时包含手写和打印符号的图像。这样的图像的代表性示例是具有多个字段的银行支票的图像,其中一些字段可以包括手写符号(例如,数字及单词等的数量),并且其中一些可以包括打印符号(例如帐号、帐号所有者的名称等)。
所述图像优选地是数字图像,并且可以从外部源(例如以计算机可读形式存储所述图像的存储设备)接收,及/或被发送到在通信网络上执行所述方法操作的数据处理器。例如互联网,但不限于此。
所述方法可选地并且优选地继续到12,在12处,调整输入图像的尺寸。当从外部源接收所述图像作为输入时,此操作特别有用。调整尺寸可以包括沿所述图像的任何轴拉伸或收缩到预定宽度,预定长度及/或预定对角线,如本领域中已知的。沿每个轴的调整尺寸可以被独立出来。例如,所述方法可以在不改变宽度的情况下仅将所述图像的高度变换为预定高度,反之亦然,或者根据不同的变换场景对高度及宽度进行变换。
在14,将一神经网络应用于图像。在图2A和2B中显示适于本实施例的一神经网络20的代表性示例。神经网络20通常包括用于接收所述图像22的一输入层24,用于处理图像的多个隐藏层26及用于基于所述隐藏层26的输出来产生与估计图像内容有关的输出的一输出层28。可选且优选地,对神经网络进行预训练以根据一特定字母来估计所述图像内容,所述特定字母的子集包含在被设计为要应用神经网络的图像中。
在本发明的一些实施例中,神经网络20的所述隐藏层26包括卷积神经子网络30(参见图2B),所述卷积神经子网络30产生具有多个特征向量的一组32,每个特征向量对应于将所述卷积子网络30应用于所述图像22内的不同窗口。所述多个特征向量的一组32因此可以表示在图像上从图像的一侧移动到另一侧的窗口。可选地但非必需地,卷积神经子网络30是完全卷积神经子网络。
将单个值与网络或子网络的每个神经元关联的完全连接的网络或子网不同,所述卷积神经网络或子网络通过将值的数组与每个神经元关联来进行操作。从概念上说明,可以将这个数组视为输入图像的一像素块。后续层的神经元值的转换是从乘法到卷积。这意味着连接强度是卷积核而不是标量值。这些更复杂的转换涉及更复杂的神经网络矩阵。因此,尽管完全连接的网络或子网络中的矩阵包括数值值的数组,但在卷积神经网络或子网络中,每个矩阵条目都是一像素块。
神经网络20可以可选且优选地包括一循环神经子网络34,其从卷积神经子网络30接收具有多个特征向量的一组32。循环神经子网络34可选且优选地使用一个或多个长短期记忆(long short-term memory,LSTM)层,更优选地使用一个或多个双向LSTM层。
循环神经网络或子网络设计为接受长度不同的序列作为输入。在每个序列元素的处理中使用相同的权重集。这样的子网络以分层的方式构造,使得所述层的每个神经元接受来自前一层的所有神经元的激活作为输入,并且此外,与序列中的前一步所诱导的激活存在横向联系。双向神经网络或子网络使用向前的层和向后的层。这两种类型的层并行存在,并且两者的激活(级联)充当下一层的输入。
长短期记忆(LSTM)层使用记忆单元代替简单的激活。对记忆单元的访问受称为门控的乘法因素控制。在每个输入状态下,使用门来确定要被写入记忆单元的新输入部分,存储单元当前内容中将被遗忘的部分,以及内容中要输出的部分。例如,如果输出门关闭(值为0),则连接到当前神经元的神经元的值为0。如果输出门在门值为0.5时部分打开,则神经元可以输出所存储记忆当前值的一半。
递归神经子网34通常产生多个向量的一序列36。在这些实施例中,所述方法可选地并且优选地将序列36的每个向量的维度投影到与字母的长度相对应的预定维度上,因此,在字母表上提供了一系列概率分布,其中每个概率分布对应于图像内的一个区域。在本发明的一些实施例中,输出层28包括连结时序分类(Connectionist TemporalClassification,CTC)层[Graves等人,连结时序分类:使用递归神经网络标记未分段的序列数据。在第23届国际机器学习会议论文集中,ICML’06,第369–376页,美国纽约,2006年。ACM]。接收概率分布序列并根据字母产生图像内容的估计。
CTC层既可以用于训练网络,也可以用于使用网络识别图像内容。对于前者,使用损失函数。对于后者,可选并优选地采用CTC解码方案来获得输出。可以使用急欲解码(greedy decoding)来获得最高概率的解码,或者使用波束搜索方案获得n个最高概率解码值。
所述方法可选且优选地前进至14,在该处将神经网络分支38应用于隐藏层26中的至少一层的输出。网络分支38应用于任何隐藏层26的输出。分支38的一个或多个循环神经层可以是例如LSTM层,更优选是双向LSTM层。通常,将分支38应用于递归神经子网络34中一层的输出,例如LSTM层之一的输出,当采用这样的层时。优选但非必要地,将网络分支38应用于递归神经子网络34中的第一层的输出,即由卷积神经子网络30产生的多个特征向量的组32馈给层的输出。
神经网络分支38可选且优选地独立于神经网络20。分支38具有输出层40,所述输出层40产生与由层28产生估计的估计错误水平有关的输出。可选且优选地,神经网络分支38包括一个或多个产生多个输出值的循环层42。所述方法可选且优选地将输出值求加总以提供估计错误水平。通常,由循环层42提供的输出值是向量值。在这些实施例中,由递归层42提供的每个向量值被投影到标量,从而提供可以可选且优选地随后被求总和或平均的多个标量,从而由输出层40产生的错误水平也是标量。
所述方法进行到15,在该处产生指示估计的图像内容及估计的错误水平的组合输出。组合的输出可以显示在显示设备上,打印在打印介质上及/或通过通信网络传输到远程计算机。
所述方法在16结束。
图3是具有硬件处理器132的客户端计算机130的示意图,所述处理器通常包括输入/输出(input/output,I/O)电路134,硬件中央处理单元(central processing unit,CPU)136(例如硬件微处理器)和硬件记忆体138通常包括易失性存储器和非易失性存储器。CPU 136与I/O电路134和记忆体138通信。客户端计算机130优选地包括与处理器132通信的图形用户界面(graphical user interface,GUI)142。I/O电路134优选地以适当结构形式向GUI 142和从GUI 142传递信息。另外还显示了服务器计算机150,可以类似地包括硬件处理器152,I/O电路154,硬件CPU 156,硬件记忆体158。客户端计算机130和服务器150计算机的I/O电路134和154可以用作收发器,通过有线或无线通信相互通信信息。例如,客户端计算机130和服务器150计算机可以经由诸如区域网(LAN),广域网(WAN)或互联网之类的网络140进行通信。在一些实施例中,服务器计算机150可以是通过网络140与客户端计算机130通信的云端计算设施的云计算资源的一部分。进一步显示的是与客户端计算机130相关联的成像装置146,例如照相机或扫描仪。
GUI 142和处理器132可以集成在同一壳体内,或者可以是彼此通信的分离的单元。类似地,成像装置146和处理器132可以在同一壳体内集成在一起,或者可以是彼此通信的分离的单元。
GUI 142能够可选且优选地是包括专用CPU和I/O电路(未显示)的***的一部分,以允许GUI 142与处理器132通信。处理器132向GUI 142发布CPU 136产生的图形和文本输出。处理器132还响应于用户输入从GUI 142接收与由GUI 142产生的控制命令有关的信号。GUI 142可以是本领域中已知的任何类型,例如但不限于键盘和显示器、触摸屏等。在优选实施例中,GUI 142是如智能电话、平板电脑、智能手表等的移动装置的GUI。当GUI 142是移动装置、处理器132的GUI时,移动装置的CPU电路可以用作处理器132,并且可以执行本文描述的代码指令。
客户端130和服务器150计算机可以进一步分别包括一个或多个计算机可读存储介质144、164。介质144和164优选地是存储计算机代码指令的非暂时性存储介质,如本文进一步详细描述的,并且处理器132和152执行这些代码指令。可以通过将相应的代码指令加载到相应的处理器132和152的相应的执行存储器138和158中来运行代码指令。
存储介质144和164中的每一个可以存储程序指令,当被相应的处理器读取时,所述程序指令使处理器接收输入图像并执行本文所述的方法。在本发明的一些实施例中,输入图像由成像装置130产生,并且借助于I/O电路134被传输到处理器132。所述处理器132估计图像的内容和估计的错误,如上所述,并在GUI 142上显示组合的输出。替代地,所述处理器132可以通过网络140将图像发送到服务器计算机150。如上所述,计算机150接收图像、估计图像的内容和估计的错误,并通过网络140将组合的输出发送回计算机130。计算机130接收组合的输出并将其显示在GUI 142上。
如本文所用,用语“约”是指约10%。
用语“示例性”在本文中用来表示“用作示例、实例或说明”。被描述为“示例性”的任何实施例不必被解释为比其他实施例优选或有利和/或从其他实施例中排除特征的并入。
用语“可选地”在本文中用来表示“在某些实施例中提供而在其他实施例中未提供”。本发明的任何特定实施例可以包括多个“可选”特征,除非这些特征冲突。
用语“包括(comprises)”,“包含(comprising)”,“包括(includes)”,“包含(including)”,“具有(having)”及其共同词意指“包括但不限于”。
用语“由……组成”是指“包括并限于”。
用语“基本上由...组成”是指该组合物、方法或结构可以包括另外的成分、步骤及/或部分,但前提是附加成分、步骤和/或部分不会实质性改变所要求保护的组合物、方法或结构的基本和新颖特征。
如本文所使用的,单数形式的“一个(a)”,“一个(an)”和“所述(the)”包括复数引用,除非上下文另外明确指出。例如,用语“一种化合物”或“至少一种化合物”可包括多种化合物,包括其混合物。
纵观本申请,本发明的各种实施例可以以范围格式呈现。应当理解的是,范围格式的描述仅是为了方便和简洁,而不应被解释为对本发明范围的不灵活的限制。因此,应该将范围的描述视为已明确公开所有可能的子范围以及该范围内的各个数值。例如,对范围从1到6的描述应视为已明确公开子范围,例如从1到3,从1到4,从1到5,从2到4,从2到6,从3到6等,以及该范围内的单个数字,例如1、2、3、4、5和6。无论范围的广度如何,这都适用。
每当在此指出数值范围时,其意图是包括在所指出的范围内的任何引用的数字(分数或整数)。用词,第一个指示数字和第二个指示数字“之间的范围(ranging)/范围(rangs)”以及第一指示数字到第二指示数字“中的范围(ranging)/范围(rangs)”在本文中可互换使用,并且意在包括第一和第二指示数字以及其间的所有小数和整数。
应当理解的是,为清楚起见在单独的实施例的上下文中描述的本发明的某些特征也可以在单个实施例中组合提供。相反地,为简洁起见,在单个实施例的上下文中描述的本发明的各种特征,也可以单独地或以任何合适的子组合或在本发明的任何其他所述的实施例中合适地提供。在各种实施例的上下文中描述的某些特征不应被认为是那些实施例的必要特征,除非该实施例在没有那些要素的情况下是不可操作的。
如上文所述且如以下权利要求书所述,本发明的各种实施方案和方面在以下实施例中得到实验支持。
示例
现在参考以下实施例,与以上描述一起以非限制性方式示出了本发明的一些实施方案。
本示例描述了光学字符识别(optical character recognition,OCR)过程,所述过程已应用于手写和打印的银行支票。所应用的过程包括根据本发明一些实施例的方法,其中将神经网络应用于图像以基于隐藏层的输出来估计图像内容,并且将神经网络分支应用于隐藏层之一的输出,以估计图像内容估计的错误水平。
在此示例中,使用了三个不同的数据集,其中包含来自银行支票的三个不同字段的真实世界图像。数据集在此处命名为帐户(Account),CAR和LAR,其中Account对应于帐号的数字字段,CAR对应于以数字表示的支票美元金额,LAR对应于以文字表示的支票美元金额。图4A-图4C示出来自LAR数据集(图4A,显示“七十五及00”),CAR数据集(图4B,显示“486.37”)和帐户数据集(图4C显示“161020417”)的示例图像。
对于每个图像,数据集都包含其内容的参考转录。
网络架构
网络架构如下,对于网络的识别部分,使用了端到端可训练网络。所述网络仅接受图像及其转录进行训练。在此示例中,图像高度被归一化为64个像素,并且图像宽度和抄录的长度为任意长度。没有使用对齐信息来训练网络。
所述输入图像首先经过VGG样式的卷积神经网络,所述网络由卷积层、批处理归一化层及最大池化层。在所述示例中,将ReLU用作激活功能,但是也可以考虑其他激活功能。在此示例中,池化层将图像高度从64减小到1,并且还将图像宽度减小了8倍。这提供了3个尺寸为2×2的最大池化层和3个尺寸为2×1的最大池化层。
每两个合并操作之间使用三个卷积层。在此示例中,卷积层的形状为3×3,填充为1。在每个卷积层之后使用批处理归一化层和一个激活函数。
卷积阶段的输出是一系列特征向量,其中每个特征向量都是将卷积网络应用于原始图像窗口的结果。因此,特征向量对应于具有从左到右的滑动窗口的图像。
将获得的特征向量序列作为输入提供给循环子网络,在所述示例中,所述循环子网络包括两个双向LSTM层。两个双向LSTM层都实现为两个1024个单元的LSTM层的串联。在卷积层和LSTM层之后,获得了长度为2048的向量的可变长度序列。然后,将线性投影从尺寸2048应用于所需字母的长度,以获取字母上的概率分布序列,每个概率分布对应于原始图像中的矩形接收场。
通过将连结时序分类(connectionist temporal classification,CTC)层应用于所得序列来给出最终的转录。给定来自前一层的概率向量,该层为输出序列定义了概率。然后,将给定概率向量的输出序列定义为具有最高概率的序列。对于训练,损失函数定义为给定每个窗口的概率分布的正确转录(correct transcription)的负对数似然率(negativelog-likelihoo)。
预测错误
本发明人发现,CTC转录概率作为图像错误标记的预测指标表现差。因此,本发明人已经将错误预测分支附接到网络。错误预测分支的输入是网络中间的一层(隐藏层),错误预测分支的输出是单个数字,所述数字可用于预测转录中的错误数量(编辑距离)作为回归任务,或者作为转录任务正确的对数概率,作为分类任务。
图5显示网络的错误预测分支的训练过程。对于训练,仅使用源图像和正确的转录。通过在序列预测网络中运行图像,计算网络输出和基础实况之间的观察到的误差并基于此差异来训练错误预测分支,可以计算出训练的基础实况。
在本示例中,错误预测分支将第一双向LSTM层的输出作为其输入。长度为2048的每个向量都投影到较小尺寸的向量(在本示例中为长度为128的向量)。然后将另一个双向LSTM层(在本示例中为128个单位)应用于投影向量。LSTM层的每个输出都投影到一个标量,并对这些标量加总,以提供标量输出。或者,可以通过对这些标量取平均值(而不是仅加总)来提供标量输出,例如,以减少图像宽度对结果的影响。所述标量输出定义为错误预测分支的输出,并用作分类过程的对数概率。
对来自LSTM的投影标量加总或取平均值可提供错误检测的局部性。这对于分类(所述方法预测所检测到的标签是否与基础实况相同)和回归过程(所述方法预测所述网络所犯的错误数量)两者都是有利的。对于分类,当网络在两个不同的位置输出较大的值时,最终加总较大,这与存在较大错误概率的观察结果一致。对于回归,当网络发生多个错误时,错误检测过程将有望检测到多个位置的错误,并且位置值越高、越多,错误预测就应该越高。
序列预测网络和错误预测分支的训练未在同一数据集上进行。这样做的原因是,深度神经网络模型通常会过度拟合训练集。当发生过度拟合时,损失函数和感知的标注误差将达到0或非常接近。如果尝试与网络一起训练错误预测分支,则训练的结果是错误预测器始终输出零。因此,训练是一个两阶段的操作,其中提供转录的网络在训练集上进行训练,并在验证集上进行评估;错误预测分支在验证集上进行训练,并在测试集上进行评估。
实验结果
所述***在三个数据集(CAR,LAR,帐户)上进行了训练,从而获得了良好的准确性。测量的错误为总编辑距离除以正确字符串的长度。结果总结在下表1中。在表1中,在对转录数据进行后处理之后,对LAR的整个场精度结果进行了测量。分别提供了美元金额和美分金额的准确率的测量。
表1
数据集 | 归一化编辑距离 | 全场准确率 | 美元/分金额准确率 |
CAR | 0.028 | 92% | 92%/96% |
LAR | 0.066 | 90%/75% | 84%/77% |
帐户 | 0.018 | 86.3% |
为了进行错误预测,对六个模型的分类进行了训练,并对它们的结果进行了比较。其中三个模型是用于预测结果字符串是否正确的二进制分类,而三个模型则是试图将编辑距离的损失最小化的回归模型。
这三个模型是:
1.LSTM加总-如上所述,LSTM,投影及加总。
2.LSTM最后状态-运行双向LSTM,获取其最后状态向量并将其投影以获得标量。
3.LSTM最后状态MLP-运行双向LSTM,获取其最后状态向量,并运行一个带有隐藏层的小型神经网络模型以获得标量。
图6显示所有六个模型的接收工作特性(ROC)曲线以及CAR数据集上的参考CTC分数。ROC曲线显示误读率与总***读取率之间的权衡。例如,误读率为0.2和读取率为0.9的点表示,通过选择某个置信度阈值,***将拒绝10%的有效数据,并将错误数量减少80%。为了比较不同置信度方法的有效性,使用了曲线下面积(AUC)测量。如图6所示,CTC评分作为错误预测的度量非常差。相反地,本实施例的LSTM和分类的性能明显优于所有其他模型,其AUC为0.87。
使用几个基准以及在以色列Yavne的Orbograph Ltd.拥有的数据集上进行了另外的实验,包括每种方法扫描的美元金额的真实裁剪图像。
在以下实验中,使用了两种技术来获得置信度。在第一种技术(以下称为“CTC比率”)中,将概率比率用作置信度,而不使用神经网络分支38。在此技术中,获得了给定输入图像的OCR模型分配给其第一和第二最可能读数的概率。在第一个读数比第二个读数更有可能的情况下,将分配高置信度分数。如果不是,则样本是不明确的,因此其置信度得分会降低。在第二种技术(以下称为“ErrPred”)中,向网络添加了一个错误预测分支,以直接预测给定输入的OCR模型是否会出错,还是应该拒绝样本。错误预测分支制定了神经网络分支38(图2A)。
基准包括:ICDAR 2013(IC13)[Karatzas等人,Icdar 2013年健壮阅读比赛,文档分析与识别(ICDAR),2013年第12届国际会议,第1484–1493页。IEEE,2013年],街景文字(SVT)[Wang等,端到端场景文本识别。在计算机视觉(ICCV)中,2011IEEE国际会议,第1457-1464页,IEEE,2011年],IAM[Marti等人,“iam数据库:用于脱机手写识别的英语句子数据库,国际文献分析与识别杂志,5(1):39-46,2002年”];及RIMES[Grosicki等人,Icdar 2009手写识别竞赛,文档分析与识别,2009。ICDAR’09。第十届国际会议,第1398–1402页,IEEE,2009年]。
在IC13数据集中,测试集包含251个带有标记边界框的场景图像。测试集被限制为仅包含三个或更多字符的字母数字字符,从而导致测试集包含约900个裁剪的文本图像。
SVT数据集包含从Google街景视图收集的249张图像。从这些图像中裁剪出单词图像,从而得到647个样本的测试集。
IAM数据集由657位作者扫描的手写英文文本组成,总共提供115,320个带标签的单词图像。过滤掉标点和短词后,获得了40,526个样本的训练集。
RIMES数据集由1300人扫描的手写法语文本组成,总共67,000个单词。限于没有标点的足够长的单词,训练集大小变为35,723个样本。
Orbograph数据集由一百万张带标签的图像组成,这些图像经过自动扫描和裁剪,表示美元金额。该数据集是通过从实际打印的文档中收集美元金额扫描的文本样本并对其进行手动标记而创建的。由于这是未经过滤的真实世界数据,因此它具有一定数量的拒绝样本,这些样本被用来训练本实施例的方法。图7A和7B显示了Orbograph数据集测试集上的ROC曲线,其中图7A显示测试集的所有图像的ROC曲线。图7B显示测试集的未拒绝图像的ROC曲线。误读是指接收到高置信度分数的拒绝图像,或接收到高置信度分数的错误转录的未拒绝图像。
实验在TensorFlow中实施,并在nVidia Titan X和nVidia K80上进行训练。使用CTC解码的大小为100的搜索波束。训练是使用ADAM完成的[Kingma等人,一种随机优化方法,arXiv预印本arXiv:1412.6980,2014年],初始学习率为10-4。
表2总结每个基准所获得的准确率,及通过本实施例的基线和方法获得的AUC,以及表3总结对于数字美元金额数据集获得的准确率以及通过本实施例的基线和方法获得的AUC。在表3中,Orbograph(全部)的准确率将所有拒绝样品视为未命中,因此可证明需要准确率的置信度信号。
图8A-D分别显示基于基线CTC的置信度得分以及本实施例的方法的IAM、RIMES、SVT及IC13的基准ROC曲线。
表2
SVT | ICD13 | IAM | RIMES | |
准确率 | 78.67% | 88.91% | 79.51% | 88.05% |
CTC AUC | 0.484 | 0.463 | 0.493 | 0.544 |
CTC AUC | 0.516 | 0.445 | 0.461 | 0.555 |
CTC比例AUC | 0.937 | 0.965 | 0.913 | 0.949 |
ErrPred AUC | 0.891 | 0.941 | 0.793 | 0.818 |
表3
Orbograph(全部) | Orbograph(无拒绝) | |
准确率 | 96.75%(*) | 99.75% |
CTC AUC | 0.537 | 0.529 |
CTC(标准)AUC | 0.681 | 0.603 |
CTC比例AUC | 0.987 | 0.987 |
ErrPredict AUC | 0.998 | 0.978 |
表2,表3和图8A-D证明了本实施例的方法在预测和防止OCR错误方面是有效的。在所有没有剔除样本的数据集中,概率比技术被证明是非常有效的。在大型数据集上进行训练时,概率比率技术和采用错误预测分支的技术都获得了令人信服的结果。不希望受任何特定理论的束缚,使用错误预测分支获得的相对较小的准确性是由于缺乏数据而解释的。
Orbograph的数据集提供了更好的基准条件,因为不是合成的,并且包含许多样本。此外,所述数据集通过包含废品样本来模拟OCR***的实际条件和要求。如图7A和7B所示,当在不考虑不合格品的情况下测量错误预测的准确性时,两种技术都具有很好的性能,而概率比方法则略有优势。但是,当还考虑废品样本时,采用误差预测分支的技术会获得非常好的结果。后一种技术能够将错误率降低多达99.7%,同时拒绝了只有1%的有效样本。
图9显示Orbograph美元金额数据集中处于不同置信度水平的非拒绝图像示例,用于定性评估。预计将发现,对于以裁剪后的打印美元金额进行训练的OCR模型,很难读取下置信度百分位数的样本。的确,一个样本是手写的,一个样本由于裁剪不当而包含了周围的框,一个样本包含了不相关的文字和标记,另外两个样本则模糊了。第五个百分位中的文本已经完全清晰易读。请注意,顶部百分位完全由带有标签“$0.00”的样本所控制。这样做的原因是数据集包括许多这样的样本,因此本实施例的神经网络学会了以高置信度识别。
所述示例表明,本实施例的技术大幅优于建议的基线,并且证明适用于印刷文本OCR,手写文本OCR和场景文本识别。
尽管已经结合本发明的特定实施例描述了本发明,但是显然,对于本领域技术人员而言,许多替代、修改和变化将是显而易见的。因此,意图涵盖落入所附权利要求书的精神和广泛范围内的所有此类替代、修改和变化。
在本说明书中提到的所有出版物、专利和专利申请都通过引用整体并入本文,其程度与好像每个单独的出版物、专利或专利申请被具体地和单独地指示通过引用并入本文的程度相同。另外,在本申请中对任何参考文献的引用或标识均不应解释为承认该参考文献可用作本发明的现有技术。就使用本节标题而言,不应将其解释为必然的限制。
Claims (32)
1.一种识别图像内容的方法,包括:
将一神经网络应用于图像,所述神经网络包含:一输入层,用于接收所述图像;多个隐藏层,用于处理所述图像;及一输出层,用于根据所述多个隐藏层的多个输出以产生与一估计图像内容相关的输出;
将一神经网络分支应用于所述多个隐藏层的至少一层的一输出,所述神经网络分支独立于所述神经网络,并且具有一输出层,所述输出层用于产生与估计的一估计错误水平相关的输出;及
产生一组合输出,所述组合输出表示所述估计图像内容及所述估计错误水平。
2.如权利要求1所述的识别图像内容的方法,其中:所述神经网络分支包含产生多个输出值的至少一循环层。
3.如权利要求2所述的识别图像内容的方法,其中:所述至少一循环神经层是一长短期记忆(LSTM)层。
4.如权利要求3所述的识别图像内容的方法,其中:所述长短期记忆层是一双向层。
5.如上述权利要求2-4所述的识别图像内容的方法,其中:所述方法还包括对所述多个输出值加总或平均,从而提供所述估计错误水平。
6.如权利要求1所述的识别图像内容的方法,其中:所述神经网络包含产生一组具有多个特征向量的一卷积神经子网络,每一特征向量对应于所述卷积神经子网络在所述图像中的不同窗口的一应用。
7.如上述权利要求2-5所述的识别图像内容的方法,其中:所述神经网络包含产生多个特征向量的集合的一卷积神经子网络,每一特征向量对应于所述卷积神经子网络在所述图像中的不同窗口的一应用。
8.如权利要求6所述的识别图像内容的方法,其中:所述神经网络包含从所述卷积神经子网络接收所述多个特征向量的集合的一循环神经子网络,以及所述多个隐藏层的至少一层的输出是所述循环神经子网络的至少一层的一输出。
9.如权利要求7所述的识别图像内容的方法,其中:所述神经网络包含从所述卷积神经子网络接收所述多个特征向量的集合的一循环神经子网络,以及所述多个隐藏层的至少一层的输出是所述循环神经子网络的至少一层的一输出。
10.如权利要求8所述的识别图像内容的方法,其中:所述循环神经子网络包含多个长短期记忆(LSTM)层。
11.如权利要求9所述的识别图像内容的方法,其中:所述循环神经子网络包含多个长短期记忆(LSTM)层。
12.如权利要求10所述的识别图像内容的方法,其中:所述多个长短期记忆层的至少一层是一双向层。
13.如权利要求11所述的识别图像内容的方法,其中:所述多个长短期记忆层的至少一层是一双向层。
14.如权利要求8所述的识别图像内容的方法,其中:所述循环神经子网络产生多个向量的一序列,所述方法包括将所述序列的每一个向量的一维度投影至与一符号***的一长度相对应的一预定维度上,以在所述符号***上提供多个概率分布的一序列,每一个概率分布与所述图像内的一区域相对应。
15.如上述权利要求9-13所述的识别图像内容的方法,其中:所述循环神经子网络产生多个向量的一序列,所述方法包括将所述序列的每一个向量的一维度投影至与一符号***的一长度相对应的一预定维度上,以在所述符号***上提供多个概率分布的一序列,每一个概率分布与所述图像内的一区域相对应。
16.如权利要求14所述的识别图像内容的方法,其中:所述神经网络包含接收所述多个概率分布的序列并产生所述估计的一连结时序分类(CTC)层。
17.如权利要求15所述的识别图像内容的方法,其中:所述神经网络包含接收所述多个概率分布的序列并产生所述估计的一连结时序分类(CTC)层。
18.如权利要求1所述的识别图像内容的方法,其中:所述方法还包括在所述神经网络的所述应用之前将所述图像的一高度转换为一预定高度。
19.如上述权利要求2-12所述的识别图像内容的方法,其中:所述方法还包括在所述神经网络的所述应用之前将所述图像的一高度转换为一预定高度。
20.如权利要求1所述的识别图像内容的方法,其中:所述图像是多个手写符号的一图像。
21.如上述权利要求2-18所述的识别图像内容的方法,其中:所述图像是多个手写符号的一图像。
22.如权利要求1所述的识别图像内容的方法,其中:所述图像是多个机器打印符号的一图像。
23.如上述权利要求2-18所述的识别图像内容的方法,其中:所述图像是多个机器打印符号的一图像。
24.如权利要求1所述的识别图像内容的方法,其中:所述图像包括含有多个手写符号的至少一区域以及含有多个机器打印符号的至少一区域。
25.如上述权利要求2-18所述的识别图像内容的方法,其中:所述图像包括含有多个手写符号的至少一区域以及含有多个机器打印符号的至少一区域。
26.如权利要求1所述的识别图像内容的方法,其中:所述图像是一银行支票的一图像。
27.如上述权利要求2-18所述的识别图像内容的方法,其中:所述图像是一银行支票的一图像。
28.如权利要求26所述的识别图像内容的方法,其中:所述银行支票包含多个银行支票字段,针对所述多个银行支票字段的至少二个分别重复所述方法。
29.如权利要求27所述的识别图像内容的方法,其中:所述银行支票包含多个银行支票字段,针对所述多个银行支票字段的至少二个分别重复所述方法。
30.一种计算机软件产品,包含存储有多个程序指令的一计算机可读介质,所述多个指令在被一计算机读取时,使所述计算机接收一输入图像,并执行根据上述权利要求1-28中任一项所述的方法。
31.一种用于识别图像内容的***,包括:
一成像***,用于对一物体成像以提供所述物体的一图像;及
一图像处理器,配置用于:
接收所述图像;
将一神经网络应用于图像,所述神经网络包含:一输入层,用于接收所述图像;多个隐藏层,用于处理所述图像;及一输出层,用于根据所述多个隐藏层的多个输出以产生与一估计图像内容相关的输出;
将一神经网络分支应用于所述多个隐藏层的至少一层的一输出,所述神经网络分支独立于所述神经网络,并且具有一输出层,所述输出层用于产生与估计的一估计错误水平相关的输出;及
产生一组合输出,所述组合输出表示所述估计图像内容及所述估计错误水平。
32.一种用于识别图像内容的***,包括:
一网络接口,用于通过一通信网络接收一图像;及
一图像处理器,配置用于:
将一神经网络应用于图像,所述神经网络包含:一输入层,用于接收所述图像;多个隐藏层,用于处理所述图像;及一输出层,用于根据所述多个隐藏层的多个输出以产生与一估计图像内容相关的输出;
将一神经网络分支应用于所述多个隐藏层的至少一层的一输出,所述神经网络分支独立于所述神经网络,并且具有一输出层,所述输出层用于产生与估计的一估计错误水平相关的输出;及
产生一组合输出,所述组合输出表示所述估计图像内容及所述估计错误水平。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762560275P | 2017-09-19 | 2017-09-19 | |
US62/560,275 | 2017-09-19 | ||
PCT/IL2018/051047 WO2019058372A1 (en) | 2017-09-19 | 2018-09-17 | METHOD AND SYSTEM FOR RECOGNIZING IMAGE CONTENT |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111279359A true CN111279359A (zh) | 2020-06-12 |
Family
ID=65807598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880070610.5A Pending CN111279359A (zh) | 2017-09-19 | 2018-09-17 | 用于图像内容识别的方法及*** |
Country Status (8)
Country | Link |
---|---|
US (1) | US10635934B2 (zh) |
EP (1) | EP3685312A4 (zh) |
JP (1) | JP7457647B2 (zh) |
KR (1) | KR20200055760A (zh) |
CN (1) | CN111279359A (zh) |
IL (1) | IL273446B (zh) |
SG (1) | SG11202002415VA (zh) |
WO (1) | WO2019058372A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200055760A (ko) | 2017-09-19 | 2020-05-21 | 라모트 앳 텔-아비브 유니버시티 리미티드 | 이미지 컨텐츠 인식 방법 및 장치 |
US10373022B1 (en) * | 2018-02-28 | 2019-08-06 | Konica Minolta Laboratory U.S.A., Inc. | Text image processing using stroke-aware max-min pooling for OCR system employing artificial neural network |
EP3598339A1 (en) * | 2018-07-19 | 2020-01-22 | Tata Consultancy Services Limited | Systems and methods for end-to-end handwritten text recognition using neural networks |
US10984066B2 (en) * | 2019-01-02 | 2021-04-20 | Zyte Group Limited | System and method for a web scraping tool and classification engine |
US10665231B1 (en) * | 2019-09-06 | 2020-05-26 | Verbit Software Ltd. | Real time machine learning-based indication of whether audio quality is suitable for transcription |
KR20210053036A (ko) * | 2019-11-01 | 2021-05-11 | 엘지전자 주식회사 | 인공지능 서버 |
US11494886B2 (en) * | 2020-05-29 | 2022-11-08 | Adobe Inc. | Hierarchical multiclass exposure defects classification in images |
US11468551B1 (en) * | 2020-07-24 | 2022-10-11 | Norfolk Southern Corporation | Machine-learning framework for detecting defects or conditions of railcar systems |
CN112926372B (zh) * | 2020-08-22 | 2023-03-10 | 清华大学 | 基于序列变形的场景文字检测方法及*** |
KR20220028928A (ko) * | 2020-08-31 | 2022-03-08 | 삼성전자주식회사 | 부분 영상 기반의 영상 처리 방법 및 장치 |
CA3197566A1 (en) * | 2020-12-11 | 2022-06-16 | Raunak DEY | Handwriting recognition |
KR102328569B1 (ko) * | 2021-08-03 | 2021-11-19 | (주)티에프프로젝트 | 다목적 펜 |
CN114372477B (zh) * | 2022-03-21 | 2022-06-10 | 北京百度网讯科技有限公司 | 文本识别模型的训练方法、文本识别方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5912986A (en) * | 1994-06-21 | 1999-06-15 | Eastman Kodak Company | Evidential confidence measure and rejection technique for use in a neural network based optical character recognition system |
CN105654135A (zh) * | 2015-12-30 | 2016-06-08 | 成都数联铭品科技有限公司 | 一种基于递归神经网络的图像文字序列识别*** |
CN106328122A (zh) * | 2016-08-19 | 2017-01-11 | 深圳市唯特视科技有限公司 | 一种利用长短期记忆模型递归神经网络的语音识别方法 |
CN106462802A (zh) * | 2014-11-14 | 2017-02-22 | 谷歌公司 | 生成映像的自然语言描述 |
CN106855944A (zh) * | 2016-12-22 | 2017-06-16 | 浙江宇视科技有限公司 | 行人标志物识别方法及装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5052043A (en) * | 1990-05-07 | 1991-09-24 | Eastman Kodak Company | Neural network with back propagation controlled through an output confidence measure |
JP3094070B2 (ja) * | 1991-10-08 | 2000-10-03 | 住友大阪セメント株式会社 | 光学的パターン認識分類装置 |
US5812698A (en) | 1995-05-12 | 1998-09-22 | Synaptics, Inc. | Handwriting recognition system and method |
JP2000155803A (ja) | 1998-11-20 | 2000-06-06 | Nec Corp | 文字読取方法および光学式文字読取装置 |
EP1378855B1 (en) * | 2002-07-05 | 2007-10-17 | Honda Research Institute Europe GmbH | Exploiting ensemble diversity for automatic feature extraction |
JP5101029B2 (ja) | 2006-03-27 | 2012-12-19 | 三菱重工業株式会社 | 光電変換素子製造装置および光電変換素子製造方法 |
US10417525B2 (en) * | 2014-09-22 | 2019-09-17 | Samsung Electronics Co., Ltd. | Object recognition with reduced neural network weight precision |
US9495619B2 (en) | 2014-12-30 | 2016-11-15 | Facebook, Inc. | Systems and methods for image object recognition based on location information and object categories |
JP2016139176A (ja) | 2015-01-26 | 2016-08-04 | シャープ株式会社 | 画像処理装置、画像処理システム、画像処理方法、およびその画像処理プログラム |
US10319476B1 (en) * | 2015-02-06 | 2019-06-11 | Brain Trust Innovations I, Llc | System, method and device for predicting an outcome of a clinical patient transaction |
JP6754619B2 (ja) * | 2015-06-24 | 2020-09-16 | 三星電子株式会社Samsung Electronics Co.,Ltd. | 顔認識方法及び装置 |
US10192327B1 (en) * | 2016-02-04 | 2019-01-29 | Google Llc | Image compression with recurrent neural networks |
KR20200055760A (ko) | 2017-09-19 | 2020-05-21 | 라모트 앳 텔-아비브 유니버시티 리미티드 | 이미지 컨텐츠 인식 방법 및 장치 |
-
2018
- 2018-09-17 KR KR1020207011049A patent/KR20200055760A/ko not_active Application Discontinuation
- 2018-09-17 SG SG11202002415VA patent/SG11202002415VA/en unknown
- 2018-09-17 EP EP18859712.4A patent/EP3685312A4/en active Pending
- 2018-09-17 JP JP2020515741A patent/JP7457647B2/ja active Active
- 2018-09-17 CN CN201880070610.5A patent/CN111279359A/zh active Pending
- 2018-09-17 US US16/132,518 patent/US10635934B2/en active Active
- 2018-09-17 WO PCT/IL2018/051047 patent/WO2019058372A1/en unknown
-
2020
- 2020-03-19 IL IL273446A patent/IL273446B/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5912986A (en) * | 1994-06-21 | 1999-06-15 | Eastman Kodak Company | Evidential confidence measure and rejection technique for use in a neural network based optical character recognition system |
CN106462802A (zh) * | 2014-11-14 | 2017-02-22 | 谷歌公司 | 生成映像的自然语言描述 |
CN105654135A (zh) * | 2015-12-30 | 2016-06-08 | 成都数联铭品科技有限公司 | 一种基于递归神经网络的图像文字序列识别*** |
CN106328122A (zh) * | 2016-08-19 | 2017-01-11 | 深圳市唯特视科技有限公司 | 一种利用长短期记忆模型递归神经网络的语音识别方法 |
CN106855944A (zh) * | 2016-12-22 | 2017-06-16 | 浙江宇视科技有限公司 | 行人标志物识别方法及装置 |
Non-Patent Citations (1)
Title |
---|
阮秀凯等: "《现代无线通信***盲处理技术新进展 基于智能算法》", 复旦大学出版社, pages: 26 - 29 * |
Also Published As
Publication number | Publication date |
---|---|
IL273446A (en) | 2020-05-31 |
WO2019058372A1 (en) | 2019-03-28 |
JP7457647B2 (ja) | 2024-03-28 |
SG11202002415VA (en) | 2020-04-29 |
JP2020534604A (ja) | 2020-11-26 |
EP3685312A4 (en) | 2021-06-16 |
KR20200055760A (ko) | 2020-05-21 |
IL273446B (en) | 2022-04-01 |
US10635934B2 (en) | 2020-04-28 |
EP3685312A1 (en) | 2020-07-29 |
US20190095753A1 (en) | 2019-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10635934B2 (en) | Method and system for image content recognition | |
Naz et al. | Urdu Nasta’liq text recognition system based on multi-dimensional recurrent neural network and statistical features | |
US10936862B2 (en) | System and method of character recognition using fully convolutional neural networks | |
Goodfellow et al. | Multi-digit number recognition from street view imagery using deep convolutional neural networks | |
Deng et al. | Challenges in end-to-end neural scientific table recognition | |
RU2661750C1 (ru) | Распознавание символов с использованием искусственного интеллекта | |
US8977042B2 (en) | Rotation-free recognition of handwritten characters | |
US7724957B2 (en) | Two tiered text recognition | |
Kaur et al. | A comprehensive survey on word recognition for non-Indic and Indic scripts | |
Rashid et al. | Scanning neural network for text line recognition | |
EP3539051A1 (en) | System and method of character recognition using fully convolutional neural networks | |
Ahmad et al. | Ligature based Urdu Nastaleeq sentence recognition using gated bidirectional long short term memory | |
Roy et al. | Word searching in scene image and video frame in multi-script scenario using dynamic shape coding | |
Sarraf | French word recognition through a quick survey on recurrent neural networks using long-short term memory RNN-LSTM | |
Sueiras | Continuous offline handwriting recognition using deep learning models | |
Zaiz et al. | Puzzle based system for improving Arabic handwriting recognition | |
Kumari et al. | A comprehensive handwritten paragraph text recognition system: Lexiconnet | |
Kumar et al. | Bayesian background models for keyword spotting in handwritten documents | |
CN117115824A (zh) | 一种基于笔划区域分割策略的视觉文本检测方法 | |
Kaur et al. | Worddeepnet: handwritten gurumukhi word recognition using convolutional neural network | |
Sherly et al. | An efficient indoor scene character recognition using Bayesian interactive search algorithm-based adaboost-CNN classifier | |
Bhattacharya et al. | Fuzzy-based pseudo segmentation approach for handwritten word recognition using a sequence to sequence model with attention | |
Gurmu | Offline handwritten text recognition of historical Ge’ez manuscripts using deep learning techniques | |
Jouanne et al. | PyraD-DCNN: a fully convolutional neural network to replace BLSTM in offline text recognition systems | |
RU2764705C1 (ru) | Извлечение нескольких документов из единого изображения |
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 |