首页> 中国专利> 图片中文字的识别方法、关键字检索方法、装置及设备

图片中文字的识别方法、关键字检索方法、装置及设备

摘要

本发明提供一种图片中文字的识别方法、关键字检索方法、装置、设备及计算机可读存储介质,其中,图片中文字的识别方法包括如下步骤:步骤S1,提供原始文字图像;步骤S2,根据所述原始文字图像进行OCR识别,生成目标文字;步骤S3,根据所述目标文字生成目标文字图像;步骤S4,将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;步骤S5,基于比较结果,生成最终识别结果。根据本发明的图片中文字的识别方法,结合OCR识别和图像比对,能够有效地提高识别准确度,且无需大量的模板等,有利于提高效率。

著录项

  • 公开/公告号CN112784825A

    专利类型发明专利

  • 公开/公告日2021-05-11

    原文格式PDF

  • 申请/专利权人 株式会社理光;

    申请/专利号CN201911058115.5

  • 发明设计人 雷凯;李昭;

    申请日2019-11-01

  • 分类号G06K9/20(20060101);G06K9/34(20060101);

  • 代理机构31300 上海华诚知识产权代理有限公司;

  • 代理人肖华

  • 地址 日本东京都大田区中马込一丁目3番6号

  • 入库时间 2023-06-19 10:57:17

说明书

技术领域

本发明涉及图像处理技术领域,具体涉及一种图片中文字的识别方法、关键字检索方法、装置、设备及计算机可读存储介质。

背景技术

在特定的应用场景下,例如检索小屏幕截图(低分辨率、低PPI)上的文字,由于分辨率低,以及web screen text的反锯齿的影响,OCR的准确度会降低,导致在通过关键字检索图片时的准确度降低。在这些场景下,仅仅依靠OCR来对图片中文字识别后再检索是否包含带检索文字,这样的方法是不足以达到目标。

专利文献CN201510816513.4中记载了一种图像关键词检查方法及装置,然而,该方法首先需要大量的样图,将样图上面的文字截取下来,并生成一个样本库,随后将待检测的子图像与样本库中的图像进行比较,但是如果待检测的图没有在样本库中出现,那么现有方案是无法检索到的。

发明内容

有鉴于此,本发明目的在以提供一种图片中文字的识别方法、关键字检索方法、装置、设备及计算机可读存储介质,来提高检索的准确度。

为解决上述技术问题,第一方面,本发明提供一种图片中文字的识别方法,包括如下步骤:

步骤S1,提供原始文字图像;

步骤S2,根据所述原始文字图像进行OCR识别,生成目标文字;

步骤S3,根据所述目标文字生成目标文字图像;

步骤S4,将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;

步骤S5,基于比较结果,生成最终识别结果。

根据本发明的一些实施例,所述步骤S1包括:

提供原图;

将所述原图以单个文字作为单位进行切割,形成单个文字图像,以所述单个文字图像作为所述原始文字图像。

根据本发明的一些实施例,所述步骤S2包括:

根据所述原始文字图像进行OCR识别,得到OCR识别文字;

根据所述OCR识别文字,调用与其具有预定相似度的文字,生成所述目标文字。

进一步地,根据本发明的一些实施例,所述步骤S1之后且所述步骤S3之前还包括如下步骤:

步骤S6,基于所述原始文字图像中的文字的高宽比,确定其字号和/或字体,

所述步骤S3中,以所述字号和/或字体,打印所述目标文字,生成所述目标文字图像。

优选地,利用font文件进行打印。

根据本发明的一些实施例,所述步骤S4包括:

步骤S41,将所述原始文字图像与各个所述目标文字图像分别进行叠加,得到叠加图;

步骤S42,提取所述叠加图中的未重叠部分,生成差值图;

步骤S43,根据所述差值图中的像素值,确定所述比较结果,

其中,当所述差值图中的像素值小于等于预定阈值时,确定该原始文字图像中的文字与该目标文字图像中的目标文字一致,并以该目标文字图像中的文字作为识别结果。

进一步地,根据本发明的一些实施例,所述S42步骤包括:

步骤S421,对所述目标文字图像和/或所述原始文字图像进行扩宽或收窄,以消除所述叠加图中的两者的边缘差异;

步骤S422,提取消除边缘差异后的未重叠部分,生成所述差值图。

进一步地,根据本发明的一些实施例,所述步骤S43包括:

消除所述差值图中的离散的点,根据去除离散点后的残留图像进行比较,确定所述比较结果,

其中,当所述差值图中的像素值小于等于预定阈值时,确定该原始文字图像中的文字与该目标文字图像中的目标文字一致,并以该目标文字图像中的文字作为识别结果。

更进一步地,根据本发明的一些实施例,通过中值滤波法消除所述差值图中的离散的点。

第二方面,本发明提供一种检索图片中的关键字的方法,包括如下步骤:

