一种字符识别图像的生成方法、电子设备和可读存储介质与流程

文档序号:18467102发布日期:2019-08-17 02:35阅读:175来源:国知局
一种字符识别图像的生成方法、电子设备和可读存储介质与流程

本发明实施例涉及数据处理领域,特别涉及一种字符识别图像的生成方法、电子设备和可读存储介质。



背景技术:

随着信息的快速增长,文字数量已经非常庞大、待获取的信息类别繁杂,导致人们通过人力来获取信息的时间成本和人力成本大幅度增加;为了解决这个问题,目前人们利用计算机对光学字符进行识别,从而大大节省人工阅读的成本。光学字符识别通常采用深度学习的方式,如:卷积循环神经网络(convolutionalrecurrentneuralnetwork,简称“crnn”)、基于统一网络的快速文本定位(fastorientedtextspottingwithaunifiednetwork,简称“fots”)等。

发明人发现相关技术中至少存在如下问题:目前基于深度学习的光学字符识别技术的准确性依赖于用于进行字符识别训练的字符图像训练集合,该字符图像训练集合中的字符图像是从不同背景图像的字符识别图像中截取获得,背景图像可以是自然场景下拍摄获得、在弱光场景下拍摄获得等;而字符识别图像的不同背景图像,导致其需要的字符数据往往不同,如:银行卡号识别只需要有数字的数据,火车票识别具有固定的背景模板。但是若针对每个场景去采集真实字符识别图像,则人力成本和时间成本非常高昂同时也降低采集字符识别图像的速度。



技术实现要素:

本发明实施方式的目的在于提供一种字符识别图像集合的生成方法、电子设备和可读存储介质,能够快速且方便的生成接近真实拍摄的真实字符识别图像,提高获取字符识别图像的速度并降低采集字符识别图像的成本。

为解决上述技术问题,本发明的实施方式提供了一种字符识别图像的生成方法,包括:获取第一字符数据以及背景图像;将背景图像与由第一字符数据形成的字符图像进行叠加,得到原始字符识别图像;对原始字符识别图像进行图像变换处理,以修正原始字符识别图像与真实字符识别图像之间的误差,生成字符识别图像,其中,所述第一字符数据至少包括一个第一字符。

本发明的实施方式还提供了一种电子设备,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的字符识别图像的生成方法。

本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述的字符识别图像的生成方法。

本发明实施方式相对于现有技术而言,通过将背景图像与由第一字符数据形成的字符图像进行叠加,得到原始字符识别图像,并对该原始字符图像进行图像处理,以修正该原始字符识别图像与真实字符识别图像之间的误差,从而使得到的字符识别图像更接近,更贴近真实字符识别图像,提高了生成的字符识别图像的真实性,由于每个字符识别图像都与真实字符识别图像接近,可以无需通过增加人工采集的字符识别图像的方式提高字符训练集合的准确性,从而减少了人工去现场拍摄的字符识别图像的采集成本,也加快了获取该字符识别图像的速度。

另外,图像变换处理包括以下之一或任意组合:图像的视角变换处理、图像的模糊处理、图像的光照处理、按照不同的图像质量对图像进行保存处理或者增加图像噪声处理。图像变换处理的方式有多种,通过其中一种方式可以使得字符识别图像更加真实,另外还可以通过多种方式的组合可以进一步提高字符识别图像的真实性。

另外,获取第一字符数据,具体包括:从语料库中选取包括多个第二字符的语料;统计语料中每个第二字符的历史次数,第二字符的历史次数为第二字符在语料中出现的次数,或者第二字符的历史次数为第二字符在语料中出现的次数与在历史语料中出现的次数之和;根据每个第二字符的历史次数,确定第一字符数据。由于第二字符的历史次数可以反映该第二字符在当前语料中或在历史语料中所占的比例,根据每个第二字符的历史次数可以确定出更接近真实采集情况的第一字符数据,提高确定的第一字符数据的真实性。

另外,根据每个第二字符的历史次数,确定第一字符数据,具体包括:将每个第二字符的历史次数与预设次数阈值进行比较;若确定存在历史次数超过预设次数阈值的第二字符,则将历史次数超过预设次数阈值的第二字符作为待替换第二字符,并确定历史次数最小的第二字符;将历史次数最小的第二字符替换待替换第二字符;并将替换处理后的语料作为第一字符数据;其中,替换处理后的语料中的第二字符被作为第一字符。由于待替换第二字符均是历史次数超过预设次数阈值的第二字符,通过替换,可以减小待替换第二字符出现的次数,从而可以避免后续侯建的字符图像训练集合中各个第一字符出现的次数不均衡的问题。

