掌桥专利:专业的专利平台
掌桥专利
首页

信息处理装置、信息处理方法及计算机可读记录介质

文献发布时间:2023-06-19 12:14:58


信息处理装置、信息处理方法及计算机可读记录介质

技术领域

本公开涉及信息处理领域,具体涉及一种对文本行的路径轨迹上的倾斜和/或弯曲进行校正的信息处理装置、信息处理方法及计算机可读记录介质。

背景技术

OCR技术(光学字符识别)被广泛应用于例如邮政服务、金融、保险、税收行业,为提高工业及生活效率带来了便利。准确且自动的文本识别结果能够提供更多的信息,节约劳动力。现有的高性能识别引擎通常只能对单行文本串图像进行处理,而实际文档图像常常包含很多文本行。因此,文档图像通常需要进行预先文本行切分后再进行处理。传统的文本行切分方法是基于文本行像素分布,将整张文本图像投影到固定方向上,通过像素值空白区域来判断分割点。这种方法通常只能处理常规文本行图像,当手写文档图像存在弯曲、变形等情况下并不能很好地切割图像。

发明内容

在下文中给出了关于本公开的简要概述,以便提供关于本公开的某些方面的基本理解。但是,应当理解,这个概述并不是关于本公开的穷举性概述。它并不是意图用来确定本公开的关键性部分或重要部分,也不是意图用来限定本公开的范围。其目的仅仅是以简化的形式给出关于本公开的某些概念,以此作为稍后给出的更详细描述的前序。

鉴于以上问题,本公开的目的是提供能够解决现有技术中的一个或多个缺点的信息处理装置和信息处理方法。

根据本公开的一方面,提供了一种信息处理装置,包括:检测单元,被配置成检测图像中包括的至少一个文本行中的每个文本行的起始点和末尾点;预测单元,被配置成针对每个文本行,根据基于该文本行的起始点从所述图像提取出的与起始点对应的图像块来预测该文本行的第一基线点,并且根据基于第N基线点从所述图像提取出的与第N基线点对应的图像块来预测该文本行的第N+1基线点,从而预测出用于表示该文本行的路径轨迹的多个基线点,其中,N=1,2,…,M,M为大于等于2的正整数;以及获得单元,被配置成基于每个文本行的所述起始点、所述多个基线点以及所述末尾点,获得该文本行的修正图像。

根据本公开的另一方面,提供了一种信息处理方法,包括:检测图像中包括的至少一个文本行中的每个文本行的起始点和末尾点;针对每个文本行,根据基于该文本行的起始点从图像提取出的与起始点对应的图像块来预测该文本行的第一基线点,并且根据基于第N基线点从图像提取出的与第N基线点对应的图像块来预测该文本行的第N+1基线点,从而预测出用于表示该文本行的路径轨迹的多个基线点,其中,N=1,2,…,M,M为大于等于2的正整数;以及基于每个文本行的起始点、多个基线点以及末尾点,获得该文本行的修正图像。

根据本公开的又一方面,提供了一种记录有程序的计算机可读记录介质,所述程序用于使得计算机执行以下步骤:检测图像中包括的至少一个文本行中的每个文本行的起始点和末尾点;针对每个文本行,根据基于该文本行的起始点从图像提取出的与起始点对应的图像块来预测该文本行的第一基线点,并且根据基于第N基线点从图像提取出的与第N基线点对应的图像块来预测该文本行的第N+1基线点,从而预测出用于表示该文本行的路径轨迹的多个基线点,其中,N=1,2,…,M,M为大于等于2的正整数;以及基于每个文本行的起始点、多个基线点以及末尾点,获得该文本行的修正图像。

根据本公开的其它方面,还提供了用于实现上述根据本公开的方法的计算机程序代码和计算机程序产品。

在下面的说明书部分中给出本公开实施例的其它方面,其中,详细说明用于充分地公开本公开实施例的优选实施例,而不对其施加限定。

附图说明

本公开可以通过参考下文中结合附图所给出的详细描述而得到更好的理解,其中在所有附图中使用了相同或相似的附图标记来表示相同或者相似的部件。所述附图连同下面的详细说明一起包含在本说明书中并形成说明书的一部分,用来进一步举例说明本公开的优选实施例和解释本公开的原理和优点。其中:

图1是示出根据本公开实施例的信息处理装置的功能配置示例的框图;

图2是示出根据本公开实施例的检测单元检测文本行的起始点和末尾点的示例的图;

图3是示出根据本公开实施例的从图像中提取出的与起始点对应的图像块的示例;

图4是示出根据本公开实施例的第一基线点的示例的图;

图5示出了根据本公开实施例的从图像中提取出的与第一基线点对应的图像块的示例;

图6示出了根据本公开实施例的文本行中的路径轨迹的示例;

图7示出了根据本公开实施例的获得文本行的修正图像的处理的示例;

图8示出了根据本公开实施例的与基线点对应的位置的示例;

图9示出了根据本公开实施例的文本行的修正图像的示例;

图10示出了根据本公开实施例的多边形的示意图;

图11示出了根据本公开实施例的第一形状和第二形状的示例;

图12示出了根据本公开实施例的最终的修正图像的示例;

图13是示出根据本公开实施例的信息处理方法的流程示例的流程图;以及

图14是示出作为本公开实施例中可采用的个人计算机的示例结构的框图。

具体实施方式

在下文中将结合附图对本公开的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。

在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本公开,在附图中仅仅示出了与根据本公开的方案密切相关的设备结构和/或处理步骤,而省略了与本公开关系不大的其它细节。

下面结合附图详细说明根据本公开的实施例。

首先,将参照图1描述本公开实施例的信息处理装置100的功能框图。图1是示出根据本公开实施例的信息处理装置100的功能配置示例的框图。如图1所示,根据本公开实施例的信息处理装置100包括检测单元102、预测单元104以及获得单元106。

检测单元102可以被配置成检测图像中包括的至少一个文本行中的每个文本行的起始点和末尾点。