提供原始图片;

对所述原始图片进行OCR识别,以获得识别文字;

在所述识别文字中进行所述关键字检索,

其中,当仅仅匹配到部分关键字时,确定该部分关键字前后预定字段所对应的原始图片片段,

切割该原始图片片段,并对所述原始图片片段中的文字通过上述任一项所述的识别方法进行识别,得到识别结果,

根据所述识别结果,确定有无所述关键字。

第三方面,本发明提供一种图片中文字的识别装置,包括:

获取模块,用于获取原始文字图像;

目标文字生成模块,用于根据所述原始文字图像进行OCR识别,生成目标文字;

目标文字打印模块,用于根据所述目标文字生成目标文字图像;

比较模块,用于将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;

识别结果生成模块,用于基于比较结果生成最终识别结果。

第四方面,本发明实施例提供一种电子设备,包括:处理器;和存储器,在所述存储器中存储有计算机程序指令,

其中,在所述计算机程序指令被所述处理器运行时,使得所述处理器执行以下步骤:

步骤S1,提供原始文字图像;

步骤S2,根据所述原始文字图像进行OCR识别,生成目标文字;

步骤S3,根据所述目标文字生成目标文字图像;

步骤S4,将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;

步骤S5,基于比较结果,生成最终识别结果。

第五方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器运行时,使得所述处理器执行以下步骤:

步骤S1,提供原始文字图像;

步骤S2,根据所述原始文字图像进行OCR识别,生成目标文字;

步骤S3,根据所述目标文字生成目标文字图像;

步骤S4,将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;

步骤S5,基于比较结果,生成最终识别结果。

本发明的上述技术方案至少具有如下有益效果之一:

根据本发明的图片中文字的识别方法,结合OCR识别与图像比对,能够矫正OCR识别错误,能够提高识别的准确度;

本发明实施例的检索图片中的关键字的方法不需要大量样图,本方案动态生成待检测字的不同字体和字号的图像,不需要预先建立样本库,也不存在待检测图片不在样本库的情况。

附图说明

图1为根据本发明一实施例的图片中文字的识别方法的流程图;

图2为根据本发明另一实施例中的图像的比较过程的流程图;

图3为根据本发明实施例的图片中文字的识别方法在识别过程每个阶段的处理结果示意图;

图4为根据本发明一实施例的检索图片中的关键字的方法的流程图;

图5为根据本发明实施例的图片中文字的识别装置的示意图;

图6为根据本发明实施例的电子设备的示意图。

具体实施方式

下面将结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

首先,结合图4说明根据本发明实施例的检索图片中的关键字的方法的流程图。

如图4所示,根据本发明实施例的检索图片中的关键字的方法,包括:

步骤101、提供原始图片。

也就是说,准备需要在其中检索关键字的原始图片。

步骤102、对所述原始图片进行OCR识别,以获得识别文字。

其中,具体的OCR识别方法可以通过常规的算法进行,在此不再进行详细说明。

当然,在对所述原始图片进行OCR识别之前,也可以进行适当的图像预处理,例如,进行滤波以去除部分噪点、或者根据拍摄该图片的具体灯光环境、背景等对图片进行亮度处理、去除背景光、背景图等等。

步骤103、在所述识别文字中检索有无所述关键字。

接下来,在所述识别文字中检索有无关键字。

当存在所述关键字时,结束,并输出。

当判断为不存在所述关键字时,同样地,结束并输出。

当仅仅匹配到部分关键字时,根据现有技术,通常被判断为不存在该关键字。而根据本发明,还包括如下步骤:

步骤104、确定该部分关键字前后预定字段所对应的原始图片片段;

切割该原始图片片段,并对所述原始图片片段中的文字进行识别,得到识别结果;

根据所述识别结果,确定有无所述关键字。

其中,对于所述原始图片片段中的文字进行识别的具体方法,适用根据下述的本发明的第一方面的图片中文字的识别方法。

也就是说,为了防止OCR识别错误,根据本发明,以识别出的部分关键字的前后预定字段所对应的图片片段作为处理对象,进行图片中文字的再识别。

此处,需要说明的是,所谓“预定字段”,根据所检索的关键字的字段长度等等可以适当确定。

此处,需要说明的是,所谓“部分关键字”,当关键字为词时包括该词中的一部分字,例如所检索的关键词为“区块链”,识别文字中存在“区块”、“区块连”、“匹块链”、“区决链”等等,此外,还包括关键字中的一部分(字形中的一部分),例如所检索的关键字为“び”,识别文字中存在“ひ”、“ぴ”等。

由此,本发明实施例的检索图片中的关键字的方法不需要大量样图,本方案动态生成待检测字的不同字体和字号的图像,不需要预先建立样本库,也不存在待检测图片不在样本库的情况。

