CN111414906B - 纸质票据图片的数据合成与文本识别方法 - Google Patents
纸质票据图片的数据合成与文本识别方法 Download PDFInfo
- Publication number
- CN111414906B CN111414906B CN202010145278.3A CN202010145278A CN111414906B CN 111414906 B CN111414906 B CN 111414906B CN 202010145278 A CN202010145278 A CN 202010145278A CN 111414906 B CN111414906 B CN 111414906B
- Authority
- CN
- China
- Prior art keywords
- picture
- paper bill
- text
- character
- background
- 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 30
- 230000015572 biosynthetic process Effects 0.000 title claims abstract description 9
- 238000003786 synthesis reaction Methods 0.000 title claims abstract description 9
- 238000012549 training Methods 0.000 claims abstract description 30
- 102100032202 Cornulin Human genes 0.000 claims abstract description 22
- 101000920981 Homo sapiens Cornulin Proteins 0.000 claims abstract description 22
- 238000013507 mapping Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 4
- 238000009432 framing Methods 0.000 claims description 2
- 230000002194 synthesizing effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 7
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 235000002566 Capsicum Nutrition 0.000 description 1
- 239000006002 Pepper Substances 0.000 description 1
- 235000016761 Piper aduncum Nutrition 0.000 description 1
- 235000017804 Piper guineense Nutrition 0.000 description 1
- 244000203593 Piper nigrum Species 0.000 description 1
- 235000008184 Piper nigrum Nutrition 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 210000005266 circulating tumour cell Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 150000003839 salts Chemical class 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 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/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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
-
- 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/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
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- 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)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Character Discrimination (AREA)
Abstract
本发明提供了一种纸质票据图片的数据合成与文本识别方法。该方法包括:去除纸质票据图片中的前景文字,获得纸质票据图片的背景图片,并记录纸质票据图片中的文字区域的坐标信息;利用预先收集的词库生成要合成的纸质票据中的字段对应的白底文本图片;根据字段在纸质票据中对应的位置和纸质票据图片中的文字区域的坐标信息,将字段的白底文本图片覆盖在所述背景图片上,得到合成的纸质票据图片;将一定数量的合成的纸质票据图片数据作为训练集,利用训练集采用权重CTC‑Loss损失函数对CRNN模型进行训练,利用训练好的CRNN模型对待识别的纸质票据进行文本识别。本发明可以有效地识别出火车票等纸质票据图片中的文本,提高模型对指定位置字符的识别精度。
Description
技术领域
本发明涉及图像文字识别技术领域,尤其涉及一种纸质票据图片的数据合成与文本识别方法。
背景技术
在一般的文本图像识别任务中,例如财务票据识别、医院化验单文本识别、屏幕手写文字识别中,识别目标通常是一行行长短不一的序列文本。针对这样的序列文本识别任务,传统方法需要将文本进行独立字符分割,进一步对分割后的单个文字进行逐一识别,对文字分割再识别增加了任务复杂度,也使得识别过程变得麻烦。不同于先将文字分割,再逐个识别单个文字的传统方法,序列文字识别将一次识别整个序列的文字。
国外对序列文本识别技术的研究工作起步较早,且英文字符有着总量小、单个字符笔画连通等鲜明特征,这些特征都易于从图像中提取。中文字符识别则是比较有挑战性的一项内容,其中一个主要难度就在于汉字的特征提取。汉字是由象形文字发展而来的,字符数量多、字体类型多、结构复杂,且拥有一定数量的形近字,这些特点都增加了提取汉字有效特征的难度,从而影响到识别结果。同时,不同的序列文本有着不同长度的标签,针对非固定长度标签序列预测,这是序列文本识别任务的一个问题。
使用深度学习实现序列文字识别,这是一个普遍采用的有效但又计算量大的方法。常用的深度学习模型是CRNN(ConvolutionalRecurrentNeuralNetwork,端到端不定长文字识别CRNN算法详解)模型,该模型首先使用卷积神经网络提取输入图像的特征序列;然后,使用循环神经网络对卷积神经网络输出的特征序列的每一帧进行预测,最后,通过CTC(Connectionist Temporal Classifier,时间连接分类器)将循环神经网络的预测结果解码为标签序列。
CRNN模型训练时的损失函数是CTC-Loss。但是,当序列文本很长,序列前段是英文数字字符,序列后几位是汉字时,往往序列前段的英文数字字符能识别正确,后几位的汉字却总是识别出错。这是由于CTC-Loss计算过程导致的。CTC有个假设前提,不同时刻网络的输出概率是条件独立的。除了方法的问题,还有训练数据的问题。纸质火车票图片包含乘客个人信息,没有大量图片数据用于训练,同时标注数据也是一件费时费力的事情。但是,数据恰恰是深度学习中重要的部分。
发明内容
本发明的实施例提供了一种纸质票据图片的数据合成与文本识别方法,以克服现有技术的缺点。
为了实现上述目的,本发明采取了如下技术方案。
一种纸质票据图片的数据合成与文本识别方法,包括:
去除纸质票据图片中的前景文字,获得所述纸质票据图片的背景图片,并记录所述纸质票据图片中的文字区域的坐标信息;
利用预先收集的词库生成要合成的纸质票据中的字段对应的白底文本图片;
根据各个字段在纸质票据中对应的位置和所述纸质票据图片中的文字区域的坐标信息,将各个字段的白底文本图片覆盖在所述背景图片上,得到合成的纸质票据图片;
将一定数量的合成的纸质票据图片数据作为训练集,利用所述训练集采用权重CTC-Loss损失函数对CRNN模型进行训练,利用训练好的CRNN模型对待识别的纸质票据进行文本识别。
优选地,所述的去除纸质票据图片中的前景文字,获得所述纸质票据图片的背景图片,并记录所述纸质票据图片中的文字区域的坐标信息,包括:
去除纸质票据图片的前景文字,获得该纸质票据图片的背景图片,在所述背景图片上框选需要去除的文字区域,并记录每个文字区域的坐标,在所述背景图片中的各个前景文字的像素点处取RGB颜色值,得到各个前景文字的RGB颜色值范围;
遍历所述背景图片上的每个像素点,如果该像素点的RGB值属于某个前景文字的像素点的RGB颜色值范围,则随机从该某个前景文字的像素点上下左右四个方向之一找一个邻近点,如果该邻近点的RGB值不属于该某个前景文字的像素点的RGB颜色值范围,把该邻近点的RGB值覆盖该某个前景文字的像素点的RGB值;如果该邻近点的RGB值属于该某个前景文字的像素点的RGB颜色值范围,则继续随机找下一个邻近点,重复上面的操作,直到所述背景图片上的所有前景文字的像素点的RGB值都被邻近点的RGB值覆盖,得到无文字的背景图片。
优选地,所述的利用预先收集的词库生成要合成的纸质票据中的字段对应的白底文本图片,包括:
确定要合成的纸质票据中的字段,从预先收集的词库中为每个字段准备相应的词表,依次从每个字段的词表中选取一个字符串,根据该字段在纸质票据中的字体、字号和颜色,设置Pygame的对应参数,根据每个字段在纸质票据中的字体、字号和颜色,以及该字段对应的字符串利用Pygame生成该字段的白底的序列文本图片。
优选地,所述的根据各个字段在纸质票据中对应的位置和所述纸质票据图片中的文字区域的坐标信息,将各个字段的白底文本图片覆盖在所述背景图片上,得到合成的纸质票据图片,包括:
根据各个字段在纸质票据中的文字区域中的对应位置和所述文字区域的坐标信息,把各个字段对应的白底文本图片覆盖在纸质票据的背景图片上的对应位置上,遍历覆盖操作后生成的图片中的每个文字区域中的每一个像素点,如果该像素点属于文本图片的白底部分,该像素点不覆盖,如果该像素点属于字体部分,则覆盖背景图片上的像素值,得到合成的纸质票据图片;
重复执行上述处理过程,合成一定数量的纸质票据图片。
优选地,所述的将一定数量的合成的纸质票据图片数据作为训练集,利用所述训练集采用权重CTC-Loss损失函数对CRNN模型进行训练,包括:
将一定数量的合成的纸质票据图片数据作为训练集S={(x1,z1),(x2,z2),...},利用上述训练集采用权重的CTC-Loss损失函数对CRNN模型进行训练;
对于训练集S={(x1,z1),(x2,z2),...},(x,z)是样本,x=(x1,x2,...,xT)表示一个长度为T的向量,z是真实值标签,字符集L表示CRNN模型能识别的字符,预测标签序列表示为π=(π1,π2,...,πT),πi∈L∩{blank},{blank}表示空字符,B是一种映射变换,B(π)=z,把π映射为z,π与z为多对一的映射关系;
假设给定输入序列和模型参数,RNN每一时刻的输出之间是条件独立的,设置带权重的CTC-Loss损失函数,通过权重增加对序列中指定位置的关注度,带权重的CTC-Loss损失函数如下:
其中y是经过softmax层得到字符集的后验概率,表示t时刻输出πt的概率,j是记录当前属于第几个字符,当πt-1∈L且πt={blank}时,j=j+1,Lz表示真值z的序列长度,l是一个范围参数,通过l指定序列中需特别关注的字符位置,α是权重值。
由上述本发明的实施例提供的技术方案可以看出,本发明实施例的方法可以有效地识别出火车票等纸质票据图片中的文本,通过采用带权重CTC-Loss损失函数,可以提高对序列中指定位置的字符的关注度,从而提高模型对该位置字符的识别精度。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种纸质票据图片的数据合成与文本识别方法的处理流程图;
图2为本发明实施例提供的一种真实纸质火车票图片示意图。
图3为本发明实施例提供的一种框选需要去除的文本区域的示意图。
图4为本发明实施例提供的一种去除前景文字后的背景图片示意图。
图5为本发明实施例提供的一种白底文本图片示意图。
图6为本发明实施例提供的一种合成背景和白底文本图片的最终图片示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
本发明实施例提出纸质火车票图片数据増广的方法和带权重的CTC-Loss损失函数。该方法首先从真实纸质火车票图片获得去除前景文字的背景图片,然后生成白底的序列文本图片,接着把生成图片与背景图片结合,得到最终的合成图片。用此方法生成大量数据用于CRNN模型的训练,训练时,采用带权重的CTC-Loss损失函数。
本发明实施例提出的纸质票据图片的数据合成与文本识别方法的处理流程如图1所示,包括如下的处理步骤:
步骤S1、获得纸质票据背景图片。
本发明实施例中的纸质票据可以为火车票、汽车票或者飞机票,以及财务票据、医院化验单文本等。对真实纸质票据图片去除选定前景文字,获得该张图片的背景图片。记真实纸质票据图片为Image0,如图2所示。
如图3所示,在Image0上框选需要去除的文字区域,并记录每个框的左上和右下角坐标,每个框代表一个文字区域,接着在Image0中多个前景文字的像素点处取RGB颜色值,得到前景文字的RGB颜色值范围,记为R。
然后遍历Image0上的每个像素点,如果该点的RGB值属于范围R,则随机从该点上下左右四个方向之一的找一个邻近点,如果该邻近点的RGB值不属于R,把该邻近点的RGB值覆盖该点RGB值;如果该邻近点的RGB值属于R,则继续随机找下一个邻近点,重复上面操作。最终,实现了把Image0上文字区域的RGB值用邻近点的RGB值替换,得到如图4所示的无文字的背景图片,记为Image1。
步骤S2、生成白底黑字序列文本图片。
确定要合成的纸质票据中的字段,从预先收集的词库中为每个字段准备相应的词表。依次从每个字段的词表中选取一个字符串,根据该字段在纸质票据中的字体、字号和颜色,设置Pygame的对应参数。根据每个字段在纸质票据中的字体、字号和颜色,以及该字段对应的字符串利用Pygame生成该字段的白底的序列文本图片。
如图5所示,每个字段对应一个序列文本图片。Pygame是Python中的一个开源函数包。调用里面的函数可生成白底的文本图片,通过参数设置可设置图片文字的字体、字号、颜色。
步骤S3、合成纸质票据图片。
根据字段在纸质票据中对应的位置,把S2步骤生成的文本图片覆盖在纸质票据背景图片Image1对应位置上。记覆盖操作后生成的图片为Image2,根据Image2的文本内容结合S1获得的文字区域的坐标确定Image2覆盖在Image1的位置,遍历Image2每一个像素点覆盖在Image1对应位置,如果该像素点属于文本图片的白底部分,该像素点不覆盖,如果该像素点属于字体部分,则覆盖Image1的像素值。把S2步骤生成的所有图片都覆盖在S1获得Image1上。最后,在Image1上随机加一些噪声处理,例如:椒盐噪声、对比度变化、亮度变化、高斯模糊等。得到一张类似真实纸质票据图片的合成图片,如图6所示。
比如一个200*200的纯黑背景图片,现要把一张10*10的白底红字图片覆盖在背景图片上某位置,最后得到就是200*200黑底红字图片,该图片中没有白色。通过S1-3步骤,重复操作,可以快速合成大量纸质票据图片数据。
步骤S4、将上述合成的大量纸质票据图片数据作为训练集,利用上述训练集采用权重CTC-Loss损失函数对CRNN模型进行训练。
对于训练集S={(x1,z1),(x2,z2),...},(x,z)是样本,x=(x1,x2,...,xT)表示一个长度为T的向量。z是真实值标签。字符集L,表示模型能识别的字符。可能的预测标签序列表示为π=(π1,π2,...,πT),πi∈L∩{blank},{blank}表示空字符。B是一种映射变换,B(π)=z,把π映射为z,π与z为多对一的映射关系。
假设给定输入序列和模型参数,RNN每一时刻的输出之间是条件独立的,因此一般的CTC-Loss函数是这样定义的:
其中y是经过softmax层得到字符集的后验概率,表示t时刻输出πt的概率。公式(1)表示,给定输入x,输出序列π的概率p(π|x)为每一个时间步输出序列π的相应字符的概率的乘积。公式(2)表示,给定输入x,输出z的概率p(z|x)为所有输出的路径π映射后的序列为z的概率之和。公式(3)表示损失函数/>为给定样本后输出正确标签的概率乘积的负对数。
从公式(1)可看出,一般CTC-Loss对序列中每个字符的关注度是相同的。本发明实施例提出带权重的CTC-Loss损失函数,可以通过参数设置,提高对序列中指定位置的字符的关注度,从而提高模型对该位置字符的识别精度。
带权重CTC-Loss函数和一般CTC-Los s函数的不同,只在于p(π|x)的计算上。带权重CTC-Loss函数用以下公式(5)和(6)替换上述一般CTC-Loss函数的公式(1):
其中y是经过softmax层得到字符集的后验概率,表示t时刻输出πt的概率,j是记录当前属于第几个字符。当πt-1∈L且πt={blank}时,j=j+1。Lz表示真值z的序列长度,l是一个范围参数,通过l指定序列中需特别关注的字符位置。α是权重值。
对于纸质票据图片中的“身份证号和姓名”字段的序列文本图片,其中文本长度通常为20左右,前18位为身份证号,后几位为姓名。通过以上损失函数,取参数l=3,权重α=5,采用CRNN模型训练,能增加模型对序列文本图片中后l位的识别能力。修改公式(6)中的限制条件,可以增加序列中特定位置的权重。
步骤S5、利用训练好的CRNN模型对待识别的纸质票据进行文本识别。
将待识别的纸质票据输入训练好的CRNN模型,CRNN模型输出纸质票据中的文本信息的识别结果。
综上所述,本发明实施例的方法可以有效地识别出火车票等纸质票据图片中的文本,通过采用带权重CTC-Loss损失函数,可以提高对序列中指定位置的字符的关注度,从而提高模型对该位置字符的识别精度。
例如对纸质火车票关键字段的识别。当采用一般CTC-Loss损失函数训练的CRNN模型,识别“身份证号和姓名”部分(如图5中12.jpg)时,往往能把身份证号识别正确,但是姓名部分识别错误。这个识别结果和真实值的差别仅仅是最后几个姓名字符,但是此时一般CTC-Loss的损失值已经很小了。模型在训练时不利于自动优化适应。通过本发明提出的带权重的CTC-Loss损失函数,加大对“身份证号和姓名”字段中“姓名”部分的权重,提高模型在训练时对该字段中“姓名”部分的关注度,让模型更好的拟合,得到识别率更高的模型。这样训练出来的模型,能把“身份证号和姓名”部分全部识别正确的能力提高。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请中所有采集的信息都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (1)
1.一种纸质票据图片的数据合成与文本识别方法,其特征在于,包括:去除纸质票据图片中的前景文字,获得纸质票据图片的背景图片,并记录纸质票据图片中的文字区域的坐标信息;
利用预先收集的词库生成要合成的纸质票据中的字段对应的白底文本图片;
根据各个字段在纸质票据中对应的位置和纸质票据图片中的文字区域的坐标信息,将各个字段的白底文本图片覆盖在背景图片上,得到合成的纸质票据图片;
将一定数量的合成的纸质票据图片数据作为训练集,利用训练集采用权重CTC-Loss损失函数对CRNN模型进行训练,利用训练好的CRNN模型对待识别的纸质票据进行文本识别,去除纸质票据图片中的前景文字,获得纸质票据图片的背景图片,并记录纸质票据图片中的文字区域的坐标信息,包括:
去除纸质票据图片的前景文字,获得该纸质票据图片的背景图片,在背景图片上框选需要去除的文字区域,并记录每个文字区域的坐标,在背景图片中的各个前景文字的像素点处取RGB颜色值,得到各个前景文字的RGB颜色值范围;
遍历背景图片上的每个像素点,如果该像素点的RGB值属于某个前景文字的像素点的RGB颜色值范围,则随机从该某个前景文字的像素点上下左右四个方向之一找一个邻近点,如果该邻近点的RGB值不属于该某个前景文字的像素点的RGB颜色值范围,把该邻近点的RGB值覆盖该某个前景文字的像素点的RGB值;如果该邻近点的RGB值属于该某个前景文字的像素点的RGB颜色值范围,则继续随机找下一个邻近点,重复上面的操作,直到背景图片上的所有前景文字的像素点的RGB值都被邻近点的RGB值覆盖,得到无文字的背景图片,利用预先收集的词库生成要合成的纸质票据中的字段对应的白底文本图片,包括:
确定要合成的纸质票据中的字段,从预先收集的词库中为每个字段准备相应的词表,依次从每个字段的词表中选取一个字符串,根据该字段在纸质票据中的字体、字号和颜色,设置Pygame的对应参数,根据每个字段在纸质票据中的字体、字号和颜色,以及该字段对应的字符串利用Pygame生成该字段的白底的序列文本图片,根据各个字段在纸质票据中对应的位置和纸质票据图片中的文字区域的坐标信息,将各个字段的白底文本图片覆盖在背景图片上,得到合成的纸质票据图片,包括:
根据各个字段在纸质票据中的文字区域中的对应位置和文字区域的坐标信息,把各个字段对应的白底文本图片覆盖在纸质票据的背景图片上的对应位置上,遍历覆盖操作后生成的图片中的每个文字区域中的每一个像素点,如果该像素点属于文本图片的白底部分,该像素点不覆盖,如果该像素点属于字体部分,则覆盖背景图片上的像素值,得到合成的纸质票据图片;
重复执行上述处理过程,合成一定数量的纸质票据图片,将一定数量的合成的纸质票据图片数据作为训练集,利用训练集采用权重CTC-Loss损失函数对CRNN模型进行训练,包括:
将一定数量的合成的纸质票据图片数据作为训练集S={(x1,z1),(x2,z2),...},利用上述训练集采用权重的CTC-Loss损失函数对CRNN模型进行训练;
对于训练集S={(x1,z1),(x2,z2),...},(x,z)是样本,x=(x1,x2,...,xT)表示一个长度为T的向量,z是真实值标签,字符集L表示CRNN模型能识别的字符,预测标签序列表示为{blank}表示空字符,B是一种映射变换,B(π)=z,把π映射为z,π与z为多对一的映射关系;
假设给定输入序列和模型参数,RNN每一时刻的输出之间是条件独立的,设置带权重的CTC-Loss损失函数,通过权重增加对序列中指定位置的关注度,带权重的CTC-Loss损失函数如下:
其中y是经过softmax层得到字符集的后验概率,表示t时刻输出πt的概率,j是记录当前属于第几个字符,当πt-1∈L且πt={blank}时,j=j+1,Lz表示真值z的序列长度,l是一个范围参数,通过l指定序列中需特别关注的字符位置,α是权重值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010145278.3A CN111414906B (zh) | 2020-03-05 | 2020-03-05 | 纸质票据图片的数据合成与文本识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010145278.3A CN111414906B (zh) | 2020-03-05 | 2020-03-05 | 纸质票据图片的数据合成与文本识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111414906A CN111414906A (zh) | 2020-07-14 |
CN111414906B true CN111414906B (zh) | 2024-05-24 |
Family
ID=71491191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010145278.3A Active CN111414906B (zh) | 2020-03-05 | 2020-03-05 | 纸质票据图片的数据合成与文本识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111414906B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111931664B (zh) * | 2020-08-12 | 2024-01-12 | 腾讯科技(深圳)有限公司 | 混贴票据图像的处理方法、装置、计算机设备及存储介质 |
CN111967395A (zh) * | 2020-08-18 | 2020-11-20 | 中国银行股份有限公司 | 银行票据识别方法及装置 |
WO2022044311A1 (ja) * | 2020-08-31 | 2022-03-03 | 富士通フロンテック株式会社 | データ生成装置、データ生成方法およびデータ生成プログラム |
CN112052858B (zh) * | 2020-09-02 | 2023-09-12 | 中国银行股份有限公司 | 票据图像中目标字段的提取方法及相关装置 |
CN112115934A (zh) * | 2020-09-16 | 2020-12-22 | 四川长虹电器股份有限公司 | 基于深度学习实例分割的票据图像文本检测方法 |
CN112183296B (zh) * | 2020-09-23 | 2022-03-04 | 中电金信软件有限公司 | 模拟票据图像生成、票据图像识别方法和装置 |
CN112115236B (zh) * | 2020-10-09 | 2024-02-02 | 湖北中烟工业有限责任公司 | 烟草科技文献数据去重模型的构建方法及装置 |
CN112839185B (zh) * | 2020-11-27 | 2022-10-21 | 北京百度网讯科技有限公司 | 用于处理图像的方法、装置、设备和介质 |
CN112529989A (zh) * | 2020-12-19 | 2021-03-19 | 杭州东信北邮信息技术有限公司 | 一种基于票据模板的图片重构方法 |
CN112733726A (zh) * | 2021-01-12 | 2021-04-30 | 海尔数字科技(青岛)有限公司 | 票据样本的扩容方法、装置、电子设备、及存储介质 |
CN112418224B (zh) * | 2021-01-22 | 2021-04-23 | 成都无糖信息技术有限公司 | 一种基于机器学习的通用ocr的训练数据生成系统及方法 |
CN112862926B (zh) * | 2021-01-29 | 2023-08-01 | 成都环宇知了科技有限公司 | 一种基于Swoole框架的智能图片合成方法及系统 |
CN112949455B (zh) * | 2021-02-26 | 2024-04-05 | 武汉天喻信息产业股份有限公司 | 一种增值税发票识别系统及方法 |
CN113688834A (zh) * | 2021-07-27 | 2021-11-23 | 深圳中兴网信科技有限公司 | 车票识别方法、车票识别系统及计算机可读存储介质 |
CN115035541A (zh) * | 2022-06-27 | 2022-09-09 | 中核核电运行管理有限公司 | 一种大尺寸复杂pdf工程图纸文本检测与识别方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214382A (zh) * | 2018-07-16 | 2019-01-15 | 顺丰科技有限公司 | 一种基于crnn的票据信息识别算法、设备及存储介质 |
CN109977942A (zh) * | 2019-02-02 | 2019-07-05 | 浙江工业大学 | 一种基于场景分类和超分辨率的场景文字识别方法 |
CN110147788A (zh) * | 2019-05-27 | 2019-08-20 | 东北大学 | 一种基于特征增强crnn的金属板带产品标签文字识别方法 |
CN110163285A (zh) * | 2019-05-23 | 2019-08-23 | 阳光保险集团股份有限公司 | 票证识别训练样本合成方法和计算机存储介质 |
WO2019174130A1 (zh) * | 2018-03-14 | 2019-09-19 | 平安科技(深圳)有限公司 | 票据识别方法、服务器及计算机可读存储介质 |
-
2020
- 2020-03-05 CN CN202010145278.3A patent/CN111414906B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019174130A1 (zh) * | 2018-03-14 | 2019-09-19 | 平安科技(深圳)有限公司 | 票据识别方法、服务器及计算机可读存储介质 |
CN109214382A (zh) * | 2018-07-16 | 2019-01-15 | 顺丰科技有限公司 | 一种基于crnn的票据信息识别算法、设备及存储介质 |
CN109977942A (zh) * | 2019-02-02 | 2019-07-05 | 浙江工业大学 | 一种基于场景分类和超分辨率的场景文字识别方法 |
CN110163285A (zh) * | 2019-05-23 | 2019-08-23 | 阳光保险集团股份有限公司 | 票证识别训练样本合成方法和计算机存储介质 |
CN110147788A (zh) * | 2019-05-27 | 2019-08-20 | 东北大学 | 一种基于特征增强crnn的金属板带产品标签文字识别方法 |
Non-Patent Citations (2)
Title |
---|
PixTextGAN: structure aware text image synthesis for license plate recognition;Shilian Wu等;《IET Image Processing》;20191201;第13卷(第14期);全文 * |
基于CTC模型的无分割文本验证码识别;杜薇;周武能;;计算机与现代化;20180915(09);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111414906A (zh) | 2020-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111414906B (zh) | 纸质票据图片的数据合成与文本识别方法 | |
Wojna et al. | Attention-based extraction of structured information from street view imagery | |
CN111723585B (zh) | 一种风格可控的图像文本实时翻译与转换方法 | |
US10817741B2 (en) | Word segmentation system, method and device | |
Mathew et al. | Benchmarking scene text recognition in Devanagari, Telugu and Malayalam | |
US10896357B1 (en) | Automatic key/value pair extraction from document images using deep learning | |
CN111291629A (zh) | 图像中文本的识别方法、装置、计算机设备及计算机存储介质 | |
CN110766020A (zh) | 一种面向多语种自然场景文本检测与识别的系统及方法 | |
CN112329779B (zh) | 一种基于mask提高证件识别准确率的方法和相关装置 | |
CN110188762B (zh) | 中英文混合商户门店名称识别方法、系统、设备及介质 | |
CN112069900A (zh) | 基于卷积神经网络的票据文字识别方法及系统 | |
CN108681735A (zh) | 基于卷积神经网络深度学习模型的光学字符识别方法 | |
CN112052845A (zh) | 图像识别方法、装置、设备及存储介质 | |
CN111523622A (zh) | 基于特征图像自学习的机械臂模拟手写笔迹方法 | |
Zhang et al. | Vehicle license plate detection and recognition using deep neural networks and generative adversarial networks | |
CN115880704A (zh) | 一种病例的自动编目方法、系统、设备及存储介质 | |
CN113033305B (zh) | 活体检测方法、装置、终端设备和存储介质 | |
KR101066343B1 (ko) | 상호 정보 최대화 기반의 국부 이진 패턴 코드를 이용한 패턴 인식 방법, 장치 및 그 기록 매체 | |
CN115731550A (zh) | 一种基于深度学习的药品说明书自动识别方法、系统及存储介质 | |
CN114429626A (zh) | 基于深度学习的多版式车牌识别方法、装置及介质 | |
Jung et al. | DUET: detection utilizing enhancement for text in scanned or captured documents | |
Apap et al. | Marathon bib number recognition using deep learning | |
CN111738255A (zh) | 一种基于深度学习的路牌文本检测与识别算法 | |
CN111723612A (zh) | 人脸识别和人脸识别网络的训练方法和装置、存储介质 | |
Manzoor et al. | A Novel System for Multi-Linguistic Text Identification and Recognition in Natural Scenes using Deep Learning |
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 |