作为示例,文本行可以是中文的文本行、日文的文本行、英文的文本行等等。作为示例,检测单元102可以同时预测每个文本行的起始点(Start-of-line,SOL)和末尾点(End-of-line,EOL)。作为示例,检测单元102可以预测SOL和EOL的候选并且把候选分为SOL或EOL。

作为示例,检测单元102可以被配置成将从图像中提取的图像分块依次输入到第二深度学习网络,计算表示图像分块中的点作为文本行的起始点或末尾点的置信度;以及在通过置信度确定图像分块中的点是文本行的起始点或末尾点的情况下,利用从第二深度学习网络输出的分类置信度将图像分块中的点分类为起始点或末尾点,从而检测到每个文本行的起始点和末尾点。

图2是示出根据本公开实施例的检测单元102检测文本行的起始点和末尾点的示例的图。为了便于描述,图2中示出的图像仅包括一个文本行,然而,本领域技术人员可以理解,如果图像中包括多个文本行,则可以从图像中提取包括每个文本行的图像,然后将包括每个文本行的图像分别输入到第二深度学习网络,就可以检测到每个文本行的起始点和末尾点。

如图2所示,检测单元102将图像分割成图像分块,在下文中,有时将图像称为原始图像。本领域技术人员可以根据实际应用场景来设置图像分块的大小。作为示例,可以设置图像分块的大小为16×16。作为示例,检测单元102可以利用边界框在图像上移动来从图像提取图像分块。

作为示例,深度学习网络可以从作为其输入的所提取的图像分块中提取图像分块中的每个像素点的七个特征。作为示例,可以利用第二深度学习网络提取(回归)所提取的图像分块中的每个像素点的位置信息(包括水平坐标信息和竖直坐标信息)、尺度信息、旋转信息、作为文本行的起始点或末尾点的置信度、分类置信度(包括“被分类为起始点的置信度”和“被分类为末尾点的置信度)”。其中,旋转信息例如是旋转角度,置信度例如是概率。尺度信息和旋转信息与文本行起始点的倾斜程度有关。

需要说明的是,为了方便描述,这里将检测单元102检测起始点和末尾点中涉及的深度学习网络称为第二深度学习网络,而将下文中预测基线点的位置和旋转信息的深度学习网络称为第一深度学习网络。这里的“第一”和“第二”仅用来区分不同的深度学习网络。作为示例,第一深度学习网络和第二深度学习网络都是经过训练的网络。

作为示例,第二深度学习网络可以是卷积神经网络CNN。作为示例,第二深度学习网络可以是截断的VGG-11网络。

作为示例,检测单元102可以在图像分块中的点的“作为文本行的起始点或末尾点的置信度”大于预定阈值的情况下,确定该点是文本行的起始点或末尾点。作为示例,可以根据实际应用场景确定预定阈值。

作为示例,检测单元102可以将具有最大“被分类为起始点的置信度”值的点检测为文本行的起始点,以及可以将具有最大“被分类为末尾点的置信度”值的点检测为文本行的末尾点。

从以上描述可知,根据本公开实施例的检测单元102可以精确地检测每个文本行的起始点和末尾点。

预测单元104被配置成针对每个文本行,根据基于该文本行的起始点从图像提取出的与起始点对应的图像块来预测该文本行的第一基线点,并且根据基于第N基线点从图像提取出的与第N基线点对应的图像块来预测该文本行的第N+1基线点,从而预测出用于表示该文本行的路径轨迹的多个基线点,其中,N=1,2,…,M,M为大于等于2的正整数。

基线点可以是单行文本中的某点,用来表明文本行的书写路径。基线点通常是文本行中字符上的像素点,代表着字符的位置。一旦预测出文本行的一系列基线点,就可以近似得到文本行的书写路径,从而进一步得到文本行图像。

由于检测单元102已经经由第二深度学习网络得到起始点的位置、尺度和旋转信息,因此可以根据基于起始点从图像提取出的与起始点对应的图像块来预测该文本行的第一基线点的位置、尺度和旋转信息。以此类推,可以根据基于第一基线点从图像提取出的与第一基线点对应的图像块来预测该文本行的第二基线点、可以根据基于第二基线点从图像提取出的与第二基线点对应的图像块来预测该文本行的第三基线点,重复上述步骤直到达到文本行图像的边缘,由此可以预测出用于表示该文本行的路径轨迹的多个基线点。这里需要说明的是,由于末尾点之后例如有时存在噪声(例如,文本行的末尾存在由于印刷造成的模糊等),因此可能在末尾点之后检测到基线点。

获得单元106被配置成基于每个文本行的起始点、多个基线点以及末尾点,获得该文本行的修正图像。

作为示例,每个文本行的修正图像可以是对该文本行的路径轨迹上的倾斜和/或弯曲进行校正的图像,从而获得单元106可以将任意角度弯曲的文本行图像拉直并归一化。

从以上描述可知,根据本公开实施例的信息处理装置100可以对文本行图像的路径轨迹上的倾斜和/或弯曲进行校正,从而可以将任意角度弯曲的文本行图像拉直,以便于进一步识别文本行。

作为示例,预测单元104可以被配置成利用基于起始点的信息的、与起始点对应的窗口单元,提取与起始点对应的图像块。

作为示例,窗口单元可以是图像窗口矩阵。

定义起始点的变换矩阵为:

在表达式1中,S

作为示例,起始点的窗口单元W

W

在表达式2中,

本领域技术人员还可以想到获得窗口单元W

作为示例,预测单元104可以被配置成利用窗口单元W

图3是示出根据本公开实施例的从图像中提取出的与起始点对应的图像块的示例。

图3中的方框可以表示与起始点对应的窗口单元W

