CN106156761B - 面向移动终端拍摄的图像表格检测与识别方法 - Google Patents

面向移动终端拍摄的图像表格检测与识别方法 Download PDF

Info

Publication number
CN106156761B
CN106156761B CN201610649808.1A CN201610649808A CN106156761B CN 106156761 B CN106156761 B CN 106156761B CN 201610649808 A CN201610649808 A CN 201610649808A CN 106156761 B CN106156761 B CN 106156761B
Authority
CN
China
Prior art keywords
image
point
straight line
line
cell
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.)
Expired - Fee Related
Application number
CN201610649808.1A
Other languages
English (en)
Other versions
CN106156761A (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.)
Beijing Jiaotong University
Original Assignee
Beijing Jiaotong University
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 Beijing Jiaotong University filed Critical Beijing Jiaotong University
Priority to CN201610649808.1A priority Critical patent/CN106156761B/zh
Publication of CN106156761A publication Critical patent/CN106156761A/zh
Application granted granted Critical
Publication of CN106156761B publication Critical patent/CN106156761B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/28Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/457Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by analysing connectivity, e.g. edge linking, connected component analysis or slices
    • 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
    • G06V30/41Analysis of document content
    • G06V30/414Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/247Aligning, centring, orientation detection or correction of the image by affine transforms, e.g. correction due to perspective effects; Quadrilaterals, e.g. trapezoids

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)
  • Character Input (AREA)

Abstract

本发明提供了一种面向移动终端拍摄的图像表格检测与识别方法。该方法主要包括:使用连通域分析法从移动终端拍摄的混合文档图像中分离出表格区域,得到表格图像,对表格图像进行图像矫正操作;对矫正后的表格图像使用由粗糙到精细的直线检测算法,检测并定位到图像中直线的位置,并对检测出的直线进行校正处理,提取出表格图像中每个表格单元格的信息;根据提取出的表格单元格信息进行文本识别,通过基于单元格合并的表格创建算法在文档中重建对应的表格。本发明的方法对规则与不规则的表格创建都具有很好的自适应性,对新创建的word文档做简单的编辑修改后即可完成图像表格到文档文件的转化操作,从而提高了办公自动化的效率,有很好的实用性。

Description