下面,结合图1-图2详细说明根据本发明实施例的图片中文字的识别方法。

根据本发明实施例的图片中文字的识别方法,如图1所示,包括如下步骤:

步骤S1,提供原始文字图像。

例如,上述提及的部分关键字前后预定字段所对应的原始图片片段。

当然,需要留意的是,根据本发明实施例的图片中文字的识别方法并不限于对于上述的原始图片片段中的文字进行识别处理,其也可以对整个图片中的文字进行识别处理。

进一步地,可以对于原始文字图像进行处理,例如,步骤S1可以包括如下步骤:

提供原图;

将所述原图以单个文字作为单位进行切割,形成单个文字图像,以所述单个文字图像作为所述原始文字图像。

也就是说,在后续的识别、比较中,逐个字进行识别、比较,有利于提高计算准确度。

优选地,将该原始文字图像生成灰度图像,并对其进行二值化,以便于后续的比较。

另外,也可以在将所述原图以单个文字作为单位进行切割,进行适当放大,例如放大到48px(该像素具有足够的可识别性,从而可以提高相对的计算精度的同时,不会产生过大的计算量。),将放大后的图作为原始文字图像进行后续的识别、比较等。

步骤S2,根据所述原始文字图像进行OCR识别,生成目标文字。

接下来,对于所述原始文字图像进行OCR识别,生成目标文字。

根据本发明的一些实施例,步骤S2可以包括:

根据所述原始文字图像进行OCR识别,得到OCR识别文字;

根据所述OCR识别文字,调用与其具有预定相似度的文字,生成所述目标文字。

也就是说,例如,以日文的假名“ひ”为例,当OCR识别结果为“ひ”时,除了“ひ”本身之外,还将与其具有一定相似度的文字,例如在其基础上衍生出的“び”、以及“ぴ”也调用出来,生成目标文字。换言之,相对于识别结果“ひ”,生成目标文字“ひ”、“び”、以及“ぴ”。

步骤S3,根据所述目标文字生成目标文字图像。

接着,根据目标文字,生成目标文字图像。

具体而言,例如,首先,基于所述原始文字图像中的文字的高宽比,确定其字号和/或字体(步骤S6);此后,以该字号和/或字体,分别打印所述目标文字,生成所述目标文字图像。

考虑到不同字号、不同字体的文字图像之间进行比对的话,会存在一定的误差,且其计算量也会增加。针对此问题,根据本发明的一些实施例,根据原始文字图像中的文字特征即高宽比,确定其字号和/或字体,然后,以该字号和/或字体,分别打印所述目标文字,生成所述目标文字图像。

至于文字打印成文字图像的方法,例如,可以通过font文件进行打印。

例如,将font文件通过“freetype2”(一种文字渲染引擎),将需要的目标文字装载到内存,再通过“freetype2”将需要的文字打印成图片,从而形成目标文字图像。

步骤S4,将所述原始文字图像与所述目标文字图像进行比较,得到比较结果。

此后,将所述原始文字图像与所述目标文字图像进行比较。

例如,根据本发明的一些实施例,如图2所示,所述步骤S4包括:

步骤S41,将所述原始文字图像与各个所述目标文字图像分别进行叠加,得到叠加图。

也就是说,将一个一个所述目标文字图像与所述原始文字图像逐一进行叠加,分别形成各叠加图。

步骤S42,提取所述叠加图中的未重叠部分,生成差值图。

然后,提取叠加图中的未重叠部分,生成差值图。

根据本发明的一些实施例,为了消除由于字体的宽度等产生的边缘差异,可以进行如下的边缘差异消除计算。

具体地,根据本发明的一些实施例,所述S42步骤包括:

步骤S421,对所述目标文字图像和/或所述原始文字图像进行扩宽或收窄,以消除所述叠加图中的两者的边缘差异;

步骤S422,提取消除边缘差异后的未重叠部分,生成所述差值图。

也就是说,通过对所述目标文字图像和/或所述原始文字图像进行扩宽或收窄,使得两者在所述叠加图中形成最大可能的重叠,由此来消除两者的边缘差异,在此基础上进行计算能够进一步提高比较结果的准确性。

步骤S43,根据所述差值图中的像素值,确定所述比较结果。

此后,根据所述差值图中的像素值,确定所述比较结果。

进一步地,根据本发明的一些实施例,所述步骤S43包括:

消除所述差值图中的离散的点,根据去除离散点后的残留图像进行比较,确定所述比较结果。

其中,当所述差值图中的像素值小于等于预定阈值时,确定该原始文字图像中的文字与该目标文字图像中的目标文字一致,并以该目标文字图像中的文字作为识别结果。

更进一步地,根据本发明的一些实施例,通过中值滤波法消除所述差值图中的离散的点。