作为示例,预测单元104可以被配置成:基于所预测出的第一基线点的信息对与起始点对应的窗口单元进行变换来得到与第一基线点对应的窗口单元,并且利用与第一基线点对应的窗口单元提取与第一基线点对应的图像块;基于所预测出的第N+1基线点的信息对与第N基线点对应的窗口单元进行变换来得到与第N+1基线点对应的窗口单元,并且利用与第N+1基线点对应的窗口单元提取与第N+1基线点对应的图像块;以及基于末尾点的信息对与紧挨末尾点之前的基线点对应的窗口单元进行变换来得到与末尾点对应的窗口单元,并且利用与末尾点对应的窗口单元提取与末尾点对应的图像块。

作为示例,起始点的信息可以包括起始点的位置信息、尺度信息以及旋转信息;第N+1基线点的信息包括第N+1基线点的位置信息、尺度信息以及旋转信息;末尾点的信息包括末尾点的位置信息、尺度信息以及旋转信息;每个文本行中的所有的基线点的尺度等于起始点的尺度;第一基线点的位置和旋转信息是预测单元104将与起始点对应的图像块输入到第一深度学习网络而预测得到的;以及第N+1基线点的位置和旋转信息是预测单元104将与第N基线点对应的图像块输入到第一深度学习网络而预测得到的。

每个文本行中的基线点的尺度可以等于起始点的尺度或不等于起始点的尺度。在下文中,为了便于描述,假设每个文本行中的所有的基线点的尺度可以等于起始点的尺度。上文中用S

作为示例,第一深度学习网络可以是卷积神经网络CNN。作为示例,CNN可以由七层3×3的核大小的卷积层组成,前六层的特征向量维数分别为64,128,256,256,512与512。批归一化(Batch Normalization,BN)可以被加入到第四层和第五层卷积层之后,池化层可以被加入到第一、二、四和六层卷积层之后,以及一个全卷积层可以被用于CNN最终的输出。

预测单元104可以将基于起始点从图像提取出的图像块输入到第一深度学习网络而预测得到第一基线点的θ

图4是示出根据本公开实施例的第一基线点的示例的图。在图4中,示出了第一基线点的示例。

可以基于θ

假设用W

W

本领域技术人员还可以想到获得窗口单元W

作为示例,预测单元104可以利用W

图5示出了根据本公开实施例的从图像中提取出的与第一基线点对应的图像块的示例。

图5中的方框可以表示与第一基线点对应的窗口单元W

作为示例,预测单元104可以将基于第N基线点从图像提取出的图像块输入到第一深度学习网络而预测得到第N+1基线点的旋转角度θ

重复上述处理直到达到文本行图像的边缘,可以预测出用于表示文本行的路径轨迹的多个基线点。

图6示出了根据本公开实施例的文本行中的路径轨迹的示例。

在图6中,将文本行中包括的起始点、基线点和末尾点连接起来的连线可以表示该文本行的路径轨迹。

可以基于θ

假设用W

W

通过表达式6,使得W

本领域技术人员还可以想到获得窗口单元W

作为示例,预测单元104可以利用W

如上所述,检测单元102在检测末尾点时可以经由第二深度学习网络获得末尾点的旋转信息和位置信息,利用上述信息以及紧挨末尾点之前的基线点的窗口单元,类似于表达式6,可以计算得到与末尾点对应的窗口单元。

作为示例,预测单元104可以利用与末尾点对应的窗口单元提取与末尾点对应的图像块。

图7示出了根据本公开实施例的获得文本行的修正图像的处理的示例。

如图7所示,预测单元104利用W

作为示例,获得单元106可以被配置成针对每个文本行:基于与起始点对应的窗口单元和与第一基线点对应的窗口单元获得与起始点对应的第一位置,在图像中对第一位置处的像素值进行采样,并且将所采样的像素值映射到第一预定大小的第一映射图像块;基于与第N基线点对应的窗口单元和与第N+1基线点对应的窗口单元获得与第N基线点对应的第二位置,在图像中对第二位置处的像素值进行采样,并且将所采样的像素值映射到与第N基线点对应的第一预定大小的第二映射图像块;基于与末尾点对应的窗口单元和与紧挨末尾点之前的基线点对应的窗口单元获得与末尾点对应的第三位置,在图像中对第三位置处的像素值进行采样,并且将所采样的像素值映射到第一预定大小的第三映射图像块;以及将与起始点对应的第一映射图像块、与每个基线点对应的第二映射图像块、以及与末尾点对应的第三映射图像块依次连接在一起,从而形成该文本行的修正图像。

作为示例,可以利用以下表达式7对与起始点对应的窗口单元W

在表达式7中,位置p

作为示例,本领域技术人员可以根据实际应用场景确定第一预定大小。作为示例,第一预定大小可以是60×60。

作为示例,可以利用以下表达式8对与第N基线点(其中,N=1,2,…,M,M为大于等于2的正整数)对应的窗口单元W

在表达式8中,位置p

作为示例,令表达式(8)中的N=1,对与第1基线点对应的窗口单元W

获得单元106可以利用p

作为示例,可以利用表达式(8),对与第N+1基线点对应的窗口单元W

获得单元106可以利用p

图8示出了根据本公开实施例的与基线点对应的位置的示例。在图8中示出了对与第N基线点对应的窗口单元进行反变换得到的位置对p

作为示例,获得单元106可以通过上述处理,将图8中所示的与第N基线点对应的图像块映射为第二映射图像块。由于在p

作为示例,可以对与末尾点对应的窗口单元进行反变换得到与末尾点对应的位置对,以及对与紧挨末尾点之前的基线点对应的窗口单元进行反变换得到与紧挨末尾点之前的基线点对应的位置对。获得单元106可以利用与末尾点对应的位置对和与紧挨末尾点之前的基线点对应的位置对插值得到作为上述第三位置的坐标矩阵(作为示例,该坐标矩阵的大小为上述第一预定大小),并且在原始图像中对该坐标矩阵中的每个坐标点处的像素值进行采样,以及将所采样的像素值映射到第一预定大小的第三映射图像块。

类似于以上结合图8的说明,本领域技术人员可以理解,第一映射图像块可以校正与起始点对应的图像块中的倾斜和/或弯曲,以及第三映射图像块可以校正与末尾点对应的图像块中的倾斜和/或弯曲。