面向移动终端拍摄的图像表格检测与识别方法
技术领域
本发明涉及图像处理技术领域,尤其涉及一种面向移动终端拍摄的图像表格检测与识别方法。
背景技术
近年来,科学和信息技术的快速进步,特别是计算机技术、网络技术和大容量存储技术的不断发展,使得我们每天会接触到大量的信息,所以处在信息化时代的我们通常需要利用计算机处理大量的数字文档信息与文档图像,但这需要我们首先完成纸质信息向数字化信息的转变过程才能方便后续的计算机图像处理与文档识别。
纸质文档向电子文档的转换过程主要包括:利用移动终端或扫描仪等设备完成文档图像的采集,并将文档的文字信息识别出来后存储到计算机中的过程。而在传统的文字识别技术中,人们通常运用光学原理的方式来完成从目标图像到文字信息转换的处理过程。OCR(Optical Character Recognition,光学字符识别)技术是通过扫描仪等光学输入方式将各种图书、期刊、文献、档案等纸质文档转化成电子图像,并运用OCR技术分割目标图像中的待处理信息,并对待处理信息进行相应的识别。OCR技术的出现是人类信息化历程中重要的里程碑,该技术对比传统的手工录入方式,具有大大提高了资料录入、存储、检索与加工的效率等优点。因此,OCR技术具有十分广泛的应用场景,如:办公自动化中文件资料的自动输人,车牌自动识别系统,以及表格、票据、发票识别系统等。
在传统的文档中,表格文档是一种较为常见的文档形式,表格本身作为一种高度精炼、集中的信息表达形式,因其具有简明、规范、便于填写和处理等特点,因而被广泛地应用在日常生活的方方面面上。表格自动化处理技术已经成为文档智能处理领域的一个重要组成部分。但是相比于一般文档的识别技术,表格识别技术的研究与发展在时间上要相对迟于文档识别技术的发展。近年来,随着各机构对表格识别系统的进一步认识,表格识别的市场需求不断加大,进而出现了清华文通、汉王科技等公司对表格识别技术的青睐,并取得了较好的成果。表格因其具有形式变化多样的特点,尽管经过不断研究有了很大的进步,但是处理表格的自动化的程度还很难达到实用的程度。表格的多样性,这也使得目前还很难找到一种能良好识别表格的通用方法,致使表格单元字符的识别的准确率还远远低于纯文档字符识别的准确率。人们仍然在不断探索和改进识别方法来实现表格信息处理的完全自动化。
目前存在的表格识别方案可以分为两类:
1、受限表格识别方案
这种表格一般有着固定的结构形式,识别前需要得到表格的结构信息,然后利用这些结构信息来指导识别表格。对于这种表格的识别,一般先检测表格矩形边框的四个顶点的坐标,然后再结合单元格宽度和高度的先验知识求出每个单元格在图像中具体的位置,或者使用模板匹配技术直接把表格图像和标准的空白表格进行匹配计算。该方案的缺点为:由于这种方法需要借助先验知识,因此,无法自动适应各种不同格式的表格,只能应用在特定的场景下,例如,发票,纳税表,病历表等。
2、非受限表格识别方案
这种表格的特点在于没有固定的表格结构信息,所以识别该表格需要通过对图像表格进行结构分析,在得到表格的结构后再进行字符提取并识别。因而,这种表格识别算法也更加复杂,误检率高且不存在通用的算法。对于该种表格的分析方法又可分为投影法、轮廓提取法、表格线交叉点分析法、变换法等几种。投影法主要使用水平投影和竖直投影的信息来寻找表格的直线的位置,该方法相对简单且速度较快,但容易受到图像表格的变形和字符粘连表格线的影响;轮廓提取法也很容易因表格线断裂或字符粘连表格线而产生检测错误;表格线交叉点分析法则通过对表格线的相邻交叉点进行分类和匹配进行迭代地构建出表格中的所有单元格,但该方法比较耗时,并且容易受断裂表格线的影响而产生错误;Hough变换是一种效果较好的方法,能有效检测出断裂表格线、虚线等不同类型的表格线。
在目前的办公自动化中,人们通常还是使用扫描仪来完成纸质文档图像的获取工作,但是,由于移动终端设备的普及以及便捷性等优点,日常生活中,人们越来越习惯用移动终端完成文档图像的获取操作。例如,人们在移动终端拍摄完文档图像后,希望快速的将文档图像转化为文字信息。然而,使用移动终端设备进行拍摄图像表格时因拍摄角度的原因,所采集的图像容易出现图像畸变的问题,这将会对文字的识别步骤造成很大的影响,同时,图像的畸变也会造成拍摄图像中的表格线会出现严重的变形,因此,上述的非受限表格的检测与识别算法在对移动终端拍摄的图像表格检测与识别上存在着相当大的挑战,从目前的识别的效果上来看,其最终的识别效果很难让人满意。
发明内容
本发明的实施例提供了一种面向移动终端拍摄的图像表格检测与识别方法,以实现有效地对手机等移动终端拍摄的图像表格进行检测与识别。
为了实现上述目的,本发明采取了如下技术方案。
一种面向移动终端拍摄的图像表格检测与识别方法,包括:
使用连通域分析法从移动终端拍摄的混合文档图像中分离出表格区域,得到表格图像,对所述表格图像进行图像矫正操作;
对矫正后的表格图像使用由粗糙到精细的直线检测算法,检测并定位到图像中直线的位置,并对检测出的直线进行校正处理,提取出所述表格图像中每个表格单元格的信息;
根据提取出的表格单元格信息进行文本识别,通过基于单元格合并的表格创建算法在文档中重建对应的表格。
进一步地,所述使用连通域分析法从移动终端拍摄的图像中分离出表格区域,得到表格图像,包括:
将移动终端拍摄的混合文档图像由RGB空间转化为灰度空间,得到灰度图像;
使用Sober算子计算所述灰度图像的边缘密度,使用所述边缘密度对所述灰度图像进行边缘框线强化处理;
采用OSTU全局方法寻找最佳的阈值,利用所述最佳的阈值对边缘框线强化处理后的灰度图像做二值化处理,对二值化处理后的灰度图像进行形态学处理;
利用种子填充法对形态学处理后的图像作连通域分析方法,寻找最大的连通域作为表格区域,将表格区域图像从所述混合文档图像中提取出来。
进一步地,所述利用种子填充法对形态学处理后的图像作连通域分析方法,寻找最大的连通域作为表格区域,将表格区域图像从所述混合文档图像中提取出来,包括:
步骤1、扫描形态学处理后的图像I,直到当前像素点I(x,y)==0,将所述当前像素点I(x,y)作为连通域的点:
a.将所述当前像素点I(x,y)作为种子,并赋予该种子一个label,将与该种子相邻的所有前景像素都压入栈中;
b.弹出栈顶像素,赋予所述栈顶像素相同的label,将与该栈顶像素相邻的所有前景像素都压入栈中;
c.重复b步骤,直到栈为空,找到所述形态学处理后的图像I中的一个连通区域,该连通区域内的像素值被标记为label,该连通域记为CC(i),其中i记为第i个检测到的连通域;
步骤2、重复步骤1,直到扫描结束,得到所述形态学处理后的图像I中所有的连通区域CC;
步骤3、遍历所有的连通域CC,寻找其中最大的连通域,记为CC(m),根据该连通域CC(m)中记录的点坐标,分别计算出连通域CC(m)中所有像素点的x,y坐标的最小和最大值,并存储到ccxmin,ccxmax,ccymin和ccymax中,则该连通域CC(m)的高度ccheight和宽度ccwidth的计算公式如下:
ccheight=ccymax-ccymin;
ccwidth=ccxmax-ccxmin;
步骤4、根据得到的连通域CC(m)中最小顶点坐标(ccxmin,ccxmax)和表格连通域的高度ccheight与宽度ccwidth,从形态学处理后的图像I中提取出表格区域图像ItableRect
进一步地,所述对所述表格图像进行图像矫正操作,包括:
使用顶点检测算法计算出表格框线的四个顶点:左上角(srcPlt(xlt,ylt))、
左下角点(srcPlb(xlb,ylb))、右上角点(srcPrt(xrt,yrt))和右下角点(srcPrb(xrb,yrb));
定义要恢复出的目标图像的四个顶点分左上角点(destPlt(mlt,nlt))、
左下角点(destPlb(mlb,nlb))、右上角点(destPrt(mrt,nrt))和右下角点(destPrb(mrb,nrb))。
将所述4对点坐标带入透视变换的公式中求出投影变换系数矩阵,根据所述投影变换系数矩阵恢复出所述表格图像矫正后的图像。
进一步地,所述的使用顶点检测算法计算出表格框线的四个顶点:左上角(srcPlt(xlt,ylt))、左下角点(srcPlb(xlb,ylb))、右上角点(srcPrt(xrt,yrt))和右下角点(srcPrb(xrb,yrb)),包括:
对于ItableRect图像的左边界线上,分别在其长度的1/3,2/3处取两个点,记为pleft1,pleft2,对于点pleft1,pleft2分别沿着水平正方向扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格左框线上的点,并将检测到的点分别标记为tleft1,tleft2,依靠点tleft1和tleft2确定出表格线的左边框线leftLine;
对于ItableRect图像的右边界线上,分别在其长度的1/3,2/3处取两个点,分别记为pright1,pright2,对于点pright1,pright2分别沿着水平负方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格右框线上的点,并将检测到的点分别标记为tright1,tright2,依靠点tright1和tright2确定出表格线的右边框线rightLine;
对于ItableRect图像的上边界线上,分别在其长度的1/3,2/3处取两个点,分别记为ptop1,ptop2,对于点ptop1,ptop2分别沿着垂直向下的方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格上边框线上的点,并将检测到的点分别标记为ttop1,ttop2,依靠点ttop1和ttop2确定出表格线的上边框线topLine;
对于ItableRect图像的底边界线上,分别在其长度的1/3,2/3处取两个点,分别记为pbottom1,pbottom2。对于点pbottom1,pbottom2分别沿着水平方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格底边框线上的点,并将检测到的点分别标记为tbottom1,tbottom2,依靠点tbottom1和tbottom2确定出表格线的底边框框线bottomLine;
将所述四条表格框线:leftLine、rightLine、topLine和bottomLine两两求其线的交点,求得表格框线的四个顶点坐标为左上角点(srcPlt(xlt,ylt))、左下角点(srcPlb(xlb,ylb))、右上角点(srcPrt(xrt,yrt))和右下角点(srcPrb(xrb,yrb))。
进一步地,所述的对矫正后的表格图像使用由粗糙到精细的直线检测算法,检测并定位到图像中直线的位置,包括:
所述粗糙检测包括:将图像表格分别做水平投影,垂直投影分析,保留满足设定阈值条件的波峰为直线;
所述精细检测包括:对所述粗糙检测的每一条直线,在其周围的区域内进行精细的搜索,保存满足条件的直线。
进一步地,所述的并对检测出的直线进行校正处理,包括:
校正表格线的端点位置,校正过程如下:
(1)遍历横线集合hLineSet,对于每个元素hLineSet[i];
(2)遍历竖线集合vLineSet,对于每个元素vLineSet[j];
d.如果垂直直线vLineSet[j]到水平线hLineSet[i]的距离小于15像素点,则延长垂直直线vLineSet[j]与hLineSet[i]相交;
e.如果水平直线hLineSet[i]到垂直直线vLineSet[j]的距离小于15像素点,则延长水平直线hLineSet[i]与hLineSet[j]相交;
f.如果同时延长hLineSet[i]和vLineSet[j]15个像素点才能相交,则同时延长hLineSet[i]与vLineSet[j]相交。
进一步地,所述的提取出所述表格图像中每个表格单元格的信息,包括:
表格线交点的提取过程如下:
步骤(1)、遍历水平表格线集合hLineSet,对于集合中的每条直线hLineSet[i];
步骤(2)、遍历垂直表格线集合vLineSet,对于集合中的每条直线vLineSet[j];
步骤(3)、若横线hLineSet[i]和竖线vLineSet[j]相交,保存交点坐标和交点的类型信息到crossPSet中;
步骤(4)、检查hLineSet是否遍历完成,若未完成则执行步骤(1)、(2)、(3);
得到的交点是按照纵坐标递增,对于相同纵坐标按照横坐标递增的顺序存储;
表格单元的提取过程如下:
从单元格的左下顶点开始提取:
步骤1、遍历交点集合crossPSet,如果crossPSet[i].type不为4、5、7、8中的一个,则跳至步骤(7)。
步骤2、遍历i之后的交点crossPSet,如果crossPSet[j].type不为5、6、8、9中的一个,则跳至步骤(6)。
步骤3、遍历i之前的交点crossPSet,如果crossPSet[k].type不为1、2、4、5中的一个,则跳至步骤(5)。
步骤4、根据crossPSet[i].point、crossPSet[j].point和crossPSet[k].point三个点计算出单元格右上方交点的坐标,将左下方点和右上方点存储到单元格集合cellSet中,跳至步骤(7)。
步骤5、判断i之前的交点集合crossPSet是否遍历完成,若未完成继续跳至步骤(3)。
步骤6、判断i之后的交点集合crossPSet是否遍历完成,若未完成继续跳至步骤(2)。
步骤7、判断交点集合crossPSet是否遍历完成,若未完成继续跳至步骤(1)。
进一步地,所述的根据提取出的表格单元格信息进行文本识别,通过基于单元格合并的表格创建算法在文档中重建对应的表格,包括:
1、对识别出的所有表格单元的纵坐标集nRows进行去重复操作,并将去重复后的纵坐标集nRows按照升序排序;
2、对于识别出的所有表格单元的横坐标集nCols进行去重复操作,并将去重复后的横坐标集nCols按照升序排序;
3、使用API接口创建文档,在文档中生成一张(nRows.size-1)*(nCols.size-1)大小的规则的表格wordTable;
4、遍历表格单元集cellSet,根据单元格cellSet(i)的坐标信息计算出该表格单元相对于整张表格wordTable的要合并的行数mergeRowsCount和列数mergeColsCount;
5、根据单元格cellSet(i)的坐标信息计算出该表格单元相对于整张表格wordTable的行坐标索引rowIndex和纵坐标索引colIndex;
6、根据所述mergeRowsCount、mergeColsCount、rowIndex和colIndex执行如下的合并过程:
e.mergeRowsCount≠0、mergeColsCount≠0,代表行和列同时需要进行合并,这种状况下,先行合并,再合并列,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中;
f.mergeRowsCount==0、mergeColsCount≠0,仅需进行合并列操作,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中;
g.mergeRowsCount≠0、mergeColsCount==0,仅需进行合并行操作,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中;
h.mergeRowsCount==0、mergeColsCount==0,无需进行列合并操作,直接将该单元格识别出的文字信息cellSet(i).text写入单元格中;
8、重复(4)、(5)、(6)步骤,直到表格单元集cellSet中的所有元素被遍历完,表格wordTable创建操作完成。
由上述本发明的实施例提供的技术方案可以看出,本发明实施例提出的基于单元格合并的表格的创建算法对规则与不规则的表格创建都具有很好的自适应性。用户可以对新创建的word文档做简单的编辑修改后即可完成图像表格到文档文件的转化操作,从而大大提高了办公自动化的效率,因此,本发明的方法具有很好的实用性。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种面向移动终端拍摄的图像表格检测与识别方法的结构框架图;
图2为本发明实施例提供的一种移动终端拍摄的图像表格示意图;
图3为本发明实施例提供的一种提取出的表格区域图像;
图4为本发明实施例提供的一种图像矫正恢复出的图像;
图5为本发明实施例提供的一种两条直线求交点的示意图;
图6为本发明实施例提供的一种投影变换图像矫正示意图;
图7为本发明实施例提供的一种直线合并示意图;
图8为本发明实施例提供的一种交点类型图;
图9为本发明实施例提供的一种单元格的提取示意图;
图10为本发明实施例提供的一种行列同时合并示意图;
图11为本发明实施例提供的一种合并列示意图;
图12为本发明实施例提供的一种合并行示意图;
图13为本发明实施例提供的一种无需单元格合并操作示意图;
图14为本发明实施例提供的一种最终生成的表格;
图15为本发明实施例提供的一种表格顶点检测的示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
为了克服上述问题,针对移动终端拍摄的表格图像,本发明提出一种面向移动终端拍摄的表格图像检测与识别方法,旨在解决现有的方案对拍摄过程中产生畸变的表格图像难检测的问题,同时,该方法在提取表格图像中的单元格后,利用OCR完成图像中文本信息与公式等的识别,最终按照识别出的表格信息,转换成为相应可编辑的word文件,从而提高了办公效率。
本发明首先通过连通域分析技术对混合文档图像进行版面分析,快速地从混合文档图像中提取出表格区域的有效信息,从而提高了版面分析的速度,并利用透视变换处理技术对提取出的表格区域图像进行矫正处理,消除因移动终端拍摄角度而造成的图像变形对后续检测与识别的影响,本发明采用一种由粗糙到精细的直线的检测方法的完成表格线的检测与提取工作。在表格线的提取之后,针对表格线存在的断裂和非对齐等问题分别做出相应的处理。在表格信息提取的部分,本发明采用表格框线交点的特征提取表格的单元,并使用开源的Tesseract-OCR识别引擎来完成表格文本的识别操作。最后,使用提出的基于单元格合并的表格创建算法在word文件中重建表格。
本发明实施例提供的一种面向移动终端拍摄的表格图像检测与识别方法的实现原理示意图如图1所示,包括:图像预处理、表格框架识别与表格文档重建提取三大处理过程,其中图像预处理分为表格区域提取与图像矫正两个模块;表格框架识别包括:表格线检测、表格框架校正和单元格提取;表格文档重建部分则分别由文字识别和表格重建组成,系统的各处理过程介绍如下:
1图像的预处理
1.1表格区域提取
表格区域的提取,就是要从移动终端拍摄的混合文档图像中提取出表格图像,为后续的表格图像的矫正做服务。对于表格区域的定位与提取,传统的方法一般则是利用霍夫变换的直线检测算法分析出表格的框线后,定位并分离出表格。该种方法首先需要使用霍夫变换做直线检测,然后根据检测出的表格直线做表格的定位分析。然而,由于霍夫变换需要设置一些经验性的阈值,同时考虑到对于移动终端拍摄的图像往往会因拍摄角度造成图像畸变,这就大大增加了直线检测的难度。同时,过多的直线检测也会相应的增加计算量,这使得表格区域定位提取效率下降。考虑到对图像做边缘增强、全局二值化和形态学处理等操作后,整个表格框架的像素点会更加紧密的连接形成一个大的连通区域,并且与图像中的其他连通域相比,该连通域一般是的最大的。
因此,在本发明实施例中使用连通域分析技术将包含表格的连通域标记提取出来。在本发明中,首先,将移动终端拍摄的混合文档图像(附图2所示)由RGB颜色空间转化为灰度空间,因为表格图像中的表格框线一般比较细,如果直接对其做二值化操作,就很容易发生表格框线的断裂的状况。为了克服上述操作的难点,同时又注意到图像表格主要由文字和表格框线组成,且图像表格还具有文字笔画和表格框线边缘明显、分布紧凑等主要特点,因此,在本发明中采用Sober算子提取图像中的框线和文字的边缘,然后使用边缘密度强化框线的边缘,达到了克服断线的目的。
边缘密度的计算公式为:
Figure BDA0001074364430000101
其中E(x,y)表示由Sober算子提取的边缘,w表示水平窗口大小。经过边缘强化后,采用OSTU全局方法寻找最佳的阈值做二值化处理。为了使表格区域的图像可以作为一个整体的连通域分离出来,本发明对二值化的图像进行形态学处理。考虑到通常状况下,一张混合文档图像中的表格占据了主要部分,本发明利用种子填充法作连通域分析方法,寻找最大的连通域作为表格区域,将表格区域图像从混合文档中提取出来,分离出的表格区域图像如附图3。
上述利用种子填充法作连通域分析方法的具体处理过程包括:
从连通区域的定义可以知道,一个连通区域是由具有相同像素值的相邻像素组成像素集合,因此,我们就可以通过这两个条件在图像中寻找连通区域,对于找到的每个连通区域,我们赋予其一个唯一的标识(Label),以区别其他连通区域。在本发明中使用Seed-Filling种子填充法作为连通域分析的基本算法。种子填充方法来源于计算机图形学,常用于对某个图形进行填充。其算法的思路为:选取一个前景像素点作为种子,然后根据连通区域的两个基本条件(像素值相同、位置相邻)将与种子相邻的前景像素合并到同一个像素集合中,最后得到的该像素集合则为一个连通区域。
表格区域定位与提取的操作过程如下:
1、扫描图像,直到当前像素点I(x,y)==0(连通域的点):
a.将I(x,y)作为种子(像素位置),并赋予其一个label,然后将该种子相邻的所有前景像素都压入栈中;
b.弹出栈顶像素,赋予其相同的label,然后再将与该栈顶像素相邻的所有前景像素都压入栈中;
c.重复b步骤,直到栈为空;
此时,便找到了图像I中的一个连通区域,该区域内的像素值被标记为label,本发明中的label从2初始值开始标记,每标记完一个连通域后,label的值加一,同时,系统使用四邻域点做连通域分析。该连通域记为CC(i),其中i记为第i个检测到的连通域;
重复第(1)步,直到扫描结束。扫描结束后,就可以得到图像I中所有的连通区域;
遍历所有的连通域CC,寻找其中最大的连通域,记为CC(m),根据该连通域中记录的点坐标,分别计算出连通域中所有像素点的x,y坐标的最小和最大值,并存储到ccxmin,ccxmax,ccymin和ccymax中,则该连通域的高度ccheight和宽度ccwidth就可以得到。其中,
ccheight=ccymax-ccymin;
ccwidth=ccxmax-ccxmin;
提取表格区域图像,根据得到的连通域最小顶点坐标(ccxmin,ccxmax)和表格连通域的高度(ccheight)与宽度(ccwidth),就可以从原图像I中提取出表格区域图像记为ItableRect
1.2图像矫正
将提取出的表格图像,分别计算出最外围表格框线的四个顶点:左上角、左下角、右上角和右下角,在计算四个交点的过程中,本发明使用一种对于表格图像更有针对性的顶点检测方法,来获取表格框的最外围的四个顶点。然后,通过计算出的四个顶点来映射出透视变换的映射矩阵,最后通过映射矩阵,将发生畸变的图像表格恢复出来。具体处理过程包括:
为了使用透视变换矫正提取出的表格区域图像,我们首先需要计算出表格框线的四个顶点:左上角、左下角、右上角和右下角。将上述提取出的表格区域图像ItableRect变换为灰度图像,然后使用OSTU方法计算出该图像的二值图,此时表格最外层的四条框线应该很接近ItableRect图像的边界线。基于上面的观察,本发明使用一种针对图像表格更有效的方法来获取表格框的最外围的四个顶点,顶点检测算法的具体实施过程为:
(1)对于ItableRect图像的左边界线上,分别在其长度的1/3,2/3处取两个点,记为pleft1,pleft2。对于点pleft1,pleft2分别沿着水平正方向扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格左框线上的点,并将检测到的点分别标记为tleft1,tleft2,因此,依靠点tleft1和tleft2就可以确定出表格线的左边框线leftLine,顶点检测的示意图如附图15所示。
(2)对于ItableRect图像的右边界线上,分别在其长度的1/3,2/3处取两个点,分别记为pright1,pright2。对于点pright1,pright2分别沿着水平负方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格右框线上的点,并将检测到的点分别标记为tright1,tright2,因此,依靠点tright1和tright2就可以确定出表格线的右边框线rightLine。
(3)对于ItableRect图像的上边界线上,分别在其长度的1/3,2/3处取两个点,分别记为ptop1,ptop2。对于点ptop1,ptop2分别沿着垂直向下的方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格上边框线上的点,并将检测到的点分别标记为ttop1,ttop2,因此,依靠点ttop1和ttop2就可以确定出表格线的上边框线topLine。
(4)对于ItableRect图像的底边界线上,分别在其长度的1/3,2/3处取两个点,分别记为pbottom1,pbottom2。对于点pbottom1,pbottom2分别沿着水平方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格底边框线上的点,并将检测到的点分别标记为tbottom1,tbottom2,因此,依靠点tbottom1和tbottom2就可以确定出表格线的底边框框线bottomLine。
(5)通过上面的操作,我们可以得到的四条表格框线:leftLine、rightLine、topLine和bottomLine。将四条直线两两求其线的交点即可求得顶点坐标。对于计算两条直线交点的坐标设为P(x,y),我们按照如下公式进行计算:
Figure BDA0001074364430000122
两条直线求交点的示意图如附图5所示。根据上述操作,可求得表格框线的四个顶点坐标为左上角点(srcPlt(xlt,ylt))、左下角点(srcPlb(xlb,ylb))、右上角点(srcPrt(xrt,yrt))和右下角点(srcPrb(xrb,yrb))。
本发明中使用透视变换解决了图像畸变的问题。透视变换是将图像投影到一个新的视平面,也称作投影映射。通用的变换公式为:
Figure BDA0001074364430000131
u,v是原始图像的坐标,对应得到变换后的图像坐标x,y,其中x=x'/w',y=y'/w'。因此重写之前的变换公式可以得到:
Figure BDA0001074364430000132
Figure BDA0001074364430000133
一般的a33通常取值为1,所以,已知变换的4组对应的点就可以按照上述的公式求取变换矩阵A,因此,由变换矩阵A就可以恢复出新的变换后的图像。附图6示意了使用投影变换矫正图像过程。该部分恢复的具体过程下:
(1)首先,定义要恢复出的目标图像的四个顶点分别记为左上角点(destPlt(mlt,nlt))、左下角点(destPlb(mlb,nlb))、右上角点(destPrt(mrt,nrt))和右下角点(destPrb(mrb,nrb)),则变换的4组对应点可以表示成:
srcPlt(xlt,ylt)→destPlt(mlt,nlt),srcPlb(xlb,ylb)→destPlb(mlb,nlb),srcPrt(xrt,yrt)→destPrt(mrt,nrt),srcPrb(xrb,yrb)→destPrb(mrb,nrb);
(2)将4对点坐标带入上式的变换公式中,求出投影变换系数矩阵A;
(3)遍历表格区域图像的每一个像素点ItableRect(x,y),根据变换系数矩阵A,求得该点在新图像中所对应的位置,将恢复出的新图像记为newItableRect,投影变换后恢复出的图像如附图4所示。
2表格框架识别
2.1表格线检测
发现对于表格区域提取后的图像做投影图具有以下几个特点:
第一,投影图中会出现比较明显的峰值,这些峰值对应图像表格中的表格线的位置。
第二,以水平投影为例,第一条表格线的上侧和最后一条表格线的下侧投影值非常小,因为一般表格的两侧都有一部分空白区域。因此,在表格线检测上,本发明使用一种基于投影法改进的直线检测算法:由粗糙到精细的直线的检测方法。首先,利用投影法来确定横向与纵向表格线的粗略的位置。为了进一步精确地找到表格框线的位置,在上述投影法确定的横向与纵向表格线的位置附近区域搜索满足一定条件的直线,最终获得精确地直线。
上述由粗糙到精细的直线的检测方法的具体处理过程包括:
使用投影法确定横向与纵向的表格线的粗略位置的具体执行过程如下:
(1)首先,对整个图像做水平投影,得到水平投影数组hprojection。
(2)遍历hprojection,直到满足hprojection(i-1)<T且hprojection(i)≥T的条件,其中T为投影阈值,则代表该位置是表格垂直方向的起始位置,记录i为表格垂直方向的起始的坐标;继续遍历寻找表格垂直方向的结束点位置,直到满足hprojection(j-1)≥T且hprojection(j)<T的条件,并记录j为表格垂直方向的结束坐标。
(3)在垂直方向的起始线和终止线之间,对图像做垂直投影vprojection。
(4)根据垂直投影vprojection数组,求出表格在水平方向的起始坐标m和结束坐标n,方法同上。
(5)在表格垂直方向上的起始线hprojecton[i]和终止线hprojecton[j]之间,搜索所有的峰值点,保存到hor中。
(6)遍历hor,在hor[i]-t1到hor[i]+t1范围内,搜索提取直线,其中,t1为控制搜索区域的阈值,将所有满足条件的表格横线存储到hLineSet中。
(7)在表格水平方向上的起始线vprojecton[m]和终止线vprojecto[nn]之间,搜索所有的峰值点,保存到ver中。
(8)同步骤(6)一样遍历hor,将满足条件的表格竖线存储到vLineSet中。
直线的断线连接:
(1)把hLineSet和vLineSet集合中的直线重新绘制到空白图上,做二值化处理后,并细化处理得到细化图像Ithin
(2)水平线段合并:
a.从细化图像Ithin单独提取出横线集合hLineSet
b.合并断裂的横线,若两条横线的垂直距离小于15,并且左直线的右端点和右直线的左端点距离小于15,则把两条直线合并。合并示意图如附图7所示
c.删除直线长度小于阈值的表格横线
(3)使用步骤(2)的方法对垂直表格线的进行合并删除后保存到vLineSet中。
2.2表格框架校正
经过直线检测后,我们可以得到表格的基本框架结构,但是所获得表格框架线可能存在直线断裂和表格单元端点连接的问题。为了解决上述问题,需要对表格框架进行校正操作。
因为提取的表格线的有误差,为了保证水平表格线和垂直表格线相交,需要校正表格线的端点位置,校正过程如下:
(1)遍历横线集合hLineSet,对于每个元素hLineSet[i]。
(2)遍历竖线集合vLineSet,对于每个元素vLineSet[j]。
g.如果垂直直线vLineSet[j]到水平线hLineSet[i]的距离小于15像素点,则延长垂直直线vLineSet[j]与hLineSet[i]相交。
h.如果水平直线hLineSet[i]到垂直直线vLineSet[j]的距离小于15像素点,则延长水平直线hLineSet[i]与hLineSet[j]相交。
i.如果同时延长hLineSet[i]和vLineSet[j]15个像素点才能相交,则同时延长hLineSet[i]与vLineSet[j]相交。
2.3表格单元提取
为了能够克服表格框线对表格单元中的文字信息识别的影响,需要根据校正后的横线与竖线,提取表格单元的坐标信息,为后续的OCR文字识别提供准备。
表格线交点的提取过程如下:
1、遍历水平表格线集合hLineSet,对于集合中的每条直线hLineSet[i]。
2、遍历垂直表格线集合vLineSet,对于集合中的每条直线vLineSet[j]。
3、若横线hLineSet[i]和竖线vLineSet[j]相交,保存交点坐标和交点的类型信息到crossPSet中,交点类型见附图8。
4、检查hLineSet是否遍历完成,若未完成则执行步骤(1)、(2)、(3)。这种方法可以保证得到的交点是按照纵坐标递增,对于相同纵坐标按照横坐标递增的顺序存储,这样的好处在于方便后续根据交点坐标和交点类型提取表格单元的操作。
表格单元的提取过程如下:
提取单元格从单元格的左下顶点开始,只有图8中类型4、5、7、8才可能是左下角,然后搜索i之后的点,找到右下角的点j(类型5、6、8、9),然后找左上角的交点(类型1、2、4、5),根据找到的3个点求出右上角的点,然后判断右上角的点是否也在交点集合中,若在集合中,则把单元格保存起来。
单元格的提取示意图如附图9所示,具体的实施过程为:
步骤1、遍历交点集合crossPSet,如果crossPSet[i].type不为4、5、7、8中的一个,则跳至步骤(7)。
步骤2、遍历i之后的交点crossPSet,如果crossPSet[j].type不为5、6、8、9中的一个,则跳至步骤(6)。
步骤3、遍历i之前的交点crossPSet,如果crossPSet[k].type不为1、2、4、5中的一个,则跳至步骤(5)。
步骤4、根据crossPSet[i].point、crossPSet[j].point和crossPSet[k].point三个点计算出单元格右上方交点的坐标,将左下方点和右上方点存储到单元格集合cellSet中,跳至步骤(7)。
步骤5、判断i之前的交点集合crossPSet是否遍历完成,若未完成继续跳至步骤(3)。
步骤6、判断i之后的交点集合crossPSet是否遍历完成,若未完成继续跳至步步骤(2)。
步骤7、判断交点集合crossPSet是否遍历完成,若未完成继续跳至步骤(1)。
3表格文档重建
3.1文字识别
根据提取出的表格单元的坐标信息,使用OCR系统识别并保存单元格的文本信息。OCR系统使用的是Tesseract-OCR识别引擎,该引擎支持中文识别并且还可以训练自己的识别库,同时,该OCR系统对中文印体刷体具有很好的识别率和识别速度。因此,本发明使用该OCR识别引擎作为文字识别模块,来提取每个表格单元的文本信息。
表格重建
创建word文档文件,按照表格单元提取模块获取的单元格的位置信息,在文档中创建与其对应的表格单元,并将上步骤中OCR识别出的文字信息填写到相应的单元格中。在创建word文档的表格时,针对不规则表格,本发明提出一种基于单元格合并的表格的创建算法,具体处理过程如下:
(1)首先,对识别出的所有表格单元的纵坐标集(nRows)进行去重复操作,并将去重复后的坐标集(nRows)按照升序排序。
(2)对于识别出的所有表格单元的横坐标集(nCols),同样按步骤(1)进行去重复后升序排序。
(3)使用API(Application Programming Interface,应用程序编程接口)接口创建word文档,在文档中生成一张(nRows.size-1)*(nCols.size-1)大小的规则的表格wordTable。
(4)遍历表格单元集cellSet,根据单元格cellSet(i)的坐标信息计算出该表格单元相对于整张表格wordTable的要合并的行数(mergeRowsCount)和列数(mergeColsCount)
(5)根据单元格cellSet(i)的坐标信息计算出该表格单元相对于整张表格wordTable的行坐标索引(rowIndex)和纵坐标索引(colIndex)
(6)根据mergeRowsCount,mergeColsCount,rowIndex和colIndex执行合并过程:
i.mergeRowsCount≠0、mergeColsCount≠0,代表行和列同时需要进行合并,这种状况下,先行合并,再合并列,示意图如附图10所示,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中。
j.mergeRowsCount==0、mergeColsCount≠0,仅需进行合并列操作,示意图如附图11所示,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中。
k.mergeRowsCount≠0、mergeColsCount==0,仅需进行合并行操作,示意图如附图12所示,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中。
l.mergeRowsCount==0、mergeColsCount==0,无需进行列合并操作,示意图如附图13所示,直接将该单元格识别出的文字信息cellSet(i).text写入单元格中。
(7)重复(4)、(5)、(6)步骤,直到表格单元集cellSet中的所有元素被遍历完,表格wordTable创建操作完成,生成的表格经过简单的文字修正编辑后如附图14所示。
综上所述,本发明实施例提出的基于单元格合并的表格的创建算法对规则与不规则的表格创建都具有很好的自适应性。用户可以对新创建的word文档做简单的编辑修改后即可完成图像表格到文档文件的转化操作,从而大大提高了办公自动化的效率,因此,本发明的方法具有很好的实用性。
本发明首先通过连通域分析技术对混合文档图像进行版面分析,快速地从混合文档图像中提取出表格区域的有效信息,从而提高了版面分析的速度,并利用透视变换处理技术对提取出的表格区域图像进行矫正处理,消除了因手机等移动终端拍摄角度而造成的图像表格变形对后续表格检测与识别的影响。本发明采用一种由粗糙到精细的直线的检测方法来完成表格线的检测与提取,并使用开源的Tesseract-OCR识别引擎完成表格文本的识别操作。最后,使用提出的基于单元格合并的表格创建算法在word文件中重建表格。大大提高了办公自动化的效率。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (6)

