1.一种表格干扰线去除算法,其特征是该方法包括下述步骤:
(1)二值化处理;
对文档灰度图像i进行局部自适应二值化处理,以去除图像i中的背景噪声干扰,同时将有效的表格线段以及文字信息提取出来,得到第一二值图像ib1;
(2)腐蚀、膨胀操作;
设置一个大小为nvertical×nhorizontal的横向腐蚀及膨胀参数矩阵ghorizontal,nvertical、nhorizontal分别表示矩阵的行数和列数,1≤nvertical<nhorizontal≤k×w,0<k<1,w表示图像的宽度,k表示缩放系数;利用该矩阵对第一二值图像ib1进行横向腐蚀操作,得到第二二值图像ib2;再对第二二值图像ib2进行横向膨胀操作,得到第三二值图像ib3;
设置一个大小为mvertica×lmhorizont的纵向腐蚀及膨胀参数矩阵gvertica,mvertical、mhorizontal分别表示矩阵的行数和列数,1≤mhorizontal<mvertical≤k×w,0<k<1,w表示图像的宽度,k表示缩放系数;利用该矩阵对第一二值图像ib1分别进行纵向腐蚀操作,得到第四二值图像ib4;再对第四二值图像ib4进行纵向膨胀操作,得到第五二值图像ib5;
(3)直线检测;
对第三二值图像ib3进行直线检测,得到第六二值图像ib6,对第五二值图像ib5进行直线检测,得到第七二值图像ib7;将第六二值图像ib6和第七二值图像ib7中的线段进行合并,得到第八二值图像ib8;
(4)干扰线检测;
根据以下三种干扰线特征判断第八二值图像ib8中的每一条横向线段hi是否属于干扰线,其中,i=1,…,m,m是第八二值图像ib8中横向线段的数目:
a)横向线段hi端点衔接处发生断裂;
b)横向线段hi的长度与第八二值图像ib8中所有横向线段的平均长度的偏差较大;
c)横向线段hi的倾斜角度与第八二值图像ib8中所有横向线段的平均倾斜角度偏差较大;
当横向线段hi满足上述两种及以上特征时,则认为横向线段hi为干扰线;
根据以下三种干扰线特征判断第八二值图像ib8中的每一条纵向线段gj是否属于干扰线,其中,j=1,…,n,n是第八二值图像ib8中纵向线段的数目:
a)纵向线段gj端点衔接处发生断裂;
b)纵向线段gj的长度与第八二值图像ib8中所有纵向线段的平均长度的偏差较大;
c)纵向线段gj的倾斜角度与第八二值图像ib8中所有纵向线段的平均倾斜角度偏差较大;
当纵向线段gj满足上述两种及以上特征时,则认为纵向线段gj为干扰线;
(5)干扰线去除;将第八二值图像ib8中的干扰线去除,得到表格结构线段结果图像ir。
2.根据权利要求1所述的一种表格干扰线去除算法,其特征是:所述步骤(1)中局部自适应二值化处理的方法是:
对于文档灰度图像i中位置为(x,y)的像素,以其为中心选取宽为p、高为q的区域块d,2<p≤w,2<q≤h,w和h分别是文档灰度图像i的宽和高;对区域d中所有像素依据其与(x,y)位置像素的距离进行高斯加权和计算,得到(x,y)位置像素的二值化阈值td:
其中,id(u,v)表示区域块d中(u,v)位置像素的灰度值,fd(u,v)表示区域块d中(u,v)位置像素对应的权重,权重fd(u,v)通过以下公式计算:
对于文档灰度图像i中位置为(x,y)的像素,其二值化之后的值b(x,y)按以下公式计算:
其中,i(x,y)表示文档灰度图像i中(x,y)位置像素的灰度值,td(x,y)表示文档灰度图像i中(x,y)位置像素对应的二值化阈值。
3.根据权利要求1所述的一种表格干扰线去除算法,其特征是:所述步骤(2)中对第一二值图像ib1进行横向腐蚀操作的具体方法是:
对于第一二值图像ib1中的每一个像素p,将矩阵ghorizontal的中心点对准像素p,并计算矩阵ghorizontal所覆盖的所有像素中的最小值,将其作为像素p的像素值。
4.根据权利要求1所述的一种表格干扰线去除算法,其特征是:所述步骤(2)中对第二二值图像ib2进行横向膨胀的具体方法是:
对于第二二值图像ib2中的每一个像素p,将矩阵ghorizontal的中心点对准像素p,并计算矩阵ghorizontal所覆盖的所有像素中的最大值,将其作为像素p的像素值。
5.根据权利要求1所述的一种表格干扰线去除算法,其特征是:所述步骤(2)中对第一二值图像ib1进行纵向腐蚀操作的具体方法是:
对于第一二值图像ib1中的每一个像素p,将矩阵gvertical的中心点对准像素p,并计算矩阵gvertical所覆盖的所有像素中的最小值,将其作为像素p的像素值。
6.根据权利要求1所述的一种表格干扰线去除算法,其特征是:所述步骤(2)中对第四二值图像ib4进行纵向膨胀的具体方法是:
对于第四二值图像ib4中的每一个像素p,将矩阵gvertical的中心点对准像素p,并计算矩阵gvertical所覆盖的所有像素中的最大值,将其作为像素p的像素值。
7.根据权利要求1所述的一种表格干扰线去除算法,其特征是:所述步骤(4)中根据三种干扰线特征判断第八二值图像ib8中的每一条横向线段hi是否属于干扰线的计算方法如下:
第一步:判断横向线段hi端点衔接处是否断裂的具体算法是:
(1)对于第八二值图像ib8中的每一条纵向线段gj,j=1,…,n,n是第八二值图像ib8中纵向线段的数目,过横向线段hi的左端点和右端点分别作其到纵向线段gj的垂线,当这两条垂线与纵向线段gj的交点均在线段gj内部时,计算横向线段hi的左端点到纵向线段gj的距离di,j,1及横向线段hi的右端点到纵向线段gj的距离di,j,2;
(2)对于横向线段hi,计算所有di,j,1中的最小值mindi,1和所有di,j,2中的最小值mindi,2,计算公式如下:
mindi,1=min(di,1,1,…,di,n,1)(4)
mindi,2=min(di,1,2,…,di,n,2)(5)
(3)当最小距离值mindi,1、mindi,2中的最大值大于给定阈值tlh时,即
max(mindi,1,mindi,2)>tlh(6)
则认为横向线段hi属于疑似干扰线;
第二步,判断横向线段hi长度与第八二值图像ib8中所有横向线段平均长度的偏差是否较大的算法是:
(1)对于第八二值图像ib8中的每一条横向线段hk,k=1,…,m,m是第八二值图像ib8中横向线段的数目,计算其线段长度
其中,
(2)计算第八二值图像ib8中所有横向线段长度的平均长度lah,计算公式如下:
(3)对于横向线段hi,计算其长度
则认为横向线段hi属于疑似干扰线;
第三步,判断横向线段hi的倾斜角度与第八二值图像ib8中所有横向线段长度的平均倾斜角度的偏差是否较大的算法是:
(1)对于第八二值图像ib8中的每一条横向线段hk,k=1,…,m,m是第八二值图像ib8中横向线段的数目,计算其倾斜角度
其中,arctan为反正切函数,
(2)计算第八二值图像ib8中所有横向线段的平均倾斜角度θah,计算公式如下:
(3)对于横向线段hi,计算其倾斜角度
则认为横向线段hi属于疑似干扰线。
8.根据权利要求1所述的一种表格干扰线去除算法,其特征是:所述步骤(4)中根据三种干扰线特征判断第八二值图像ib8中的每一条纵向线段gj是否属于干扰线的计算方法如下:
第一步,判断纵向线段gj端点衔接处是否断裂的具体算法是:
(1)对于第八二值图像ib8中的每一条横向线段hi,i=1,…,m,m是第八二值图像ib8中横向线段的数目,过纵向线段gj的左端点和右端点分别作其到横向线段hi的垂线,当这两条垂线与横向线段hi的交点均在横向线段hi内部时,计算纵向线段gj的左端点到横向线段hi的距离rj,i,1及纵向线段gj的右端点到横向线段hi的距离rj,i,2;
(2)对于纵向线段gj,计算所有rj,i,1中的最小值minrj,1和所有rj,i,2中的最小值minrj,2,计算公式如下:
minrj,1=min(rj,1,1,…,ri,m,1)(13)
minrj,2=min(rj,1,2,…,rj,m,2)(14)
(3)当最小距离值minrj,1、minrj,1中的最大值大于给定阈值tlv时,即
max(minrj,1,minrj,2)>tlv(15)
则认为纵向线段gj属于疑似干扰线;
第二步,判断纵向线段gj长度与第八二值图像ib8中所有纵向线段平均长度的偏差是否较大的算法如下:
(1)对于第八二值图像ib8中的每一条纵向线段gk,k=1,…,n,n是第八二值图像ib8中纵向线段的数目,计算其线段长度
其中,
(2)计算第八二值图像ib8中所有纵向线段长度的平均长度lav,计算公式如下:
(3)对于纵向线段gj,计算其长度
则认为纵向线段gj属于疑似干扰线;
第三步,判断纵向线段gj的倾斜角度与第八二值图像ib8中所有横向线段长度的平均倾斜角度的偏差是否较大的算法如下:
(1)对于第八二值图像ib8中的每一条纵向线段gk,k=1,…,n,n是第八二值图像ib8中纵向线段的数目,计算其倾斜角度
其中,arctan为反正切函数,
(2)计算第八二值图像ib8中所有纵向线段的平均倾斜角度θav,计算公式如下:
(3)对于纵向线段gj,计算其倾斜角度
则认为纵向线段gj属于疑似干扰线。