具体地,在中值滤波法中,例如,可以根据不同语种、字体、符号选择不同的阈值,例如英文字符,由于其字形较为平滑,选择一个较低的阈值,相对于此,中日韩字符由于笔画交点多、字形复杂等原因,可以选择一个较高的阈值,随后根据阈值的高低选择不同的中值滤波(Median Filter)的次数,将离散的点过滤掉,形成比较结果。

步骤S5,基于比较结果,生成最终识别结果。

下面,以日文文字图像为例,进一步说明根据本发明的图片中文字的识别方法。

图3示出了根据本发明实施例的图片中文字的识别方法在识别过程每个阶段的处理结果示意图。

由图3可知,对于原始文字图像进行OCR识别后,确定了其具有3个目标文字“ひ”、“び”、以及“ぴ”。因此,分别对该3个目标文字,基于原始文字图像中的字体和字号进行打印,生成3副目标文字图像,此后,将该3副目标文字图像分别与原始文字图像进行比较,最终确定,目标文字“び”与原始文字图像中的文字相一致,从而作为最终识别结果,输出“び”。

如此,对于部分匹配的关键字,可以将其前后字段进行识别,以确定是否存在关键字,从而避免由于OCR识别错误导致的漏检等。

下面,结合图5,说明根据本发明实施例的图片中文字的识别装置。

如图5所示,本发明实施例的图片中文字的识别装置1000,包括:

获取模块1001,用于获取原始文字图像;

目标文字生成模块1002,用于根据所述原始文字图像进行OCR识别,生成目标文字;

目标文字打印模块1003,用于根据所述目标文字生成目标文字图像;

比较模块1004,用于将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;

识别结果生成模块1005,用于基于比较结果生成最终识别结果。

此外,如图6所示,本发明实施例提供了一种电子设备,包括:处理器1401和存储器1402,在所述存储器1402中存储有计算机程序指令,其中,在所述计算机程序指令被所述处理器运行时,使得所述处理器1401执行以下步骤:

步骤S1,提供原始文字图像;

步骤S2,根据所述原始文字图像进行OCR识别,生成目标文字;

步骤S3,根据所述目标文字生成目标文字图像;

步骤S4,将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;

步骤S5,基于比较结果,生成最终识别结果。

进一步地,如图6所示,电子设备还包括网络接口1403、输入设备1404、硬盘1405、和显示设备1406。

上述各个接口和设备之间可以通过总线架构互连。总线架构可以是包括任意数量的互联的总线和桥。具体由处理器1401代表的一个或者多个中央处理器(CPU),以及由存储器1402代表的一个或者多个存储器的各种电路连接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其它电路连接在一起。可以理解,总线架构用于实现这些组件之间的连接通信。总线架构除包括数据总线之外,还包括电源总线、控制总线和状态信号总线,这些都是本领域所公知的,因此本文不再对其进行详细描述。

所述网络接口1403,可以连接至网络(如因特网、局域网等),从网络中获取相关数据,并可以保存在硬盘1405中。

所述输入设备1404,可以接收操作人员输入的各种指令,并发送给处理器1401以供执行。所述输入设备1404可以包括键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等)。

所述显示设备1406,可以将处理器1401执行指令获得的结果进行显示。

所述存储器1402,用于存储操作系统运行所必须的程序和数据,以及处理器1401计算过程中的中间结果等数据。

可以理解,本发明实施例中的存储器1402可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)或闪存。易失性存储器可以是随机存取存储器(RAM),其用作外部高速缓存。本文描述的装置和方法的存储器1402旨在包括但不限于这些和任意其它适合类型的存储器。

在一些实施方式中,存储器1402存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统14021和应用程序14014。

其中,操作系统14021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序14014,包含各种应用程序,例如浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序14014中。

上述处理器1401,当调用并执行所述存储器1402中所存储的应用程序和数据,具体的,可以是应用程序14014中存储的程序或指令时,执行如下操作:提供原始文字图像;根据所述原始文字图像进行OCR识别,生成目标文字;根据所述目标文字生成目标文字图像;将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;基于比较结果,生成最终识别结果。

本发明上述实施例揭示的方法可以应用于处理器1401中,或者由处理器1401实现。处理器1401可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1401中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1401可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1402,处理器1401读取存储器1402中的信息,结合其硬件完成上述方法的步骤。

可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑设备(PLD)、现场可编程门阵列(FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。

对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。

另外,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器运行时,使得所述处理器执行以下步骤:

步骤S1,提供原始文字图像;

步骤S2,根据所述原始文字图像进行OCR识别,生成目标文字;

步骤S3,根据所述目标文字生成目标文字图像;

步骤S4,将所述原始文字图像与所述目标文字图像进行比较,得到比较结果;

步骤S5,基于比较结果,生成最终识别结果。

在本申请所提供的几个实施例中,应该理解到,所揭露方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述收发方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁盘或者光盘等各种可以存储程序代码的介质。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号