1.一种面向移动终端拍摄的图像表格检测与识别方法,其特征在于,包括:
使用连通区域分析法从移动终端拍摄的混合文档图像中分离出表格区域,得到表格图像,对所述表格图像进行图像矫正操作;
对矫正后的表格图像使用由粗糙到精细的直线检测算法,检测并定位到图像中直线的位置,并对检测出的直线进行校正处理,提取出所述表格图像中每个表格单元格的信息;
根据提取出的表格单元格信息进行文本识别,通过基于单元格合并的表格创建算法在文档中重建对应的表格;
所述使用连通区域分析法从移动终端拍摄的混合文档图像中分离出表格区域,得到表格图像,包括:
将移动终端拍摄的混合文档图像由RGB空间转化为灰度空间,得到灰度图像;
使用Sober算子计算所述灰度图像的边缘密度,使用所述边缘密度对所述灰度图像进行边缘框线强化处理;
采用OSTU全局方法寻找最佳的阈值,利用所述最佳的阈值对边缘框线强化处理后的灰度图像做二值化处理,对二值化处理后的灰度图像进行形态学处理;
利用种子填充法对形态学处理后的图像作连通区域分析方法,寻找最大的连通区域作为表格区域,将表格区域图像从所述混合文档图像中提取出来;
所述利用种子填充法对形态学处理后的图像作连通区域分析方法,寻找最大的连通区域作为表格区域,将表格区域图像从所述混合文档图像中提取出来,包括:
步骤1、扫描形态学处理后的图像I,直到当前像素点I(x,y)==0,将所述当前像素点I(x,y)作为连通区域的点:
a.将所述当前像素点I(x,y)作为种子,并赋予该种子一个label,将与该种子相邻的所有前景像素都压入栈中;
b.弹出栈顶像素,赋予所述栈顶像素相同的label,将与该栈顶像素相邻的所有前景像素都压入栈中;
c.重复b步骤,直到栈为空,找到所述形态学处理后的图像I中的一个连通区域,该连通区域内的像素值被标记为label,该连通区域记为CC(i),其中i记为第i个检测到的连通区域;
步骤2、重复步骤1,直到扫描结束,得到所述形态学处理后的图像I中所有的连通区域CC;
步骤3、遍历所有的连通区域CC,寻找其中最大的连通区域,记CC(m),根据该连通区域CC(m)中记录的点坐标,分别计算出CC(m)中所有像素点的x坐标的最小值ccxmin,x坐标的最大值ccxmax,y坐标的最小值ccymin,y坐标的最大值ccymax,则该连通区域CC(m)的高度ccheight和宽度ccwidth的计算公式如下:
ccheight=ccymax-ccymin;
ccwidth=ccxmax-ccxmin;
步骤4、根据得到的连通区域CC(m)中所有像素点的x坐标的最小值ccxmin,x坐标的最大值ccxmax,以及表格连通区域的高度ccheight与宽度ccwidth,从形态学处理后的图像I中提取出表格区域图像ItableRect
所述对所述表格图像进行图像矫正操作,包括:使用顶点检测算法计算出表格框线的四个顶点:左上角srcPlt(xlt,ylt)、左下角点srcPlb(xlb,ylb)、右上角点srcPrt(xrt,yrt)和右下角点srcPrb(xrb,yrb);定义要恢复出的目标图像的四个顶点分左上角点destPlt(mlt,nlt)、左下角点destPlb(mlb,nlb)、右上角点destPrt(mrt,nrt)和右下角点destPrb(mrb,nrb);
将所述表格框线的四个顶点的坐标带入透视变换的公式中求出投影变换系数矩阵,根据所述投影变换系数矩阵恢复出所述表格图像矫正后的图像。
2.根据权利要求1所述的方法,其特征在于,所述的使用顶点检测算法计算出表格框线的四个顶点:左上角srcPlt(xlt,ylt)、左下角点srcPlb(xlb,ylb)、右上角点srcPrt(xrt,yrt)和右下角点srcPrb(xrb,yrb),包括:
对于ItableRect图像的左边界线上,分别在其长度的1/3,2/3处取两个点,记为pleft1,pleft2,对于点pleft1,pleft2分别沿着水平正方向扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格左框线上的点,并将检测到的点分别标记为tleft1,tleft2,依靠点tleft1和tleft2确定出表格线的左边框线leftLine;
对于ItableRect图像的右边界线上,分别在其长度的1/3,2/3处取两个点,分别记为pright1,pright2,对于点pright1,pright2分别沿着水平负方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格右框线上的点,并将检测到的点分别标记为tright1,tright2,依靠点tright1和tright2确定出表格线的右边框线rightLine;
对于ItableRect图像的上边界线上,分别在其长度的1/3,2/3处取两个点,分别记为ptop1,ptop2,对于点ptop1,ptop2分别沿着垂直向下的方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格上边框线上的点,并将检测到的点分别标记为ttop1,ttop2,依靠点ttop1和ttop2确定出表格线的上边框线topLine;
对于ItableRect图像的底边界线上,分别在其长度的1/3,2/3处取两个点,分别记为pbottom1,pbottom2,对于点pbottom1,pbottom2分别沿着水平方向出发扫描图像,直到当前像素点ItableRect(x,y)==0,则说明该点为表格底边框线上的点,并将检测到的点分别标记为tbottom1,tbottom2,依靠点tbottom1和tbottom2确定出表格线的底边框框线bottomLine;
将四条表格框线:leftLine、rightLine、topLine和bottomLine两两求其线的交点,求得表格框线的四个顶点坐标为左上角点srcPlt(xlt,ylt)、左下角点srcPlb(xlb,ylb)、右上角点srcPrt(xrt,yrt)和右下角点srcPrb(xrb,yrb)。
3.根据权利要求1所述的方法,其特征在于,所述的对矫正后的表格图像使用由粗糙到精细的直线检测算法,检测并定位到图像中直线的位置,包括:
粗糙的直线检测包括:将图像表格分别做水平投影,垂直投影分析,保留满足设定阈值条件的波峰为直线;
精细的直线检测包括:对所述粗糙的直线检测的每一条直线,在其周围的区域内进行精细的搜索,保存满足条件的直线。
4.根据权利要求3所述的方法,其特征在于,所述的并对检测出的直线进行校正处理,包括:
校正表格线的端点位置,校正过程如下:
(1)遍历水平直线集合hLineSet,对于每个水平直线hLineSet[i];
(2)遍历垂直直线集合vLineSet,对于每个垂直直线vLineSet[j];
a.如果垂直直线vLineSet[j]到水平直线hLineSet[i]的距离小于15像素点,则延长垂直直线vLineSet[j]与水平直线hLineSet[i]相交;
b.如果水平直线hLineSet[i]到垂直直线vLineSet[j]的距离小于15像素点,则延长水平直线hLineSet[i]与垂直直线hLineSet[j]相交;
c.如果同时延长水平直线hLineSet[i]和垂直直线vLineSet[j]15个像素点才能相交,则同时延长水平直线hLineSet[i]与垂直直线vLineSet[j]相交。
5.根据权利要求4所述的方法,其特征在于,所述的提取出所述表格图像中每个表格单元格的信息,包括:
表格线交点的提取过程如下:
步骤(1)、遍历水平直线集合hLineSet,对于集合中的每条水平直线hLineSet[i];
步骤(2)、遍历垂直直线集合vLineSet,对于集合中的每条垂直直线vLineSet[j];
步骤(3)、若水平直线hLineSet[i]和垂直直线vLineSet[j]相交,保存交点坐标和交点的类型信息到交点集会crossPSet中;
步骤(4)、检查hLineSet是否遍历完成,若未完成则执行步骤(1)、(2)、(3);
得到的交点是按照纵坐标递增,对于相同纵坐标按照横坐标递增的顺序存储;
表格单元的提取过程如下:
从单元格的左下顶点开始提取:
步骤1、遍历交点集合crossPSet,如果crossPSet[i].type不为单元格左下顶点类型中的一个,则跳至步骤7;
步骤2、遍历i之后的交点crossPSet,如果crossPSet[j].type不为单元格右下顶点类型中的一个,则跳至步骤6;
步骤3、遍历i之前的交点crossPSet,如果crossPSet[k].type不为单元格左上顶点的类型中的一个,则跳至步骤5;
步骤4、根据crossPSet[i].point、crossPSet[j].point和crossPSet[k].point三个点计算出单元格右上方交点的坐标,将左下方点和右上方点存储到单元格集合cellSet中,跳至步骤7;
步骤5、判断i之前的交点集合crossPSet是否遍历完成,若未完成继续跳至步骤3;
步骤6、判断i之后的交点集合crossPSet是否遍历完成,若未完成继续跳至步骤2;
步骤7、判断交点集合crossPSet是否遍历完成,若未完成继续跳至步骤1。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述的根据提取出的表格单元格信息进行文本识别,通过基于单元格合并的表格创建算法在文档中重建对应的表格,包括:
10、对识别出的所有表格单元的纵坐标集nRows进行去重复操作,并将去重复后的纵坐标集nRows按照升序排序;
20、对于识别出的所有表格单元的横坐标集nCols进行去重复操作,并将去重复后的横坐标集nCols按照升序排序;
30、使用API接口创建文档,在文档中生成一张(nRows.size-1)*(nCols.size-1)大小的规则的表格wordTable;
40、遍历表格单元集cellSet,根据单元格cellSet(i)的坐标信息计算出该表格单元相对于整张表格wordTable的要合并的行数mergeRowsCount和列数mergeColsCount;
50、根据单元格cellSet(i)的坐标信息计算出该表格单元相对于整张表格wordTable的行坐标索引rowIndex和纵坐标索引colIndex;
60、根据所述mergeRowsCount、mergeColsCount、rowIndex和colIndex执行如下的合并过程:
a:mergeRowsCount≠0、mergeColsCount≠0,代表行和列同时需要进行合并,这种状况下,先行合并,再合并列,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中;
b:mergeRowsCount==0、mergeColsCount≠0,仅需进行合并列操作,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中;
c:mergeRowsCount≠0、mergeColsCount==0,仅需进行合并行操作,将该单元格识别出的文字信息cellSet(i).text写入到合并生成的新的单元格中;
d:mergeRowsCount==0、mergeColsCount==0,无需进行列合并操作,直接将该单元格识别出的文字信息cellSet(i).text写入单元格中;
70、重复40、50、60步骤,直到表格单元集cellSet中的所有元素被遍历完,表格wordTable创建操作完成。
CN201610649808.1A 2016-08-10 2016-08-10 面向移动终端拍摄的图像表格检测与识别方法 Expired - Fee Related CN106156761B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610649808.1A CN106156761B (zh) 2016-08-10 2016-08-10 面向移动终端拍摄的图像表格检测与识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610649808.1A CN106156761B (zh) 2016-08-10 2016-08-10 面向移动终端拍摄的图像表格检测与识别方法