另外,在将背景图像与由第一字符数据形成的字符图像进行叠加,得到原始字符识别图像之前,字符识别图像的生成方法还包括:从预设的字体库中选取第一字符数据的字体类型;判断选取的字体类型所对应的字符集合中是否包括第一字符数据,若确定字符集合中不包括第一字符数据,则重新选取第一字符数据的字体类型,直至选取的字体类型所对应的字符集合中包括第一字符数据,其中,字符集合为按照该字体类型生成的字符形成的集合。通过对选取的字体类型所对应的字符集合的判断,确保按照该字体类型可以生成该第一字符数据中的每个第一字符,从而确保形成的字符图像的完整性。

另外,将背景图像与由第一字符数据形成的字符图像进行叠加,得到原始字符识别图像,具体包括:按照字体类型,在背景图像上绘制字符图像,得到原始字符识别图像。按照选取的字体类型在背景图像上绘制字符图像,可以快速的得到对应字体类型的原始字符识别图像,提高生成原始字符识别图像的速度。

另外,在按照字体类型,在背景图像上绘制字符图像,具体包括:在背景图像上选取用于绘制字符图像的绘制区域;根据绘制区域的颜色,确定绘制颜色,其中,绘制颜色与绘制区域的颜色相异;按照字体类型,以及绘制颜色,在绘制区域绘制字符图像。选取与绘制区域的颜色相异的绘制颜色,便于生成的原始字符识别图像中字符图像更易被识别。

另外,在生成字符识别图像之后,字符识别图像的生成方法还包括:从每个生成的字符识别图像中截取叠加的字符图像;基于每次截取的字符图像,构建用于进行字符识别训练的字符图像训练集合。由于生成的字符识别图像更接近真实的字符识别图像,无需截取现场采集的真实的字符识别图像中的字符图像,也无需人为对真实的字符识别图像中的字符进行标注,从而大大减小了构建的字符图像训练集合的成本。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1是根据本发明第一实施方式提供的一种字符识别图像的生成方法的具体流程示意图;

图2是根据本发明第一实施方式提供的一种字符识别图像的生成方法中三维坐标的示意图;

图3是根据本发明第二实施方式提供的一种字符识别图像的生成方法中获取第一字符数据的具体流程示意图;

图4是根据本发明第三实施方式提供的一种电子设备的具体结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。

以下各个实施方式的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施方式在不矛盾的前提下可以相互结合相互引用。

本发明的第一实施方式涉及一种字符识别图像的生成方法。该字符识别图像的生成方法应用于电子设备上,电子设备通过该字符识别图像的生成方法生成大量的字符识别图像,并根据大量的字符识别图像构建字符图像训练集合。该字符识别图像的生成方法的具体流程如图1所示。

步骤101:获取第一字符数据以及背景图像。

具体的说,第一字符数据中包括多个第一字符,字符可以是任意语言种类,例如,可以为英文字母(如,a)、中文字(如,“我”字)等。第一字符数据可以从存储的语料库中随意选取一段文字,并将该端文字作为第一字符数据,其中该段文字中每个文字均为第一字符。例如,从语料库中选取了一段文字“我很好”,那么“我很好”即为该第一字符数据,其中,该第一字符数据中包括三个第一字符,分别为“我”、“很”、“好”。

获取背景图像的方式有多种,可以从背景图像库中任意选取一张图像作为背景图像,其中,背景图像库中的背景图像可以从云端获取,也可以是本地存储的背景图像;背景图像还可以是电子设备按照预设规则生成,例如,生成单一背景颜色的背景图像。

步骤102:将背景图像与由第一字符数据形成的字符图像进行叠加,得到原始字符识别图像。

一个具体的实现中,在将背景图像与该字符图像进行叠加之前,需要确定第一字符数据的字体类型,确定该字体类型的具体过程为:从预设的字体库中选取第一字符数据的字体类型;判断选取的字体类型所对应的字符集合中是否包括第一字符数据,若确定字符集合中不包括第一字符数据,则重新选取第一字符数据的字体类型,直至选取的字体类型所对应的字符集合中包括第一字符数据。

具体的说,通过绘制第一字符数据中的每个第一字符即可形成字符图像,该第一字符数据可以按照不同字体类型进行绘制,字体类型如宋体、楷体等。每种字体类型都有各自对应的字符集合,字符集合用于指示电子设备按照该字体类型所允许绘制的字符的集合。为了确定字符图像可以被准确或完整绘制出,从预设的字体库中选取第一字符数据的字体类型,可以判断该字体类型所对应的字符集合中是否包括第一字符数据,若确定该字符集合中不包括该第一字符数据,则重新选取用于绘制该字符图像的字体类型,直至该字体类型所对应的字符集合中包括第一字符数据。下面以一个具体的例子进行说明:

例如,从预设的字体库中选择了宋体,查看宋体对应的字符集合a,字符集合a{a,b,c,d,e},第一字符数据b{f,g,e},确定字符集合a不包括第一字符f,第一字符g,即该字符集合a不包括该第一字符数据b,若采用宋体绘制该第一字符数据,则存在第一字符f和第一字符g无法被绘制的情况,故重新选择字体类型,重新选择字体为楷体,楷体对应的字符集合为c{f,g,e,b},则确定字符集合a中包括该第一字符数据b,则确定该第一字符数据的字体类型为楷体。

在确定了字体类型后,按照字体类型,在背景图像上绘制字符图像,得到原始字符识别图像。绘制字符图像的过程为:在背景图像上选取用于绘制字符图像的绘制区域;根据绘制区域的颜色,确定绘制颜色,其中,绘制颜色与绘制区域的颜色相异;按照该字体类型,以及绘制颜色,在绘制区域绘制字符图像。

具体的说,绘制区域的尺寸以及位置均可以任意选取,确定了绘制区域后,根据该绘制区域的颜色确定绘制颜色,其中,绘制颜色确定的方式有多种,例如,可以先获取绘制区域的第一颜色范围,根据第一颜色范围,确定用于绘制的第二颜色范围,从用于绘制的第二颜色范围内任选一种颜色进行绘制,也可以是从第二颜色范围内任选的多种颜色进行绘制,其中,第二颜色范围与第一颜色范围无交集。

步骤103:对原始字符识别图像进行图像变换处理,以修正原始字符识别图像与真实字符识别图像之间的误差,生成字符识别图像,其中,第一字符数据包括多个第一字符。

一个具体的实现中,该图像变换处理包括以下之一或任意组合:图像的视角变换处理、图像的模糊处理、图像的光照处理、按照不同的图像质量对图像进行保存处理或者增加图像噪声处理。

具体的说,由于在人工采集的真实字符识别图像的过程中,相机的拍摄角度不固定,通过对原始字符图像进行图像的视角变换处理,可以模拟出不同拍摄角度拍摄的真实字符识别图像。该图像的视角变换处理可以对原始字符识别图像的三维空间进行变换,例如,将该原始字符识别图像绕z轴旋转预设角度,并投影在xoy平面,三维坐标如图2所示,可以理解的是,可以选择其他旋转轴以及其他投影平面。

图像的模糊处理是用于模拟人工拍照过程中出现的图像模糊现象,模糊处理可以通过高斯模糊实现。

图像的光照处理是用于模拟在不同光照条件下拍摄的图像,光照处理可以通过将图像先转换到色调-饱和度-明度(hue,saturation,value,简称“hsv”)的颜色空间,然后通过调整明度值以模拟不同光照强度。

增加图像噪声处理是用于模拟人工现场采集真实字符识别图像过程中产生的噪声的情况,可以通过对原始字符识别图像添加泊松、高斯等噪声。

按照不同的图像质量对图像进行保存处理是用于模拟不同分辨率拍摄的真实字符识别图像,可以按照预设比例对图像进行低质量的保存,如保存为360*360的图像。

以上对图像的处理可以根据实际需要进行选择,也可以按照预设的执行顺序对原始字符识别图像进行处理,例如,预设执行顺序可以是图像的视角变换处理、图像的模糊处理、图像的光照处理、增加图像噪声处理以及按照不同的图像质量对图像进行保存,将原始字符识别图像依次按照预设执行顺序执行图像变换处理。

需要说明的是,在执行步骤103之后,可以根据每次生成的字符识别图像,构建用于进行字符识别训练的字符图像训练集合,构建的过程为:从每个生成的字符识别图像中截取叠加的字符图像;基于每次截取的字符图像,构建字符图像训练集合。由于生成的字符识别图像更接近真实的字符识别图像,无需截取现场采集的真实的字符识别图像中的字符图像,也无需人为对真实的字符识别图像中的字符进行标注,从而大大减小了构建的字符图像训练集合的成本。

本发明实施方式相对于现有技术而言,通过将背景图像与由第一字符数据形成的字符图像进行叠加,得到原始字符识别图像,并对该原始字符图像进行图像处理,以修正该原始字符识别图像与真实字符识别图像之间的误差,从而使得到的字符识别图像更接近,更贴近真实字符识别图像,提高了生成的字符识别图像的真实性,由于每个字符识别图像都与真实字符识别图像接近,可以无需通过增加人工采集的字符识别图像的方式提高字符训练集合的准确性,从而减少了人工去现场拍摄的字符识别图像的采集成本,也加快了获取该字符识别图像的速度。