另外需要说明的是,在图7中为了简便,仅示出了将与第N基线点对应的第二映射图像块和与第N+1基线点对应的第二映射图像块连接在一起。然而,如上所述,将与文本行的起始点对应的第一映射图像块、与该文本行的每个基线点对应的第二映射图像块、以及与该文本行的末尾点对应的第三映射图像块依次连接在一起,形成该文本行的修正图像。假设如上所述第一预定大小是60×60,如果一个文本行中的起始点、基线点和末尾点的数量总和为s,则该文本行的修正图像大小为60s(长)×60(宽)。

图9示出了根据本公开实施例的文本行的修正图像的示例。图9中示出的图像是在图6中示出其路径轨迹的文本行的修正图像。由图9可见,根据本公开实施例的修正图像对图6所示的其相应文本行的路径轨迹上的倾斜和弯曲进行了校正,从而便于对该文本行进行进一步识别。

尽管以上示例中示出的文本行是沿水平方向排列的文本行,但是本领域技术人员可以理解,根据本公开实施例的信息处理装置100也可以对沿竖直方向排列的文本行中存在的倾斜和弯曲进行校正,这里不再累述。

作为示例,检测单元102可以被配置成针对每个文本行检测到多个起始点,以及获得单元104可以被配置成针对每个文本行执行以下优化处理:从以多个起始点中的每个起始点开始的、包括与该起始点对应的基线点的每条基线路径中,分别选择从每个起始点起预定数量的基线点;针对每条基线路径,通过将起始点和所选择的基线点的首尾点依次连接得到多边形;在多边形中的任意两个多边形之间的重叠率大于第一预定阈值的情况下,删除具有较低置信度的起始点的基线路径;以及在针对该文本行剩余大于一条基线路径的情况下,仅保留具有最高置信度的起始点的基线路径。

作为示例,可以根据实际应用场景确定上述预定数量。

作为示例,与起始点对应的基线指的是从该起始点开始所预测出的多个基线。

作为示例,可以基于起始点和所选择的基线点的位置信息来得到多边形。作为示例,将起始点和所选择的基线点的首尾点依次连接起来,可以得到多边形的区域。

图10示出了根据本公开实施例的多边形的示意图。如图10所示,假设选择从起始点起的三个基线点(第一基线点、第二基线点以及第三基线点),则将起始点和所选择的三个基线点的首尾点依次连接起来,可以得到多边形。

作为示例,上述优化处理中提及的置信度指的是“被分类为起始点的置信度”。

作为示例,可以采用NMS(非极大值抑制)方法来进行上述优化处理。

通过上述优化处理可以去除文本行的冗余基线路径。

作为示例,获得单元被106可以配置成在执行上述优化处理之前,基于多个起始点中的每个起始点的位置信息和尺度信息计算与每个起始点对应的第一形状,并且在第一形状中的任意两个第一形状之间的重叠率大于第二预定阈值的情况下,删除与两个第一形状分别对应的两个起始点中的置信度较低的起始点。由于在优化处理之前删除了部分起始点,因此,可以减少优化处理的计算量。

作为示例,可以根据实际应用场景第二预定阈值。

作为示例,第一形状可以是以起始点为圆心的圆形,或者,第一形状可以是以起始点为中心的正方形或长方形等。本领域技术人员还可以想到第一形状的其他示例,这里不再累述。

作为示例,检测单元102可以被配置成针对每个文本行检测到多个末尾点,以及获得单元106可以被配置成针对每个文本行执行以下获得处理:基于多个末尾点中的每个末尾点的位置信息和尺度信息计算与每个末尾点对应的第二形状;在所保留的基线路径上的任一个基线点都没有落入与多个末尾点中的任一个末尾点对应的第二形状内的情况下,使得所保留的基线路径上的基线点保持原样;在所保留的基线路径上的一个基线点落入与多个末尾点中的至少部分末尾点分别对应的第二形状内的情况下,使一个基线点与至少部分末尾点中具有最高置信度的末尾点配对,并且删除所保留的基线路径上在所配对的末尾点之后的基线点;以及从与所保留的基线路径对应的修正图像中去除与所配对的末尾点之后的所删除的基线点分别对应的第二映射图像块,从而获得最终的修正图像。

如上所述,由于末尾点之后例如有时存在噪声(例如,文本行的末尾存在由于印刷造成的模糊等),因此可能在末尾点之后检测到基线点。通过上述处理,可以删除在末尾点之后的基线点,并且能够从修正图像中去除与上述所配对的末尾点之后的所删除的基线点分别对应的第二映射图像块,从而获得更精确的、最终的修正图像。

作为示例,第二形状可以是以末尾点为圆心的圆形,或者,第二形状可以是以末尾点为中心的正方形或长方形等。本领域技术人员还可以想到第二形状的其他示例,这里不再累述。

作为示例,上述获得处理中提及的置信度指的是“被分类为末尾点的置信度”。

图11示出了根据本公开实施例的第一形状和第二形状的示例。在图11中,以大致圆形示出了第一形状和第二形状。其中,图11中的每个文本行上的线是通过将该文本行的起始点、多个基线点和末尾点连接而得到的,该线表示文本行的路径轨迹。

作为示例,获得单元106可以被配置成在执行获得处理之前,在第二形状中的任意两个第二形状之间的重叠率大于第三预定阈值的情况下,删除与两个第二形状分别对应的两个末尾点中的置信度较低的末尾点。由于在获得处理之前删除了部分末尾点,因此,可以减少获得处理的计算量。

作为示例,可以根据实际应用场景设置第三预定阈值。

图12示出了根据本公开实施例的最终的修正图像的示例。图12所示的图像是图11所示的每个文本行的最终的修正图像。由图12可见,最终的修正图像对图11所示的文本行的路径轨迹上的倾斜和/或弯曲进行了校正,从而将图11所示的弯曲的文本行图像拉直并归一化。