Publications (2)

Publication Number Publication Date
CN106156761A CN106156761A (zh) 2016-11-23
CN106156761B true CN106156761B (zh) 2020-01-10

Family

ID=57328921

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610649808.1A Expired - Fee Related CN106156761B (zh) 2016-08-10 2016-08-10 面向移动终端拍摄的图像表格检测与识别方法

Country Status (1)

Country Link
CN (1) CN106156761B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111932483A (zh) * 2020-09-28 2020-11-13 江西汉辰信息技术股份有限公司 图片处理方法、装置、存储介质及计算机设备

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108572943B (zh) * 2017-03-14 2022-11-11 长沙博为软件技术股份有限公司 一种基于gdi拦截的表格识别方法
CN108628814A (zh) * 2017-03-20 2018-10-09 珠海金山办公软件有限公司 一种快速插入识别文字的方法及装置
CN107315989B (zh) * 2017-05-03 2020-06-12 天方创新(北京)信息技术有限公司 针对医学资料图片的文本识别方法和装置
CN107358232B (zh) * 2017-06-28 2020-12-29 中山大学新华学院 基于插件的发票识别方法
CN107368690B (zh) * 2017-08-09 2022-01-18 贵阳朗玛信息技术股份有限公司 医学影像图片的预处理方法及装置
CN107622041B (zh) * 2017-09-18 2021-02-12 鼎富智能科技有限公司 隐性表格提取方法及装置
CN107943857A (zh) * 2017-11-07 2018-04-20 中船黄埔文冲船舶有限公司 自动读取AutoCAD表格的方法、装置、终端设备与存储介质
CN109902534A (zh) * 2017-12-07 2019-06-18 南通艾思达智能科技有限公司 一种定位医疗票据表格四边的方法
CN107884380B (zh) * 2017-12-19 2020-05-12 西北工业大学 一种微反应腔阵列式芯片的全自动快速荧光分析方法
CN107909064B (zh) * 2017-12-27 2018-11-16 掌阅科技股份有限公司 三线表识别方法、电子设备及存储介质
CN108416279B (zh) * 2018-02-26 2022-04-19 北京阿博茨科技有限公司 文档图像中的表格解析方法及装置
CN108827181B (zh) * 2018-03-14 2021-04-09 浙江大学山东工业技术研究院 一种基于视觉的板材表面检测方法
JP6880460B2 (ja) * 2018-03-27 2021-06-02 京セラドキュメントソリューションズ株式会社 画像処理装置
CN108805684A (zh) * 2018-04-17 2018-11-13 海闻科技有限公司 一种税务管理平台应用系统
CN108810307B (zh) * 2018-06-15 2020-09-04 深圳市成者云科技有限公司 一种边框页码扫描系统
CN109308465B (zh) * 2018-09-14 2020-01-17 百度在线网络技术(北京)有限公司 表格线检测方法、装置、设备及计算机可读介质
CN109344297A (zh) * 2018-09-18 2019-02-15 北京工业大学 一种共享图书系统中离线获取图书在版编目数据的方法
CN110163198B (zh) * 2018-09-27 2022-03-08 腾讯科技(深圳)有限公司 一种表格识别重建方法、装置和存储介质
CN109461195A (zh) * 2018-09-28 2019-03-12 武汉优品楚鼎科技有限公司 一种基于svg的图表提取方法、装置及设备
CN109543525B (zh) * 2018-10-18 2020-12-11 成都中科信息技术有限公司 一种通用表格图像的表格提取方法
CN111079756B (zh) * 2018-10-19 2023-09-19 杭州萤石软件有限公司 一种单据图像中的表格提取与重建方法和设备
CN109522816B (zh) * 2018-10-26 2021-07-02 北京慧流科技有限公司 表格识别方法及装置、计算机存储介质
CN109614923B (zh) * 2018-12-07 2022-06-21 上海智臻智能网络科技股份有限公司 Ocr文档识别方法及其装置
CN109635729B (zh) * 2018-12-12 2022-02-08 厦门商集网络科技有限责任公司 一种表格识别方法及终端
CN109726643B (zh) * 2018-12-13 2021-08-20 北京金山数字娱乐科技有限公司 图像中表格信息的识别方法、装置、电子设备及存储介质
CN109784236B (zh) * 2018-12-29 2023-09-19 河南辉煌科技股份有限公司 一种识别铁路图纸中表格内容的方法
CN109815954A (zh) * 2019-01-31 2019-05-28 科大讯飞股份有限公司 增值税发票图像的方向校正方法、装置、设备及存储介质
CN109934160B (zh) * 2019-03-12 2023-06-02 天津瑟威兰斯科技有限公司 基于表格识别的表格文字信息提取的方法及系统
CN109948135B (zh) * 2019-03-26 2022-11-08 厦门商集网络科技有限责任公司 一种基于表格特征归一化图像的方法及设备
CN111797838A (zh) * 2019-04-08 2020-10-20 上海怀若智能科技有限公司 一种图片类文档盲去噪系统、方法及装置
CN110060260B (zh) * 2019-04-12 2023-06-20 南京信息工程大学 一种图像处理方法及系统
CN111859874B (zh) * 2019-04-17 2023-06-13 百度在线网络技术(北京)有限公司 表格生成方法及其系统、视频播放设备和计算机可读介质
CN110210400B (zh) * 2019-06-03 2020-11-17 上海眼控科技股份有限公司 一种表格文件检测方法及设备
CN110263682A (zh) * 2019-06-04 2019-09-20 北京华宇信息技术有限公司 基于轮廓提取的表格识别方法和装置、设备及存储介质
CN110210409B (zh) * 2019-06-04 2021-04-20 南昌市微轲联信息技术有限公司 表格单据中表格框线检测方法及系统
CN110363095B (zh) * 2019-06-20 2023-07-04 华南农业大学 一种针对表格字体的识别方法
CN110309746A (zh) * 2019-06-21 2019-10-08 国网辽宁省电力有限公司鞍山供电公司 无通信互联的高等级信息安全区表格数据信息提取方法
CN110335280A (zh) * 2019-07-05 2019-10-15 湖南联信科技有限公司 一种基于移动端的金融单据图像分割与矫正方法
CN110502985B (zh) * 2019-07-11 2022-06-07 新华三大数据技术有限公司 表格识别方法、装置及表格识别设备
CN110348397A (zh) * 2019-07-15 2019-10-18 山东旗帜信息有限公司 一种电子表格的分割方法及利用该分割方法的ocr识别方法
CN110458070A (zh) * 2019-08-01 2019-11-15 上海眼控科技股份有限公司 基于机动车年检检验表图片识别检验次数的方法与系统
CN110544263A (zh) * 2019-08-19 2019-12-06 温州大学 一种简化的检测表图像中表格的方法
CN110826393B (zh) * 2019-09-17 2022-12-30 中国地质大学(武汉) 钻孔柱状图信息自动提取方法
CN111127339B (zh) * 2019-12-04 2020-10-30 北京华宇信息技术有限公司 一种文档图像的梯形畸变矫正方法及装置
CN111126266B (zh) * 2019-12-24 2023-05-05 上海智臻智能网络科技股份有限公司 文本处理方法、文本处理系统、设备及介质
CN111539412B (zh) * 2020-04-21 2021-02-26 上海云从企业发展有限公司 一种基于ocr的图像分析方法、系统、设备及介质
CN111626145B (zh) * 2020-05-08 2024-01-23 西安工业大学 一种简捷有效的残缺表格识别及跨页拼接方法
CN111639637B (zh) * 2020-05-29 2023-08-15 北京百度网讯科技有限公司 表格识别方法、装置、电子设备和存储介质
CN111898402A (zh) * 2020-06-01 2020-11-06 王昌龙 一种智能排版系统
CN111640133A (zh) * 2020-06-03 2020-09-08 上海铭垚信息科技有限公司 图片表格自动提取方法及系统
CN113919327A (zh) * 2020-07-07 2022-01-11 阿里巴巴集团控股有限公司 文本纠错方法、设备以及计算机可读介质
CN111860257B (zh) * 2020-07-10 2022-11-11 上海交通大学 融合多种文本特征及几何信息的表格识别方法及系统
CN112036259A (zh) * 2020-08-10 2020-12-04 晶璞(上海)人工智能科技有限公司 一种基于图像处理与深度学习相结合的表格矫正与识别的方法
CN112036294B (zh) * 2020-08-28 2023-08-25 山谷网安科技股份有限公司 一种纸质表格结构自动识别的方法及装置
CN112528724A (zh) * 2020-09-17 2021-03-19 上海海隆软件有限公司 表格单元格抽出方法、装置、设备及计算机可读存储介质
CN116134481A (zh) * 2020-09-18 2023-05-16 西门子股份公司 一种铭牌图像的分割方法、装置和计算机可读存储介质
CN112149561B (zh) * 2020-09-23 2024-04-16 杭州睿琪软件有限公司 图像处理方法和装置、电子设备和存储介质
CN112183038A (zh) * 2020-09-23 2021-01-05 国信智能系统(广东)有限公司 一种表格识别套打方法、计算机设备及计算机可读存储介质
CN111881659B (zh) * 2020-09-28 2021-02-26 江西汉辰信息技术股份有限公司 表格图片的处理方法、系统、可读存储介质及计算机设备
CN112200822A (zh) * 2020-10-28 2021-01-08 广东南方数码科技股份有限公司 表格重建方法、装置、计算机设备及存储介质
CN112364790B (zh) * 2020-11-16 2022-10-25 中国民航大学 基于卷积神经网络的机场工作单信息识别方法及系统
CN112766073B (zh) * 2020-12-31 2022-06-10 贝壳找房(北京)科技有限公司 表格提取方法、装置、电子设备及可读存储介质
CN113139445B (zh) * 2021-04-08 2024-05-31 招商银行股份有限公司 表格识别方法、设备及计算机可读存储介质
CN113221743B (zh) * 2021-05-12 2024-01-12 北京百度网讯科技有限公司 表格解析方法、装置、电子设备和存储介质
CN113554027A (zh) * 2021-08-09 2021-10-26 深圳市迪博企业风险管理技术有限公司 一种报销单据图像文本信息校准与提取方法
WO2023031689A1 (en) * 2021-08-31 2023-03-09 L&T Technology Services Limited Method for extraction of table and figure region from engineering drawings
CN113989821A (zh) * 2021-11-09 2022-01-28 中国建设银行股份有限公司 表格图像的处理方法、系统、设备、介质和程序产品
CN113807325B (zh) * 2021-11-17 2022-02-22 南京三叶虫创新科技有限公司 一种基于图像处理的线型识别方法及系统
CN113936286B (zh) * 2021-11-29 2024-06-14 中国平安人寿保险股份有限公司 图像文本识别方法、装置、计算机设备及存储介质
CN114529922A (zh) * 2021-12-31 2022-05-24 上海致宇信息技术有限公司 一种无线框表格图像表格结构识别方法
CN114637845B (zh) * 2022-03-11 2023-04-14 上海弘玑信息技术有限公司 模型测试方法、装置、设备和存储介质
CN114529925B (zh) * 2022-04-22 2022-07-15 华南理工大学 一种全线表表格结构识别方法
CN115035540A (zh) * 2022-06-14 2022-09-09 西安热工研究院有限公司 一种图片识别手写数据完成管道检测报告的方法
CN115409825B (zh) * 2022-09-06 2023-09-12 重庆众仁科技有限公司 一种基于图像识别的温湿压迹线识别方法
CN115620321B (zh) * 2022-10-20 2023-06-23 北京百度网讯科技有限公司 表格识别方法及装置、电子设备和存储介质
CN116612487B (zh) * 2023-07-21 2023-10-13 亚信科技(南京)有限公司 表格识别方法、装置、电子设备及存储介质
CN117935296B (zh) * 2024-02-06 2024-06-04 广东度才子集团有限公司 一种就业质量报告生成系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1237745A (zh) * 1998-01-05 1999-12-08 佳能株式会社 用来分析表格图像的系统
CN103258201A (zh) * 2013-04-26 2013-08-21 四川大学 一种融合全局和局部信息的表格线提取方法
CN104636117A (zh) * 2013-11-12 2015-05-20 江苏奥博洋信息技术有限公司 一种表格图像的自动切分方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8818099B2 (en) * 2012-09-08 2014-08-26 Konica Minolta Laboratory U.S.A., Inc. Document image binarization and segmentation using image phase congruency

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1237745A (zh) * 1998-01-05 1999-12-08 佳能株式会社 用来分析表格图像的系统
CN103258201A (zh) * 2013-04-26 2013-08-21 四川大学 一种融合全局和局部信息的表格线提取方法
CN104636117A (zh) * 2013-11-12 2015-05-20 江苏奥博洋信息技术有限公司 一种表格图像的自动切分方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《印刷体表格识别的研究》;刘昱;《中国硕士学位论文全文数据库工程科技Ⅰ辑》;20140415;第2014年第4卷;正文部分第1.4节、正文部分第2章、正文部分第2.5节、正文部分第3章、正文部分第4章、正文部分第5章、图1.1 *
《背景复杂的机票信息识别技术的研究》;李念东;《中国硕士学位论文全文数据库工程科技Ⅰ辑》;20120615;第2012年第6卷;正文部分第3.5.1节 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111932483A (zh) * 2020-09-28 2020-11-13 江西汉辰信息技术股份有限公司 图片处理方法、装置、存储介质及计算机设备
CN111932483B (zh) * 2020-09-28 2021-01-08 江西汉辰信息技术股份有限公司 图片处理方法、装置、存储介质及计算机设备

