CN112906532B - 图像处理方法和装置、电子设备和存储介质 - Google Patents
图像处理方法和装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112906532B CN112906532B CN202110169261.6A CN202110169261A CN112906532B CN 112906532 B CN112906532 B CN 112906532B CN 202110169261 A CN202110169261 A CN 202110169261A CN 112906532 B CN112906532 B CN 112906532B
- Authority
- CN
- China
- Prior art keywords
- line
- region
- frames
- coordinate system
- pixel
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 69
- 238000012545 processing Methods 0.000 claims abstract description 131
- 238000001514 detection method Methods 0.000 claims abstract description 59
- 238000002372 labelling Methods 0.000 claims abstract description 59
- 230000004044 response Effects 0.000 claims abstract description 40
- 238000000034 method Methods 0.000 claims description 43
- 230000008569 process Effects 0.000 claims description 27
- 230000015654 memory Effects 0.000 claims description 26
- 238000012937 correction Methods 0.000 claims description 20
- 238000013507 mapping Methods 0.000 claims description 9
- 238000013459 approach Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 239000008280 blood Substances 0.000 description 4
- 210000004369 blood Anatomy 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 238000009666 routine test Methods 0.000 description 4
- 230000001788 irregular Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013434 data augmentation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012015 optical character recognition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/412—Layout analysis of documents structured with printed lines or input boxes, e.g. business forms or tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
Abstract
一种图像处理方法、图像处理装置、电子设备和非瞬时性计算机可读存储介质。该图像处理方法包括:获取输入图像,输入图像包括表格区域,表格区域包括多个对象区域;对输入图像进行区域识别处理,以得到与多个对象区域一一对应的多个对象区域框和与表格区域对应的表格区域框;对输入图像进行表格线检测处理,以判断表格区域是否包括有线表格;以及响应于表格区域不包括有线表格:对多个对象区域框进行对齐处理,得到与多个对象区域框一一对应的多个区域标注框;基于多个对象区域框确定至少一条分割线,并通过至少一条分割线对多个区域标注框进行分割处理以形成多个单元格;以及基于多个单元格,生成对应于表格区域的单元表格。
Description
技术领域
本公开的实施例涉及一种图像处理方法、图像处理装置、电子设备和非瞬时性计算机可读存储介质。
背景技术
目前,用户经常对物体(例如,物体可以为名片、试卷、化验单、文档等)进行拍照,并希望对拍照得到的图像进行相应处理以获得图像中的物体的相关信息。根据实际不同需求,在一些情况下,用户希望基于图像获得的物体的相关信息能够以表格的形式呈现,以使得到的信息更加直观、规范。因此,在对图像进行处理以获得图像中物体的相关信息时,还需要基于物体的相关信息在图像中所占的区域的大小、位置等绘制表格,以满足用户希望得到的信息能够以表格形式呈现的需求。
发明内容
本公开至少一实施例提供一种图像处理方法,包括:获取输入图像,所述输入图像包括表格区域,所述表格区域包括多个对象区域,所述多个对象区域中的每个对象区域包括至少一个对象;对所述输入图像进行区域识别处理,以得到与所述多个对象区域一一对应的多个对象区域框和与所述表格区域对应的表格区域框;对所述输入图像进行表格线检测处理,以判断所述表格区域是否包括有线表格;以及响应于所述表格区域不包括有线表格:对所述多个对象区域框进行对齐处理,得到与所述多个对象区域框一一对应的多个区域标注框;基于所述多个对象区域框确定至少一条分割线,并通过所述至少一条分割线对所述多个区域标注框进行分割处理以形成多个单元格;以及基于所述多个单元格,生成对应于所述表格区域的单元表格。
本公开至少一实施例还提供一种图像处理装置,该图像处理装置包括:图像获取模块、区域识别处理模块、表格线检测处理模块和单元表格生成模块;图像获取模块被配置为获取输入图像,所述输入图像包括表格区域,所述表格区域包括多个对象区域,所述多个对象区域中的每个对象区域包括至少一个对象;区域识别处理模块被配置为对所述输入图像进行区域识别处理,以得到与所述多个对象区域一一对应的多个对象区域框和与所述表格区域对应的表格区域框;表格线检测处理模块被配置为对所述输入图像进行表格线检测处理,以判断所述表格区域是否包括有线表格;单元表格生成模块被配置为响应于所述表格区域不包括有线表格:对所述多个对象区域框进行对齐处理,得到与所述多个对象区域框一一对应的多个区域标注框;基于所述多个对象区域框确定至少一条分割线,并通过所述至少一条分割线对所述多个区域标注框进行分割处理以形成多个单元格;基于所述多个单元格,生成对应于所述表格区域的单元表格。
本公开至少一实施例还提供一种电子设备,该电子设备包括处理器和存储器,所述存储器用于存储计算机可读指令;所述处理器用于执行所述计算机可读指令时,实现上述任一实施例所述的方法的步骤。
本公开至少一实施例还提供一种非瞬时性计算机可读存储介质,所述计算机可读存储介质用于非暂时性地存储有计算机可读指令,所述计算机可读指令被处理器执行时实现上述任一实施例所述的方法的步骤。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1为本公开至少一实施例提供的一种图像处理方法的流程示意图;
图2A为本公开至少一实施例提供的一种输入图像的示意图;
图2B-2H为对图2A所示的输入图像进行图像处理的过程中的示意图;
图3A为本公开至少一实施例提供的另一种输入图像的示意图;
图3B-3I为对图3A所示的输入图像进行图像处理的过程中的示意图;
图4为本公开至少一实施例提供的一种图像处理方法中的步骤S30的流程示意图;
图5为本公开至少一实施例提供的一种图像处理方法中的步骤S302的部分操作的流程示意图;
图6为本公开至少一实施例提供的一种图像处理方法中的步骤S3020的流程示意图;
图7为本公开至少一实施例提供的另一种图像处理方法的流程示意图;
图8为本公开至少一实施例提供的一种图像处理方法中的步骤S401的流程示意图;
图9为本公开至少一实施例提供的一种图像处理方法中的步骤S4012的流程示意图;
图10为本公开至少一实施例提供的一种图像处理方法中的步骤S402的部分流程示意图;
图11为本公开至少一实施例提供的再一种图像处理方法的流程示意图;
图12为本公开至少一实施例提供的一种图像处理装置的示意性框图;
图13为本公开至少一实施例提供的一种电子设备的示意图;以及
图14为本公开至少一实施例提供的一种非瞬时性计算机可读存储介质的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
本公开至少一实施例提供一种图像处理方法、图像处理装置、电子设备和非瞬时性计算机可读存储介质。该图像处理方法包括:获取输入图像,输入图像包括表格区域,表格区域包括多个对象区域,多个对象区域中的每个对象区域包括至少一个对象;对输入图像进行区域识别处理,以得到与多个对象区域一一对应的多个对象区域框和与表格区域对应的表格区域框;对输入图像进行表格线检测处理,以判断表格区域是否包括有线表格;以及响应于表格区域不包括有线表格:对多个对象区域框进行对齐处理,得到与多个对象区域框一一对应的多个区域标注框;基于多个对象区域框确定至少一条分割线,并通过至少一条分割线对多个区域标注框进行分割处理以形成多个单元格;以及基于多个单元格,生成对应于表格区域的单元表格。
在本公开实施例提供的图像处理方法中,通过对输入图像进行表格线检测处理,可以在判断该输入图像的表格区域不包括有线表格的情况下,通过对识别处理后得到的多个对象区域框进行对齐处理得到对应的多个区域标注框,并基于该多个对象区域框确定分割线,进而在通过分割线对该多个区域标注框进行分割处理后可以形成多个单元格,从而基于该多个单元格生成与该输入图像的表格区域对应的单元表格。由此,在将对象区域中的对象填入该单元表格的各单元格内后,可以生成包含输入图像中的对象的相关信息的对象表格,从而使获取的输入图像中的对象的相关信息可以通过单元表格的形式更加直观、规范地呈现给用户。
本公开实施例提供的图像处理方法可应用于本公开实施例提供的图像处理装置,该图像处理装置可被配置于电子设备上。该电子设备可以是个人计算机、移动终端等,该移动终端可以是手机、平板电脑等硬件设备。
下面,将参考附图详细地说明本公开的实施例。应当注意的是,本公开并不限于这些具体的实施例。
图1为本公开至少一实施例提供的一种图像处理方法的流程示意图。
如图1所示,本公开至少一实施例提供的图像处理方法包括以下步骤S10至步骤S40。
步骤S10:获取输入图像。例如,输入图像包括表格区域,表格区域包括多个对象区域,多个对象区域中的每个对象区域包括至少一个对象。
步骤S20:对输入图像进行区域识别处理,以得到与多个对象区域一一对应的多个对象区域框和与表格区域对应的表格区域框。
步骤S30:对输入图像进行表格线检测处理,以判断表格区域是否包括有线表格。
步骤S40:响应于表格区域不包括有线表格,执行以下步骤S401至步骤S403。
步骤S401:对多个对象区域框进行对齐处理,得到与多个对象区域框一一对应的多个区域标注框。
步骤S402:基于多个对象区域框确定至少一条分割线,并通过至少一条分割线对多个区域标注框进行分割处理以形成多个单元格。
步骤S403:基于多个单元格,生成对应于表格区域的单元表格。
对于步骤S10,例如,输入图像可以为用户对某一物体进行拍照所得的图像,该物体例如可以是名片、试卷、化验单、文档、***等,相应地,输入图像中的对象可以为物体中包含的文字(中文和/或外文;印刷体文字和/或手写体文字)、数据、图形、符号等。
例如,输入图像的形状可以为矩形、正方形等规则形状,也可以为不规则形状,输入图像的形状和尺寸等可以由用户根据实际情况自行设定。例如,输入图像可以为通过数码相机或手机等拍摄得到的图像,例如可以是数码相机或手机等直接采集到的原始图像,也可以是对原始图像进行预处理后得到的图像。例如,输入图像可以为灰度图像,也可以为彩色图像等。
例如,图2A和图3A分别为两种输入图像的示例。图2A所示的输入图像包括表格区域201,表格区域201包括多个对象区域202,每个对象区域202包括至少一个文字或数据。图3A所示的输入图像包括表格区域301,表格区域301包括多个对象区域302,每个对象区域302包括至少一个文字或数据。例如,在对象区域202和302中,文字及数据沿水平方向排列为一行。
需要说明的是,在图2A和图3A所示的示例中,对象区域中包含的文字及数据沿水平方向排列为一行,而在本公开的其他一些示例中,输入图像中也可以包括对象区域中包含的文字或数据沿竖直方向排列为一行或者分别沿水平方向和竖直方向排列为多行的情况,本公开的实施例对此不作限制。在图2A和图3A所示的示例中,对象区域中包含的对象为文字或数据,而在本公开的其他一些示例中,对象区域中包含的对象还可以包括图形、符号等,本公开的实施例对此不作限制。
例如,在图2A和图3A所示的示例中,输入图像中的待识别的表格区域201和301以及对象区域202和302的形状为矩形,而在本公开的其他一些示例中,输入图像中的待识别的表格区域以及对象区域也可以为菱形、正方形等其他规则形状,或者也可以为不规则形状等,只要满足表格区域能够覆盖待识别的全部对象且每个对象区域能够覆盖待识别的相应的对象即可。
例如,对于图2A所示的输入图像,位于右上角的文本“2019年年度报告”可以被划分在表格区域201中,也即,表格区域201包括该文本“2019年年度报告”所占据的区域;或者,该文本“2019年年度报告”也可以被划分在表格区域201之外,也即,表格区域201也可以不包括文本“2019年年度报告”所占据的区域,本公开的实施例对此不作限制。对于图3A所示的输入图像,位于顶部的文本“血常规检验”可以被划分在表格区域301之外,也即,表格区域301不包括该文本“血常规检验”所占据的区域;或者,该文本“血常规检验”也可以被划分在表格区域301中,也即,表格区域301也可以包括文本“血常规检验”所占据的区域,本公开的实施例对此不作限制。
例如,在本公开的一些实施例中,在获取输入图像后,还可以对输入图像进行预处理之后再执行后续步骤中的各项操作,从而提升后续步骤中的各项操作的准确性和可靠性。例如,可以对输入图像进行校正处理,校正处理例如可以包括对输入图像进行全局校正和局部校正,全局校正可以校正例如文本行的全局偏移情况,并且由于全局校正之后还可能有细节未调整,因而通过局部校正可以针对在全局校正过程中忽略的细节进行一些补充校正,从而降低或防止由于全局校正产生的细节丢失,提高得到的校正处理结果的准确性和可靠性。
对于步骤S20,例如,可以通过区域识别模型识别输入图像中的表格区域以及多个对象区域,例如区域识别模型可以采用机器学习技术实现并且运行在通用计算装置或专用计算装置上。该区域识别模型例如可以为预先训练得到的神经网络模型。例如,区域识别模型可以采用深度卷积神经网络(DEEP-CNN)等适用的神经网络实现。
例如,表格区域框和对象区域框的具体形状可以分别根据表格区域和对象区域的具体形状、大小等确定,表格区域框围绕表格区域且能够将位于该表格区域中的所有对象全部包含其中,对象区域框围绕相应的对象区域且能够将位于该对象区域中的所有对象全部包含其中。例如,对象区域框的边框与位于该对象区域的边缘的对象之间的距离可以趋近于0,以使对象区域框的形状更加接近于对象区域的实际形状。例如,相比于对象区域框,表格区域框的边框与位于该表格区域的边缘的对象之间的距离可以适应性增大,以使表格区域框可以将所有对象包含其中。
例如,以对图2A和图3A所示的输入图像进行区域识别处理为例,如图2B所示,在对图2A所示的输入图像进行区域识别处理后,可以得到与表格区域201对应的表格区域框210以及与多个对象区域202一一对应的多个对象区域框220;如图3B所示,在对图3A所示的输入图像进行区域识别处理后,可以得到与表格区域301对应的表格区域框310以及与多个对象区域302一一对应的多个对象区域框320。
例如,为了便于后续操作,在本公开提供的实施例中,对象区域框的形状例如可以设置为矩形、正方形等规则形状,以便于后续响应于表格区域不包括有线表格,对多个对象区域框进行对齐处理操作。
需要说明的是,在本公开的实施例中,“表格区域的形状”以及“对象区域的形状”表示表格区域或对象区域的大体形状,类似地,“表格区域框的形状”以及“对象区域框的形状”表示表格区域框或对象区域框的大体形状。
对于步骤S30,例如,可以基于边缘检测算法对输入图像进行表格线检测处理以识别输入图像中的表格线段,进而根据表格线段的识别结果判断输入图像的表格区域中是否包括有线表格。
图4为本公开至少一实施例提供的一种图像处理方法中的步骤S30的流程示意图。
例如,如图4所示,步骤S30可以包括以下步骤S301至步骤S302。
步骤S301:在对输入图像进行表格线检测处理且检测到输入图像不具有表格线段的情况下,确定表格区域不包括有线表格。
步骤S302:在对输入图像进行表格线检测处理且得到一条或多条表格线段的情况下,基于一条或多条表格线段判断表格区域是否包括有线表格。
对于步骤S301,在根据表格线检测处理结果确定输入图像中不具有表格线段的情况下,则可以确定该输入图像的表格区域中不包括有线表格,由此响应于输入图像的表格区域不包括有线表格,执行步骤S40的操作。
对于步骤S302,在根据表格线检测处理结果得到输入图像中具有至少一条表格线段的情况下,则需要基于得到的表格线段进一步判断输入图像的表格区域中是否包括有线表格。
下面以对图2A所示的输入图像进行表格线检测处理为例,对步骤S302中的具体操作过程进行说明。
图5为本公开至少一实施例提供的一种图像处理方法中的步骤S302的部分操作的流程示意图。
例如,如图5所示,步骤S302中的对输入图像进行表格线检测处理以得到一条或多条表格线段可以包括以下步骤S3011至步骤S3016。
步骤S3011:对输入图像进行线段检测,以得到多条检测线段。
步骤S3012:对多条检测线段进行合并处理,以重新绘制得到多条第一中间表格线段。
步骤S3013:将多条第一中间表格线段分别进行膨胀处理以得到多条第二中间表格线段。
步骤S3014:将多条第二中间表格线段中的位于多个对象区域框中的任一对象区域框内的第二中间表格线段删除,并将多条第二中间表格线段中剩余的第二中间表格线段作为多条第三中间表格线段。
步骤S3015:对多条第三中间表格线段进行合并处理,以得到多条第四中间表格线段。
步骤S3016:将多条第四中间表格线段分别进行膨胀处理以得到一条或多条第五中间表格线段,并将一条或多条第五中间表格线段作为一条或多条表格线段。
对于步骤S3011,例如,以图2A所示的输入图像为例,如图2C所示,在对图2A所示的输入图像进行线段检测后,可以得到多条检测线段L0,由此可以基于检测到的多条检测线段L0进行后续步骤中的例如合并处理、膨胀处理等操作,以得到相应的表格线段,从而基于得到的表格线段确定图2A所示的输入图像的表格区域201是否包括有线表格。
对于步骤S3012,合并处理包括:对于待进行合并的第一待合并线段和第二待合并线段,响应于第一待合并线段的斜率和第二待合并线段的斜率之差小于斜率阈值,且第一待合并线段的靠近第二待合并线段的端点和第二待合并线段的靠近第一待合并线段的端点之间的距离小于等于距离阈值,将第一待合并线段和第二待合并线段进行合并。例如,第一待合并线段和第二待合并线段为多条检测线段中的任意两条检测线段。
例如,针对基于图2A所示的输入图像检测得到的多条检测线段L0,将多条检测线段L0中的任意两条检测线段L0作为第一待合并线段和第二待合并线段,判断该任意两条检测线段L0是否满足进行合并处理的条件,也即,判断该任意两条检测线段L0的斜率之间的差值是否小于斜率阈值以及该任意两条检测线段L0的彼此邻近的端点之间的距离是否小于等于距离阈值,并在满足上述合并处理的条件的情况下,合并该任意两条检测线段L0以得到第一中间表格线段L1。
例如,斜率阈值的范围可以为0°~10°,第一距离阈值可以是以像素为单位的数值,例如第一距离阈值的范围可以为0~10个像素,由此提升基于检测线段得到的表格线段的准确性和可靠性。
例如,以位于图2C中的区域RN1中的检测线段L11和L12为例,如图2D所示,将检测线段L11和L12分别作为第一待合并线段和第二待合并线段,第一待合并线段L11的斜率和第二待合并线段L12的斜率之间的差值趋近于零,也即,可以确定第一待合并线段L11的斜率和第二待合并线段L12的斜率之间的差值小于斜率阈值,并且第一待合并线段L11的靠近第二待合并线段L12的端点D11和第二待合并线段L12的靠近第一待合并线段L11的端点D12之间的距离小于等于距离阈值,因此可以将第一待合并线段L11和第二待合并线段L12进行合并,以得到第一中间表格线段L1。由此,在对图2C中的任意两条检测线段L0均进行合并处理后,可以相应地得到多条第一中间表格线段L1。
对于步骤S3013,将得到的多条第一中间表格线段L1分别进行膨胀处理以得到多条第二中间表格线段L2。例如,膨胀处理后的第二中间表格线段L2的宽度可以为对应的第一中间表格线段L1的1~4倍,以便于后续步骤中的合并处理操作。
对于步骤S3014,将位于任一对象区域框220内的第二中间表格线段L2删除,并将剩余的第二中间表格线段L2作为多条第三中间表格线段L3。例如,在步骤S3014中,如果一条第二中间表格线段L2全部位于一个对象区域框220内,也即,没有穿过该对象区域框220,则删除该条第二中间表格线段L2,由此可以将图2C中所示的例如由文字或数据得到的检测线段删除,从而进一步提升后续得到的表格线段的准确性和可靠性。例如,在步骤S3014后,可以得到图2E中所示的多条第三中间表格线段L3。
对于步骤S3015和步骤S3016,在得到图2E中所示的多条第三中间表格线段L3后,基于多条第三中间表格线段L3重复上述步骤S3012和步骤S3013中的合并处理过程以及膨胀处理过程,进而得到图2F中所示的多条第五中间表格线段,并将图2F中得到的第五中间表格线段作为表格线段TL,由此提升得到的表格线段TL的准确性和可靠性,从而提升基于表格线段TL对输入图像的表格区域内是否包括有线表格的判断过程的准确性和可靠性。
例如,步骤S3015中的合并处理包括:对于待进行合并的第一待合并线段和第二待合并线段,响应于第一待合并线段的斜率和第二待合并线段的斜率之差小于斜率阈值,且第一待合并线段的靠近第二待合并线段的端点和第二待合并线段的靠近第一待合并线段的端点之间的距离小于等于距离阈值,将第一待合并线段和第二待合并线段进行合并。例如,第一待合并线段和第二待合并线段为多条第三中间表格线段中的任意两条第三中间表格线段。
对于步骤S3015和步骤S3016的操作过程可以参考上述关于步骤S3012和步骤S3013的操作过程的描述,此处不再赘述。
由此,可以根据输入图像的表格线检测处理的结果,确定是否直接执行图1中所示的步骤S40,或者需要基于得到的表格线段进一步确定输入图像的表格区域是否包括有线表格。
例如,在对输入图像进行表格线检测处理并得到至少一条表格线段后,上述步骤S302中的基于一条或多条表格线段判断表格区域是否包括有线表格可以包括以下步骤S3019至步骤S3022。
响应于得到一条表格线段:
步骤S3019:确定表格区域不包括有线表格。
响应于得到多条表格线段:
步骤S3020:确定多条表格线段之间的交点。
步骤S3021:响应于交点的数量大于或等于第二参考值,确定表格区域包括有线表格。
步骤S3022:响应于交点的数量小于第二参考值,确定表格区域不包括有线表格。
对于步骤S3019,在对输入图像进行表格线检测处理并且检测到输入图像仅具有一条表格线段的情况,由于一条表格线段无法形成完整的表格结构,因此可以将输入图像的表格区域确定为不包括有线表格,执行图1中所示的步骤S40的操作。
对于步骤S3020至步骤S3022,在对输入图像进行表格线检测处理并且检测到输入图像具有多条表格线段的情况,则需要进一步基于该多条表格线段判断该多条表格线段之间是否可以形成一个完整的表格结构,以确定输入图像的表格区域是否包括有线表格。例如,步骤S3020至步骤S3022中通过基于多条表格线段确定的交点的数量,判断该多条表格线段之间是否可以形成一个完整的表格结构,从而进一步确定输入图像的表格区域是否包括有线表格。
例如,如图6所示,步骤S3020中多条表格线段之间的交点可以通过以下步骤S3020A至步骤S3020D确定。
步骤S3020A:将多条表格线段划分为多条第一表格线段和多条第二表格线段。
步骤S3020B:将多条第一表格线段划分为多个第一线段行并标记多条第一表格线段中的每条第一表格线段所属的第一线段行的行号。例如,每个第一线段行包括沿第三方向排列的至少一条第一表格线段。
步骤S3020C:将多条第二表格线段划分为多个第二线段列并标记多条第二表格线段中的每条第二表格线段所属的第二线段列的列号。例如,每个第二线段列包括沿第四方向排列的至少一条第二表格线段。
步骤S3030D:识别多条第一表格线段与多条第二表格线段之间的多个交点,并确定多个交点的坐标。例如,多个交点中的任一交点的坐标包括相交以构成任一交点的第一表格线段对应的行号和第二表格线段对应的列号。
例如,在步骤S3020A中,每条第一表格线段与第三方向的夹角处于第一角度范围,每条第一表格线段与第四方向的夹角处于第二角度范围,每条第二表格线段与第三方向的夹角处于第二角度范围,每条第二表格线段与第四方向的夹角处于第一角度范围,第三方向和第四方向彼此垂直。
例如,以图2F中所示的多条表格线段TL为例,如图2G所示,第三方向R3可以为图2G中所示的水平方向,第四方向R4可以为图2G中所示的垂直方向。例如,第一角度范围可以为0°~45°,第二角度范围可以为45°~90°,由此可以将多条表格线段TL划分为多条第一表格线段TL1和多条第二表格线段TL2。进而,沿第四方向R4将多条第一表格线段TL1划分为多个第一线段行并标记每条第一表格线段TL1所属的第一线段行的行号,例如多个第一线段行包括如图2G中所示的第1线段行至第43线段行;沿第三方向R3将多条第二表格线段TL2划分为多个第二线段列并标记每条第二表格线段TL2所属的第二线段列的列号,例如多个第二线段列包括如图2G中所示的第1线段列至第5线段列。由此,基于构成每个交点N1的第一表格线段TL1对应的行号和第二表格线段TL2对应的列号,可以得到图2G中所示的每个交点N1的坐标。
例如,在确定每个交点N1的坐标后,基于交点N1的数量,执行步骤S3021和S3022,以确定输入图像的表格区域中是否包括有线表格。
例如,步骤S3021和S3022中的第二参考值可以为多个第一线段行的数量和多个第二线段列的数量中的较大值。例如,以图2G所示的情形为例,多个第一线段行的数量为43,多个第二线段列的数量为5,则第二参考值为43。由此,根据交点的数量与第二参考值之间的大小关系,可以判断输入图像的表格区域是否包括有线表格。
例如,以图2G所示的情形为例,交点N1的数量为215,大于第二参考值43,因此可以确定图2A所示的输入图像的表格区域201包括有线表格。
例如,在采用上述步骤S30对图3A所示的输入图像进行处理后,确定图3A所示的输入图像的表格区域301不包括有线表格。因此,响应于图3A所示的输入图像的表格区域301不包括有线表格,执行上述步骤S40以生成对应于图3A所示的输入图像的表格区域301的单元表格;响应于图2A所示的输入图像的表格区域201包括有线表格,则执行以下步骤S50以生成对应于图2A所示的输入图像的表格区域201的单元表格。
图7为本公开至少一实施例提供的另一种图像处理方法的流程示意图。需要说明的是,除步骤S50以外,图7中所示的步骤S10至步骤S30均与图1中所示的步骤S10至步骤S30基本相同,重复之处不再赘述。
例如,如图7所示,响应于表格区域包括有线表格,本公开实施例提供的图像处理方法还包括以下步骤S50。
步骤S50:基于多条表格线段生成对应于表格区域的单元表格。
例如,以图2A所示的输入图像为例,在通过步骤S30确定图2A所示的输入图像的表格区域201包括有线表格后,可以基于图2G中所示的多条表格线段TL1和TL2生成相应的单元表格。
例如,在本公开的一些实施例中,步骤S50可以包括以下步骤S501。
步骤S501:基于多个交点,确定单元表格中的各单元格。例如,单元表格中的每个单元格的顶点由多个交点中的至少三个交点构成。
例如,得到的上述交点作为确定单元表格中的各单元格的顶点,由此基于上述交点的坐标确定单元表格中的各单元格。例如,单元格可以采用矩形、正方形等形式,因此通过三个或更多个交点就可以确定一个单元格,进而通过多个单元格构成表格结构,生成相应的单元表格。
例如,在本公开的一些实施例中,步骤S501可以包括以下步骤S5011至步骤S5014。
步骤S5011:确定当前交点。例如,当前交点为多个交点中的任意一个交点。
步骤S5012:基于当前交点的坐标,确定当前交点对应的第一当前表格线段和第二当前表格线段。例如,第一当前表格线段为任意一条第一表格线段,第二当前表格线段为任意一条第二表格线段。
步骤S5013:确定第一当前表格线段上与当前交点相邻的第一交点,以及确定第二当前表格线段上与当前交点相邻的第二交点。
步骤S5014:基于当前交点、第一交点和第二交点确定一个单元格。
由此,通过交点所在的表格线段,可以确定与当前交点例如分别在水平方向上和垂直方向上相邻的第一交点和第二交点,从而基于确定的交点构成一个单元格,以生成通过表格结构形式呈现的单元表格。
针对输入图像的表格区域不包括有线表格的情况,执行上述步骤S40,由此基于输入图像中识别得到的对象区域框生成对应于表格区域的单元表格。
图8为本公开至少一实施例提供的一种图像处理方法中的步骤S401的流程示意图。
例如,如图8所示,步骤S401包括以下步骤S4011至步骤S4013。
步骤S4011:以基准参考值为坐标单位,将表格区域框沿第一方向和第二方向划分为呈M行N列排列的多个坐标格区域,以建立表格坐标系。例如,M行坐标格区域沿第一方向排列,N列坐标格区域沿第二方向排列,M和N为正整数。
步骤S4012:确定多个对象区域框在表格坐标系中的坐标。
步骤S4013:基于多个对象区域框在表格坐标系中的坐标,对多个对象区域框进行膨胀处理,以得到多个区域标注框。
例如,以位于图3A和3B所示的输入图像中的区域RN2内的对象区域框320为例,如图3C所示,在将表格区域框310沿第一方向R1和第二方向R2划分为呈多行多列排列的多个坐标格区域311后,分别确定每个对象区域框320在表格坐标系中的相应的坐标,例如分别确定每个对象区域框320的每条边在表格坐标系中对应的坐标格区域311的行号和列号。由此,基于多个对象区域框320在表格坐标系中的坐标,对多个对象区域框320进行膨胀处理,以得到与对象区域框320对应的区域标注框。
例如,步骤S4011中的基准参考值可以根据多个对象区域框在第一方向上的平均高度确定。由此,可以基于生成的表格坐标系较为准确地确定对象区域框之间的相对位置,有利于后续基于对象区域框彼此之间的相对位置对对象区域框进行对齐处理以确定区域标注框。
例如,以图3A和图3B所示的输入图像的对象区域302中包括的对象为文字或数据为例,可以以半个文字高度或数据高度为基准参考值,将表格区域框310沿第一方向R1和第二方向R2划分为多个坐标格区域311,从而基于表格区域框310形成一个行列宽为半个文字高度或数据高度的高密度表格坐标系。由此,可以基于生成的表格坐标系较为准确地确定对象区域框320之间的相对位置。
图9为本公开至少一实施例提供的一种图像处理方法中的步骤S4012的流程示意图。如图9所示,步骤S4012包括以下步骤S4012A至步骤S4012C。
步骤S4012A:确定多个对象区域框的多个斜率。例如,多个对象区域框中的每个对象区域框的斜率表示每个对象区域框的沿第二方向延伸的边相对于第二方向的斜率。
步骤S4012B:根据多个对象区域框的多个斜率,对输入图像进行校正处理,以得到校正后的输入图像。
步骤S4012C:基于校正后的输入图像,确定多个对象区域框在表格坐标系中的坐标。
由此,在确定多个对象区域框在表格坐标系中的坐标之前,可以根据每个对象区域框的沿第二方向R2延伸的边相对于第二方向R2的斜率,对输入图像进行校准处理,例如调整输入图像在第一方向R1和第二方向R2构成的平面内的旋转角度,由此实现对输入图像的全局校正,改善例如输入图像中的文本行的全局偏移情况,进而提升确定的对象区域框在表格坐标系中的坐标的准确性和可靠性,从而可以基于表格坐标系较为准确地确定对象区域框之间的相对位置。
例如,在一些示例中,上述步骤S4012B可以包括以下步骤S4012D和步骤S4012E。
步骤S4012D:根据多个对象区域框的多个斜率,计算多个斜率的平均值。
步骤S4012E:基于多个斜率的平均值,在第一方向和第二方向构成的平面内旋转输入图像,以使得多个斜率的平均值趋近于0。
由此,通过在第一方向和第二方向构成的平面内对输入图像进行旋转处理,可以使多个对象区域框在该平面内相对于第一方向或第二方向的倾斜角度相对保持一致,例如在一定角度范围内,由此整体上改善对象区域中包括的对象可能出现的例如行偏移情况,实现对输入图像的全局校正。
在本公开的其他一些示例中,对于上述步骤S4012A和步骤S4012B,也可以根据每个对象区域框的沿第一方向R1延伸的边相对于第一方向R1的斜率,对输入图像进行校正处理,本公开的实施例对此不作限制。
在本公的一些示例中,步骤S4013可以包括以下步骤S4013A至S4013D。
步骤S4013A:确定多个对象区域框在表格坐标系中在第一方向上的第一起始坐标和第一终止坐标以及在第二方向上的第二起始坐标和第二终止坐标。例如,多个对象区域框中的任一对象区域框的第一起始坐标包括任一对象区域框在表格坐标系中所占据的坐标格区域的起始行的坐标,任一对象区域框的第一终止坐标包括任一对象区域框在表格坐标系中所占据的坐标格区域的终止行的坐标,任一对象区域框的第二起始坐标包括任一对象区域框在表格坐标系中所占据的坐标格区域的起始列的坐标,任一对象区域框的第二终止坐标包括任一对象区域框在表格坐标系中所占据的坐标格区域的终止列的坐标。
步骤S4013B:将多个对象区域框划分为多行多列,按照沿表格坐标系中的起始行指向终止行的方向对多个对象区域框逐行进行膨胀处理,且按照沿表格坐标系中的起始列指向终止列的方向对每行对象区域框依次进行膨胀处理。
对于多个对象区域框中的第i个对象区域框,例如i为正整数:
步骤S4013C:将第i个对象区域框在第一方向上进行膨胀处理,使得第i个对象区域框所占据的坐标格区域的起始行在第一方向上沿远离第i个对象区域框所占据的坐标格区域的终止行的方向每次移动基准参考值,使得第i个对象区域框所占据的坐标格区域的终止行在第一方向上沿远离第i个对象区域框所占据的坐标格区域的起始行的方向每次移动基准参考值,直至使第i个对象区域框的第一起始坐标等于0或等于多个对象区域框中除第i个对象区域框以外的任意一个对象区域框的第一终止坐标,且使第i个对象区域框的第一终止坐标等于表格坐标系的最大行值或等于多个对象区域框中除第i个对象区域框以外的任意一个对象区域框的第一起始坐标。
步骤S4013D:将第i个对象区域框在第二方向上进行膨胀处理,使得第i个对象区域框所占据的坐标格区域的起始列在第二方向上沿远离第i个对象区域框所占据的坐标格区域的终止列的方向每次移动基准参考值,使得第i个对象区域框所占据的坐标格区域的终止列在第二方向上沿远离第i个对象区域框所占据的坐标格区域的起始列的方向每次移动基准参考值,直至使第i个对象区域框的第二起始坐标等于0或等于多个对象区域框中除第i个对象区域框以外的任意一个对象区域框的第二终止坐标,且使第i个对象区域框的第二终止坐标等于表格坐标系的最大列值或等于多个对象区域框中除第i个对象区域框以外的任意一个对象区域框的第二起始坐标,由此得到与第i个对象区域框对应的区域标注框。
例如,以图3A所示的输入图像为例,可以将多个对象区域框320划分为23行7列,按照例如从“序号”指向“22”的方向依次对每行对象区域框320进行膨胀处理以实现对每行中的对象区域框320的对齐处理,按照例如从“序号”指向“参考值”的方向依次对每列对象区域框320进行膨胀处理以实现对每列中的对象区域框320的对齐处理。
例如,上述对多个对象区域框320分别进行膨胀处理的过程中,可能是对多个对象区域框320依次进行一次膨胀处理后就可以得到对应的多个区域标注框,也可能是需要对多个对象区域框320依次进行反复多次膨胀处理后才可以得到对应的多个区域标注框,也即,每个对象区域框320可能进行一次或多次膨胀处理以得到最终膨胀处理后的区域标注框。本公开的实施例对膨胀处理的次数不作具体限制。
例如,以确定对象区域框320的第二终止坐标为例,如图3C和3D所示,将对象区域框321在第二方向R2上进行膨胀,使得对象区域框321所占据的坐标格区域311的终止列在第二方向R2上沿远离对象区域框321所占据的坐标格区域311的起始列的方向每次移动基准参考值,直至使对象区域框321的第二终止坐标等于对象区域框325的第二起始坐标(也即,对象区域框326、对象区域框327或对象区域框328的第二起始坐标),由此以确定对象区域框321的第二终止坐标;将对象区域框322在第二方向R2上进行膨胀,使得对象区域框322所占据的坐标格区域311的终止列在第二方向R2上沿远离对象区域框322所占据的坐标格区域311的起始列的方向每次移动基准参考值,直至使对象区域框322的第二终止坐标等于对象区域框325的第二起始坐标,由此以确定对象区域框322的第二终止坐标;将对象区域框323在第二方向R2上进行膨胀,使得对象区域框323所占据的坐标格区域311的终止列在第二方向R2上沿远离对象区域框323所占据的坐标格区域311的起始列的方向每次移动基准参考值,直至使对象区域框323的第二终止坐标等于对象区域框325的第二起始坐标,由此以确定对象区域框323的第二终止坐标;将对象区域框324在第二方向R2上进行膨胀,使得对象区域框324所占据的坐标格区域311的终止列在第二方向R2上沿远离对象区域框324所占据的坐标格区域311的起始列的方向每次移动基准参考值,直至使对象区域框324的第二终止坐标等于对象区域框325的第二起始坐标,由此以确定对象区域框324的第二终止坐标。对象区域框的第二起始坐标以及第一起始坐标和第一终止坐标的确定方法可参照上述第二终止坐标的确定过程,此处不再赘述。
由此,在分别沿第一方向R1和第二方向R2对每个对象区域框320进行膨胀处理后,可以得到与多个对象区域框320一一对应的呈对齐排列的多个区域标注框。
需要说明的是,针对输入图像中包括的多个对象区域之间的相对位置或具体排列情况,在本公开的其他一些示例中,例如在相邻的对象区域框之间在第二方向上具有较大间距的情况下,也可以仅在第一方向上对多个对象区域框进行膨胀处理,且在第二方向上不对对象区域框进行膨胀处理,由此得到在第一方向上对齐处理后的区域标注框,进而简化对多个对象区域框的对齐处理过程,使本公开提供的图像处理方法的实现过程得到优化。
图10为本公开至少一实施例提供的一种图像处理方法中的步骤S402的部分流程示意图。
例如,如图10所示,步骤S402中的基于多个区域标注框确定至少一条分割线包括以下步骤S421至步骤S426。
步骤S421:以像素为坐标单位,基于表格区域框建立像素坐标系。例如,像素坐标系包括多个像素单元,像素坐标系的第一坐标轴平行于第一方向,像素坐标系的第二坐标轴平行于第二方向。
步骤S422:确定多个对象区域框在像素坐标系中的坐标,以得到与多个对象区域框一一对应的多个像素区域。
步骤S423:将多个像素区域在像素坐标系中占据的像素单元标记为第一像素单元,将像素坐标系中的除多个像素区域占据的第一像素单元以外的像素单元标记为第二像素单元。
步骤S424:沿第二方向依次确定像素坐标系中的每列像素单元包括的第一像素单元的个数。
步骤S425:响应于任一一列像素单元包括的第一像素单元的个数小于或等于第一像素参考值,将任一一列像素单元作为一条第一中间分割线,以得到至少一条第一中间分割线。
步骤S426:基于至少一条第一中间分割线,在表格坐标系中确定沿第一方向延伸的至少一条第一分割线。例如,至少一条分割线包括至少一条第一分割线。
例如,以图3A所示的输入图像为例,参考图3E和图3F所示,基于图3B中所示的表格区域框310建立如图3E所示的以像素为坐标单位的像素坐标系,进而在确定多个对象区域框320在该像素坐标系中的坐标后,可以得到与多个对象区域框320一一对应的多个像素区域321。
例如,如图3E所示,将像素区域321在该像素坐标系中占据的像素单元标记为第一像素单元PX1,例如图3E中所示的白色像素单元;将该像素坐标系中的除多个像素区域321占据的第一像素单元PX1以外的像素单元均标记为第二像素单元PX2,例如图3E中所示的黑色像素单元,由此可以通过第一像素单元PX1和第二像素单元PX2表示与多个对象区域框320对应的多个像素区域321在该像素坐标系中的相对位置。
进而,在将像素坐标系中的各像素单元分别标记为第一像素单元PX1和第二像素单元PX2后,沿第二方向R2依次确定像素坐标系中的每列像素单元中包括的第一像素单元PX1的个数,并根据每列像素单元中包括的第一像素单元PX1的个数,确定第一中间分割线。当一列像素单元中包括的第一像素单元PX1的个数小于或等于第一像素参考值时,例如该列像素单元中包括的第一像素单元PX1的个数为0或者该列像素单元中包括的第一像素单元PX1的个数明显小于其他列像素单元中包括的第一像素单元PX1的个数,该列像素单元可以作为一条第一中间分割线。由此,可以基于像素坐标系中确定的一条或多条第一中间分割线,在表格坐标系中确定沿第一方向R1延伸的一条或多条第一分割线,例如该一条或多条第一分割线也即对应于图3F中所示的线段CL1,从而可以在后续步骤中基于得到的该一条或多条第一分割线实现对多个区域标注框在第二方向R2上的分割处理。
例如,在一些示例中,第一像素参考值可以为0,由此响应于一列像素单元中包括的第一像素单元PX1的个数等于第一像素参考值(也即等于0),也即,当一列像素单元中不包括第一像素单元PX1,该列中的各像素单元均为第二像素单元PX2时,可以将该列像素单元作为一条第一中间分割线。或者,在一些示例中,第一像素参考值可以基于输入图像的图像高度确定,例如该第一像素参考值可以基于输入图像的图像高度确定为大于0的正数,由此响应于一列像素单元中包括的第一像素单元PX1的个数小于第一像素参考值,将该列像素单元作为一条第一中间分割线。例如,当第一像素参考值基于输入图像的图像高度确定为大于0的正数PR1时,如果一列像素单元中包括的第一像素单元PX1的个数N1满足0≤N1<PR1,则可以将该列像素单元作为一条第一中间分割线。由此,可以准确地确定输入图像中未被对象区域或对象区域中包括的对象所占据的部分或者被对象区域或对象区域中包括的对象占据相对较少的部分,并基于该部分实现对与对象区域对应的区域标注框的分割处理,进而基于分割处理后的区域标注框生成与表格区域对应的表格结构。
例如,以基于输入图像的图像高度确定第一像素参考值PR1为例,输入图像的图像高度例如为沿第一方向R1(也即列方向)的一整列像素中所包含的像素的总个数PN1,第一像素参考值PR1例如可以为该输入图像的图像高度的0.3倍,也即PR1=0.3×PN1,由此在像素坐标系中的一列像素单元中包括的第一像素单元PX1的个数小于0.3×PN1时,可以确定该列像素单元中包括的第一像素单元PX1的个数明显或相对远小于其他列像素单元中包括的第一像素单元PX1的个数,进而可以将该列像素单元作为一条第一中间分割线,从而提升在像素坐标系中确定的第一中间分割线的准确性和可靠性,有助于后续对于区域标注框的准确划分。
需要说明的是,在本公开的其他一些示例中,第一像素参考值也可以为该输入图像的图像高度的0.1倍、0.15倍、0.2倍、0.25倍、0.35倍、0.4倍或其他适合的数值,本公开的实施例对此不作限制。
需要说明的是,在本公开的其他一些示例中,第一像素参考值也可以基于表格区域或表格区域框的图像高度确定,也即,第一像素参考值可以基于表格区域中的沿第一方向R1的一整列像素中所包含的像素的总个数,例如第一像素参考值可以为表格区域或表格区域框的图像高度的0.15倍、0.2倍、0.3倍或其他适合的数值,本公开的实施例对此不作限制。
例如,步骤S426可以包括以下步骤S426A和步骤S426B。
步骤S426A:响应于至少一条第一中间分割线中的任一一条第一中间分割线在第二方向上不具有相邻的第一中间分割线,将任一一条第一中间分割线从像素坐标系映射到表格坐标系中,以在表格坐标系中得到与任一一条第一中间分割线对应的一条第一分割线。
步骤S426B:响应于至少一条第一中间分割线包括在第二方向上连续的X条第一中间分割线,将X条第一中间分割线中的任意一条第一中间分割线从像素坐标系映射到表格坐标系中,以在表格坐标系中得到与X条第一中间分割线对应的一条第一分割线。例如,X为正整数。
例如,当得到的一条第一中间分割线在第二方向R2上不具有相邻的第一中间分割线时,也即,当一列像素单元中包括的第一像素单元PX1的个数等于0且与该列像素单元在第二方向R2上相邻的任一一列像素单元中包括的第一像素单元PX1的个数均大于0时,或者当一列像素单元中包括的第一像素单元PX1的个数小于第一像素参考值PR1(PR1>0)且与该列像素单元在第二方向R2上相邻的任一一列像素单元中包括的第一像素单元PX1的个数均大于或等于第一像素参考值PR1时,则可以将该列像素单元作为一条第一中间分割线,并将该条第一中间分割线从像素坐标系映射到表格坐标系中得到一条第一分割线。
例如,当得到的一条第一中间分割线在第二方向R2上具有相邻的第一中间分割线时,也即,当一列像素单元中包括的第一像素单元PX1的个数小于第一像素参考值PR1且与该列像素单元在第二方向R2上相邻的任意一列像素单元中包括的第一像素单元PX1的个数也小于第一像素参考值PR1时,也就是说,当一列像素单元中包括的第一像素单元PX1的个数等于0或者为小于PR1的正整数且与该列像素单元在第二方向R2上相邻的任意一列像素单元中包括的第一像素单元PX1的个数也等于0或者为小于PR1的正整数时,则可以将该相邻的多条第一中间分割线中的任意一条第一中间分割线从像素坐标系映射到表格坐标系中得到一条第一分割线。
例如,在一些示例中,当像素坐标系中存在在第二方向R2上连续的多条第一中间分割线时,可以将在第二方向R2上位于该多条第一中间分割线中的中间位置处的一条第一中间分割线从像素坐标系映射到表格坐标系中以得到一条第一分割线,例如,可以取该多条第一中间分割线的中线并将该中线从像素坐标系映射到表格坐标系中以得到一条第一分割线,从而提升后续步骤中基于得到的分割线对多个区域标注框进行分割处理的准确性和可靠性,进而优化得到的对应于输入图像中的表格区域的表格结构。
例如,如图10所示,步骤S402中的基于多个对象区域框确定至少一条分割线还包括以下步骤S427至步骤S432。
步骤S427:识别多个对象区域中的每个对象区域包括的对象。
步骤S428:确定每个对象区域包括的对象在像素坐标系中的坐标。
步骤S429:将每个对象区域包括的对象在像素坐标系中占据的像素单元标记为第三像素单元,将像素标系中的除每个对象区域包括的对象占据的第三像素单元以外的像素单元标记为第四像素单元。
步骤S430:沿第一方向依次确定像素坐标系中的每行像素单元包括的第三像素单元的个数。
步骤S431:响应于任一一行像素单元包括的第三像素单元的个数小于或等于第二像素参考值,将任一一行像素单元作为一条第二中间分割线,以得到至少一条第二中间分割线。
步骤S432:基于至少一条第二中间分割线,在表格坐标系中确定沿第二方向延伸的至少一条第二分割线。例如,至少一条分割线包括至少一条第二分割线。
例如,以图3A所示的输入图像为例,参考图3G和图3H所示,基于图3B中所示的表格区域框310建立以像素为坐标单位的像素坐标系后,确定识别得到的对象区域中包括的对象在该像素坐标系中的坐标。
例如,如图3G所示,将每个对象区域包括的对象在该像素坐标系中占据的像素单元标记为第三像素单元PX3,例如图3G中所示的白色像素单元;将该像素坐标系中的除每个对象区域包括的对象占据的第三像素单元PX3以外的像素单元均标记为第四像素单元PX4,例如图3G中所示的黑色像素单元,由此可以通过第三像素单元PX3和第四像素单元PX4表示每个对象区域中包括的对象在该像素坐标系中的相对位置。
进而,在将像素坐标系中的各像素单元分别标记为第三像素单元PX3和第四像素单元PX4后,沿第一方向R1依次确定像素坐标系中的每行像素单元中包括的第三像素单元PX3的个数,并根据每行像素单元中包括的第三像素单元PX3的个数,确定第二中间分割线。当一行像素单元中包括的第三像素单元PX3的个数小于或等于第二像素参考值时,例如该行像素单元中包括的第三像素单元PX3的个数为0或者该行像素单元中包括的第三像素单元PX3的个数明显小于其他行像素单元中包括的第三像素单元PX3的个数,该行像素单元可以作为一条第二中间分割线。由此,可以基于像素坐标系中确定的一条或多条第二中间分割线,在表格坐标系中确定沿第二方向R2延伸的一条或多条第二分割线,例如该一条或多条第二分割线也即对应于图3H中所示的线段CL2,从而可以在后续步骤中基于得到的该一条或多条第二分割线实现对多个区域标注框在第一方向R1上的分割处理。
在上述示例中,由于输入图像中在第一方向R1上相邻的例如文本或数据等对象之间的距离较小,因此可以在像素坐标系中基于确定的每个对象区域中包括的对象的坐标确定相应的沿第二方向R2延伸的第二中间分割线,从而提升基于第二中间分割线得到的位于表格坐标系中的第二分割线的准确性和可靠性,进而提升后续基于分割线对多个区域标注框进行分割处理的准确性和可靠性。
需要说明的是,在本公开的其他一些示例中,第二中间分割线也可以参考第一中间分割线的确定方法而基于对象区域框确定;或者,根据输入图像中的对象的具体排布方式,第一中间分割线也可以参考第二中间分割线的确定方法而基于输入图像中的每个对象区域所包括的对象确定,本公开的实施例对此不作限制。
例如,在一些示例中,第二像素参考值可以为0,由此响应于一行像素单元中包括的第三像素单元PX3的个数等于第二像素参考值(也即等于0),也即,当一行像素单元中不包括第三像素单元PX3,该行中的各像素单元均为第四像素单元PX4时,可以将该行像素单元作为一条第二中间分割线。或者,在一些示例中,第二像素参考值可以基于输入图像的图像宽度或者输入图像的图像长度确定,例如该第二像素参考值可以基于输入图像的图像宽度确定为大于0的正数,由此响应于一行像素单元中包括的第三像素单元PX3的个数小于第二像素参考值,将该行像素单元作为一条第二中间分割线。例如,当第二像素参考值基于输入图像的图像宽度确定为大于0的正数PR2时,如果一行像素单元中包括的第三像素单元PX3的个数N2满足0≤N2<PR2时,可以将该行像素单元作为一条第二中间分割线。由此,可以准确地确定输入图像中未被对象区域中包括的对象所占据的部分或者被对象区域中包括的对象占据相对较少的部分,并基于该部分实现对与对象区域对应的区域标注框的分割处理,进而基于分割处理后的区域标注框生成与表格区域对应的表格结构。
例如,以基于输入图像的图像宽度确定第二像素参考值PR2为例,输入图像的图像宽度例如为沿第二方向R2(也即行方向)的一整行像素中所包含的像素的总个数PN2,第二像素参考值PR2例如可以为该输入图像的图像宽度的0.3倍,也即PR2=0.3×PN2,由此在像素坐标系中的一行像素单元中包括的第三像素单元PX3的个数小于0.3×PN2时,可以确定该行像素单元中包括的第三像素单元PX3的个数明显或相对远小于其他行像素单元中包括的第三像素单元PX3的个数,进而可以将该行像素单元作为一条第二中间分割线,从而提升在像素坐标系中确定的第二中间分割线的准确性和可靠性,有助于后续对于区域标注框的准确划分。
需要说明的是,在本公开的其他一些示例中,第二像素参考值也可以为该输入图像的图像宽度的0.1倍、0.15倍、0.2倍、0.25倍、0.35倍、0.4倍或其他适合的数值,本公开的实施例对此不作限制。
需要说明的是,在本公开的其他一些示例中,第二像素参考值也可以基于表格区域或表格区域框的图像宽度或图像长度确定,也即,第二像素参考值可以基于表格区域中的沿第二方向R2的一整行像素中所包含的像素的总个数,例如第二像素参考值可以为表格区域或表格区域框的图像宽度的0.15倍、0.2倍、0.3倍或其他适合的数值,本公开的实施例对此不作限制。
例如,步骤S432可以包括以下步骤S432A步骤S432B。
步骤S432A:响应于至少一条第二中间分割线中的任一一条第二中间分割线在第一方向上不具有相邻的第二中间分割线,将任一一条第二中间分割线从像素坐标系映射到表格坐标系中,以在表格坐标系中得到与任一一条第二中间分割线对应的一条第二分割线。
步骤S432B:响应于至少一条第二中间分割线包括在第一方向上连续的Y条第二中间分割线,将Y条第二中间分割线中的任意一条第二中间分割线从像素坐标系映射到表格坐标系中,以在表格坐标系中得到与Y条第二中间分割线对应的一条第二分割线。例如,Y为正整数。
例如,当得到的一条第二中间分割线在第一方向R1上不具有相邻的第二中间分割线时,也即,当一行像素单元中包括的第三像素单元PX3的个数等于0且与该行像素单元在第一方向R1上相邻的任一一行像素单元中包括的第三像素单元PX3的个数均大于0时,或者当一行像素单元中包括的第三像素单元PX3的个数小于第二像素参考值PR2(PR2>0)且与该行像素单元在第一方向R1上相邻的任一一行像素单元中包括的第三像素单元PX3的个数均大于或等于第二像素参考值PR2时,则可以将该行像素单元作为一条第二中间分割线,并将该条第二中间分割线从像素坐标系映射到表格坐标系中得到一条第二分割线。
例如,当得到的一条第二中间分割线在第一方向R1上具有相邻的第二中间分割线时,也即,当一行像素单元中包括的第三像素单元PX3的个数小于第二像素参考值PR2且与该行像素单元在第一方向R1上相邻的任意一行像素单元中包括的第三像素单元PX3的个数也小于第二像素参考值PR2时,也就是说,当一行像素单元中包括的第三像素单元PX3的个数等于0或者为小于PR2的正整数且与该行像素单元在第一方向R1上相邻的任意一行像素单元中包括的第三像素单元PX3的个数也等于0或者为小于PR2的正整数时,则可以将该相邻的多条第二中间分割线中的任意一条第二中间分割线从像素坐标系映射到表格坐标系中得到一条第二分割线。
例如,在一些示例中,当像素坐标系中存在在第一方向R1上连续的多条第二中间分割线时,可以将在第一方向R1上位于该多条第二中间分割线中的中间位置处的一条第二中间分割线从像素坐标系映射到表格坐标系中以得到一条第二分割线,例如,可以取该多条第二中间分割线的中线并将该中线从像素坐标系映射到表格坐标系中以得到一条第二分割线,从而提升后续步骤中基于得到的分割线对多个区域标注框进行分割处理的准确性和可靠性,进而优化得到的对应于输入图像中的表格区域的表格结构。
例如,在本公开的一些示例中,步骤S402中的通过至少一条分割线对多个区域标注框进行分割处理以形成多个单元格可以包括:根据至少一条第一分割线和至少一条第二分割线对多个区域标注框进行分割处理,得到多个单元格。由此,在根据位于像素坐标系中的第一中间分割线和第二中间分割线确定位于表格坐标系中的第一分割线和第二分割线后,可以在表格坐标系中基于得到的第一分割线和第二分割线实现对多个区域标注框的分割处理,从而根据分割处理后的区域标注框生成相应的表格结构。
例如,在本公开的一些示例中,步骤S402中的通过至少一条分割线对多个区域标注框进行分割处理以形成多个单元格还包括:响应于对输入图像进行表格线检测处理且检测得到至少一条表格线段,基于至少一条表格线段对至少一条分割线进行校正处理,并基于校正处理后的至少一条分割线对多个区域标注框进行分割处理,得到多个单元格。由此,通过对确定的分割线根据输入图像中的对象区域的实际划分方式进行校正处理,可以进一步提升得到的分割线的准确性和可靠性,从而提升后续基于分割线对多个区域标注框进行分割处理的准确性和可靠性。
例如,在本公开的一些示例中,步骤S403包括以下步骤S4031。
步骤S4031:对多个单元格进行合并和/或分割,以得到基于多个单元格的多个目标单元格。例如,单元表格包括多个目标单元格。
例如,在一些示例中,步骤S4031包括以下步骤S4031A至步骤S4031C。
步骤S4031A:响应于至少一条分割线穿过任一区域标注框,确定任一区域标注框是否需要进行拆分处理。
步骤S4031B:响应于任一区域标注框需要进行拆分处理,将任一区域标注框拆分成多个拆分标注框,将多个拆分标注框中的每个拆分标注框所属的单元格作为一个目标单元格。
步骤S4031C:响应于任一区域标注框不需要进行拆分处理,将任一区域标注框占据的多个单元格进行合并,以得到一个目标单元格。
由此,在本公开实施例提供的图像处理方法中,可以先基于对齐处理后的多个区域标注框确定对应于表格区域的单元表格的基本表格结构,例如可以大致获取对应于该表格结构的各个单元格之间的大概相对位置,进而在基于输入图像中的未经过对齐处理的多个对象区域框确定分割线后,可以通过上述分割线对多个区域标注框进行分割处理,由此通过将分割线与对齐处理后的区域标注框相结合,实现对各个单元格的准确划分及定位。进而,在得到多个单元格后,可以进一步根据分割线相对于区域标注框的位置,对通过分割线分割处理后形成的多个单元格再进行拆分处理,以得到更加准确的目标单元格,进而优化基于目标单元格生成的对应于输入图像中的表格区域的单元表格的准确性和可靠性。
图11为本公开至少一实施例提供的再一种图像处理方法的流程示意图。
需要说明的是,除步骤S60和S70以外,图11中所示的步骤S10至S40与图1中所示的步骤S10至S40基本相同,重复之处不再赘述。
例如,如图11所示,该图像处理方法还包括以下步骤S60和步骤S70。
步骤S60:识别多个对象区域中的每个对象区域包括的对象。
步骤S70:将多个对象区域包括的对象分别对应填入单元表格的各目标单元格内,生成对象表格。
对于步骤S60,可以通过例如字符识别模型识别输入图像的每个对象区域中所包含的对象,以实现对输入图像中包含的对象的相关信息的提取。例如,字符识别模型可以基于光学字符识别等技术实现并且例如运行在通用计算装置或专用计算装置上,例如,字符识别模型可以为预先训练好的神经网络模型。
对于步骤S70,将识别得到的对象填入对应的单元表格的各目标单元格内,从而生成包含有输入图像中的对象的相关信息的对象表格,使用户能够通过生成的对象表格更加直观、规范地获取输入图像中的数据、文本内容等信息。
例如,以图3A所示的输入图像为例,采用本公开实施例提供的图像处理方法,可以生成如图3I所示的对象表格。由此,相比于图3A所示的输入图像,图3I所示的对象表格可以使输入图像中的对象的相关信息更加简洁、规范且直观地呈现给用户,提升用户获取输入图像中的对象的相关信息的效率,提升用户体验。
在本公开的一些实施例中,在上述步骤S70后,该图像处理方法还可以包括:基于输入图像,调整填入单元表格的各单元格内的对象。例如,可以比照输入图像,确定填入各单元格内的对象是否准确,例如是否出现错误或遗漏,从而提升生成的对象表格的准确性和可靠性。例如,输入图像中的对象包括文本,也即,对象的相关信息可以通过文字、数字、符号等文本示出,因此也可以通过调整填入单元表格的各单元格内的文本的字高和/或字体等,使生成的对象表格更加清晰、规范,从而有助于用户直观、便捷地获取所需信息。例如,可以记录原始文本的字高并使用预设的字体填入该文本。
例如,在输入图像的表格区域包括有线表格的情形,上述步骤S60和S70在图7中所示的步骤S50之后执行,由此生成对应于输入图像的表格区域的对象表格。
例如,以图2A所示的输入图像为例,采用本公开实施例提供的图像处理方法,可以生成如图2H所示的对象表格。由此,相比于图2A所示的输入图像,图2H所示的对象表格可以使输入图像中的对象的相关信息更加简洁、规范且直观地呈现给用户,有助于用户更加直观、便捷地获取所需的信息。
本公开至少一实施例还提供一种图像处理装置,图12为本公开至少一实施例提供的一种图像处理装置的示意性框图。
如图12所示,图像处理装置500可以包括:图像获取模块501、区域识别处理模块502、表格线检测处理模块503和单元表格生成模块504。
例如,图像获取模块501被配置为获取输入图像。例如,输入图像包括表格区域,表格区域包括多个对象区域,多个对象区域中的每个对象区域包括至少一个对象。
例如,区域识别处理模块502被配置为对输入图像进行区域识别处理,以得到与多个对象区域一一对应的多个对象区域框和与表格区域对应的表格区域框。
例如,表格线检测处理模块503被配置为对输入图像进行表格线检测处理,以判断表格区域是否包括有线表格。
例如,单元表格生成模块504被配置为响应于表格区域不包括有线表格:对多个对象区域框进行对齐处理,得到与多个对象区域框一一对应的多个区域标注框;基于多个对象区域框确定至少一条分割线,并通过至少一条分割线对多个区域标注框进行分割处理以形成多个单元格;基于多个单元格,生成对应于表格区域的单元表格。
例如,图像获取模块501、区域识别处理模块502、表格线检测处理模块503和单元表格生成模块504可以包括存储在存储器中的代码和程序;处理器可以执行该代码和程序以实现如上所述的图像获取模块501、区域识别处理模块502、表格线检测处理模块503和单元表格生成模块504的一些功能或全部功能。例如,图像获取模块501、区域识别处理模块502、表格线检测处理模块503和单元表格生成模块504可以是专用硬件器件,用来实现如上所述的图像获取模块501、区域识别处理模块502、表格线检测处理模块503和单元表格生成模块504的一些或全部功能。例如,图像获取模块501、区域识别处理模块502、表格线检测处理模块503和单元表格生成模块504可以是一个电路板或多个电路板的组合,用于实现如上所述的功能。在本申请实施例中,该一个电路板或多个电路板的组合可以包括:(1)一个或多个处理器;(2)与处理器相连接的一个或多个非暂时的存储器;以及(3)处理器可执行的存储在存储器中的固件。
需要说明的是,图像获取模块501用于实现图1所示的步骤S10,区域识别处理模块502用于实现图1所示的步骤S20,表格线检测处理模块503用于实现图1所示的步骤S30,单元表格生成模块504用于实现图1所示的步骤S40,例如包括步骤S401至步骤S403。从而关于图像获取模块501、区域识别处理模块502、表格线检测处理模块503和单元表格生成模块504能够实现的功能的具体说明可以参考上述图像处理方法的实施例中的步骤S10至步骤S40的相关描述,重复之处不再赘述。此外,图像处理装置可以实现与前述图像处理方法相似的技术效果,在此不再赘述。
本公开至少一实施例还提供一种电子设备,图13为本公开至少一实施例提供的一种电子设备的示意图。
例如,如图13所示,电子设备包括处理器601、通信接口602、存储器603和通信总线604。处理器601、通信接口602、存储器603通过通信总线604实现相互通信,处理器601、通信接口602、存储器603等组件之间也可以通过网络连接进行通信。本公开对网络的类型和功能在此不作限制。应当注意,图13所示的电子设备的组件只是示例性的,而非限制性的,根据实际应用需要,该电子设备还可以具有其他组件。
例如,存储器603用于非瞬时性地存储计算机可读指令。处理器601用于执行计算机可读指令时,实现根据上述任一实施例所述的图像处理方法。关于该图像处理方法的各个步骤的具体实现以及相关解释内容可以参见上述图像处理方法的实施例,在此不作赘述。
例如,处理器601执行存储器603上所存放的计算机可读指令而实现的图像处理方法的其他实现方式,与前述方法实施例部分所提及的实现方式相同,这里也不再赘述。
例如,通信总线604可以是外设部件互连标准(PCI)总线或扩展工业标准结构(EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
例如,通信接口602用于实现电子设备与其他设备之间的通信。
例如,处理器601和存储器603可以设置在服务器端(或云端)。
例如,处理器601可以控制电子设备中的其它组件以执行期望的功能。处理器601可以是中央处理器(CPU)、网络处理器(NP)、张量处理器(TPU)或者图形处理器(GPU)等具有数据处理能力和/或程序执行能力的器件;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。中央处理器(CPU)可以为X86或ARM架构等。
例如,存储器603可以包括一个或多个计算机程序产品的任意组合,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机可读指令,处理器601可以运行所述计算机可读指令,以实现电子设备的各种功能。在存储介质中还可以存储各种应用程序和各种数据等。
例如,在一些实施例中,电子设备还可以包括图像获取部件。图像获取部件用于获得输入图像。存储器603还用于存储输入图像。
例如,图像获取部件可以是智能手机的摄像头、平板电脑的摄像头、个人计算机的摄像头、数码照相机的镜头、或者甚至可以是网络摄像头。
例如,输入图像可以是图像获取部件直接采集到的原始图像,也可以是对原始图像进行预处理之后获得的图像。预处理可以消除原始图像中的无关信息或噪声信息,以便于更好地对输入图像进行处理。预处理例如可以包括对原始图像进行图像扩充(DataAugment)、图像缩放、伽玛(Gamma)校正、图像增强或降噪滤波等处理。
例如,关于电子设备执行图像处理的过程的详细说明可以参考图像处理方法的实施例中的相关描述,重复之处不再赘述。
图14为本公开至少一实施例提供的一种非瞬时性计算机可读存储介质的示意图。例如,如图14所示,在存储介质700上可以非暂时性地存储一个或多个计算机可读指令701。例如,当计算机可读指令701由处理器执行时可以执行根据上文所述的图像处理方法中的一个或多个步骤。
例如,该存储介质700可以应用于上述电子设备中,例如,该存储介质700可以包括电子设备中的存储器603。
例如,关于存储介质700的说明可以参考电子设备的实施例中对于存储器的描述,重复之处不再赘述。
对于本公开,还有以下几点需要说明:
(1)本公开实施例附图只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)为了清晰起见,在用于描述本发明的实施例的附图中,层或结构的厚度和尺寸被放大。可以理解,当诸如层、膜、区域或基板之类的元件被称作位于另一元件“上”或“下”时,该元件可以“直接”位于另一元件“上”或“下”,或者可以存在中间元件。
(3)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
以上所述仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,本公开的保护范围应以所述权利要求的保护范围为准。
Claims (29)
1.一种图像处理方法,包括:
获取输入图像,其中,所述输入图像包括表格区域,所述表格区域包括多个对象区域,所述多个对象区域中的每个对象区域包括至少一个对象;
对所述输入图像进行区域识别处理,以得到与所述多个对象区域一一对应的多个对象区域框和与所述表格区域对应的表格区域框;
对所述输入图像进行表格线检测处理,以判断所述表格区域是否包括有线表格;以及
响应于所述表格区域不包括有线表格:
对所述多个对象区域框进行对齐处理,得到与所述多个对象区域框一一对应的多个区域标注框;
基于所述多个对象区域框确定至少一条分割线,并通过所述至少一条分割线对所述多个区域标注框进行分割处理以形成多个单元格;以及
基于所述多个单元格,生成对应于所述表格区域的单元表格。
2.根据权利要求1所述的图像处理方法,其中,对所述多个对象区域框进行对齐处理,得到与所述多个对象区域框一一对应的所述多个区域标注框,包括:
以基准参考值为坐标单位,将所述表格区域框沿第一方向和第二方向划分为呈M行N列排列的多个坐标格区域,以建立表格坐标系,其中,M行坐标格区域沿所述第一方向排列,N列坐标格区域沿所述第二方向排列,M和N为正整数;
确定所述多个对象区域框在所述表格坐标系中的坐标;以及
基于所述多个对象区域框在所述表格坐标系中的坐标,对所述多个对象区域框进行膨胀处理,以得到所述多个区域标注框。
3.根据权利要求2所述的图像处理方法,其中,所述基准参考值根据所述多个对象区域框在所述第一方向上的平均高度确定。
4.根据权利要求2所述的图像处理方法,其中,确定所述多个对象区域框在所述表格坐标系中的坐标,包括:
确定所述多个对象区域框的多个斜率,其中,所述多个对象区域框中的每个对象区域框的斜率表示所述每个对象区域框的沿所述第二方向延伸的边相对于所述第二方向的斜率;
根据所述多个对象区域框的多个斜率,对所述输入图像进行校正处理,以得到校正后的输入图像;以及
基于所述校正后的输入图像,确定所述多个对象区域框在所述表格坐标系中的坐标。
5.根据权利要求4所述的图像处理方法,其中,根据所述多个对象区域框的多个斜率,对所述输入图像进行校正处理,以得到所述校正后的输入图像,包括:
根据所述多个对象区域框的多个斜率,计算所述多个斜率的平均值;以及
基于所述多个斜率的平均值,在所述第一方向和所述第二方向构成的平面内旋转所述输入图像,以使得所述多个斜率的平均值趋近于0。
6.根据权利要求2-5任一所述的图像处理方法,其中,基于所述多个对象区域框在所述表格坐标系中的坐标,对所述多个对象区域框进行膨胀处理,以得到所述多个区域标注框,包括:
确定所述多个对象区域框在所述表格坐标系中在所述第一方向上的第一起始坐标和第一终止坐标以及在所述第二方向上的第二起始坐标和第二终止坐标,其中,所述多个对象区域框中的任一对象区域框的第一起始坐标包括所述任一对象区域框在所述表格坐标系中所占据的坐标格区域的起始行的坐标,所述任一对象区域框的第一终止坐标包括所述任一对象区域框在所述表格坐标系中所占据的坐标格区域的终止行的坐标,所述任一对象区域框的第二起始坐标包括所述任一对象区域框在所述表格坐标系中所占据的坐标格区域的起始列的坐标,所述任一对象区域框的第二终止坐标包括所述任一对象区域框在所述表格坐标系中所占据的坐标格区域的终止列的坐标;
将所述多个对象区域框划分为多行多列,按照沿所述表格坐标系中的起始行指向终止行的方向对所述多个对象区域框逐行进行膨胀处理,且按照沿所述表格坐标系中的起始列指向终止列的方向对每行对象区域框依次进行膨胀处理;
对于所述多个对象区域框中的第i个对象区域框,其中,i为正整数,
将所述第i个对象区域框在所述第一方向上进行膨胀处理,使得所述第i个对象区域框所占据的坐标格区域的起始行在所述第一方向上沿远离所述第i个对象区域框所占据的坐标格区域的终止行的方向每次移动所述基准参考值,使得所述第i个对象区域框所占据的坐标格区域的终止行在所述第一方向上沿远离所述第i个对象区域框所占据的坐标格区域的起始行的方向每次移动所述基准参考值,直至使所述第i个对象区域框的第一起始坐标等于0或等于所述多个对象区域框中除所述第i个对象区域框以外的任意一个对象区域框的第一终止坐标,且使所述第i个对象区域框的第一终止坐标等于所述表格坐标系的最大行值或等于所述多个对象区域框中除所述第i个对象区域框以外的任意一个对象区域框的第一起始坐标,
将所述第i个对象区域框在所述第二方向上进行膨胀处理,使得所述第i个对象区域框所占据的坐标格区域的起始列在所述第二方向上沿远离所述第i个对象区域框所占据的坐标格区域的终止列的方向每次移动所述基准参考值,使得所述第i个对象区域框所占据的坐标格区域的终止列在所述第二方向上沿远离所述第i个对象区域框所占据的坐标格区域的起始列的方向每次移动所述基准参考值,直至使所述第i个对象区域框的第二起始坐标等于0或等于所述多个对象区域框中除所述第i个对象区域框以外的任意一个对象区域框的第二终止坐标,且使所述第i个对象区域框的第二终止坐标等于所述表格坐标系的最大列值或等于所述多个对象区域框中除所述第i个对象区域框以外的任意一个对象区域框的第二起始坐标,由此得到与所述第i个对象区域框对应的区域标注框。
7.根据权利要求2-5任一所述的图像处理方法,其中,基于所述多个对象区域框确定所述至少一条分割线,包括:
以像素为坐标单位,基于所述表格区域框建立像素坐标系,其中,所述像素坐标系包括多个像素单元,所述像素坐标系的第一坐标轴平行于所述第一方向,所述像素坐标系的第二坐标轴平行于所述第二方向;
确定所述多个对象区域框在所述像素坐标系中的坐标,以得到与所述多个对象区域框一一对应的多个像素区域;
将所述多个像素区域在所述像素坐标系中占据的像素单元标记为第一像素单元,将所述像素坐标系中的除所述多个像素区域占据的第一像素单元以外的像素单元标记为第二像素单元;
沿所述第二方向依次确定所述像素坐标系中的每列像素单元包括的第一像素单元的个数;
响应于任一一列像素单元包括的第一像素单元的个数小于或等于第一像素参考值,将所述任一一列像素单元作为一条第一中间分割线,以得到至少一条第一中间分割线;以及
基于所述至少一条第一中间分割线,在所述表格坐标系中确定沿所述第一方向延伸的至少一条第一分割线,其中,所述至少一条分割线包括所述至少一条第一分割线。
8.根据权利要求7所述的图像处理方法,其中,基于所述至少一条第一中间分割线,在所述表格坐标系中确定沿所述第一方向延伸的所述至少一条第一分割线,包括:
响应于所述至少一条第一中间分割线中的任一一条第一中间分割线在所述第二方向上不具有相邻的第一中间分割线,将所述任一一条第一中间分割线从所述像素坐标系映射到所述表格坐标系中,以在所述表格坐标系中得到与所述任一一条第一中间分割线对应的一条所述第一分割线;
响应于所述至少一条第一中间分割线包括在所述第二方向上连续的X条第一中间分割线,将所述X条第一中间分割线中的任意一条第一中间分割线从所述像素坐标系映射到所述表格坐标系中,以在所述表格坐标系中得到与所述X条第一中间分割线对应的一条所述第一分割线,其中,X为正整数。
9.根据权利要求7所述的图像处理方法,其中,所述第一像素参考值为0,或者所述第一像素参考值基于所述输入图像的图像高度确定。
10.根据权利要求7所述的图像处理方法,其中,基于所述多个对象区域框确定所述至少一条分割线,还包括:
识别所述多个对象区域中的每个对象区域包括的对象;
确定所述每个对象区域包括的对象在所述像素坐标系中的坐标;
将所述每个对象区域包括的对象在所述像素坐标系中占据的像素单元标记为第三像素单元,将所述像素坐标系中的除所述每个对象区域包括的对象占据的第三像素单元以外的像素单元标记为第四像素单元;
沿所述第一方向依次确定所述像素坐标系中的每行像素单元包括的第三像素单元的个数;
响应于任一一行像素单元包括的第三像素单元的个数小于或等于第二像素参考值,将所述任一一行像素单元作为一条第二中间分割线,以得到至少一条第二中间分割线;以及
基于所述至少一条第二中间分割线,在所述表格坐标系中确定沿所述第二方向延伸的至少一条第二分割线,其中,所述至少一条分割线包括所述至少一条第二分割线。
11.根据权利要求10所述的图像处理方法,其中,基于所述至少一条第二中间分割线,在所述表格坐标系中确定沿所述第二方向延伸的所述至少一条第二分割线,包括:
响应于所述至少一条第二中间分割线中的任一一条第二中间分割线在所述第一方向上不具有相邻的第二中间分割线,将所述任一一条第二中间分割线从所述像素坐标系映射到所述表格坐标系中,以在所述表格坐标系中得到与所述任一一条第二中间分割线对应的一条所述第二分割线;
响应于所述至少一条第二中间分割线包括在所述第一方向上连续的Y条第二中间分割线,将所述Y条第二中间分割线中的任意一条第二中间分割线从所述像素坐标系映射到所述表格坐标系中,以在所述表格坐标系中得到与所述Y条第二中间分割线对应的一条所述第二分割线,其中,Y为正整数。
12.根据权利要求10所述的图像处理方法,其中,所述第二像素参考值为0,或者所述第二像素参考值基于所述输入图像的图像宽度确定。
13.根据权利要求1所述的图像处理方法,其中,通过所述至少一条分割线对所述多个区域标注框进行分割处理以形成所述多个单元格,包括:
响应于对所述输入图像进行所述表格线检测处理且检测得到至少一条表格线段,基于所述至少一条表格线段对所述至少一条分割线进行校正处理,并基于校正处理后的所述至少一条分割线对所述多个区域标注框进行分割处理,得到所述多个单元格。
14.根据权利要求1所述的图像处理方法,其中,基于所述多个单元格,生成对应于所述表格区域的所述单元表格,包括:
对所述多个单元格进行合并和/或分割,以得到基于所述多个单元格的多个目标单元格,其中,所述单元表格包括所述多个目标单元格。
15.根据权利要求14所述的图像处理方法,其中,对所述多个单元格进行合并和/或分割,以得到基于所述多个单元格的所述多个目标单元格,包括:
响应于所述至少一条分割线穿过任一区域标注框,确定所述任一区域标注框是否需要进行拆分处理;
响应于所述任一区域标注框需要进行拆分处理,将所述任一区域标注框拆分成多个拆分标注框,将所述多个拆分标注框中的每个拆分标注框所属的单元格作为一个所述目标单元格;
响应于所述任一区域标注框不需要进行拆分处理,将所述任一区域标注框占据的多个单元格进行合并,以得到一个所述目标单元格。
16.根据权利要求14或15所述的图像处理方法,还包括:
识别所述多个对象区域中的每个对象区域包括的对象;以及
将所述多个对象区域包括的对象分别对应填入所述单元表格的各目标单元格内,生成对象表格。
17.根据权利要求1所述的图像处理方法,其中,对所述输入图像进行表格线检测处理,以判断所述表格区域是否包括有线表格,包括:
在对所述输入图像进行表格线检测处理且得到一条或多条表格线段的情况下,基于所述一条或多条表格线段判断所述表格区域是否包括有线表格;
在对所述输入图像进行表格线检测处理且检测到所述输入图像不具有表格线段的情况下,确定所述表格区域不包括有线表格。
18.根据权利要求17所述的图像处理方法,其中,对所述输入图像进行表格线检测处理以得到所述一条或多条表格线段,包括:
对所述输入图像进行线段检测,以得到多条检测线段;
对所述多条检测线段进行合并处理,以重新绘制得到多条第一中间表格线段;
将所述多条第一中间表格线段分别进行膨胀处理以得到多条第二中间表格线段;
将所述多条第二中间表格线段中的位于所述多个对象区域框中的任一对象区域框内的第二中间表格线段删除,并将所述多条第二中间表格线段中剩余的第二中间表格线段作为多条第三中间表格线段;
对所述多条第三中间表格线段进行所述合并处理,以得到多条第四中间表格线段;以及
将所述多条第四中间表格线段分别进行膨胀处理以得到一条或多条第五中间表格线段,并将所述一条或多条第五中间表格线段作为所述一条或多条表格线段。
19.根据权利要求18所述的图像处理方法,其中,所述合并处理包括:对于待进行合并的第一待合并线段和第二待合并线段,响应于所述第一待合并线段的斜率和所述第二待合并线段的斜率之差小于斜率阈值,且所述第一待合并线段的靠近所述第二待合并线段的端点和所述第二待合并线段的靠近所述第一待合并线段的端点之间的距离小于等于距离阈值,将所述第一待合并线段和所述第二待合并线段进行合并,
其中,所述第一待合并线段和所述第二待合并线段为所述多条检测线段中的任意两条检测线段,或者,所述第一待合并线段和所述第二待合并线段为所述多条第三中间表格线段中的任意两条第三中间表格线段。
20.根据权利要求17所述的图像处理方法,其中,基于所述一条或多条表格线段判断所述表格区域是否包括有线表格,包括:
响应于得到所述一条表格线段,确定所述表格区域不包括有线表格;
响应于得到所述多条表格线段:
确定所述多条表格线段之间的交点;
响应于所述交点的数量大于或等于第二参考值,确定所述表格区域包括有线表格;以及
响应于所述交点的数量小于所述第二参考值,确定所述表格区域不包括有线表格。
21.根据权利要求20所述的图像处理方法,其中,确定所述多条表格线段之间的所述交点,包括:
将所述多条表格线段划分为多条第一表格线段和多条第二表格线段,其中,每条所述第一表格线段与第三方向的夹角处于第一角度范围,每条所述第一表格线段与第四方向的夹角处于第二角度范围,每条所述第二表格线段与所述第三方向的夹角处于所述第二角度范围,每条所述第一表格线段与所述第四方向的夹角处于所述第一角度范围,所述第三方向和所述第四方向彼此垂直;
将所述多条第一表格线段划分为多个第一线段行并标记所述多条第一表格线段中的每条第一表格线段所属的第一线段行的行号,其中,每个第一线段行包括沿所述第三方向排列的至少一条第一表格线段;
将所述多条第二表格线段划分为多个第二线段列并标记所述多条第二表格线段中的每条第二表格线段所属的第二线段列的列号,其中,每个第二线段列包括沿所述第四方向排列的至少一条第二表格线段;以及
识别所述多条第一表格线段与所述多条第二表格线段之间的多个交点,并确定所述多个交点的坐标,其中,所述多个交点中的任一交点的坐标包括相交以构成所述任一交点的第一表格线段对应的行号和第二表格线段对应的列号。
22.根据权利要求21所述的图像处理方法,其中,所述第一角度范围为0°~45°,所述第二角度范围为45°~90°。
23.根据权利要求21所述的图像处理方法,其中,所述第二参考值为所述多个第一线段行的数量和所述多个第二线段列的数量中的较大值。
24.根据权利要求21所述的图像处理方法,还包括:
响应于所述表格区域包括有线表格:
基于所述多条表格线段生成对应于所述表格区域的单元表格。
25.根据权利要求24所述的图像处理方法,其中,基于所述多条表格线段生成对应于所述表格区域的单元表格,包括:
基于所述多个交点,确定所述单元表格中的各单元格,其中,所述单元表格中的每个单元格的顶点由所述多个交点中的至少三个交点构成。
26.根据权利要求25所述的图像处理方法,其中,基于所述多个交点,确定所述单元表格中的各单元格,包括:
确定当前交点,其中,所述当前交点为所述多个交点中的任意一个交点;
基于所述当前交点的坐标,确定所述当前交点对应的第一当前表格线段和第二当前表格线段,
其中,所述第一当前表格线段为任意一条第一表格线段,所述第二当前表格线段为任意一条第二表格线段;
确定所述第一当前表格线段上与所述当前交点相邻的第一交点,以及确定所述第二当前表格线段上与所述当前交点相邻的第二交点;以及
基于所述当前交点、所述第一交点和所述第二交点确定一个单元格。
27.一种图像处理装置,包括:
图像获取模块,被配置为获取输入图像,其中,所述输入图像包括表格区域,所述表格区域包括多个对象区域,所述多个对象区域中的每个对象区域包括至少一个对象;
区域识别处理模块,被配置为对所述输入图像进行区域识别处理,以得到与所述多个对象区域一一对应的多个对象区域框和与所述表格区域对应的表格区域框;
表格线检测处理模块,被配置为对所述输入图像进行表格线检测处理,以判断所述表格区域是否包括有线表格;以及
单元表格生成模块,被配置为响应于所述表格区域不包括有线表格:
对所述多个对象区域框进行对齐处理,得到与所述多个对象区域框一一对应的多个区域标注框;
基于所述多个对象区域框确定至少一条分割线,并通过所述至少一条分割线对所述多个区域标注框进行分割处理以形成多个单元格;
基于所述多个单元格,生成对应于所述表格区域的单元表格。
28.一种电子设备,包括处理器和存储器,
其中,所述存储器用于存储计算机可读指令;
所述处理器用于执行所述计算机可读指令时,实现权利要求1-26中任一项所述的方法的步骤。
29.一种非瞬时性计算机可读存储介质,其中,所述计算机可读存储介质用于非暂时性地存储有计算机可读指令,所述计算机可读指令被处理器执行时实现权利要求1-26中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110169261.6A CN112906532B (zh) | 2021-02-07 | 2021-02-07 | 图像处理方法和装置、电子设备和存储介质 |
PCT/CN2022/073988 WO2022166707A1 (zh) | 2021-02-07 | 2022-01-26 | 图像处理方法和装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110169261.6A CN112906532B (zh) | 2021-02-07 | 2021-02-07 | 图像处理方法和装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112906532A CN112906532A (zh) | 2021-06-04 |
CN112906532B true CN112906532B (zh) | 2024-01-05 |
Family
ID=76123794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110169261.6A Active CN112906532B (zh) | 2021-02-07 | 2021-02-07 | 图像处理方法和装置、电子设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112906532B (zh) |
WO (1) | WO2022166707A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112906532B (zh) * | 2021-02-07 | 2024-01-05 | 杭州睿胜软件有限公司 | 图像处理方法和装置、电子设备和存储介质 |
CN113657274B (zh) * | 2021-08-17 | 2022-09-20 | 北京百度网讯科技有限公司 | 表格生成方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5774584A (en) * | 1993-01-07 | 1998-06-30 | Canon Kk | Method and apparatus for identifying table areas in documents |
CN109948507A (zh) * | 2019-03-14 | 2019-06-28 | 北京百度网讯科技有限公司 | 用于检测表格的方法和装置 |
CN110008923A (zh) * | 2019-04-11 | 2019-07-12 | 网易有道信息技术(北京)有限公司 | 图像处理方法和训练方法、以及装置、介质、计算设备 |
CN111160234A (zh) * | 2019-12-27 | 2020-05-15 | 掌阅科技股份有限公司 | 表格识别方法、电子设备及计算机存储介质 |
CN111325110A (zh) * | 2020-01-22 | 2020-06-23 | 平安科技(深圳)有限公司 | 基于ocr的表格版式恢复方法、装置及存储介质 |
CN111368744A (zh) * | 2020-03-05 | 2020-07-03 | 中国工商银行股份有限公司 | 图片中非结构化表格识别方法及装置 |
CN111382717A (zh) * | 2020-03-17 | 2020-07-07 | 腾讯科技(深圳)有限公司 | 一种表格识别方法、装置和计算机可读存储介质 |
CN112149561A (zh) * | 2020-09-23 | 2020-12-29 | 杭州睿琪软件有限公司 | 图像处理方法和装置、电子设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446264B (zh) * | 2018-03-26 | 2022-02-15 | 阿博茨德(北京)科技有限公司 | Pdf文档中的表格矢量解析方法及装置 |
CN109635268B (zh) * | 2018-12-29 | 2023-05-05 | 南京吾道知信信息技术有限公司 | Pdf文件中表格信息的提取方法 |
CN112906532B (zh) * | 2021-02-07 | 2024-01-05 | 杭州睿胜软件有限公司 | 图像处理方法和装置、电子设备和存储介质 |
-
2021
- 2021-02-07 CN CN202110169261.6A patent/CN112906532B/zh active Active
-
2022
- 2022-01-26 WO PCT/CN2022/073988 patent/WO2022166707A1/zh active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5774584A (en) * | 1993-01-07 | 1998-06-30 | Canon Kk | Method and apparatus for identifying table areas in documents |
CN109948507A (zh) * | 2019-03-14 | 2019-06-28 | 北京百度网讯科技有限公司 | 用于检测表格的方法和装置 |
CN110008923A (zh) * | 2019-04-11 | 2019-07-12 | 网易有道信息技术(北京)有限公司 | 图像处理方法和训练方法、以及装置、介质、计算设备 |
CN111160234A (zh) * | 2019-12-27 | 2020-05-15 | 掌阅科技股份有限公司 | 表格识别方法、电子设备及计算机存储介质 |
CN111325110A (zh) * | 2020-01-22 | 2020-06-23 | 平安科技(深圳)有限公司 | 基于ocr的表格版式恢复方法、装置及存储介质 |
CN111368744A (zh) * | 2020-03-05 | 2020-07-03 | 中国工商银行股份有限公司 | 图片中非结构化表格识别方法及装置 |
CN111382717A (zh) * | 2020-03-17 | 2020-07-07 | 腾讯科技(深圳)有限公司 | 一种表格识别方法、装置和计算机可读存储介质 |
CN112149561A (zh) * | 2020-09-23 | 2020-12-29 | 杭州睿琪软件有限公司 | 图像处理方法和装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022166707A1 (zh) | 2022-08-11 |
CN112906532A (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112926421B (zh) | 图像处理方法和装置、电子设备和存储介质 | |
CN113486828B (zh) | 图像处理方法、装置、设备和存储介质 | |
CN112149561B (zh) | 图像处理方法和装置、电子设备和存储介质 | |
CN108960229B (zh) | 一种面向多方向的文字检测方法和装置 | |
CN110502985B (zh) | 表格识别方法、装置及表格识别设备 | |
US20230222631A1 (en) | Method and device for removing handwritten content from text image, and storage medium | |
CN111275139B (zh) | 手写内容去除方法、手写内容去除装置、存储介质 | |
CN111428717B (zh) | 文本识别方法、装置、电子设备及计算机可读存储介质 | |
CN112906532B (zh) | 图像处理方法和装置、电子设备和存储介质 | |
CN1937698A (zh) | 图像畸变自动校正的图像处理方法 | |
CN113343740B (zh) | 表格检测方法、装置、设备和存储介质 | |
CN111598074A (zh) | 边缘检测方法和装置、电子设备和存储介质 | |
CN111368638A (zh) | 电子表格的创建方法、装置、计算机设备和存储介质 | |
US20230101426A1 (en) | Method and apparatus for recognizing text, storage medium, and electronic device | |
CN113436222A (zh) | 图像处理方法、图像处理装置、电子设备及存储介质 | |
CN112419207A (zh) | 一种图像矫正方法及装置、*** | |
CN112215811A (zh) | 一种图像检测方法、装置、电子设备及存储介质 | |
CN116402020A (zh) | 基于ofd文档的签名图像化处理方法、***和存储介质 | |
WO2020232866A1 (zh) | 扫描文本分段方法、装置、计算机设备和存储介质 | |
CN112580499A (zh) | 文本识别方法、装置、设备及存储介质 | |
CN111325106B (zh) | 生成训练数据的方法及装置 | |
CN113159035A (zh) | 图像处理方法、装置、设备及存储介质 | |
US9734610B2 (en) | Image processing device, image processing method, and image processing program | |
CN113591433A (zh) | 一种文本排版方法、装置、存储介质及计算机设备 | |
WO2022183907A1 (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 |