与上述信息处理装置实施例相对应地,本公开还提供了以下信息处理方法的实施例。

图13是示出根据本公开实施例的信息处理方法1300的流程示例的流程图。

如图13所示,根据本公开实施例的信息处理方法1300包括检测步骤S1302、预测步骤S1304以及获得步骤S1306。

信息处理方法1300在步骤S1301开始。

在检测步骤S1302中,检测图像中包括的至少一个文本行中的每个文本行的起始点和末尾点。

作为示例,在检测步骤S1302中,可以将从图像中提取的图像分块依次输入到第二深度学习网络,计算表示图像分块中的点作为文本行的起始点或末尾点的置信度;以及在通过置信度确定图像分块中的点是文本行的起始点或末尾点的情况下,利用从第二深度学习网络输出的分类置信度将图像分块中的点分类为起始点或末尾点,从而检测到每个文本行的起始点和末尾点。

作为示例,第二深度学习网络可以是卷积神经网络。

有关检测每个文本行的起始点和末尾点的具体示例可以参见以上装置实施例中相应部分例如关于检测单元102和图2的描述,在此不再重复。

在根据本公开实施例的检测步骤S1302中,可以精确地检测每个文本行的起始点和末尾点。

在预测步骤S1304中,针对每个文本行,根据基于该文本行的起始点从图像提取出的与起始点对应的图像块来预测该文本行的第一基线点,并且根据基于第N基线点从图像提取出的与第N基线点对应的图像块来预测该文本行的第N+1基线点,从而预测出用于表示该文本行的路径轨迹的多个基线点,其中,N=1,2,…,M,M为大于等于2的正整数。

有关预测用于表示文本行的路径轨迹的多个基线点的具体示例可以参见以上装置实施例中相应部分例如关于预测单元104的描述,在此不再重复。

在获得步骤S1306中,基于每个文本行的起始点、多个基线点以及末尾点,获得该文本行的修正图像。

作为示例,每个文本行的修正图像可以是对该文本行的路径轨迹上的倾斜和/或弯曲进行校正的图像,从而可以将任意角度弯曲的文本行图像拉直并归一化。

信息处理方法1300在步骤S1307结束。

从以上描述可知,根据本公开实施例的信息处理方法1300可以对文本行图像的路径轨迹上的倾斜和/或弯曲进行校正,从而可以将任意角度弯曲的文本行图像拉直,以便于进一步识别文本行。

作为示例,在预测步骤S1304中,可以利用基于起始点的信息的、与起始点对应的窗口单元,提取与起始点对应的图像块。

有关提取与起始点对应的图像块的具体示例可以参见以上装置实施例中相应部分例如关于表达式1-2和图3的描述,在此不再重复。

作为示例,在预测步骤S1304中,可以基于所预测出的第一基线点的信息对与起始点对应的窗口单元进行变换来得到与第一基线点对应的窗口单元,并且利用与第一基线点对应的窗口单元提取与第一基线点对应的图像块;基于所预测出的第N+1基线点的信息对与第N基线点对应的窗口单元进行变换来得到与第N+1基线点对应的窗口单元,并且利用与第N+1基线点对应的窗口单元提取与第N+1基线点对应的图像块;以及基于末尾点的信息对与紧挨末尾点之前的基线点对应的窗口单元进行变换来得到与末尾点对应的窗口单元,并且利用与末尾点对应的窗口单元提取与末尾点对应的图像块。

作为示例,起始点的信息可以包括起始点的位置信息、尺度信息以及旋转信息;第N+1基线点的信息可以包括第N+1基线点的位置信息、尺度信息以及旋转信息;末尾点的信息包括末尾点的位置信息、尺度信息以及旋转信息;每个文本行中的所有的基线点的尺度可以等于起始点的尺度;第一基线点的位置和旋转信息可以是在预测步骤S1304中,将与起始点对应的图像块输入到第一深度学习网络而预测得到的;以及第N+1基线点的位置和旋转信息是在预测步骤S1304中,将与第N基线点对应的图像块输入到第一深度学习网络而预测得到的。

作为示例,第一深度学习网络可以是卷积神经网络。

有关提取与第一基线点对应的图像块的具体示例可以参见以上装置实施例中相应部分例如关于表达式3-4和图4-5的描述,在此不再重复。

有关提取与第N+1基线点对应的图像块的具体示例可以参见以上装置实施例中相应部分例如关于表达式5-6和图7的描述,在此不再重复。

重复上述处理直到达到文本行图像的边缘,可以预测出用于表示文本行的路径轨迹的多个基线点。

作为示例,在获得步骤S1306中,可以针对每个文本行:基于与起始点对应的窗口单元和与第一基线点对应的窗口单元获得与起始点对应的第一位置,在图像中对第一位置处的像素值进行采样,并且将所采样的像素值映射到第一预定大小的第一映射图像块;基于与第N基线点对应的窗口单元和与第N+1基线点对应的窗口单元获得与第N基线点对应的第二位置,在图像中对第二位置处的像素值进行采样,并且将所采样的像素值映射到与第N基线点对应的第一预定大小的第二映射图像块;基于与末尾点对应的窗口单元和与紧挨末尾点之前的基线点对应的窗口单元获得与末尾点对应的第三位置,在图像中对第三位置处的像素值进行采样,并且将所采样的像素值映射到第一预定大小的第三映射图像块;以及将与起始点对应的第一映射图像块、与每个基线点对应的第二映射图像块、以及与末尾点对应的第三映射图像块依次连接在一起,从而形成该文本行的修正图像。

有关针对每个文本行形成该文本行的修正图像的具体示例可以参见以上装置实施例中相应部分例如关于表达式7-8和图7-8的描述,在此不再重复。

