法律状态公告日
法律状态信息
法律状态
2015-12-23
授权
授权
2013-09-18
实质审查的生效 IPC(主分类):G06K9/20 申请日:20130426
实质审查的生效
2013-08-21
公开
公开
技术领域
本发明涉及图像处理、计算机视觉技术领域,具体涉及一种表格文档图像中字符提取方 法。
背景技术
表格是一种常见的信息表示形式,广域应用于人们的日常生活和工作中。目前大部分表 格文档的载体还是纸质文档,纸质文档的优点是保密性好,但难以进行信息的管理与分析, 随着信息技术的发展,利用计算机对大量的纸质文档信息进行数字化处理是现代社会发展的 必然趋势。
通过拍摄或扫描包含表格数据的图像,利用数字图像处理技术提取识别出表格中的信息 内容,是国内外对表格文档处理的主要研究方向。表格识别系统通常包括图像预处理,字符 提取,OCR字符识别等部分,其中对表格中的字符进行提取,是表格文档识别中最关键的步 骤之一。表格字符提取可采用的方法主要有两类,一类方法是结合表格的结构信息进行定位 提取,通过检测出表格图像中的多个定位特征,定位出整个表格在图像中的位置,然后根据 表格的结构信息推算出每个表格单元格的位置,进而从单元格中提取出字符。这种方法依赖 表格结构先验信息,因此缺乏通用性和灵活性。另一类方法无需先验信息,先通过边缘与直 线检测提取出表格框线,然后定位单元格,在单元格中通过字符切分提取出每个字符。
对于准确提取出表格字符,其难点在于字符笔画与表格线通常会发生重叠,使得提取出 的字符中包含多余的笔画,极大影响了后续的OCR识别效果。一般采用的方法是将字符中的 表格线去除,但是去除表格线的同时又会造成字符的笔画断裂或缺失,因此难以取得较好的 效果。针对这个问题,通常的解决方法是对表格线与笔画像素进行区分,在去除表格线的同 时保留字符笔画中的像素,但由于表格线与字符的灰度特征相近,因此区分往往比较困难。 还有一些方法先去除字符中的表格线,然后根据字符剩余笔画的结构特征,对缺失笔画进行 恢复,这种方法仅对于笔画较为单一,并且笔画缺失量较少的情况有效。
发明内容
本发明的目的在于提供一种表格文档图像中字符提取方法,解决目前对表格中字符的提 取方式通用性低、不灵活,识别度不高的问题。
一种表格文档图像中字符提取方法,包括以下步骤:
步骤一,将采集的彩色表格图像转化为灰度图像,对灰度图像进行高斯平滑,去除图像 中的噪声;
步骤二,利用边缘检测算子对图像进行卷积运算,再采用最大类间方差方法对图像进行 二值化处理,然后采用Hough算法检测出边缘上的直线段;
步骤三,将上一步得到的直线段按长度从大到小排序,选择最长的几个直线段,计算直 线段相对于水平方向的倾斜角度;对这些倾斜角度排序,取中值作为图像的倾斜角度,通过 旋转图像对其进行倾斜校正;
步骤四,在倾斜校正后的图像中,保留水平方向和垂直方向上的直线段,去除其他直线 段;计算不同直线段端点之间的距离,如果小于设定的阈值,则对直线段进行连接,获得表 格的单元格图像;
步骤五,针对每个单元格图像,分别采用最大类间方差方法进行图像分割,将单元格上 像素灰度值设为背景灰度,使得区域中仅保留字符;设置滑动窗口,通过从左到右对窗口进 行滑动搜索,分割出单元格中的每个字符;
步骤六,针对上一步骤中提取出的单个字符,如果该字符没有与单元格框线重叠,则直 接作为结果输出,否则根据字符与框线的重叠情况,对上述步骤中去除框线造成的笔画缺失 进行恢复。
更进一步的技术方案是,所述步骤二具体为:利用Sobel一阶微分算子,分别在水平和 垂直方向上对图像做平面卷积,获得水平和垂直方向上的灰度差分近似值,根据灰度差分值 建立边缘图像,采用Otsu算法计算边缘图像的分割阈值,将图像进行二值化处理,利用Hough 变换算法检测边缘图像中的直线段。
更进一步的技术方案是,所述步骤三具体是:计算上一步得到的每个线段两个端点间的 欧氏距离,获得线段的长度,根据线段长度对所有线段从大到小进行排序;令线段的总数为N, 根据排序结果选择最长的N/4条线段,计算这些线段相对于水平方向的倾斜角度;对这些角度 值进行排序,取排序后的第N/8个角度值作为图像的倾斜角度;根据倾斜角度对图像做旋转变 换,从而实现图像的倾斜校正。
更进一步的技术方案是,所述步骤四具体为:假定图像中表格是由水平和垂直方向上的 线段组成,根据上述步骤得到的线段及其倾斜角度,保留水平和垂直方向的线段,去除其他 直线段;然后对相邻线段进行连接,通过行扫描将处在同一行的水平直线段进行连接,再通 过列扫描,将处于同一列的垂直直线段进行连接,最后得到的封闭方格即为表格的单元格。
更进一步的技术方案是,所述线段及其倾斜角度有两个,取小的倾斜角度进行判断,若 小于5.0度或大于85.0度则保留该线段,否则去除该线段;所述对相邻线段进行连接是对图像 进行行扫描,对处于同一行的线段,计算相邻线段端点之间的距离,如果小于两个线段总长 的1/4,则连接这两个线段,再对图像进行列扫描,对处于同一列的线段,按照行扫描的方式 进行连接。
更进一步的技术方案是,所述步骤五具体为:首先将单元格框线上像素的灰度值设为背 景灰度值以消除框线,从而避免单元格中字符之间发生连接;从单元格中提取出整行字符, 建立字符行在垂直方向上的投影直方图;设置字符的搜索窗口,窗口的初始尺寸为单元格中 所有字符的平均尺寸,根据投影直方图,将搜索窗口从左向右进行滑动,同时调整窗口尺寸, 从窗口中分割出字符行中的每个字符。
更进一步的技术方案是,所述将单元格框线上像素的灰度值设为背景灰度值以消除框 线:是通过Otsu算法计算分割阈值,将大于该阈值的像素灰度值设为255,小于该阈值的像素 灰度值设为0,分割出单元格框线和单元格中的字符行,将单元格框线上的像素灰度值设为255 以去除框线,使图像中仅保留字符作为前景;所述设置字符的搜索窗口,窗口的初始尺寸为 单元格中所有字符的平均尺寸具体是:设置矩形窗口以切分出单个字符,窗口的初始位置为 字符行的最左端,窗口的初始尺寸为单个字符尺寸的估计值,估计值的获取方法为:先对图 像进行形态学膨胀处理,然后通过连通体分析方法,把整行字符划分为多个连通体,计算所 有连通体的平均高度,将其作为窗口的初始高度,将所有连通体按照宽度排序,取中值作为 窗口的初始宽度;所述将搜索窗口从左向右进行滑动,同时调整窗口尺寸,从窗口中分割出 字符行中的每个字符具体是:从左至右滑动窗口,同时不断调整窗口宽度,使窗口包含完整 的单个字符,从窗口中提取出单个字符,然后将窗口滑动至下一个字符的起始处,再调整窗 口宽度,进而提取下一个字符,以此方式提取出所有的单个字符。
更进一步的技术方案是,所述步骤六中去除框线造成的笔画缺失进行恢复的方法为:根 据上述步骤中分割出的单个字符的位置信息,从消除框线前的图像中提取出包含该字符的图 像区域,定位出单元格框线与字符笔画的交点,利用这些交点将字符区域内的框线划分为多 个线段,依次判定每个线段是否属于字符笔画,将不属于字符笔画的线段消除,其中判定规 则为如果该线段的宽度分布均匀,并且与整个框线的平均宽度相近,则该线段不属于字符笔 画,否则属于字符笔画。
更进一步的技术方案是,所述如果该线段的宽度分布均匀,并且与整个框线的平均宽度 相近,则该线段不属于字符笔画,否则属于字符笔画具体是:对每个框线线段,统计该线段 中每一点处的粗细像素数,计算粗细像素数的均值和方差,若均值与整个框线均值之间的距 离小于3个像素,并且方差小于5个像素,则认为该线段未与字符重叠,直接去除,否则认为 该线段与字符发生重叠,保留在字符中。
更进一步的技术方案是,所述步骤一中的灰度图像为256级。
与现有技术相比,本发明的有益效果是:
(1)本发明通过自动检测表格单元格来定位字符区域,因此不依赖表格的先验知识, 具有较好的灵活性;
(2)提出了一种基于滑动窗口的字符切分方法,利用字符投影直方图特征搜索最优字 符边界,能够有效处理字符间的粘连问题;
(3)针对字符笔画与表格线重叠的情况,利用线段统计特征区分表格线与字符笔画, 从而大大减少粘连和重叠问题对OCR字符识别的影响。
附图说明
图1为本发明一种表格文档图像中字符提取方法的流程示意图。
图2为本发明一种表格文档图像中字符提取方法一个实施例中去除字符行中的单元格框 线后的效果图。
图3为本发明一种表格文档图像中字符提取方法一个实施例中建立字符行投影直方图的 效果图。
图4为本发明一种表格文档图像中字符提取方法一个实施例中字符切分流程示意图。
图5为本发明一种表格文档图像中字符提取方法一个实施例中字符缺失笔画恢复流程示 意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发 明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用 于限定本发明。
图1示出了本发明一种表格文档图像中字符提取方法的一个实施例:一种表格文档图像 中字符提取方法,包括以下步骤:
步骤一,将采集的彩色表格图像转化为灰度图像,对灰度图像进行高斯平滑,去除图像 中的噪声,所述灰度图像最佳可选256级;
步骤二,利用边缘检测算子对图像进行卷积运算,再采用最大类间方差方法对图像进行 二值化处理,然后采用Hough算法检测出边缘上的直线段;
步骤三,将上一步得到的直线段按长度从大到小排序,选择最长的几个直线段,计算直 线段相对于水平方向的倾斜角度;对这些倾斜角度排序,取中值作为图像的倾斜角度,通过 旋转图像对其进行倾斜校正;
步骤四,在倾斜校正后的图像中,保留水平方向和垂直方向上的直线段,去除其他直线 段;计算不同直线段端点之间的距离,如果小于设定的阈值,则对直线段进行连接,获得表 格的单元格图像;
步骤五,针对每个单元格图像,分别采用最大类间方差方法进行图像分割,将单元格上 像素灰度值设为背景灰度,使得区域中仅保留字符;设置滑动窗口,通过从左到右对窗口进 行滑动搜索,分割出单元格中的每个字符;
步骤六,针对上一步骤中提取出的单个字符,如果该字符没有与单元格框线重叠,则直 接作为结果输出,否则根据字符与框线的重叠情况,对上述步骤中去除框线造成的笔画缺失 进行恢复。
根据本发明一种表格文档图像中字符提取方法的一个优选实施例,所述步骤二具体为: 利用Sobel一阶微分算子,分别在水平和垂直方向上对图像做平面卷积,获得水平和垂直方 向上的灰度差分近似值,根据灰度差分值建立边缘图像,采用Otsu算法计算边缘图像的分割 阈值,将图像进行二值化处理,利用Hough变换算法检测边缘图像中的直线段。根据本发明 一种表格文档图像中字符提取方法的另一个优选实施例,步骤二具体为:1,Sobel算子包含 两个3*3的矩阵,一个是用于检测垂直梯度的Sx,另一个是用于检测水平梯度的Sy,分别用 Sx,Sy与图像进行卷积,获得图像在垂直和水平方向上的梯度值,然后通过求模获得梯度图 像;2,利用Otsu算法计算梯度图像的分割阈值,将梯度图像中大于该阈值的像素灰度值设 为255,小于该阈值的像素灰度值设为0,从而分割出图像边缘;3,采用Hough变换算法检 测出边缘中的直线段。
根据本发明一种表格文档图像中字符提取方法的另一个优选实施例,所述步骤三具体 是:计算上一步得到的每个线段两个端点间的欧氏距离,获得线段的长度,根据线段长度对 所有线段从大到小进行排序;令线段的总数为N,根据排序结果选择最长的N/4条线段,计算 这些线段相对于水平方向的倾斜角度;对这些角度值进行排序,取排序后的第N/8个角度值作 为图像的倾斜角度;根据倾斜角度对图像做旋转变换,从而实现图像的倾斜校正。
根据本发明一种表格文档图像中字符提取方法的另一个优选实施例,所述步骤四具体 为:假定图像中表格是由水平和垂直方向上的线段组成,根据上述步骤得到的线段及其倾斜 角度,保留水平和垂直方向的线段,去除其他直线段;然后对相邻线段进行连接,通过行扫 描将处在同一行的水平直线段进行连接,再通过列扫描,将处于同一列的垂直直线段进行连 接,最后得到的封闭方格即为表格的单元格。
根据本发明一种表格文档图像中字符提取方法的另一个优选实施例,所述线段及其倾斜 角度有两个,取小的倾斜角度进行判断,若小于5.0度或大于85.0度则保留该线段,否则去除 该线段;所述对相邻线段进行连接是对图像进行行扫描,对处于同一行的线段,计算相邻线 段端点之间的距离,如果小于两个线段总长的1/4,则连接这两个线段,再对图像进行列扫描, 对处于同一列的线段,按照行扫描的方式进行连接。例如可以在计算倾斜校正后线段与水平 方向的倾斜角,设为A1,和A2(A2=180-A1),取小的倾斜角度进行判断,若小于5.0度或大 于85.0度则保留该线段,否则去除该线段。
根据本发明一种表格文档图像中字符提取方法的另一个优选实施例,所述步骤五具体 为:首先将单元格框线上像素的灰度值设为背景灰度值以消除框线,从而避免单元格中字符 之间发生连接;从单元格中提取出整行字符,建立字符行在垂直方向上的投影直方图;设置 字符的搜索窗口,窗口的初始尺寸为单元格中所有字符的平均尺寸,根据投影直方图,将搜 索窗口从左向右进行滑动,同时调整窗口尺寸,从窗口中分割出字符行中的每个字符。
根据本发明一种表格文档图像中字符提取方法的另一个优选实施例,所述将单元格框线 上像素的灰度值设为背景灰度值以消除框线:是通过Otsu算法计算分割阈值,将大于该阈值 的像素灰度值设为255,小于该阈值的像素灰度值设为0,分割出单元格框线和单元格中的字 符行,将单元格框线上的像素灰度值设为255以去除框线,使图像中仅保留字符作为前景,如 图2去除字符行中的单元格框线后的效果图所示,其中(a)为含有框线的字符,(b)为去除 框线的字符;所述设置字符的搜索窗口,窗口的初始尺寸为单元格中所有字符的平均尺寸具 体是:设置矩形窗口以切分出单个字符,窗口的初始位置为字符行的最左端,窗口的初始尺 寸为单个字符尺寸的估计值,估计值的获取方法为:先对图像进行形态学膨胀处理,然后通 过连通体分析方法,把整行字符划分为多个连通体,计算所有连通体的平均高度,将其作为 窗口的初始高度,将所有连通体按照宽度排序,取中值作为窗口的初始宽度;所述将搜索窗 口从左向右进行滑动,同时调整窗口尺寸,从窗口中分割出字符行中的每个字符具体是:从 左至右滑动窗口,同时不断调整窗口宽度(可以假定所有字符的高度相同),使窗口包含完 整的单个字符,从窗口中提取出单个字符,然后将窗口滑动至下一个字符的起始处,再调整 窗口宽度,进而提取下一个字符,以此方式提取出所有的单个字符。调整窗口宽度的方法为: 建立整行字符在垂直方向上的投影直方图(如图3所示),然后以窗口右边界为中心,窗口宽 度的1/3为半径,在此区间范围(如图4中2r)内找出投影直方图中的最小值,将窗口右边界 置于最小投影值对应的位置处。
根据本发明一种表格文档图像中字符提取方法的另一个优选实施例,所述步骤六中去除 框线造成的笔画缺失进行恢复的方法为:根据上述步骤中分割出的单个字符的位置信息,从 消除框线前的图像中提取出包含该字符的图像区域,该图像区域可以包含单个字符以及与之 重叠的框线,定位出单元格框线与字符笔画的交点,利用这些交点将字符区域内的框线划分 为多个线段,如图5中(a)所示,依次判定每个线段是否属于字符笔画,将不属于字符笔画 的线段消除,其中判定规则为如果该线段的宽度分布均匀,并且与整个框线的平均宽度相近, 则该线段不属于字符笔画,否则属于字符笔画,图5中(b)所示。
根据本发明一种表格文档图像中字符提取方法的另一个优选实施例,所述如果该线段的 宽度分布均匀,并且与整个框线的平均宽度相近,则该线段不属于字符笔画,否则属于字符 笔画具体是:对每个框线线段,统计该线段中每一点处的粗细像素数,计算粗细像素数的均 值和方差,若均值与整个框线均值之间的距离小于3个像素,并且方差小于5个像素,则认为 该线段未与字符重叠,直接去除,否则认为该线段与字符发生重叠,保留在字符中。
机译: 用于处理包含文本区域的灰度文档图像的方法,用于对灰度文档图像的至少文本区域进行二值化的方法,表格提取方法和在灰度文档图像中形成网格的程序
机译: 如何在保护字符笔划的同时删除文档图像中的下划线和表格行
机译: 去除文档图像中的下划线和表格线,同时保留相交的字符笔划