Also Published As

Publication number Publication date
CN106156761A (zh) 2016-11-23

Similar Documents

Publication Publication Date Title
CN106156761B (zh) 面向移动终端拍摄的图像表格检测与识别方法
CN111814722B (zh) 一种图像中的表格识别方法、装置、电子设备及存储介质
CN109933756B (zh) 基于ocr的图像转档方法、装置、设备及可读存储介质
Stamatopoulos et al. Goal-oriented rectification of camera-based document images
US8494273B2 (en) Adaptive optical character recognition on a document with distorted characters
Garz et al. Binarization-free text line segmentation for historical documents based on interest point clustering
CN112052852B (zh) 一种基于深度学习的手写气象档案资料的字符识别方法
CN103268363B (zh) 一种基于弹性hog特征和ddtw匹配的中国书法图像检索方法
Kassis et al. Vml-hd: The historical arabic documents dataset for recognition systems
US20190102615A1 (en) System and method for capturing and interpreting images into triple diagrams
CN103577818A (zh) 一种图像文字识别的方法和装置
CN107944451B (zh) 一种藏文古籍文档的行切分方法及系统
Chamchong et al. Character segmentation from ancient palm leaf manuscripts in Thailand
CN113158977B (zh) 改进FANnet生成网络的图像字符编辑方法
CN111914838A (zh) 一种基于文本行识别的车牌识别方法
JP2010231686A (ja) 画像からの文書領域抽出装置、方法、及びプログラム
CN105117741A (zh) 一种书法字风格的识别方法
Tardón et al. Optical music recognition for scores written in white mensural notation
CN109409378A (zh) 一种纳西东巴经书的数字化处理方法
CN111340032A (zh) 一种基于金融领域应用场景的字符识别方法
CN110516673A (zh) 基于连通分量和回归式字切分的彝文古籍字符检测方法
Seuret et al. Gradient-domain degradations for improving historical documents images layout analysis
CN111626145A (zh) 一种简捷有效的残缺表格识别及跨页拼接方法
Ntzios et al. An old greek handwritten OCR system based on an efficient segmentation-free approach
CN118135584A (zh) 一种基于深度学习的手写表单自动识别方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200110

Termination date: 20210810