作为示例,在检测步骤S1302中,可以针对每个文本行检测到多个起始点,以及在获得步骤S1306中,可以针对每个文本行执行以下优化处理:从以多个起始点中的每个起始点开始的、包括与该起始点对应的基线点的每条基线路径中,分别选择从每个起始点起预定数量的基线点;针对每条基线路径,通过将起始点和所选择的基线点的首尾点依次连接得到多边形;在多边形中的任意两个多边形之间的重叠率大于第一预定阈值的情况下,删除具有较低置信度的起始点的基线路径;以及在针对该文本行剩余大于一条基线路径的情况下,仅保留具有最高置信度的起始点的基线路径。通过上述优化处理可以去除文本行的冗余基线路径。

有关优化处理的具体示例可以参见以上装置实施例中相应部分例如关于图10的描述,在此不再重复。

作为示例,在获得步骤S1306中,可以在执行上述优化处理之前,基于多个起始点中的每个起始点的位置信息和尺度信息计算与每个起始点对应的第一形状,并且在第一形状中的任意两个第一形状之间的重叠率大于第二预定阈值的情况下,删除与两个第一形状分别对应的两个起始点中的置信度较低的起始点。由于在优化处理之前删除了部分起始点,因此,可以减少优化处理的计算量。

作为示例,第一形状可以是以起始点为圆心的圆形,或者,第一形状可以是以起始点为中心的正方形或长方形等。本领域技术人员还可以想到第一形状的其他示例,这里不再累述。

作为示例,在检测步骤S1302中,可以针对每个文本行检测到多个末尾点,以及在获得步骤S1306中,可以针对每个文本行执行以下获得处理:基于多个末尾点中的每个末尾点的位置信息和尺度信息计算与每个末尾点对应的第二形状;在所保留的基线路径上的任一个基线点都没有落入与多个末尾点中的任一个末尾点对应的第二形状内的情况下,使得所保留的基线路径上的基线点保持原样;在所保留的基线路径上的一个基线点落入与多个末尾点中的至少部分末尾点分别对应的第二形状内的情况下,使一个基线点与至少部分末尾点中具有最高置信度的末尾点配对,并且删除所保留的基线路径上在所配对的末尾点之后的基线点;以及从与所保留的基线路径对应的修正图像中去除与所配对的末尾点之后的所删除的基线点分别对应的第二映射图像块,从而获得最终的修正图像。

通过上述获得处理,能够从修正图像中去除与上述所配对的末尾点之后的所删除的基线点分别对应的第二映射图像块,从而获得更精确的、最终的修正图像。

作为示例,第二形状可以是以末尾点为圆心的圆形,或者,第二形状可以是以末尾点为中心的正方形或长方形等。本领域技术人员还可以想到第二形状的其他示例,这里不再累述。

作为示例,在获得步骤S1306中,可以在执行获得处理之前,在第二形状中的任意两个第二形状之间的重叠率大于第三预定阈值的情况下,删除与两个第二形状分别对应的两个末尾点中的置信度较低的末尾点。由于在获得处理之前删除了部分末尾点,因此,可以减少获得处理的计算量。

应指出,尽管以上描述了根据本公开实施例的信息处理装置的功能配置,但是这仅是示例而非限制,并且本领域技术人员可根据本公开的原理对以上实施例进行修改,例如可对各个实施例中的功能模块进行添加、删除或者组合等,并且这样的修改均落入本公开的范围内。

此外,还应指出,这里的方法实施例是与上述系统实施例相对应的,因此在方法实施例中未详细描述的内容可参见系统实施例中相应部分的描述,在此不再重复描述。

此外,本公开还提供了存储介质和程序产品。根据本公开实施例的存储介质和程序产品中的机器可执行的指令可以被配置成执行上述信息处理方法,因此在此未详细描述的内容可参考先前相应部分的描述,在此不再重复进行描述。

相应地,用于承载上述包括机器可执行的指令的程序产品的存储介质也包括在本发明的公开中。该存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。

另外,还应该指出的是,上述系列处理和装置也可以通过软件和/或固件实现。在通过软件和/或固件实现的情况下,从存储介质或网络向具有专用硬件结构的计算机,例如图14所示的通用个人计算机1400安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等等。

在图14中,中央处理单元(CPU)1401根据只读存储器(ROM)1402中存储的程序或从存储部分1408加载到随机存取存储器(RAM)1403的程序执行各种处理。在RAM 1403中,也根据需要存储当CPU 1401执行各种处理等时所需的数据。

CPU 1401、ROM 1402和RAM 1403经由总线1404彼此连接。输入/输出接口1405也连接到总线1404。

下述部件连接到输入/输出接口1405:输入部分1406,包括键盘、鼠标等;输出部分1407,包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等;存储部分1408,包括硬盘等;和通信部分1409,包括网络接口卡比如LAN卡、调制解调器等。通信部分1409经由网络比如因特网执行通信处理。

根据需要,驱动器1410也连接到输入/输出接口1405。可拆卸介质1411比如磁盘、光盘、磁光盘、半导体存储器等等根据需要被安装在驱动器1410上,使得从中读出的计算机程序根据需要被安装到存储部分1408中。

在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质1411安装构成软件的程序。

本领域的技术人员应当理解,这种存储介质不局限于图14所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质1411。可拆卸介质1411的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM 1402、存储部分1408中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。

以上参照附图描述了本公开的优选实施例,但是本公开当然不限于以上示例。本领域技术人员可在所附权利要求的范围内得到各种变更和修改,并且应理解这些变更和修改自然将落入本公开的技术范围内。

例如,在以上实施例中包括在一个单元中的多个功能可以由分开的装置来实现。替选地,在以上实施例中由多个单元实现的多个功能可分别由分开的装置来实现。另外,以上功能之一可由多个单元来实现。无需说,这样的配置包括在本公开的技术范围内。

在该说明书中,流程图中所描述的步骤不仅包括以所述顺序按时间序列执行的处理,而且包括并行地或单独地而不是必须按时间序列执行的处理。此外,甚至在按时间序列处理的步骤中,无需说,也可以适当地改变该顺序。

另外,根据本公开的技术还可以如下进行配置。

附记1.一种信息处理装置,包括:

检测单元,被配置成检测图像中包括的至少一个文本行中的每个文本行的起始点和末尾点;

