CN109657629B - 一种文本行提取方法及装置 - Google Patents

一种文本行提取方法及装置 Download PDF

Info

Publication number
CN109657629B
CN109657629B CN201811582999.XA CN201811582999A CN109657629B CN 109657629 B CN109657629 B CN 109657629B CN 201811582999 A CN201811582999 A CN 201811582999A CN 109657629 B CN109657629 B CN 109657629B
Authority
CN
China
Prior art keywords
text
candidate
text box
adjacent
line
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
Application number
CN201811582999.XA
Other languages
English (en)
Other versions
CN109657629A (zh
Inventor
常欢
崔瑞莲
胡金水
殷兵
刘聪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
iFlytek Co Ltd
Original Assignee
iFlytek Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by iFlytek Co Ltd filed Critical iFlytek Co Ltd
Priority to CN201811582999.XA priority Critical patent/CN109657629B/zh
Publication of CN109657629A publication Critical patent/CN109657629A/zh
Application granted granted Critical
Publication of CN109657629B publication Critical patent/CN109657629B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition

Abstract

本申请公开了一种文本行提取方法及装置,该方法包括:通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框,再使各个候选文字框聚合成一或多个目标文本区域,该目标文本区域包括至少一个候选文字框且该至少一个候选文字框中的字符属于文档图像的至少一个文本行,最后提取出目标文本区域中的每一文本行。可见,本申请通过候选文字框聚合的方式,将文档图像的各个候选文字框聚合成目标文本区域,再从该目标文本区域中提取出每一文本行,而无需根据颜色、尺寸等先验知识设置各种规则来定义哪些候选文字框可以被合并成文本行,因此,本申请的这种文本行提取方式,不但提高了文本行的提取结果的准确性、还提高了检测效率。

Description

一种文本行提取方法及装置
技术领域
本申请涉及图像处理技术领域,尤其涉及一种文本行提取方法及装置。
背景技术
随着信息技术和大数据产业的爆发,海量的图像数据以数字的形式存储起来,并在互联网上进行分发与传播等,由于其包含大量有效的字符信息,使得其能够广泛地应用在人们日常生活中的很多实际场景中,例如车牌检测,基于内容的图像搜索、分类、推荐、过滤,手机拍照文档识别和机器人自动导航等。其中,高精度的文本行提取技术,对提高这些领域的效果和效率起着举足轻重的作用,因此也得到了人们越来越多的研究和关注。
然而,由于图像中的字符在色彩、字体、尺寸等方面的多样化,使得文本行提取任务变得十分困难。现有的文本行提取方法,大多基于一些规则进行提取,主要是通过设置各种阈值,将满足条件的相邻候选文字框进行合并,从而形成最终的文本行。但是,对于不同的文本图像,字符的大小、尺寸、排列方向等千差万别,导致规则匹配计算难以适配所有的情况,从而直接影响了文本行的提取效果和提取效率,即,文本行的提取结果往往不够准确且提取效率较低。
发明内容
本申请实施例的主要目的在于提供一种文本行提取方法及装置,能够提高文本行的提取结果的准确性、且提高了提取效率。
本申请实施例提供了一种文本行提取方法,包括:
通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框;
使各个候选文字框聚合成一或多个目标文本区域,所述目标文本区域包括至少一个候选文字框且所述至少一个候选文字框中的字符属于所述文档图像的至少一个文本行;
提取所述目标文本区域中的文本行。
可选的,所述使各个候选文字框聚合成一或多个目标文本区域,包括:
使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接;
通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,所述目标文本区域包括具有连接关系的一组候选文字框。
可选的,所述使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接,包括:
对于每一候选文字框,选择与所述候选文字框邻近的M个候选文字框,作为M个邻近文字框,M≥1;
确定所述候选文字框的M个邻近文字框分别对应的距离度量值,所述距离度量值用于度量所述候选文字框与对应邻近文字框之间的距离;
从确定的M个距离度量值中选择小于距离阈值的各个距离度量值;
将选择的各个距离度量值对应的各个邻近文字框与所述候选文字框,通过无向的连接线进行连接。
可选的,所述确定所述候选文字框的M个邻近文字框分别对应的距离度量值,包括:
对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,确定所述邻近文字框对应的距离度量值。
可选的,所述确定所述候选文字框的M个邻近文字框分别对应的距离度量值,包括:
对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,以及所述邻近文字框对应的第一参数、第二参数、第三参数和第四参数中的至少一项,确定所述邻近文字框对应的距离度量值;
其中,所述第一参数是根据所述候选文字框与所述邻近文字框的文本框高度生成的参数;所述第二参数是根据所述候选文字框与所述邻近文字框的中心点连线形成的倾斜角度生成的参数;所述第三参数是根据所述候选文字框与所述邻近文字框在竖直方向上的重叠距离生成的参数;所述第四参数是根据所述候选文字框与所述邻近文字框在水平方向上的重叠距离生成的参数。
可选的,按照下述方式生成所述距离阈值:
将各个候选文字框对应的M个距离度量值分别取均值,得到各个候选文字框分别对应的度量均值;
将各个候选文字框对应的各个度量均值取均值,得到所述距离阈值。
可选的,所述通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,包括:
找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
打断所述N个候选文字框中的每一候选文字框上的至少一根连接线,形成一或多个目标文本区域。
可选的,所述通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,包括:
找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
打断所述N个候选文字框中的每一候选文字框上的一根连接线,形成一或多个初始文本区域;
对于每一初始文本区域,将所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度进行平均,得到一个平均角度;
计算所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度与所述平均角度之间的偏差值,将大于预设偏差阈值的偏差值对应的连接线打断,形成一或多个目标文本区域。
可选的,所述提取所述目标文本区域中的文本行,包括:
将所述目标文本区域转化为能量图;
在所述能量图中,找出所述目标文本区域中的每一文本行对应的能量路径;
使所述能量路径穿过的各个候选文字框形成一个文本行。
可选的,所述找出所述目标文本区域中的每一文本行对应的能量路径,包括:
计算所述能量图中每一行的各个像素点在对应行中的累积能量值;
根据所述能量图中每一行的最后一个像素点对应的累积能量值,找出所述目标文本区域中的每一文本行对应的能量路径。
可选的,所述计算所述能量图中每一行的各个像素点在对应行中的累积能量值,包括:
根据所述能量图中当前行的当前像素点对应的第一能量值、第二能量值、第三能量值、第四能量值,计算所述当前像素点对应的累积能量值;
其中,所述第一能量值为所述当前像素点对应的能量值,所述第二能量值为所述当前像素点的前一像素点对应的累积能量值,所述第三能量值为所述前一像素点的上面像素点对应的累积能量值,所述第四能量值为所述前一像素点的下面像素点对应的累积能量值。
可选的,所述方法还包括:
当检测得到所述文档图像中的各个文本行后,滤除各个文本行中的非文本行。
本申请实施例还提供了一种文本行提取装置,包括:
文字框形成单元,用于通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框;
文本区域合成单元,用于使各个候选文字框聚合成一或多个目标文本区域,所述目标文本区域包括至少一个候选文字框且所述至少一个候选文字框中的字符属于所述文档图像的至少一个文本行;
文本行提取单元,用于提取所述目标文本区域中的文本行。
可选的,所述文本区域合成单元包括:
文字框连接子单元,用于使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接;
文本区域合成子单元,用于通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,所述目标文本区域包括具有连接关系的一组候选文字框。
可选的,所述文字框连接子单元包括:
文字框选择子单元,用于对于每一候选文字框,选择与所述候选文字框邻近的M个候选文字框,作为M个邻近文字框,M≥1;
度量值确定子单元,用于确定所述候选文字框的M个邻近文字框分别对应的距离度量值,所述距离度量值用于度量所述候选文字框与对应邻近文字框之间的距离;
度量值选择子单元,用于从确定的M个距离度量值中选择小于距离阈值的各个距离度量值;
文字框确定子单元,用于将选择的各个距离度量值对应的各个邻近文字框与所述候选文字框,通过无向的连接线进行连接。
可选的,所述度量值确定子单元具体用于:
对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,确定所述邻近文字框对应的距离度量值。
可选的,所述度量值确定子单元具体用于:
对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,以及所述邻近文字框对应的第一参数、第二参数、第三参数和第四参数中的至少一项,确定所述邻近文字框对应的距离度量值;
其中,所述第一参数是根据所述候选文字框与所述邻近文字框的文本框高度生成的参数;所述第二参数是根据所述候选文字框与所述邻近文字框的中心点连线形成的倾斜角度生成的参数;所述第三参数是根据所述候选文字框与所述邻近文字框在竖直方向上的重叠距离生成的参数;所述第四参数是根据所述候选文字框与所述邻近文字框在水平方向上的重叠距离生成的参数。
可选的,所述文字框连接子单元还包括:
度量均值获得子单元,用于将各个候选文字框对应的M个距离度量值分别取均值,得到各个候选文字框分别对应的度量均值;
距离阈值获得子单元,用于将各个候选文字框对应的各个度量均值取均值,得到所述距离阈值。
可选的,所述文本区域合成子单元包括:
文字框查找子单元,用于找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
第一区域形成子单元,用于打断所述N个候选文字框中的每一候选文字框上的至少一根连接线,形成一或多个目标文本区域。
可选的,所述文本区域合成子单元包括:
文字框查找子单元,用于找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
第二区域形成子单元,用于打断所述N个候选文字框中的每一候选文字框上的一根连接线,形成一或多个初始文本区域;
平均角度获得子单元,用于对于每一初始文本区域,将所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度进行平均,得到一个平均角度;
第三区域形成子单元,用于计算所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度与所述平均角度之间的偏差值,将大于预设偏差阈值的偏差值对应的连接线打断,形成一或多个目标文本区域。
可选的,所述文本行提取单元包括:
能量图获得子单元,可用于将所述目标文本区域转化为能量图;
能量路径查找子单元,用于在所述能量图中,找出所述目标文本区域中的每一文本行对应的能量路径;
文本行形成子单元,用于使所述能量路径穿过的各个候选文字框形成一个文本行。
可选的,所述能量路径查找子单元包括:
能量值计算子单元,用于计算所述能量图中每一行的各个像素点在对应行中的累积能量值;
能量路径确定子单元,用于根据所述能量图中每一行的最后一个像素点对应的累积能量值,找出所述目标文本区域中的每一文本行对应的能量路径。
可选的,所述能量路径确定子单元具体用于:
根据所述能量图中当前行的当前像素点对应的第一能量值、第二能量值、第三能量值、第四能量值,计算所述当前像素点对应的累积能量值;
其中,所述第一能量值为所述当前像素点对应的能量值,所述第二能量值为所述当前像素点的前一像素点对应的累积能量值,所述第三能量值为所述前一像素点的上面像素点对应的累积能量值,所述第四能量值为所述前一像素点的下面像素点对应的累积能量值。
可选的,所述装置还包括:
非文本行滤除单元,用于当检测得到所述文档图像中的各个文本行后,滤除各个文本行中的非文本行。
本申请实施例还提供了一种文本行提取设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述文本行提取方法中的任意一种实现方式。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述文本行提取方法中的任意一种实现方式。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行上述文本行提取方法中的任意一种实现方式。
本申请实施例提供的一种文本行提取方法及装置,首先,通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框,然后,使各个候选文字框聚合成一或多个目标文本区域,该目标文本区域包括至少一个候选文字框且该至少一个候选文字框中的字符属于文档图像的至少一个文本行,接着,可以提取出目标文本区域中的每一文本行。可见,本申请实施例通过候选文字框聚合的方式,将文档图像的各个候选文字框聚合成目标文本区域,再从该目标文本区域中提取出每一文本行,而无需根据颜色、尺寸等先验知识设置各种规则来定义哪些候选文字框可以被合并成文本行,因此,本申请实施例的这种文本行提取方式,不但提高了文本行的提取结果的准确性、还提高了检测效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种文本行提取方法的流程示意图;
图2为本申请实施例提供的通过无向的连接线使每一候选文字框与至少一个邻近的候选文字框进行连接的流程示意图;
图3为本申请实施例提供的候选文字框之间的距离度量示意图;
图4为本申请实施例提供的候选文字框与邻近文字框在水平方向上的重叠示意图;
图5为本申请实施例提供的无向图示意图;
图6为本申请实施例提供的通过将各个候选文字框之间的各个连接线中的至少一条连接线打断以形成一或多个目标文本区域的流程示意图之一;
图7为本申请实施例提供的通过将各个候选文字框之间的各个连接线中的至少一条连接线打断以形成一或多个目标文本区域的流程示意图之二;
图8为本申请实施例提供的提取目标文本区域中的文本行的流程示意图;
图9为本申请实施例提供的将目标文本区域转化为能量图的示意图;
图10为本申请实施例提供的目标文本区域中各个路径的累积能量图的示意图;
图11为本申请实施例提供的能量图中每一行最后一个像素点对应的累积能量值示意图;
图12为本申请实施例提供的文本行检测结果的示意图;
图13为本申请实施例提供的一种文本行提取装置的组成示意图。
具体实施方式
在一些文本行提取方法中,通常采用的是自底向上(bottom-up)的基于字符区域检测的方法进行文本行提取,即首先假设文档图像中的字符和背景有着不同的视觉特性,然后,通过对文档图像中的字符区域和非字符区域进行分类,选取出其中最可能是字符的区域,并将该区域定义为候选文字框,接着,可以采用一些预设规则,为每个候选文字框寻找其最邻近的候选文字框,以便构造一张无向图,进而可以采用深度优先搜索算法,根据图论中的可达性原理,对该无向图中的节点(即各个候选文字框)进行依次访问与合并,形成文档图像中的各个文本行。
但是,上述文本行提取方法在将候选文字框合并成文本行时,依据的是一些预先设定好的规则,但设定这些规则时所用到的先验知识一般包括颜色、尺寸、空间的一致性和投影轮廓等,这些基于先验知识的方法虽然简单且直观,但是如何将这些先验知识转换为合适的规则,用以定义哪些候选文字框可以被合并成相应的文本行,是非常困难的,因此,采用上述文本行提取方法,很可能导致得到的文本行提取结果不够准确。
为解决上述缺陷,本申请实施例提供了一种文本行提取方法,首先,通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框,然后,通过链路搜索的方式,使各个候选文字框聚合成一或多个目标文本区域,该目标文本区域包括至少一个候选文字框且该至少一个候选文字框中的字符属于文档图像的至少一个文本行,接着,采用能量优化的方式,提取出每一目标文本区域中的每一文本行。可见,本申请实施例无需根据颜色、尺寸等先验知识设置各种规则来定义哪些候选文字框可以被合并成文本行,而是通过候选文字框聚合以及文本行提取的方式,得到文档图像中的各个文本行,这种文本行检测方式,不但提高了文本行的检测结果的准确性、还提高了检测效率。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
第一实施例
参见图1,为本实施例提供的一种文本行提取方法的流程示意图,该方法包括以下步骤:
S101:通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框。
需要说明的是,本实施例不限制文档图像的获取方式,比如,文档图像可以是用户通过扫描、拍照等方式将纸质文档等转化为图像格式的文档,本实施例也不限制文档图像中的字符的语种,比如可以是中文、英文等字符。
在获得待检测的文档图像后,首先,可以利用现有或未来出现的字符检测算法,对文档图像中的字符进行检测,以提取出文档图像中包含字符的各个候选文字框,其中,候选文字框指的是经过字符检测算法进行初步检测后,得到的文档图像中可能存在字符内容的大致区域。
需要说明的是,理想情况下,得到的各个候选文字框中只包含一个字符,但当检测结果不准确时,可能使得一个候选文字框中存在多个字符,比如,当上下文本行中的两个字符发生黏连时,这两个字符可能存在于同一个候选文字框中。
S102:使各个候选文字框聚合成一或多个目标文本区域,该目标文本区域包括至少一个候选文字框且该至少一个候选文字框中的字符属于文档图像的至少一个文本行。
在本实施例中,可以将S101形成的各个候选文字框,通过聚合组合的方式,形成一或多个目标文本区域,在每一目标文本区域中,可以包括一个或多个候选文字框。对于每一目标文本区域中的这些候选文字框,一种情况下,这些候选文字框中的字符可以属于文档图像的一个文本行中的全部或部分字符,在另一种情况下,这些候选文字框中的字符可以属于文档图像的多个文本行,并且,对于这多个文本行的每一文本行,其属于该文本行中的全部或部分字符。
在本实施例的一种实现方式中,本步骤S102可以包括S1021-S1022:
S1021:使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接。
在本实施例中,通过步骤S101形成包含字符的各个候选文字框后,可以通过链路搜索的方法,通过无向的连接线将每一候选文字框与该候选文字框的一个或多个邻近的候选文字框进行连接,从而形成一张无向图。其中的每一候选文字框相当于无向图中的一个节点,其中的每一连接线两端的两个候选文字框即为一个节点对。
需要说明的是,本步骤S1021的具体实现方式(采用链路搜索的方法)将在第二实施例中介绍。
S1022:通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,该目标文本区域包括具有连接关系的一组候选文字框。
在本实施例中,通过步骤S1021利用无向的连接线使每一候选文字框与邻近的候选文字框进行连接,以构成一张无向图后,可以对该无向图中的各个候选文字框进行分块,具体地,可以基于各个候选文字框在文档图像中的位置以及无向图中各个连接线的倾斜角度,将该无向图中的一条或多条连接线打断,形成了各个相互独立的分块区域,每个分块区域中包含的是具有连接关系的一组候选文字框,但不同分块区域中的候选文字框之间不具有连接关系。
通过选择被打断的连接线,可以使每个分块区域中的各个字符实际为文档图像中的一个或多个文本行中的字符,对于其中的每一文本行,可以是该文本行中的全部或部分字符,这里,将这每一分块区域定义为目标文本区域。
需要说明的是,本步骤S1022的具体实现方式将在第三实施例中介绍。
S103:提取目标文本区域中的文本行。
在本实施例中,当通过步骤S102形成了一或多个目标文本区域后,关于每一目标文本区域,该目标文本区域中可能包括一个或多个文本行中的字符,为此,需要在该目标文本区域中提取其所包括的一个或多个文本行,具体实现时,可以采用能量优化的方法,在该目标文本区域中寻找一个或多个文本行路径,并按照每一文本行路径提取该目标文本区域中的每一文本行。在对一或多个目标文本区域进行文本行提取后,即可得到文档图像中的各个文本行区域。
需要说明的是,本步骤S103的具体实现方式(即采用能量优化的方法)将在第四实施例中介绍。
进一步的,在本实施例的一种实现方式中,当通过步骤S103提取得到文档图像中的各个文本行后,滤除各个文本行中的非文本行。
在本实现方式中,由于文档图像中可能不仅仅包含字符,还可能包含其他非字符元素,比如插图,表格等,由此,在通过上述步骤S101,利用字符检测算法对文档图像中的字符进行检测得到各个候选文字框时,可能会存在检测错误的情况,比如,可能将一些类似文字的插图等背景元素当成了字符,进而形成了错误的候选文字框,即,该候选文字框中可能包含的并不是字符,而是插图或表格等其他非字符元素。
因此,在通过上述步骤S103得到文档图像中的各个文本行后,还可以利用预先构建的分类器对得到的每一文本行进行文本/非文本的校验,滤除其中的非文本行,从而进一步提升文本行的检测精度。
具体来讲,可以利用全卷积神经网络的分类器,对通过步骤S103得到的各个文本行进行文本/非文本的校验,以滤除各个文本行中的非文本行,具体实现方式可以包括以下步骤A1-A3:
步骤A1:对于通过步骤S103得到的每一文本行,将该文本行的图像调整到预设的图像高度和宽度。
其中,预设的图像高度和宽度可以基于实际经验进行设定,比如,可以将预设的图像高度设定为30像素,同时,将图像的宽度按照此高度进行等比例缩放。
步骤A2:利用分类器对该文本行图像包含的每一帧图像进行分类。
通过步骤A1将每一文本行图像调整到预设的图像高度和宽度后,可以将每一文本行图像依次作为输入数据,输入至全卷积神经网络的分类器中,利用该分类器的多个卷积层和下采样层共同的级联作用,得到输入的文本行图像的N(N≥1)帧特征,并通过该分类器对得到的每一帧特征进行二分类,例如,对于N帧特征中的每一帧特征,该帧特征的分类结果可以为1或0,1代表其对应的文本行图像中的内容属于文本,0代表其对应的文本行图像中的内容属于非文本。
步骤A3:确定文本行图像的分类结果。
通过步骤A2得到输入的文本行图像的N帧特征的分类结果(比如0或1)后,可以根据该分类结果,确定出该文本行图像的分类结果,即确定出该文本行图像是文本图像还是非文本图像。具体来讲,可以基于N帧特征的分类结果进行投票,将投票数较多的分类结果作为该文本行图像的分类结果。即,通过比较该文本行图像对应的数字“1”和数字“0”的个数大小,将个数较大的数字对应的分类结果作为该文本行图像的分类结果,比如,假设数字“1”的个数大于数字“0”的个数,则可以用数字“1”对应的分类结果“文本”,确定出该文本行图像为文本图像,反之,则可以确定出该文本行图像为非文本图像。并且,可以通过该分类器输出该文本行图像的分类结果。
综上,本实施例提供的一种文本行提取方法,首先,通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框,然后,使各个候选文字框聚合成一或多个目标文本区域,该目标文本区域包括至少一个候选文字框且该至少一个候选文字框中的字符属于文档图像的至少一个文本行,接着,可以提取出目标文本区域中的每一文本行。可见,本申请实施例通过候选文字框聚合的方式,将文档图像的各个候选文字框聚合成目标文本区域,再从该目标文本区域中提取出每一文本行,而无需根据颜色、尺寸等先验知识设置各种规则来定义哪些候选文字框可以被合并成文本行,因此,本申请实施例的这种文本行提取方式,不但提高了文本行的提取结果的准确性、还提高了检测效率。
第二实施例
需要说明的是,本实施例将对第一实施例中步骤S1021的具体实现方式进行介绍。
在本实施例中,当通过第一实施例中的步骤S101形成文档图像的各个候选文字框后,可以使每一候选文字框与其邻近的一个或多个候选文字框,通过无向的连接线进行连接,从而形成一个无向图,需要说明的是,无向图中每两个候选文字框之间的一条无向连接线均对应一个权重值,该权重值将采用一个距离度量值来表示。需要说明的是,在后续内容中,本实施例将以文档图像中的某一个候选文字框为准来介绍如何通过无向的连接线使该候选文字框与邻近的候选文字框进行连接,而其它候选文字框的连接方式与之类似,不再一一赘述。
参见图2,其示出了本实施例提供的通过无向的连接线使每一候选文字框与至少一个邻近的候选文字框进行连接的流程示意图,该流程包括以下步骤:
S201:对于每一候选文字框,选择与该候选文字框邻近的M个候选文字框,作为M个邻近文字框,M≥1。
在本步骤S201中,需要选择与该候选文字框在图像位置上邻近的M个候选文字框,其中M≥1,比如M=5,这里,将被选择的每一邻近候选文字框,定义为该候选文字框的邻近文字框。
需要说明的是,在这M个邻近文字框中,可能包括与该候选文字框属于同一文本行的邻近文字框、也可能包括与该候选文字框属于不同文本行的邻近文字框。
S202:确定该候选文字框的M个邻近文字框分别对应的距离度量值,其中,该距离度量值用于度量该候选文字框与对应邻近文字框之间的距离。
在本实施例中,通过步骤S201选择出该候选文字框的M个邻近文字框后,可以确定出该候选文字框的M个邻近文字框分别对应的距离度量值,其中,距离度量值用于度量该候选文字框与对应邻近文字框之间的距离。
需要说明的是,一般情况下,同一文本行的两个候选文字框之间的距离度量值,要比不同文本行的两个候选文字框之间的距离度量值小,如图3所示。
具体地,本步骤S202可以采用以下两种可选的实现方式之一来实现。
在第一种可选的实现方式中,本步骤S202具体可以包括:对于M个邻近文字框中的每一邻近文字框,根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离,确定该邻近文字框对应的距离度量值。
在本实现方式中,假设该候选文字框的中心点坐标为(ax,ay),对于该候选文字框的M个邻近文字框中的每一邻近文字框,假设该邻近文字框的中心点坐标为(bx,by),则该候选文字框与该邻近文字框之间的距离度量值的计算公式如下:
Figure BDA0001918390210000141
其中,d(a,b)表示该候选文字框与该邻近文字框之间的距离度量值;ax和ay分别表示该候选文字框的中心点在水平方向、垂直方向的坐标;bx和by分别表示该邻近文字框的中心点在水平方向、垂直方向的坐标;α为缩放因子,一般取α<1,比如0.1,可以利用α对该候选文字框与该邻近文字框之间垂直方向的距离做出惩罚,即,使得二者水平方向的距离小于垂直方向的距离,从而可以最大可能的保证处于同一文本行的两个文字框之间的距离度量值小于不同文本行的两个文字框之间的距离度量值;p为指数项,一般可取为1或2。
按照上述公式(1),可以计算得到M个邻近文字框中的每一邻近文字框对应的距离度量值d(a,b)。
基于此,当通过后续步骤S203利用这些距离度量值d(a,b),为该候选文字框从M个邻近文字框中选择与之最邻近的文字框时,也可以最大可能的保证该候选文字框与选择的邻近文字框属于同一文本行,以便将二者通过无向的连接线进行连接。
在第二种可选的实现方式中,本步骤S202的具体可以包括:对于M个邻近文字框中的每一邻近文字框,根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离,以及该邻近文字框对应的第一参数、第二参数、第三参数和第四参数中的至少一项,确定该邻近文字框对应的距离度量值。
在本实现方式中,假设该候选文字框的中心点坐标为(ax,ay),对于该候选文字框的M个邻近文字框中的每一邻近文字框,假设该邻近文字框的中心点坐标为(bx,by),则可以根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离,以及该邻近文字框对应的第一参数、第二参数、第三参数和第四参数中的至少一项,确定出该候选文字框与该邻近文字框之间的距离度量值。
下面对该邻近文字框对应的第一参数、第二参数、第三参数和第四参数,以及基于其中的至少一项参数计算该候选文字框与该邻近文字框之间的距离度量值,进行分别介绍。
(1)、第一参数是根据该候选文字框与该邻近文字框的文本框高度生成的参数。具体地,可以按照下面公式(2)计算该候选文字框与该邻近文字框的文本框高度的比值,并将该比值的倒数作为第一参数。
Figure BDA0001918390210000151
其中,hratio表示该候选文字框与该邻近文字框的文本框高度比,H1和H2分别表示该候选文字框与该邻近文字框的高度。
当根据该候选文字框与该邻近文字框与的中心点之间的水平距离和垂直距离,以及该邻近文字框对应的第一参数,确定二者之间的距离度量值时,可以按照下面公式(3)计算:
Figure BDA0001918390210000152
其中,(α|ax-bx|p+|ay-by|p)1/p与公式(1)相同,各个参数的相关介绍请参见公式(1);hratio为该候选文字框与该邻近文字框的文本框高度的比值。
需要说明的是,由于期望将该候选文字框与其属于同一文本行的邻近文本框通过无向的连接线进行连接,故而,可以为两个不同文本框之间的高度比设置一个规则,用于惩罚那些不属于同一文本行的两个文本框。具体实现时,由于两个文本框之间的高度比越大,二者越可能属于同一文本行,因此,可以设置一个高度阈值,比如0.7,而设定的规则可以是:当两个文本框之间的高度比大于该高度阈值时,才认为这两个文本框可能处于同一文本行。
基于此,在本实施例中,当该候选文本框与该邻近文本框不满足该规则时,说明二者可能不在同一文本行,可以将二者之间的距离度量值设置为无穷大∞,从而可以通过后续步骤S203过滤到该邻近文本框,即不将二者进行无向连接;反之,当该候选文本框与该邻近文本框满足该规则时,说明二者可能在同一文本行,可以通过公式(3)基于二者之间的高度比计算二者之间的距离度量值,从而可以通过后续步骤S203,基于该距离度量值进一步确定二者是否具有较大的概率属于同一文本行,若是,则通过无向连接线将二者进行连接。
(2)、第二参数是根据该候选文字框与该邻近文字框的中心点连线形成的倾斜角度生成的参数。具体地,可以检测该候选文字框与该邻近文字框的中心点连线与X轴之间的角度θ,计算该角度的余弦值cosθ,并将该cosθ的倒数作为第二参数。
当根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离,以及该邻近文字框对应的第二参数,确定二者之间的距离度量值时,可以按照下面公式(4)计算:
Figure BDA0001918390210000161
其中,(α|ax-bx|p+|ay-by|p)1/p与公式(1)相同,各个参数的相关介绍请参见公式(1);cosθ为该候选文字框与该邻近文字框的中心点连线与X轴之间的角度的余弦值。
需要说明的是,由于期望将该候选文字框与其属于同一文本行的邻近文本框通过无向的连接线进行连接,故而,可以为两个不同文本框对应的余弦值cosθ设置一个规则,用于惩罚那些不属于同一文本行的两个文本框。具体实现时,由于两个文本框的中心点连线与X轴之间的角度越小,二者越可能属于同一文本行,因此,可以设置一个角度阈值,比如45度,而设定的规则可以是:当两个文本框的中心点连线与X轴之间的角度小于该角度阈值时,即,当二者的角度的余弦值满足0.707<cosθ<1时,才认为这两个文本框可能处于同一文本行。
基于此,在本实施例中,当该候选文本框与该邻近文本框不满足该规则时,说明二者可能不在同一文本行,可以将二者之间的距离度量值设置为无穷大∞,从而可以通过后续步骤S203过滤到该邻近文本框,即不将二者进行无向连接;反之,当该候选文本框与该邻近文本框满足该规则时,说明二者可能在同一文本行,可以通过公式(4)基于二者之间的余弦值计算二者之间的距离度量值,从而可以通过后续步骤S203,基于该距离度量值进一步确定二者是否具有较大的概率属于同一文本行,若是,则通过无向连接线将二者进行连接。
(3)、第三参数是根据该候选文字框与该邻近文字框在竖直方向上的重叠距离生成的参数。具体地,可以按照下面公式(5)计算该候选文字框与该邻近文字框在竖直方向上的重叠度,并将该重叠度的倒数作为第三参数。
Figure BDA0001918390210000171
其中,vert_ovlpratio表示该候选文字框与该邻近文字框在竖直方向上的重叠度,vert_ovlp表示该候选文字框与该邻近文字框在竖直方向上的重叠距离;H1和H2分别表示该候选文字框与该邻近文字框的高度。
为便于理解该候选文字框与该邻近文字框在竖直方向上的重叠距离vert_ovlp,现举例说明,如图3所示,假设图3中下面文本行中的两个文字框分别为该候选文字框与该邻近文字框,则图3中的阴影部分的竖直高度即为该候选文字框与该邻近文字框在竖直方向上的重叠距离vert_ovlp。
当根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离,以及该邻近文字框对应的第三参数,确定二者之间的距离度量值时,可以按照下面公式(3)计算:
Figure BDA0001918390210000181
其中,(α|ax-bx|p+|ay-by|p)1/p与公式(1)相同,各个参数的相关介绍请参见公式(1);vert_ovlpratio为该候选文字框与该邻近文字框在竖直方向上的重叠度。
需要说明的是,由于期望将该候选文字框与其属于同一文本行的邻近文本框通过无向的连接线进行连接,故而,可以为两个不同文本框在竖直方向上的重叠度设置一个规则,用于惩罚那些不属于同一文本行的两个文本框。具体实现时,由于两个文本框在竖直方向上的重叠度越大,二者越可能属于同一文本行,因此,可以设置一个重叠度阈值,比如0.2,而设定的规则可以是:当两个文本框在竖直方向上的重叠度大于该重叠度阈值时,才认为这两个文本框可能处于同一文本行。
基于此,在本实施例中,当该候选文本框与该邻近文本框不满足该规则时,说明二者可能不在同一文本行,可以将二者之间的距离度量值设置为无穷大∞,从而可以通过后续步骤S203过滤到该邻近文本框,即不将二者进行无向连接;反之,当该候选文本框与该邻近文本框满足该规则时,说明二者可能在同一文本行,可以通过公式(6)基于二者之间的重叠度计算二者之间的距离度量值,从而可以通过后续步骤S203,基于该距离度量值进一步确定二者是否具有较大的概率属于同一文本行,若是,则通过无向连接线将二者进行连接。
(4)、第四参数是根据该候选文字框与该邻近文字框在水平方向上的重叠距离生成的参数。具体地,可以按照下面公式(7)计算该候选文字框与该邻近文字框在水平方向上的重叠度,并将该重叠度作为第四参数。
Figure BDA0001918390210000182
其中,hori_ovlpratio表示该候选文字框与邻近文字框在水平方向上的重叠度;hori_ovlp表示该候选文字框与该邻近文字框的在水平方向上的重叠距离;w1和w2分别表示该候选文字框与该邻近文字框的在水平方向上的宽度;dist表示该候选文字框与该邻近文字框的中心点在水平方向上的距离;span表示该候选文字框与该邻近文字框在水平方向上的最大延伸距离。
为便于理解公式(7)中的各个参数,如图4所示。
当根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离,以及该邻近文字框对应的第四参数,确定二者之间的距离度量值时,可以按照下面公式(8)计算:
Figure BDA0001918390210000191
其中,(α|ax-bx|p+|ay-by|p)1/p与公式(1)相同,各个参数的相关介绍请参见公式(1);hori_ovlpratio为该候选文字框与该邻近文字框在水平方向上的重叠度。
需要说明的是,由于期望将该候选文字框与其属于同一文本行的邻近文本框通过无向的连接线进行连接,故而,可以为两个不同文本框在水平方向上的重叠度设置一个规则,用于惩罚那些不属于同一文本行的两个文本框。具体实现时,由于两个文本框在水平方向上的重叠度越小,二者越可能属于同一文本行,因此,可以设置一个重叠度阈值,比如0.5,而设定的规则可以是:当两个文本框在水平方向上的重叠度小于该重叠度阈值时,才认为这两个文本框可能处于同一文本行。
基于此,在本实施例中,当该候选文本框与该邻近文本框不满足该规则时,说明二者可能不在同一文本行,可以将二者之间的距离度量值设置为无穷大∞,从而可以通过后续步骤S203过滤到该邻近文本框,即不将二者进行无向连接;反之,当该候选文本框与该邻近文本框满足该规则时,说明二者可能在同一文本行,可以通过公式(8)基于二者之间的重叠度计算二者之间的距离度量值,从而可以通过后续步骤S203,基于该距离度量值进一步确定二者是否具有较大的概率属于同一文本行,若是,则通过无向连接线将二者进行连接。
需要说明的是,上述内容仅介绍了根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离,以及该邻近文字框对应的第一参数、第二参数、第三参数和第四参数中的其中一项参数,计算该邻近文字框与该候选文字框之间的距离度量值的方式,当然,还可以根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离,以及第一参数、第二参数、第三参数和第四参数中的任意两项参数、或任意三项参数、或这四项参数,来计算该邻近文字框与该候选文字框之间的距离度量值,只需要在公式(1)的基础上加上相应参数即可。
比如,当根据该邻近文字框与该候选文字框的中心点之间的水平距离和垂直距离以及这四项参数,计算该邻近文字框与该候选文字框之间的距离度量值时,计算公式如下:
Figure BDA0001918390210000201
其中的各个参数请参见上述公式中的介绍。
S203:从确定的M个距离度量值中选择小于距离阈值的各个距离度量值,将选择的各个距离度量值对应的各个邻近文字框与该候选文字框,通过无向的连接线进行连接。
如上述内容所述,若两个文本框之间的距离度量值越小,则这两个文本框越可能处于同一文本行,因此,在本实施例中,可以根据实验或经验预设一个距离阈值,当通过步骤S202确定了该候选文字框的M个邻近文字框分别对应的距离度量值后,可以根据这M个距离度量值的大小,从中选择出小于距离阈值的各个距离度量值,对于被选择的各个距离度量值对应的各个邻近文本框,该各个邻近文本框很可能与该候选文本框处于同一文本行,故而,将该各个邻近文本框分别与该候选文本框,通过无向的连接线进行连接。
需要说明的是,如果该候选文字框的M个邻近文字框分别对应的M个距离度量值均大于预设的距离阈值,则将其中最小的距离度量值对应的邻近候选文字框,视为与该候选文本框处于同一文本行,并将该邻近文本框与该候选文本框,通过无向的连接线进行连接。
在本实施例中,可以利用链路搜索方法,比如最近邻搜索算法,为每一候选文字框找到与之最近邻的一个或多个候选文字框(即步骤S203),使每一候选文字框与之近邻的候选文字框形成节点对;然后,可以根据图论中的可达性原理,利用最小生成树(MinimumSpanning Tree,MST)算法,将所有的节点对建成为一张无向图,比如图5所示的无向图。
一种可选的实现方式是,上述距离阈值可以按照下述步骤B1-B2生成:
步骤B1:将文档图像中各个候选文字框对应的M个距离度量值分别取均值,得到各个候选文字框分别对应的度量均值。
对于文档图像中的每一候选文字框,当通过步骤S202确定出该候选文字框的M个邻近文字框对应的距离度量值后,可以将该候选文字框对应的M个距离度量值取均值,比如M=5,则可以计算这5个距离度量值的均值,这里,将计算得到的均值定义为度量均值。例如,假设文档图像中包含了100个候选文字框,则可以计算出这100个候选文字框各自对应的度量均值,分别为d1、d2、d3、d4……d99、d100
步骤B2:将各个候选文字框对应的各个度量均值取均值,得到距离阈值。
通过步骤B1得到各个候选文字框各自对应的度量均值后,可以计算这些度量均值的均值,并将该均值作为距离阈值。例如,基于上述步骤B1中举例,假设文档图像中包含了100个候选文字框,并通过步骤S202确定出这100个候选文字框分别对应的度量均值为d1、d2、d3、d4……d99、d100,则计算出的距离阈值为(d1+d2+d3+d4+……+d99+d100)/100。
综上,本实施例基于每一候选文字框与周边的M个邻近文字框之间的距离度量值,从M个邻近文字框选择中,选择可能与该候选文字框处于同一文本行的邻近文字框进行无向连接,从而可以构成一张无向图,以便通过后续步骤进行文本行提取。
第三实施例
需要说明的是,本实施例将对第一实施例中步骤S1022的两种具体实现方式进行介绍。
在第一种可选的实现方式中,参见图6,其示出了本实施例提供的通过将各个候选文字框之间的各个连接线中的至少一条连接线打断以形成一或多个目标文本区域的流程示意图之一,该流程包括以下步骤:
S601:找到文档图像中位于最左侧的N个候选文字框,N≥1。
在本实施例中,当通过步骤S102使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接,以构建成一张无向图后,比如图5所示的无向图,当采用最小生成树算法生成该无向图时,则整个无向图对应于一棵完整的树。从图5可以看出,大多数相邻的候选文字框之间已经被无向的连接线连接起来了,但仍旧避免不了一些错误连接,比如图5中所示的分别处于上下文本行中的候选文字框与其邻近文字框之间的连接,例如,当上下文本行中的候选文字框与其邻近文字框之间的实际距离较近时,很可以将二者进行无向连接。
此时,可以遍历该无向图中所有的候选文本框,从中找出位于文档图像最左侧的N个候选文字框,其中,N≥1。具体地,可以基于每个候选文本框的中心点坐标,从中找出垂直方向(Y轴)的坐标不同、水平方向(X轴)上的前N个较小坐标所对应的N个中心点坐标,将这N个中心点坐标所属的各个候选文字框,作为文档图像中位于最左侧的N个候选文字框。
S602:打断位于最左侧的N个候选文字框中的每一候选文字框上的至少一根连接线,形成一或多个目标文本行区域。
在本实现方式中,当通过步骤S601找到文档图像中位于最左侧的N个候选文字框后,可以将这N个候选文本框分别作为每一文本行的起始候选文字框,并依次打断这N个候选文字框中的每一候选文字框上的一根或多根连接线,即,打断距离度量值较大的连接线,可以通过阈值比较的方式选择需要被打断的一根或多根连接线,在打断后,则将无向图(比如图5)构成的整棵树分成了多个子树,在每一子树中,包括具有连接关系的一组候选文字框且该组候选文字框中的字符属于文档图像的至少一个文本行,该子树构成的文本区域即为目标文本区域。
在另一实现方式中,由于期望打断的连接线是两个不同文本行中的两个候选文本框之间的连接线,所以期望这样的连接线与Y轴的夹角越小越好,因此,对于上述N个候选文字框中的每一候选文字框,可以将该候选文本框上的各个连接线按照对应的距离度量值由大到小排序,按照排序依次遍历每一连接线,若当前遍历到的连接线与Y轴的夹角小于该角度阈值,则将该连接线打断。一种特殊情况,若某一候选文字框上仅有一根连接线,若该连接线与Y轴的夹角小于该角度阈值,则将该连接线打断,否则不打断。
在第二种可选的实现方式中,参见图7,其示出了本实施例提供的通过将各个候选文字框之间的各个连接线中的至少一条连接线打断以形成一或多个目标文本区域的流程示意图之二,该流程包括以下步骤:
S701:找到文档图像中位于最左侧的N个候选文字框,N≥1。
需要说明的是,步骤S701与上述步骤S601一致,相关之处请参见上述步骤S601的介绍,在此不再赘述。
S702:打断位于最左侧的N个候选文字框中的每一候选文字框上的一根连接线,形成一或多个初始文本区域。
需要说明的是,步骤S702与上述步骤S602一致,相关之处请参见上述步骤S602的介绍,在此不再赘述。但本步骤中,在打断位于最左侧的N个候选文字框中的每一候选文字框上的一根或多根连接线后,不将经打断后所形成的各个文本行区域作为各个目标文本区域,而是作为各个初始文本区域,这是因为,在打断位于最左侧的N个候选文字框中的每一候选文字框上的一根或多根连接线后,形成的每个文本行区域中可能仍然存在一些错误的连接线,即存在不同文本行中的候选文本框之间的连接线,这时需要通过后续步骤S703-S704将这些错误的连接线打断。
S703:对于每一初始文本区域,将该初始文本区域中各个候选文字框之间的各个连接线的倾斜角度进行平均,得到一个平均角度。
在本实现方式中,当通过步骤S702得到各个初始文本区域后,对于每一初始文本区域,可以检测该初始文本区域中各个候选文字框之间的各个连接线分别与水平X轴方向之间的角度,作为倾斜角度,并计算这些倾斜角度的均值,作为该初始文本区域对应的平均角度。
S704:计算该初始文本区域中各个候选文字框之间的各个连接线的倾斜角度与该平均角度之间的偏差值,将大于预设偏差阈值的偏差值对应的连接线打断,形成一或多个目标文本区域。
在本实现方式中,当通过步骤S703检测出该初始文本区域中包含的各个候选文字框之间的各个连接线对应的倾斜角度,以及计算出该初始文本区域对应的平均角度后,可以再计算每一倾斜角度与该平均角度之间的偏差值,如果该偏差值大于预设的偏差阈值,则表明该倾斜角度对应的连接线所连接的两个候选文字框不在同一文本行中,可以将对应的连接线打断,这样,可以将初始文本区域划分为更小的文本区域,将划分得到的文本区域作为目标文本区域。可以理解的是,如果某初始文本区域内的连接线没有被打断,则将该初始文本区域直接作为目标文本区域。
综上,本实施例通过打断各个候选文字框之间的至少一条连接线的方式,形成了多个目标文本区域,在目标文本区域的基础上进行文本行提取,可以提高文本行提取结果的准确性和检测效率。
第四实施例
需要说明的是,在本实施例中,当通过上述步骤S102形成了一或多个目标文本区域后,但某些目标文本区域中可能包括多个文本行,原因之一是,由于相邻文本行的两个候选文字框之间的距离度量值很小,导致这两个候选文字框之间的连接线未被打断,原因之二是,由于在步骤S101中对某些候选文字框检测不准确,导致这些候选文字框中包含了多个字符,比如上下行的两个字符出现黏连的情况,进而在聚合成无向图时,可能会产生错误的无向连接。
基于此,为了对文本行进行精确提取,在步骤S103中,本实施例采用了能量优化的方法,在各个目标文本区域中寻找出最优的文本行路径,并按照该最优的文本行路径将对应的目标文本区域中存在的文本行进行精确提取。需要说明的是,本实施例提供的文本行提取方法,能够在存在字符粘连和/或具有斜体字符的目标文本区域中进行文本行的精确提取。
接下来,本实施例将通过下述步骤S801-S803,对上述步骤S103的具体实现方式进行介绍。
参见图8,其示出了本实施例提供的提取目标文本区域中的文本行的流程示意图,该流程包括以下步骤:
S801:将目标文本区域转化为能量图。
可以理解的是,非文本行路径应该是相邻文本行之间的空白像素形成的路径,非文本行路径上的各个坐标点离上下文本行的字符区域越远(即,非文本行路径上的各个坐标点均在上下文本行的中间位置),则利用该非文本行路径越容易进行文本行切分。但是,由于上下相邻文本行的字符可能存在粘连等情况,导致非文本行路径在某些像素点处可能是被隔断的。
因此,为了对目标文本区域中的文本行进行准确提取,本实施例选择寻找目标文本区域中的“文本行路径”而非“非文本行路径”,具体实现时,可以先利用现有或未来出现的能量转换方法,比如,利用有符号的距离变换(Signed Distance Transform,SDT)方法,将目标文本区域转换为能量图,可以用E(I)表示该能量图。如图9所示,其中,经过SDT变换后,字符区域对应的像素值为负值,如图9中的黑色区域所示,代表低能量,而字符以外的区域对应的像素值为正值,如图9中的白色区域所示,代表高能量。
基于此,可以将寻找文本行路径的问题,转变为串联候选文字框以形成字符路径的问题,其中,串联候选文字框的路径指的是从左到右贯穿整个目标文本区域的直线或折线,即,每条串联路径都串联了多个候选文字框,相比于非字符区域,由于字符区域对应的能量值较小,实际上,就是搜寻累积能量较小的能量路径。
S802:在能量图中,找出目标文本区域中的每一文本行对应的能量路径。
在本实施例中,通过步骤S801将目标文本区域转化能量图后,为了提取目标文本区域中的每一文本行,可以在能量图中找出目标文本区域中的每一文本行对应的能量路径,找到该能量路径,也即找到了目标文本区域中的一个文本行。
具体来讲,在本实施例的一种实现方式中,本步骤S802的具体实现方式可以包括以下步骤C1-C2:
步骤C1:计算能量图中每一行的各个像素点在对应行中的累积能量值。
在本实现方式中,假设通过步骤S801获取到的能量图为一幅宽度为m、高度为n的图像,即该能量图中包括m*n个像素点,则能量图的每一行像素点中的各个像素点组成的路径表示如下:
Figure BDA0001918390210000251
其中,S表示某行像素点的各个像素点组成的路径;x(j)表示该行像素点中的第j列像素点的能量值;x(j-1)表示该行像素点中的第j-1列像素点的能量值;K用于设定每一像素点的领域范围,可以取为1或2等,比如,当K=1时,每一像素点的邻域范围内包括该像素点周围的8个像素点。
基于此,能量图中每一行像素点中的各个像素点的累积能量的计算公式如下:
Figure BDA0001918390210000261
其中,e(S)表示路径S(即某行像素点)上的各个像素点的累积能量值;E(x(j))表示路径S中第j列像素点对应的能量值;m表示路径S上的像素点个数。
基于此,目标文本区域中的每一文本行对应的能量路径,应为累积能量较小的像素点路径Smin。为此,需要计算能量图中每一行的各个像素点在对应行中的累积能量值,可以以行为单位,从左到右或从右到左依次遍历每一像素点,这里可以将当前遍历到的像素点定义为当前像素点,将当前像素点所属的行定义为当前行,在计算当前行的当前像素点对应的累积能量值时,一种可选的实现方式是,可以根据当前行的当前像素点对应的第一能量值、第二能量值、第三能量值、第四能量值,计算该当前像素点对应的累积能量值。
其中,第一能量值指的是当前像素点对应的能量值,第二能量值指的是当前像素点的前一像素点对应的累积能量值,第三能量值指的是前一像素点的上面像素点对应的累积能量值,第四能量值指的是前一像素点的下面像素点对应的累积能量值。需要说明的是,这里的上面像素点是指,在前一像素点所属像素行的上一像素行中,位于前一像素点上面的像素点;这里的下面像素点是指,在前一像素点所属像素行的下一像素行中,位于前一像素点下面的像素点。
可以理解的是,该当前像素点可以是能量图中的任一像素点,即第i行第j列的像素点,可以按照下面公式计算第i行第j列的像素点对应的累积能量值:
Figure BDA0001918390210000262
其中,SeamMap[i,j]表示能量图中的第i行第j列像素点对应的累积能量值;第一能量值为E(i,j),表示能量图中的第i行第j列像素点对应的能量值;第二能量值为SeamMap[i,j-1],表示能量图中的第i行第j-1列像素点对应的累积能量值;第三能量值为SeamMap[i-1,j-1],表示能量图中的第i-1第j-1列像素点对应的累积能量值;第四能量值为SeamMap[i+1,j-1],表示能量图中的第i+1行第j-1列像素点对应的累积能量值。
步骤C2:根据能量图中每一行的最后一个像素点对应的累积能量值,找出目标文本区域中的每一文本行对应的能量路径。
在本实现方式中,通过步骤C1计算出能量图中每一行的各个像素点在对应行中的累积能量值后,可利用每一行的各个像素点在对应行中的累积能量值,构成一幅累积能量分布图,比如图10所示的累积能量分布图。在累积能量分布图中,记录了上述能量图中每一像素点对应的累积能量值,且每一像素点对应的累积能量值在累积能量分布图中的记录位置,与该像素点在能量图中的位置一致。
由此,可根据能量图中每一行的最后一个像素点对应的累积能量值,找出目标文本区域中的每一文本行对应的能量路径。具体地,可以将累积能量分布图中最后一列的累积能量值进行比较,这些累积能量值即为能量图中每一行的最后一个像素点对应的累积能量值,基于文档图像中按行分布的规律,通常情况下,累积能量分布图中最后一列的累积能量值应是按照“累积能量值依次变大”与“累积能量值依次变小”进行交替变化,故而,可以找出累积能量分布图中最后一列中每两种不同变化规律之间的最小累积能量值,从而可以得到一个或多个最小累积能量值。例如,如图11所示的能量图中每一行最后一个像素点对应的累积能量值示意图,这些累积能量值按照“依次变小”、“依次变大”、“依次变小”、“依次变大”的方式交替变化,其中,“依次变小”与“依次变大”之间的最小值即为最小累积能量值,比如图11中的-40和-45。
当找到一个或多个最小累积能量值后,再在能量图中,找到每一最小累积能量值对应的行尾像素点所属的像素行,作为目标文本区域中的每一文本行对应的能量路径。
S803:使该能量路径穿过的各个候选文字框形成一个文本行。
在本实施例中,通过步骤S802找出目标文本区域中的每一文本行对应的能量路径后,可对应找出每条能量路径所贯穿的一组候选文字框,而每组候选文字框中的各个字符即构成了目标文本区域中的一个文本行,比如图12所示,这样,便划分出了目标文本区域中的各个文本行。
以能量路径S1为例,如果发现某个候选文字框与路径S1相交,则将该候选文字框划分给路径S1。需要说明的是,对于相互粘连的属于上下行的两个字符,这两个字符可能处于同一候选文字框内,这种情况下,该候选文字框可能会同时与两条路径相交,比如同时与路径S1和路径S2相交,此时,可以直接将该候选文字框从两条路径S1和S2的中垂线的中心点处打断,两条路径S1和S2各获取一部分该候选文字框。
综上,本实施例采用了能量优化的方法,在各个目标文本区域中寻找出文本行路径,从而实现了对目标文本区域中的文本行的精确提取,这种方式提高了文本行的提取结果的准确性、且提高了提取效率。
第五实施例
本实施例将对一种文本行提取装置进行介绍,相关内容请参见上述方法实施例。
参见图13,为本实施例提供的一种文本行提取装置的组成示意图,该装置1300包括:
文字框形成单元1301,用于通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框;
文本区域合成单元1302,用于使各个候选文字框聚合成一或多个目标文本区域,所述目标文本区域包括至少一个候选文字框且所述至少一个候选文字框中的字符属于所述文档图像的至少一个文本行;
文本行提取单元1303,用于提取所述目标文本区域中的文本行。
在本实施例的一种实现方式中,所述文本区域合成单元1302包括:
文字框连接子单元,用于使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接;
文本区域合成子单元,用于通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,所述目标文本区域包括具有连接关系的一组候选文字框。
在本实施例的一种实现方式中,所述文字框连接子单元包括:
文字框选择子单元,用于对于每一候选文字框,选择与所述候选文字框邻近的M个候选文字框,作为M个邻近文字框,M≥1;
度量值确定子单元,用于确定所述候选文字框的M个邻近文字框分别对应的距离度量值,所述距离度量值用于度量所述候选文字框与对应邻近文字框之间的距离;
度量值选择子单元,用于从确定的M个距离度量值中选择小于距离阈值的各个距离度量值;
文字框确定子单元,用于将选择的各个距离度量值对应的各个邻近文字框与所述候选文字框,通过无向的连接线进行连接。
在本实施例的一种实现方式中,所述度量值确定子单元具体用于:
对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,确定所述邻近文字框对应的距离度量值。
在本实施例的一种实现方式中,所述度量值确定子单元具体用于:
对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,以及所述邻近文字框对应的第一参数、第二参数、第三参数和第四参数中的至少一项,确定所述邻近文字框对应的距离度量值;
其中,所述第一参数是根据所述候选文字框与所述邻近文字框的文本框高度生成的参数;所述第二参数是根据所述候选文字框与所述邻近文字框的中心点连线形成的倾斜角度生成的参数;所述第三参数是根据所述候选文字框与所述邻近文字框在竖直方向上的重叠距离生成的参数;所述第四参数是根据所述候选文字框与所述邻近文字框在水平方向上的重叠距离生成的参数。
在本实施例的一种实现方式中,所述文字框连接子单元还包括:
度量均值获得子单元,用于将各个候选文字框对应的M个距离度量值分别取均值,得到各个候选文字框分别对应的度量均值;
距离阈值获得子单元,用于将各个候选文字框对应的各个度量均值取均值,得到所述距离阈值。
在本实施例的一种实现方式中,所述文本区域合成子单元包括:
文字框查找子单元,用于找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
第一区域形成子单元,用于打断所述N个候选文字框中的每一候选文字框上的至少一根连接线,形成一或多个目标文本区域。
在本实施例的一种实现方式中,所述文本区域合成子单元包括:
文字框查找子单元,用于找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
第二区域形成子单元,用于打断所述N个候选文字框中的每一候选文字框上的一根连接线,形成一或多个初始文本区域;
平均角度获得子单元,用于对于每一初始文本区域,将所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度进行平均,得到一个平均角度;
第三区域形成子单元,用于计算所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度与所述平均角度之间的偏差值,将大于预设偏差阈值的偏差值对应的连接线打断,形成一或多个目标文本区域。
在本实施例的一种实现方式中,所述文本行提取单元1303包括:
能量图获得子单元,可用于将所述目标文本区域转化为能量图;
能量路径查找子单元,用于在所述能量图中,找出所述目标文本区域中的每一文本行对应的能量路径;
文本行形成子单元,用于使所述能量路径穿过的各个候选文字框形成一个文本行。
在本实施例的一种实现方式中,所述能量路径查找子单元包括:
能量值计算子单元,用于计算所述能量图中每一行的各个像素点在对应行中的累积能量值;
能量路径确定子单元,用于根据所述能量图中每一行的最后一个像素点对应的累积能量值,找出所述目标文本区域中的每一文本行对应的能量路径。
在本实施例的一种实现方式中,所述能量路径确定子单元具体用于:
根据所述能量图中当前行的当前像素点对应的第一能量值、第二能量值、第三能量值、第四能量值,计算所述当前像素点对应的累积能量值;
其中,所述第一能量值为所述当前像素点对应的能量值,所述第二能量值为所述当前像素点的前一像素点对应的累积能量值,所述第三能量值为所述前一像素点的上面像素点对应的累积能量值,所述第四能量值为所述前一像素点的下面像素点对应的累积能量值。
在本实施例的一种实现方式中,所述装置还包括:
非文本行滤除单元,用于当检测得到所述文档图像中的各个文本行后,滤除各个文本行中的非文本行。
进一步地,本申请实施例还提供了一种文本行提取设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述文本行提取方法的任一种实现方法。
进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述文本行提取方法的任一种实现方法。
进一步地,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行上述文本行提取方法的任一种实现方法。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本申请各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (20)

1.一种文本行提取方法,其特征在于,包括:
通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框;
使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接;
通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,所述目标文本区域包括具有连接关系的一组候选文字框,所述目标文本区域包括的候选文字框中的字符属于所述文档图像的至少一个文本行;
提取所述目标文本区域中的文本行。
2.根据权利要求1所述的方法,其特征在于,所述使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接,包括:
对于每一候选文字框,选择与所述候选文字框邻近的M个候选文字框,作为M个邻近文字框,M≥1;
确定所述候选文字框的M个邻近文字框分别对应的距离度量值,所述距离度量值用于度量所述候选文字框与对应邻近文字框之间的距离;
从确定的M个距离度量值中选择小于距离阈值的各个距离度量值;
将选择的各个距离度量值对应的各个邻近文字框与所述候选文字框,通过无向的连接线进行连接。
3.根据权利要求2所述的方法,其特征在于,所述确定所述候选文字框的M个邻近文字框分别对应的距离度量值,包括:
对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,确定所述邻近文字框对应的距离度量值。
4.根据权利要求2所述的方法,其特征在于,所述确定所述候选文字框的M个邻近文字框分别对应的距离度量值,包括:
对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,以及所述邻近文字框对应的第一参数、第二参数、第三参数和第四参数中的至少一项,确定所述邻近文字框对应的距离度量值;
其中,所述第一参数是根据所述候选文字框与所述邻近文字框的文本框高度生成的参数;所述第二参数是根据所述候选文字框与所述邻近文字框的中心点连线形成的倾斜角度生成的参数;所述第三参数是根据所述候选文字框与所述邻近文字框在竖直方向上的重叠距离生成的参数;所述第四参数是根据所述候选文字框与所述邻近文字框在水平方向上的重叠距离生成的参数。
5.根据权利要求2所述的方法,其特征在于,按照下述方式生成所述距离阈值:
将各个候选文字框对应的M个距离度量值分别取均值,得到各个候选文字框分别对应的度量均值;
将各个候选文字框对应的各个度量均值取均值,得到所述距离阈值。
6.根据权利要求1所述的方法,其特征在于,所述通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,包括:
找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
打断所述N个候选文字框中的每一候选文字框上的至少一根连接线,形成一或多个目标文本区域。
7.根据权利要求1所述的方法,其特征在于,所述通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,包括:
找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
打断所述N个候选文字框中的每一候选文字框上的一根连接线,形成一或多个初始文本区域;
对于每一初始文本区域,将所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度进行平均,得到一个平均角度;
计算所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度与所述平均角度之间的偏差值,将大于预设偏差阈值的偏差值对应的连接线打断,形成一或多个目标文本区域。
8.根据权利要求1所述的方法,其特征在于,所述提取所述目标文本区域中的文本行,包括:
将所述目标文本区域转化为能量图;
在所述能量图中,找出所述目标文本区域中的每一文本行对应的能量路径;
使所述能量路径穿过的各个候选文字框形成一个文本行。
9.根据权利要求8所述的方法,其特征在于,所述找出所述目标文本区域中的每一文本行对应的能量路径,包括:
计算所述能量图中每一行的各个像素点在对应行中的累积能量值;
根据所述能量图中每一行的最后一个像素点对应的累积能量值,找出所述目标文本区域中的每一文本行对应的能量路径。
10.根据权利要求9所述的方法,其特征在于,所述计算所述能量图中每一行的各个像素点在对应行中的累积能量值,包括:
根据所述能量图中当前行的当前像素点对应的第一能量值、第二能量值、第三能量值、第四能量值,计算所述当前像素点对应的累积能量值;
其中,所述第一能量值为所述当前像素点对应的能量值,所述第二能量值为所述当前像素点的前一像素点对应的累积能量值,所述第三能量值为所述前一像素点的上面像素点对应的累积能量值,所述第四能量值为所述前一像素点的下面像素点对应的累积能量值。
11.根据权利要求1至10任一项所述的方法,其特征在于,所述方法还包括:
当检测得到所述文档图像中的各个文本行后,滤除各个文本行中的非文本行。
12.一种文本行提取装置,其特征在于,包括:
文字框形成单元,用于通过对文档图像中的字符进行检测,形成包含字符的各个候选文字框;
文本区域合成单元,所述文本区域合成单元包括:文字框连接子单元,用于使每一候选文字框与至少一个邻近的候选文字框,通过无向的连接线进行连接;文本区域合成子单元,用于通过将各个候选文字框之间的各个连接线中的至少一条连接线打断,形成一或多个目标文本区域,所述目标文本区域包括具有连接关系的一组候选文字框,所述目标文本区域包括的候选文字框中的字符属于所述文档图像的至少一个文本行;
文本行提取单元,用于提取所述目标文本区域中的文本行。
13.根据权利要求12所述的装置,其特征在于,所述文字框连接子单元包括:
文字框选择子单元,用于对于每一候选文字框,选择与所述候选文字框邻近的M个候选文字框,作为M个邻近文字框,M≥1;
度量值确定子单元,用于确定所述候选文字框的M个邻近文字框分别对应的距离度量值,所述距离度量值用于度量所述候选文字框与对应邻近文字框之间的距离;
度量值选择子单元,用于从确定的M个距离度量值中选择小于距离阈值的各个距离度量值;
文字框确定子单元,用于将选择的各个距离度量值对应的各个邻近文字框与所述候选文字框,通过无向的连接线进行连接。
14.根据权利要求13所述的装置,其特征在于,所述度量值确定子单元具体用于:对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,确定所述邻近文字框对应的距离度量值;
或者,所述度量值确定子单元具体用于:对于M个邻近文字框中的每一邻近文字框,根据所述邻近文字框与所述候选文字框的中心点之间的水平距离和垂直距离,以及所述邻近文字框对应的第一参数、第二参数、第三参数和第四参数中的至少一项,确定所述邻近文字框对应的距离度量值;
其中,所述第一参数是根据所述候选文字框与所述邻近文字框的文本框高度生成的参数;所述第二参数是根据所述候选文字框与所述邻近文字框的中心点连线形成的倾斜角度生成的参数;所述第三参数是根据所述候选文字框与所述邻近文字框在竖直方向上的重叠距离生成的参数;所述第四参数是根据所述候选文字框与所述邻近文字框在水平方向上的重叠距离生成的参数。
15.根据权利要求12所述的装置,其特征在于,所述文本区域合成子单元包括:
文字框查找子单元,用于找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
第一区域形成子单元,用于打断所述N个候选文字框中的每一候选文字框上的至少一根连接线,形成一或多个目标文本区域;
或者,所述文本区域合成子单元包括:
文字框查找子单元,用于找到所述文档图像中位于最左侧的N个候选文字框,N≥1;
第二区域形成子单元,用于打断所述N个候选文字框中的每一候选文字框上的一根连接线,形成一或多个初始文本区域;
平均角度获得子单元,用于对于每一初始文本区域,将所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度进行平均,得到一个平均角度;
第三区域形成子单元,用于计算所述初始文本区域中各个候选文字框之间的各个连接线的倾斜角度与所述平均角度之间的偏差值,将大于预设偏差阈值的偏差值对应的连接线打断,形成一或多个目标文本区域。
16.根据权利要求12至15任一项所述的装置,其特征在于,所述文本行提取单元包括:
能量图获得子单元,可用于将所述目标文本区域转化为能量图;
能量路径查找子单元,用于在所述能量图中,找出所述目标文本区域中的每一文本行对应的能量路径;
文本行形成子单元,用于使所述能量路径穿过的各个候选文字框形成一个文本行。
17.根据权利要求16所述的装置,其特征在于,所述能量路径查找子单元包括:
能量值计算子单元,用于计算所述能量图中每一行的各个像素点在对应行中的累积能量值;
能量路径确定子单元,用于根据所述能量图中每一行的最后一个像素点对应的累积能量值,找出所述目标文本区域中的每一文本行对应的能量路径。
18.根据权利要求17所述的装置,其特征在于,所述能量路径确定子单元具体用于:
根据所述能量图中当前行的当前像素点对应的第一能量值、第二能量值、第三能量值、第四能量值,计算所述当前像素点对应的累积能量值;
其中,所述第一能量值为所述当前像素点对应的能量值,所述第二能量值为所述当前像素点的前一像素点对应的累积能量值,所述第三能量值为所述前一像素点的上面像素点对应的累积能量值,所述第四能量值为所述前一像素点的下面像素点对应的累积能量值。
19.一种计算机设备,其特征在于,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行权利要求1-11任一项所述的方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行权利要求1-11任一项所述的方法。
CN201811582999.XA 2018-12-24 2018-12-24 一种文本行提取方法及装置 Active CN109657629B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811582999.XA CN109657629B (zh) 2018-12-24 2018-12-24 一种文本行提取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811582999.XA CN109657629B (zh) 2018-12-24 2018-12-24 一种文本行提取方法及装置

Publications (2)

Publication Number Publication Date
CN109657629A CN109657629A (zh) 2019-04-19
CN109657629B true CN109657629B (zh) 2021-12-07

Family

ID=66116376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811582999.XA Active CN109657629B (zh) 2018-12-24 2018-12-24 一种文本行提取方法及装置

Country Status (1)

Country Link
CN (1) CN109657629B (zh)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120311585A1 (en) 2011-06-03 2012-12-06 Apple Inc. Organizing task items that represent tasks to perform
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
KR102579086B1 (ko) 2013-02-07 2023-09-15 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
EP3149728B1 (en) 2014-05-30 2019-01-16 Apple Inc. Multi-command single utterance input method
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11488406B2 (en) * 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
CN112733837B (zh) * 2019-10-28 2022-08-02 北京易真学思教育科技有限公司 文本图像的校正方法、设备及计算机可读存储介质
CN110852229A (zh) * 2019-11-04 2020-02-28 泰康保险集团股份有限公司 图像中文本区域的位置确定方法、装置、设备及存储介质
CN111242083B (zh) * 2020-01-21 2024-01-26 腾讯云计算(北京)有限责任公司 基于人工智能的文本处理方法、装置、设备、介质
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
CN111738326B (zh) * 2020-06-16 2023-07-11 中国工商银行股份有限公司 句粒度标注训练样本生成方法及装置
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
CN112801088A (zh) * 2020-12-31 2021-05-14 科大讯飞股份有限公司 一种扭曲文本行图像矫正的方法和相关装置
CN113033380B (zh) * 2021-03-23 2024-03-26 金科览智科技(北京)有限公司 一种文本标注方法
CN113537097B (zh) * 2021-07-21 2023-08-22 泰康保险集团股份有限公司 针对图像的信息提取方法、装置、介质及电子设备
CN113778303A (zh) * 2021-08-23 2021-12-10 深圳价值在线信息科技股份有限公司 一种文字提取的方法、装置及计算机可读存储介质
US11978267B2 (en) 2022-04-22 2024-05-07 Verkada Inc. Automatic multi-plate recognition
US11557133B1 (en) * 2022-04-22 2023-01-17 Verkada Inc. Automatic license plate recognition
CN115937843B (zh) * 2023-01-09 2023-05-26 苏州浪潮智能科技有限公司 图像的文本检测方法、装置、存储介质和电子设备
CN116090417B (zh) * 2023-04-11 2023-06-27 福昕鲲鹏(北京)信息科技有限公司 版式文档文本选择渲染方法、装置、电子设备及存储介质
CN116740740B (zh) * 2023-08-11 2023-11-21 浙江太美医疗科技股份有限公司 同行文本判定方法、文档排序方法及其应用

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5825919A (en) * 1992-12-17 1998-10-20 Xerox Corporation Technique for generating bounding boxes for word spotting in bitmap images
CN105469047B (zh) * 2015-11-23 2019-02-22 上海交通大学 基于无监督学习深度学习网络的中文检测方法及系统
CN106845474B (zh) * 2015-12-07 2020-05-08 富士通株式会社 图像处理装置和方法
CN107341487B (zh) * 2016-04-28 2021-05-04 科大讯飞股份有限公司 一种涂抹字符的检测方法及系统
CN107977592B (zh) * 2016-10-21 2022-11-01 中兴通讯股份有限公司 一种图像文本检测方法及系统、用户终端及服务器
CN107748888B (zh) * 2017-10-13 2019-11-08 众安信息技术服务有限公司 一种图像文本行检测方法及装置

Also Published As

Publication number Publication date
CN109657629A (zh) 2019-04-19

Similar Documents

Publication Publication Date Title
CN109657629B (zh) 一种文本行提取方法及装置
US10896349B2 (en) Text detection method and apparatus, and storage medium
CN109117825B (zh) 车道线处理方法和装置
JP4928310B2 (ja) ナンバープレート認識装置、その制御方法、コンピュータプログラム
US11308710B2 (en) Polygonal region detection
JP6951905B2 (ja) 手書きテキスト画像に対する行及び単語切り出し方法
JP7132050B2 (ja) テキスト行の区分化方法
RU2697649C1 (ru) Способы и системы сегментации документа
CN111259878A (zh) 一种检测文本的方法和设备
CN112036395A (zh) 基于目标检测的文本分类识别方法及装置
US9858476B1 (en) Method for recognizing table, flowchart and text in document images
CN110443159A (zh) 数字识别方法、装置、电子设备及存储介质
CN109949227A (zh) 图像拼接方法、系统及电子设备
CN113435240A (zh) 一种端到端的表格检测和结构识别方法及系统
CN110428357A (zh) 图像中水印的检测方法、装置、电子设备及存储介质
CN115457565A (zh) 一种ocr文字识别方法、电子设备及存储介质
CN115272652A (zh) 基于多元回归和自适应焦点损失的密集物体图像检测方法
CN114529925B (zh) 一种全线表表格结构识别方法
CN109447117A (zh) 双层车牌识别方法、装置、计算机设备及存储介质
CN110378351A (zh) 印章鉴别方法及装置
US8787702B1 (en) Methods and apparatus for determining and/or modifying image orientation
CN115546809A (zh) 基于单元格约束的表格结构识别方法及其应用
CN115082888A (zh) 一种车道线检测方法和装置
Phillips et al. A performance evaluation protocol for graphics recognition systems
CN111340139B (zh) 一种图像内容复杂度的判别方法及装置

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