本发明的第二实施方式涉及一种字符识别图像的生成方法。第二实施方式是对第一实施方式的进一步改进,主要改进之处在于:在本发明第二实施方式中,通过统计选取的语料中每个第二字符的历史次数,并根据每个第二字符的历史次数确定第一字符数据。本实施方式中获取第一字符数据的具体流程如图3所示。

步骤201:从语料库中选取包括多个第二字符的语料。

具体的说,从语料库中随机选取包括多个第二字符的语料,该第二字符的个数可以是100个、也可以是10000个。

步骤202:统计语料中每个第二字符的历史次数。

具体的说,由于每个第二字符的在选取的语料中存在的比例不同,而常用的助词在语料中存在的比例明显高于其他字符,如,的、地、了等。第二字符的历史次数可以是第二字符在语料中出现的次数,例如,语料为“我是一个很好很好很棒的人”,该语料中包括9个第二字符,其中,“我”、“是”、“一”、“个”、“棒”、“的”、“人”的历史次数分别为1,而“很”的历史次数为3,“好”的历史次数为2。

历史语料为当前之前进行生成字符识别图像过程中选取的语料,例如,在此次字符识别图像生成之前,已经进行了2次字符识别图像的生成,那么历史语料即包括第一次字符识别图像的生成过程中所选取的语料和在第二次字符识别图像生成过程中所选取的语料。

第二字符的历史次数还可以为第二字符在语料中出现的次数与在历史语料中出现的次数之和。例如,当前语料为“我很好”,该语料中包括3个第二字符,“我”、“很”以及“好”在当前语料中出现的次数分别为1,而“我”在历史语料中出现的次数为3次,“很”在历史语料中出现的次数为2次,“好”在历史语料中出现的次数1次,那么“我”的历史次数为4次,“很”的历史次数为3次,“好”的历史次数为2次。

步骤203:根据每个第二字符的历史次数,确定第一字符数据。

一个具体的实现中,将每个第二字符的历史次数与预设次数阈值进行比较;若确定存在历史次数超过预设次数阈值的第二字符,则将历史次数超过预设次数阈值的第二字符作为待替换第二字符,并确定历史次数最小的第二字符;将历史次数最小的第二字符替换待替换第二字符;并将替换处理后的语料作为第一字符数据;其中,替换处理后的语料中的第二字符被作为第一字符。

具体的说,可以根据统计常用字在文本中出现的次数,确定该预设次数阈值,例如,在900000字的文本中统计“的”的出现次数为10000次,那么可以将预设次数阈值设置为10000次。将语料中的每个第二字符的历史次数分别与预设次数阈值进行比较,判断是否存在历史次数超过预设次数阈值的第二字符,若确定不存在,则直接将该语料作为第一字符数据,该语料中的第二字符被作为第一字符。

若确定存在,则将历史次数超过预设次数阈值的第二字符作为待替换第二字符,并确定历史次数最小的第二字符,将历史次数最小的第二字符替换待替换字符,并将替换处理后的语料作为第一字符数据。例如,语料中的第二字符分别为“彭”“燕”“的”“了”,“彭”的历史次数为20次,“燕”的历史次数为30次,“的”的历史次数为62次,“了”的历史次数为60次,预设次数阈值为50次,将每个第二字符与预设次数阈值进行比较,确定存在历史次数超过预设次数阈值的第二字符(即“的”和“了”),将“的”和“了”字作为待替换第二字符,该语料中的历史次数最小的第二字符为“彭”,则将“彭”字替换该语料中的“的”字以及“了”字,替换处理后,该语料中无“的”和“了”字,将替换处理后的语料作为第一字符数据。

由于在构建字符图像训练集合的过程中,需要生成大量的字符识别图像,对待替换字符进行替换处理,可以均衡在整个字符图像训练集合中每个第一字符出现次数,避免出现某个字符(如“语”字)出现较少,而另一个字符(如“的”字)出现较多的情况,进而使得构建的字符图像训练集合更加准确。

本实施方式中提供的字符识别图像的生成方法,由于待替换第二字符均是历史次数超过预设次数阈值的第二字符,通过替换,可以减小待替换第二字符出现的次数,从而可以避免后续侯建的字符图像训练集合中各个第一字符出现的次数不均衡的问题。

上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。

本发明第三实施方式涉及一种电子设备,如图4所示,该电子设备30包括:至少一个处理器301;以及,与至少一个处理器301通信连接的存储器302;其中,存储器302存储有可被至少一个处理器31执行的指令,指令被至少一个处理器301执行,以使至少一个处理器301能够执行第一实施方式或第二实施方式中的字符识别图像的生成方法。

其中,存储器302和处理器301采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器301和存储器302的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器301处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器301。

处理器301负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器302在执行操作时所使用的数据。

本发明第四实施方式涉及一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现第一实施方式或第二实施方式中的字符识别图像的生成方法。

本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1