预测单元,被配置成针对每个文本行,根据基于该文本行的起始点从所述图像提取出的与所述起始点对应的图像块来预测该文本行的第一基线点,并且根据基于第N基线点从所述图像提取出的与所述第N基线点对应的图像块来预测该文本行的第N+1基线点,从而预测出用于表示该文本行的路径轨迹的多个基线点,其中,N=1,2,…,M,M为大于等于2的正整数;以及

获得单元,被配置成基于每个文本行的所述起始点、所述多个基线点以及所述末尾点,获得该文本行的修正图像。

附记2.根据附记1所述的信息处理装置,其中,

所述预测单元被配置成利用基于所述起始点的信息的、与所述起始点对应的窗口单元,提取与所述起始点对应的图像块。

附记3.根据附记2所述的信息处理装置,其中,

所述预测单元被配置成基于所预测出的所述第一基线点的信息对与所述起始点对应的窗口单元进行变换来得到与所述第一基线点对应的窗口单元,并且利用与所述第一基线点对应的窗口单元提取与所述第一基线点对应的图像块;

基于所预测出的所述第N+1基线点的信息对与所述第N基线点对应的窗口单元进行变换来得到与所述第N+1基线点对应的窗口单元,并且利用与所述第N+1基线点对应的窗口单元提取与所述第N+1基线点对应的图像块;以及

基于所述末尾点的信息对与紧挨所述末尾点之前的基线点对应的窗口单元进行变换来得到与所述末尾点对应的窗口单元,并且利用与所述末尾点对应的窗口单元提取与所述末尾点对应的图像块。

附记4.根据附记3所述的信息处理装置,其中,

所述起始点的信息包括所述起始点的位置信息、尺度信息以及旋转信息;

所述第N+1基线点的信息包括所述第N+1基线点的位置信息、尺度信息以及旋转信息;

所述末尾点的信息包括所述末尾点的位置信息、尺度信息以及旋转信息;

每个文本行中的所有的基线点的尺度等于所述起始点的尺度;

所述第一基线点的位置和旋转信息是所述预测单元将与所述起始点对应的图像块输入到第一深度学习网络而预测得到的;以及

所述第N+1基线点的位置和旋转信息是所述预测单元将与所述第N基线点对应的图像块输入到所述第一深度学习网络而预测得到的。

附记5.根据附记4所述的信息处理装置,其中,所述第一深度学习网络是卷积神经网络。

附记6.根据附记3所述的信息处理装置,其中,所述获得单元被配置成针对每个文本行:

基于与所述起始点对应的窗口单元和与所述第一基线点对应的窗口单元获得与所述起始点对应的第一位置,在所述图像中对所述第一位置处的像素值进行采样,并且将所采样的像素值映射到第一预定大小的第一映射图像块;

基于与所述第N基线点对应的窗口单元和与所述第N+1基线点对应的窗口单元获得与所述第N基线点对应的第二位置,在所述图像中对所述第二位置处的像素值进行采样,并且将所采样的像素值映射到与所述第N基线点对应的所述第一预定大小的第二映射图像块;

基于与所述末尾点对应的窗口单元和与紧挨所述末尾点之前的基线点对应的窗口单元获得与所述末尾点对应的第三位置,在所述图像中对所述第三位置处的像素值进行采样,并且将所采样的像素值映射到所述第一预定大小的第三映射图像块;以及

将与所述起始点对应的第一映射图像块、与每个基线点对应的第二映射图像块、以及与所述末尾点对应的第三映射图像块依次连接在一起,从而形成该文本行的所述修正图像。

附记7.根据附记6所述的信息处理装置,其中,

所述检测单元被配置成针对每个文本行检测到多个起始点,以及

所述获得单元被配置成针对每个文本行执行以下优化处理:

从以所述多个起始点中的每个起始点开始的、包括与该起始点对应的基线点的每条基线路径中,分别选择从每个起始点起预定数量的基线点;

针对每条基线路径,通过将所述起始点和所选择的基线点的首尾点依次连接得到多边形;

在所述多边形中的任意两个多边形之间的重叠率大于第一预定阈值的情况下,删除具有较低置信度的起始点的基线路径;以及

在针对该文本行剩余大于一条基线路径的情况下,仅保留具有最高置信度的起始点的基线路径。

附记8.根据附记7所述的信息处理装置,其中,

所述获得单元被配置成在执行所述优化处理之前,基于所述多个起始点中的每个起始点的位置信息和尺度信息计算与每个起始点对应的第一形状,并且在所述第一形状中的任意两个第一形状之间的重叠率大于第二预定阈值的情况下,删除与所述两个第一形状分别对应的两个起始点中的置信度较低的起始点。

附记9.根据附记7或8所述的信息处理装置,其中,

所述检测单元被配置成针对每个文本行检测到多个末尾点,以及

所述获得单元被配置成针对每个文本行执行以下获得处理:

基于所述多个末尾点中的每个末尾点的位置信息和尺度信息计算与每个末尾点对应的第二形状;

在所保留的基线路径上的任一个基线点都没有落入与所述多个末尾点中的任一个末尾点对应的第二形状内的情况下,使得所保留的基线路径上的基线点保持原样;

在所保留的基线路径上的一个基线点落入与所述多个末尾点中的至少部分末尾点分别对应的第二形状内的情况下,使所述一个基线点与所述至少部分末尾点中具有最高置信度的末尾点配对,并且删除所保留的基线路径上在所配对的末尾点之后的基线点;以及

从与所保留的基线路径对应的修正图像中去除与所配对的末尾点之后的所删除的基线点分别对应的第二映射图像块,从而获得最终的所述修正图像。

附记10.根据附记9所述的信息处理装置,其中,

所述获得单元被配置成在执行所述获得处理之前,在所述第二形状中的任意两个第二形状之间的重叠率大于第三预定阈值的情况下,删除与所述两个第二形状分别对应的两个末尾点中的置信度较低的末尾点。

附记11.根据附记1所述的信息处理装置,其中,所述检测单元被配置成:

将从所述图像中提取的图像分块依次输入到第二深度学习网络,计算表示所述图像分块中的点作为文本行的起始点或末尾点的置信度;以及

在通过所述置信度确定所述图像分块中的点是文本行的起始点或末尾点的情况下,利用从所述第二深度学习网络输出的分类置信度将所述图像分块中的点分类为所述起始点或所述末尾点,从而检测到每个文本行的起始点和末尾点。

附记12.根据附记11所述的信息处理装置,其中,所述第二深度学习网络是卷积神经网络。

附记13.根据附记1所述的信息处理装置,其中,每个文本行的所述修正图像是对该文本行的路径轨迹上的倾斜和/或弯曲进行校正的图像。

附记14.一种信息处理方法,包括:

检测图像中包括的至少一个文本行中的每个文本行的起始点和末尾点;

针对每个文本行,根据基于该文本行的起始点从所述图像提取出的与所述起始点对应的图像块来预测该文本行的第一基线点,并且根据基于第N基线点从所述图像提取出的与所述第N基线点对应的图像块来预测该文本行的第N+1基线点,从而预测出用于表示该文本行的路径轨迹的多个基线点,其中,N=1,2,…,M,M为大于等于2的正整数;以及

基于每个文本行的所述起始点、所述多个基线点以及所述末尾点,获得该文本行的修正图像。

附记15.根据附记14所述的信息处理方法,其中,

在所述预测步骤中,利用基于所述起始点的信息的、与所述起始点对应的窗口单元,提取与所述起始点对应的图像块。

附记16.根据附记15所述的信息处理方法,其中,在所述预测步骤中,

基于所预测出的所述第一基线点的信息对与所述起始点对应的窗口单元进行变换来得到与所述第一基线点对应的窗口单元,并且利用与所述第一基线点对应的窗口单元提取与所述第一基线点对应的图像块;

基于所预测出的所述第N+1基线点的信息对与所述第N基线点对应的窗口单元进行变换来得到与所述第N+1基线点对应的窗口单元,并且利用与所述第N+1基线点对应的窗口单元提取与所述第N+1基线点对应的图像块;以及

基于所述末尾点的信息对与紧挨所述末尾点之前的基线点对应的窗口单元进行变换来得到与所述末尾点对应的窗口单元,并且利用与所述末尾点对应的窗口单元提取与所述末尾点对应的图像块。

附记17.根据附记16所述的信息处理方法,其中,

所述起始点的信息包括所述起始点的位置信息、尺度信息以及旋转信息;

所述第N+1基线点的信息包括所述第N+1基线点的位置信息、尺度信息以及旋转信息;

所述末尾点的信息包括所述末尾点的位置信息、尺度信息以及旋转信息;

每个文本行中的所有的基线点的尺度等于所述起始点的尺度;

所述第一基线点的位置和旋转信息是在所述预测步骤中,将基于与所述起始点对应的图像块输入到第一深度学习网络而预测得到的;以及

所述第N+1基线点的位置和旋转信息是所述预测单元将与所述第N基线点对应的图像块输入到所述第一深度学习网络而预测得到的。

附记18.根据附记16所述的信息处理方法,其中,在所述获得步骤中,针对每个文本行:

基于与所述起始点对应的窗口单元和与所述第一基线点对应的窗口单元获得与所述起始点对应的第一位置,在所述图像中对所述第一位置处的像素值进行采样,并且将所采样的像素值映射到第一预定大小的第一映射图像块;

基于与所述第N基线点对应的窗口单元和与所述第N+1基线点对应的窗口单元获得与所述第N基线点对应的第二位置,在所述图像中对所述第二位置处的像素值进行采样,并且将所采样的像素值映射到与所述第N基线点对应的所述第一预定大小的第二映射图像块;

基于与所述末尾点对应的窗口单元和与紧挨所述末尾点之前的基线点对应的窗口单元获得与所述末尾点对应的第三位置,在所述图像中对所述第三位置处的像素值进行采样,并且将所采样的像素值映射到所述第一预定大小的第三映射图像块;以及

将与所述起始点对应的第一映射图像块、与每个基线点对应的第二映射图像块、以及与所述末尾点对应的第三映射图像块依次连接在一起,从而形成该文本行的所述修正图像。

附记19.根据附记18所述的信息处理方法,其中,

在所述检测步骤中,针对每个文本行检测到多个起始点,以及

在所述获得步骤中,针对每个文本行执行以下优化处理:

从以所述多个起始点中的每个起始点开始的、包括与该起始点对应的基线点的每条基线路径中,分别选择从每个起始点起预定数量的基线点;

针对每条基线路径,通过将所述起始点和所选择的基线点的首尾点依次连接得到多边形;

在所述多边形中的任意两个多边形之间的重叠率大于第一预定阈值的情况下,删除具有较低置信度的起始点的基线路径;以及

在针对该文本行剩余大于一条基线路径的情况下,仅保留具有最高置信度的起始点的基线路径。

附记20.一种记录有程序的计算机可读记录介质,所述程序用于使得计算机执行以下步骤:

检测图像中包括的至少一个文本行中的每个文本行的起始点和末尾点;

针对每个文本行,根据基于该文本行的起始点从所述图像提取出的与所述起始点对应的图像块来预测该文本行的第一基线点,并且根据基于第N基线点从所述图像提取出的与所述第N基线点对应的图像块来预测该文本行的第N+1基线点,从而预测出用于表示该文本行的路径轨迹的多个基线点,其中,N=1,2,…,M,M为大于等于2的正整数;以及

基于每个文本行的所述起始点、所述多个基线点以及所述末尾点,获得该文本行的修正图像。

相关技术
  • 信息处理装置、信息处理方法、信息处理程序、信息处理系统和非瞬态计算机可读信息记录介质
  • 信息处理装置、信息处理装置控制方法、信息处理装置控制程序以及记录了信息处理装置控制程序的计算机可读取的记录介质
技术分类

06120113228125