一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种文本识别方法、文本识别装置及扫描笔与流程

2022-06-02 12:22:02 来源:中国专利 TAG:


1.本技术属于图像处理技术领域,尤其涉及一种文本识别方法、文本识别装置、扫描笔及计算机可读存储介质。


背景技术:

2.扫描笔的外表类似于笔,是一种手持式设备,用户手握扫描笔即可实现文本的扫描录入。针对扫描录入的文本,扫描笔可实现显示、词义解释、翻译及语音播报等多种功能操作。扫描笔在进行扫描录入时,通常会实时将扫描采集的图像帧拼接成临时图像,再将拼接好的临时图像送到光学字符识别(optical character recognition,ocr)模块进行字符识别,并将识别结果实时显示在屏幕上。
3.由于进行ocr识别的时机存在随机性,所以在某一时刻,拼接好的临时图像的尾部的最后一个字符有可能并不完整,也就是出现了字符截断,这可能影响到文本识别的准确性。


技术实现要素:

4.本技术提供了一种文本识别方法、文本识别装置、扫描笔及计算机可读存储介质,可以保障文本识别的准确性。
5.第一方面,本技术提供了一种文本识别方法,包括:
6.对待识别文本图像进行文本检测,获得文本框;
7.计算上述文本框与上述待识别文本图像的边界的距离;
8.若上述距离小于预设的距离阈值,则通过基于联接时间分类(connectionist temporal classification,ctc)的文本识别算法对上述文本框内的文本内容进行识别,得到ctc识别结果;
9.基于上述ctc识别结果,判断是否存在切分需求;
10.若存在切分需求,则对上述ctc识别结果进行切分处理,并基于切分后的上述ctc识别结果得到文本识别结果。
11.第二方面,本技术提供了一种文本识别装置,包括:
12.检测模块,用于对待识别文本图像进行文本检测,获得文本框;
13.计算模块,用于计算上述文本框与上述待识别文本图像的边界的距离;
14.识别模块,用于若上述距离小于预设的距离阈值,则通过基于ctc的文本识别算法对上述文本框内的文本内容进行识别,得到ctc识别结果;
15.判断模块,用于基于上述ctc识别结果,判断是否存在切分需求;
16.切分模块,用于若存在切分需求,则对上述ctc识别结果进行切分处理,并基于切分后的上述ctc识别结果得到文本识别结果。
17.第三方面,本技术提供了一种扫描笔,上述扫描笔包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时
实现如上述第一方面的方法的步骤。
18.第四方面,本技术提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。
19.第五方面,本技术提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。
20.本技术与现有技术相比存在的有益效果是:通过文本框与待识别文本图像的边界的距离,初步判定是否存在字符截断的可能。当发现该距离小于预设的距离阈值时,认为字符截断的可能性较大,此时再通过基于ctc的文本识别算法对文本框内的文本内容进行识别,将该文本识别算法所输出的中间结果,也即ctc识别结果作为分析的对象,进一步分析是否存在切分需求。在存在切分需求时,对该ctc识别结果进行切分处理,并基于切分后的ctc识别结果得到准确的文本识别结果。上述过程可以避免被截断的字符对文本识别结果的影响,保障了单次文本识别的准确性。
21.可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
22.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1是本技术实施例提供的文本识别方法的实现流程示意图;
24.图2是本技术实施例提供的文本框的示例图;
25.图3是本技术实施例提供的文本框与待识别文本图像的边界的距离的示例图;
26.图4是本技术实施例提供的中间切分位置及目标切分位置的示例图;
27.图5是本技术实施例提供的文本识别方法的应用场景示例图;
28.图6是本技术实施例提供的文本识别装置的结构框图;
29.图7是本技术实施例提供的扫描笔的结构示意图。
具体实施方式
30.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
31.为了说明本技术所提出的技术方案,下面通过具体实施例来进行说明。
32.下面对本技术实施例所提出的文本识别方法作出说明。请参阅图1,该文本识别方法的实现流程详述如下:
33.步骤101,对待识别文本图像进行文本检测,获得文本框。
34.在本技术实施例中,扫描笔在通过摄像头所实时采集的扫描画面获取到了待识别文本图像后,可通过预设的文本检测算法,对该待识别文本图像中是否存在文本内容进行
检测。仅作为示例,该文本检测算法可以是连接文本提议网络(connectionist text proposal network,ctpn)算法,当然也可以是其它类型的算法,此处不作限定。
35.在文本检测算法检测出文本内容的情况下,该文本检测算法可输出对应的文本框,包括该文本框的各个顶点在该待识别文本图像中的坐标。可以理解,文本框实际上框选出了待识别文本图像中所包含的文本内容。仅作为示例,该文本框可具体为:该待识别文本图像中所包含的文本内容的最小包围矩形框。
36.为便于理解,请参阅图2。图2给出了对某一待识别文本图像进行文本检测后所获得的文本框的示例。
37.步骤102,计算文本框与待识别文本图像的边界的距离。
38.在本技术实施例中,考虑到现实生活中,文本内的字符通常是横向从左至右进行排列;用户使用扫描笔进行扫描时,也通常是横向从左至右对文本进行扫描。因而,基于常见的扫描操作,待识别文本图像所发生的截断情况通常指的是待识别文本图像的右边界对文本最右侧的字符的截断,导致该最右侧的字符显示不完全。基于此,本步骤中所提出的待识别文本图像的边界,通常指的是待识别文本图像的右边界。也即,扫描笔在通过文本检测得到了文本框后,可计算该文本框与待识别文本图像的右边界的距离。
39.步骤103,若距离小于预设的距离阈值,则通过基于ctc的文本识别算法对文本框内的文本内容进行识别,得到ctc识别结果。
40.在本技术实施例中,在待识别文本图像中文本最右侧的字符被右边界截断时,文本框会与该右边界较为接近。基于此,扫描笔中预先设定了一距离阈值。当步骤102中所计算出的距离小于该距离阈值时,认为当前有一定可能出现文本被截断的情况。此时扫描笔会通过基于ctc的文本识别算法对文本框内的文本内容进行识别。其中,ctc是一种用于解决输入序列和输出序列难以一一对应这一问题的技术,常用于语音识别及ocr中。
41.对于基于ctc的文本识别算法来说,ctc识别结果是该文本识别方法的中间输出,而非最终输出。其中,ctc识别结果具体表现为:多个输出值所构成的序列。
42.步骤104,基于ctc识别结果,判断是否存在切分需求。
43.在本技术实施例中,扫描笔可基于该ctc识别结果对文本框所框选出的文本内容再进行分析,以进一步确定是否出现了文本最右侧的字符被截断的情况。若基于ctc识别结果确定文本最右侧的字符被截断,则存在切分需求;反之,若基于ctc识别结果确定文本最右侧的字符未被截断,则不存在切分需求。
44.步骤105,若存在切分需求,则对ctc识别结果进行切分处理,并基于切分后的ctc识别结果得到文本识别结果。
45.在本技术实施例中,若通过步骤104得知存在切分需求,则扫描笔可先对ctc识别结果进行切分处理,具体为:在ctc识别结果中,将因文本被截断而导致的可能存在识别错误的输出值删除。由于可能存在识别错误的输出值已从ctc识别结果中删除,因而,扫描笔基于切分后的ctc识别结果即可得到准确的文本识别结果,避免了被截断的最右侧字符对文本识别结果的干扰。
46.可以理解,如果通过步骤102所计算出的距离不小于距离阈值,则认为不存在字符被截断的可能。此时扫描笔正常对文本框所框选出的文本图像进行文本识别即可获得准确的文本识别结果,无需再对ctc识别结果进行分析。类似地,如果通过步骤104判断出不存在
切分需求,则无需对ctc识别结果作出任何调整,直接基于未调整的ctc识别结果即可获得准确的文本识别结果。
47.在一些实施例中,用户在移动扫描笔进行扫描时可能出现动作不规范的情况,这可能导致待识别文本图像中所包含的文本行处于非水平的状态;相应地,步骤101中所获得的文本框在该待识别文本图像中也会处于非水平的状态。基于此,步骤102可具体包括:
48.a1、确定顶点最大横坐标值。
49.其中,顶点最大横坐标值指的是:文本框的各个顶点的横坐标值中的最大值。仅作为示例,通常文本框为矩形,其有四个顶点,可分别记作v1、v2、v3及v4。假定v1的坐标为(x1,y1),v2的坐标为(x2,y2),v3的坐标为(x3,y3),v4的坐标为(x4,y4),则扫描笔可对x1、x2、x3及x4进行比较,以确定出其中的最大值。该最大值即为顶点最大横坐标值。
50.可以理解的是,在未特殊说明的情况下,本技术实施例所提出的与坐标相关的各个概念均指的是:在待识别文本图像的像素坐标系下的坐标。
51.a2、确定图像最大横坐标值。
52.其中,图像最大横坐标值指的是:待识别文本图像的各个像素点的横坐标值中的最大值。考虑到待识别文本图像一般为规则的矩形,且像素坐标系的原点为待识别文本图像的左上顶点,因而通常情况下,该图像最大横坐标值即为待识别文本图像的右边界的横坐标值。
53.a3、将图像最大横坐标值与顶点最大横坐标值的差值确定为文本框与待识别文本图像的边界的距离。
54.扫描笔可将图像最大横坐标值与顶点最大横坐标值的差值作为文本框与待识别文本图像的边界的距离。可以理解,该距离是以像素为单位。
55.为便于理解,请参阅图3。图3给出了水平的文本框及非水平的文本框分别与待识别文本图像的边界的距离的示例。其中,d1是水平的文本框与待识别文本图像的边界的距离。d2是非水平的文本框与待识别文本图像的边界的距离。
56.在一些实施例中,为了在文本框与待识别文本图像的边界的距离小于距离阈值的情况下,准确判断是否有切分需求,步骤104可以包括:
57.b1、检测ctc识别结果中的后n个输出值中,是否存在有效输出值。
58.ctc可以理解为是将文本框所框选出的文本图像,划分为若干个等长的片段,每个片段都会有一个输出值。该输出值可能是有效字符,也可能是空。仅作为示例,当输出值为空时,该输出值为给定的字符φ;当然,也可以定义其它字符表示输出值为空,此处不作限定。可以理解,当输出值为有效字符时,该输出值即为有效输出值。记文本框所框选出的文本图像的宽度为w,划分出的片段数量为num,则每个片段的长度w1=w/num。也即,ctc识别结果为:num个输出值所构成的序列。
59.正如前文所提到的,截断现象一般发生在尾部;也即一般是文本框内最后的字符发生了截断。基于此,扫描笔预先设定一数值n,并只在ctc识别结果的后n个输出值中进行遍历,这样可以在保证截断检测的准确率的情况下,有效提升截断检测的效率。其中,n为正整数,且n<num。
60.b2、若后n个输出值中存在有效输出值,则确定存在切分需求。
61.当在后n个输出值中存在有效输出值时,认为最后一个字符非常可能出现截断,此
时确定存在切分需求。后续在对ctc识别结果进行切分处理时,可以将该ctc识别结果中的最后一个有效输出值直接删除,即可使得最终所获得的文本识别结果不受到可能发生截断的字符的影响。
62.在一些实施例中,扫描笔在扫描录入的过程中是不间断的在拼接图像。而在进行文本识别时,拼接图像中可能存在部分图像已被识别(也即先扫描的部分已被识别),部分图像还未被识别(也即后扫描的部分还未被识别)。为了保障文本识别的效率,扫描笔并不会对已识别的部分进行重复识别。由于通过步骤101-105,扫描笔实际并未对待识别文本图像中的可能发生截断的字符进行识别,因而为了确保该被截断的字符完整的出现在下一次的待识别文本图像中,在步骤105之后,该文本识别方法还包括:
63.c1、在待识别文本图像中确定目标切分位置。
64.在本技术实施例中,扫描笔可以在待识别文本图像中确定出一切分位置,记作目标切分位置。其中,该目标切分位置可以通过对ctc识别结果进行分析而确定,具体包括如下过程:
65.c11、在ctc识别结果中的后n个输出值所存在的有效输出值中,确定目标有效输出值。
66.可以理解,如果后n个输出值中仅存在唯一的有效输出值,则该唯一的有效输出值即可被确定为目标有效输出值;如果后n个输出值中存在两个以上有效输出值,则考虑到截断通常会发生在文本框内的最后一个字符中,扫描笔会在该两个以上有效输出值中,将排序最后的有效输出值确定为目标有效输出值。
67.c12、基于目标有效输出值,在待识别文本图像中确定目标切分位置。
68.可以理解,由于ctc识别结果为num个输出值所构成的序列,因而可从1开始对输出值有序进行编号;也即,每个输出值在该ctc识别结果中均有唯一的索引号,该索引号的取值范围为:1、2、3、
……
、num。由于ctc识别结果是通过扫描笔对文本框所框选的文本图像进行文本识别而得,因而扫描笔可以基于目标索引号在文本框中确定中间切分位置,其中,该目标索引号指的是:目标有效输出值在ctc识别结果中的索引号。为便于说明,可将该目标索引号记作i。之后,扫描笔再根据中间切分位置及文本框在待识别文本图像中的起始位置,即可确定出目标切分位置。也即,需要将文本框中的中间切分位置映射到待识别文本图像中,才可得到待识别文本图像中的目标切分位置。
69.在文本框为水平的状态下:记文本框的起始位置为j,则目标切分位置可以表示为:i*w1 j或者(i-1)*w1 j;也即,文本框的左边界的横坐标为j,目标切分位置为横坐标为i*w1 j所表示的线段,或者横坐标为(i-1)*w1 j所表示的线段。
70.请参阅图4,图4给出了中间切分位置及目标切分位置的示例。
71.c2、获取新的待识别文本图像,并基于新的待识别文本图像返回执行步骤101及后续步骤。
72.扫描笔在下个时刻所获得的拼接图像中,既包含有已识别的图像区域,也包含有未识别的图像区域,二者具体是通过最近一次所确定的目标切分位置而划分的。基于此,扫描笔可通过拼接图像获取新的待识别文本图像,其中,该新的待识别文本图像的起始位置是基于该目标切分位置而确定的。也即,可以将该目标切分位置映射至当前所获得的拼接图像中,以此获得新的待识别文本图像。显然,通过上述步骤c1及c2,可以确保被截断的字
符能够完整的出现在下一次的待识别文本图像。
73.为便于理解上述步骤101-105及步骤c1-c2,请参阅图5,图5给出了具体的场景示例:
74.扫描笔在t0时刻开始本次扫描,并在t1时刻第一次进行了图像拼接,获得了t1时刻下的拼接图像i1。由于本次扫描过程中,在得到该拼接图像i1之前,还未进行过文本识别,因而,该拼接图像i1即为第1次的待识别文本图像。基于该第1次的待识别文本图像执行各步骤的过程,具体为:通过步骤102,确定距离小于距离阈值;通过步骤103,得到第1次的待识别文本图像的ctc识别结果“φ雷φφφφφφφ锋φφφφφφ寸φφφ”;假定n为5,则通过步骤104,可知存在切分需求;通过步骤c1及c2,确定了该拼接图像i1中的目标切分位置p1。也即,在拼接图像i1中,目标切分位置p1之前的图像区域已完成了识别。
75.之后,扫描笔在t2时刻第二次进行了图像拼接,获得了t2时刻下的拼接图像i2。显然,拼接图像i2是在拼接图像i1的基础上,又拼接了新的图像。也即拼接图像i1是拼接图像i2的一部分。由于本次扫描过程中,在得到该拼接图像i2之前,已进行过文本识别,且前次文本识别输出了目标切分位置p1,因而,扫描笔可以在该拼接图像i2中找到该目标切分位置p1。显然,该目标切分位置p1处之前(也即左侧)的图像已被识别,该目标切分位置p1处之后(也即右侧)的图像还未被识别。扫描笔即可基于该目标切分位置p1对拼接图像i2进行切分,得到第2次的待识别文本图像。显然,该第2次的待识别文本图像的起始位置即为基于第1次(也即前一次)的待识别文本图像所输出的目标切分位置p1。基于该第2次的待识别文本图像执行各步骤的过程,具体为:通过步骤102,确定距离小于距离阈值;通过步骤103,得到第2次的待识别文本图像的ctc识别结果“φ叔φφφφφ叔φφφφφφφφ,φφφφφφ你φφφφφφφ在φφφ”;通过步骤104,可知存在切分需求;通过步骤c1及c2,确定了该第2次的待识别文本图像中的目标切分位置p2。也即,在拼接图像2中,目标切分位置p2之前的图像区域已完成了识别。
76.接着,扫描笔在t3时刻第三次进行了图像拼接,获得了t3时刻下的拼接图像i3。显然,拼接图像i3是在拼接图像i2的基础上,又拼接了新的图像。也即拼接图像i2是拼接图像i3的一部分。由于本次扫描过程中,在得到该拼接图像i3之前,已进行过文本识别,且前次文本识别输出了目标切分位置p2,因而,扫描笔可以在该拼接图像i3中找到该目标切分位置p2。显然,该目标切分位置p2处之前(也即左侧)的图像已被识别,该目标切分位置p2处之后(也即右侧)的图像还未被识别。扫描笔即可基于该目标切分位置p2对拼接图像i3进行切分,得到第3次的待识别文本图像。显然,该第3次的待识别文本图像的起始位置即为基于第2次(也即前一次)的待识别文本图像所输出的目标切分位置p2。基于该第3次的待识别文本图像执行各步骤的过程,具体为:通过步骤102,确定距离大于距离阈值,表明出现字符截断的可能性很小。此时,无需进行任何切分处理,可直接基于ctc的文本识别算法正常输出该第3次的待识别文本图像的文本识别结果。
77.由上可见,通过本技术实施例,通过文本框与待识别文本图像的边界的距离,初步判定是否存在字符截断的可能。当发现该距离小于预设的距离阈值时,认为字符截断的可能性较大,此时再通过基于ctc的文本识别算法对文本框内的文本内容进行识别,将该文本识别算法所输出的中间结果,也即ctc识别结果作为分析的对象,进一步分析是否存在切分需求。在存在切分需求时,对该ctc识别结果进行切分处理,并基于切分后的ctc识别结果得
到准确的文本识别结果。上述过程可以避免被截断的字符对文本识别结果的影响,保障了单次文本识别的准确性。
78.对应于上文所提供的文本识别方法,本技术实施例还提供了一种文本识别装置。如图6所示,该文本识别装置600包括:
79.检测模块601,用于对待识别文本图像进行文本检测,获得文本框;
80.计算模块602,用于计算上述文本框与上述待识别文本图像的边界的距离;
81.识别模块603,用于若上述距离小于预设的距离阈值,则通过基于联接时间分类ctc的文本识别算法对上述文本框内的文本内容进行识别,得到ctc识别结果;
82.判断模块604,用于基于上述ctc识别结果,判断是否存在切分需求;
83.切分模块605,用于若存在切分需求,则对上述ctc识别结果进行切分处理,并基于切分后的上述ctc识别结果得到文本识别结果。
84.可选地,上述计算模块602,包括:
85.第一坐标值确定单元,用于确定顶点最大横坐标值,上述顶点最大横坐标值为:上述文本框的各个顶点的横坐标值中的最大值;
86.第二坐标值确定单元,用于确定图像最大横坐标值,上述图像最大横坐标值为:上述待识别文本图像的各个像素点的横坐标值中的最大值;
87.距离确定单元,用于将上述图像最大横坐标值与上述顶点最大横坐标值的差值确定为上述距离。
88.可选地,上述判断模块604,包括:
89.检测单元,用于检测上述ctc识别结果中的后n个输出值中,是否存在有效输出值,其中,上述n为预设的正整数,且上述n小于上述ctc识别结果所包含的输出值的总数;
90.确定单元,用于若上述后n个输出值中存在有效输出值,则确定存在切分需求。
91.可选地,上述文本识别装置600还包括:
92.位置确定模块,用于上述待识别文本图像中确定目标切分位置;
93.图像获取模块,用于获取新的待识别文本图像,并基于上述新的待识别文本图像触发上述检测模块601的运行,其中,上述新的待识别文本图像的起始位置基于上述目标切分位置而确定。
94.可选地,上述位置确定模块,包括:
95.目标有效输出值确定单元,用于在上述后n个输出值所存在的有效输出值中,确定目标有效输出值;
96.目标切分位置确定单元,用于基于上述目标有效输出值,在上述待识别文本图像中确定目标切分位置。
97.可选地,上述目标有效输出值确定单元,具体用于若上述后n个输出值中存在唯一的有效输出值,则将上述唯一的有效输出值确定为上述目标有效输出值;若上述后n个输出值中存在两个以上有效输出值,则将上述两个以上有效输出值中,排序最后的有效输出值确定为上述目标有效输出值。
98.可选地,上述目标切分位置确定单元,包括:
99.中间区分位置确定子单元,用于基于目标索引号在上述文本框中确定中间切分位置,其中,上述目标索引号为:上述目标有效输出值在上述ctc识别结果中的索引号;
100.目标切分位置确定子单元,用于根据上述中间切分位置及上述文本框在上述待识别文本图像中的起始位置,确定上述目标切分位置。
101.由上可见,通过本技术实施例,通过文本框与待识别文本图像的边界的距离,初步判定是否存在字符截断的可能。当发现该距离小于预设的距离阈值时,认为字符截断的可能性较大,此时再通过基于ctc的文本识别算法对文本框内的文本内容进行识别,将该文本识别算法所输出的中间结果,也即ctc识别结果作为分析的对象,进一步分析是否存在切分需求。在存在切分需求时,对该ctc识别结果进行切分处理,并基于切分后的ctc识别结果得到准确的文本识别结果。上述过程可以避免被截断的字符对文本识别结果的影响,保障了单次文本识别的准确性。
102.对应于上文所提供的文本识别方法,本技术实施例还提供了一种扫描笔。请参阅图7,本技术实施例中的扫描笔7包括:存储器701,一个或多个处理器702(图7中仅示出一个)及存储在存储器701上并可在处理器上运行的计算机程序。其中:存储器701用于存储软件程序以及单元,处理器702通过运行存储在存储器701的软件程序以及单元,从而执行各种功能应用以及诊断,以获取上述预设事件对应的资源。具体地,处理器702通过运行存储在存储器701的上述计算机程序时实现以下步骤:
103.对待识别文本图像进行文本检测,获得文本框;
104.计算上述文本框与上述待识别文本图像的边界的距离;
105.若上述距离小于预设的距离阈值,则通过基于联接时间分类ctc的文本识别算法对上述文本框内的文本内容进行识别,得到ctc识别结果;
106.基于上述ctc识别结果,判断是否存在切分需求;
107.若存在切分需求,则对上述ctc识别结果进行切分处理,并基于切分后的上述ctc识别结果得到文本识别结果。
108.假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,上述计算上述文本框与上述待识别文本图像的边界的距离,包括:
109.确定顶点最大横坐标值,上述顶点最大横坐标值为:上述文本框的各个顶点的横坐标值中的最大值;
110.确定图像最大横坐标值,上述图像最大横坐标值为:上述待识别文本图像的各个像素点的横坐标值中的最大值;
111.将上述图像最大横坐标值与上述顶点最大横坐标值的差值确定为上述距离。
112.在上述第一种可能的实施方式作为基础而提供的第三种可能的实施方式中,上述基于上述ctc识别结果,判断是否存在切分需求,包括:
113.检测上述ctc识别结果中的后n个输出值中,是否存在有效输出值,其中,上述n为预设的正整数,且上述n小于上述ctc识别结果所包含的输出值的总数;
114.若上述后n个输出值中存在有效输出值,则确定存在切分需求。
115.在上述第三种可能的实施方式作为基础而提供的第四种可能的实施方式中,在上述对上述ctc识别结果进行切分处理,并基于切分后的上述ctc识别结果得到文本识别结果之后,处理器702通过运行存储在存储器701的上述计算机程序时还实现以下步骤:
116.在上述待识别文本图像中确定目标切分位置;
117.获取新的待识别文本图像,并基于上述新的待识别文本图像返回执行上述对待识别文本图像进行文本检测,获得文本框的步骤及后续步骤,其中,上述新的待识别文本图像的起始位置基于上述目标切分位置而确定。
118.在上述第四种可能的实施方式作为基础而提供的第五种可能的实施方式中,上述在上述待识别文本图像中确定目标切分位置,包括:
119.在上述后n个输出值所存在的有效输出值中,确定目标有效输出值;
120.基于上述目标有效输出值,在上述待识别文本图像中确定目标切分位置。
121.在上述第五种可能的实施方式作为基础而提供的第六种可能的实施方式中,上述在上述后n个输出值所存在的有效输出值中,确定目标有效输出值,包括:
122.若上述后n个输出值中存在唯一的有效输出值,则将上述唯一的有效输出值确定为上述目标有效输出值;
123.若上述后n个输出值中存在两个以上有效输出值,则将上述两个以上有效输出值中,排序最后的有效输出值确定为上述目标有效输出值。
124.在上述第五种可能的实施方式作为基础而提供的第七种可能的实施方式中,上述基于上述目标有效输出值,在上述待识别文本图像中确定目标切分位置,包括:
125.基于目标索引号在上述文本框中确定中间切分位置,其中,上述目标索引号为:上述目标有效输出值在上述ctc识别结果中的索引号;
126.根据上述中间切分位置及上述文本框在上述待识别文本图像中的起始位置,确定上述目标切分位置。
127.应当理解,在本技术实施例中,所称处理器702可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
128.存储器701可以包括只读存储器和随机存取存储器,并向处理器702提供指令和数据。存储器701的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器701还可以存储设备类别的信息。
129.由上可见,通过本技术实施例,通过文本框与待识别文本图像的边界的距离,初步判定是否存在字符截断的可能。当发现该距离小于预设的距离阈值时,认为字符截断的可能性较大,此时再通过基于ctc的文本识别算法对文本框内的文本内容进行识别,将该文本识别算法所输出的中间结果,也即ctc识别结果作为分析的对象,进一步分析是否存在切分需求。在存在切分需求时,对该ctc识别结果进行切分处理,并基于切分后的ctc识别结果得到准确的文本识别结果。上述过程可以避免被截断的字符对文本识别结果的影响,保障了单次文本识别的准确性。
130.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可
以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
131.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
132.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
133.在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
134.上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
135.上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关联的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。
136.以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献