自然拍照条件下基于MSER的图像表格的检测方法与流程

文档序号:29078701发布日期:2022-03-01 23:27阅读:148来源:国知局
自然拍照条件下基于mser的图像表格的检测方法
技术领域
:1.本发明涉及图像处理与光学字符识别(ocr)领域,尤其涉及一种自然拍照条件下基于mser的图像表格的检测方法。
背景技术
::2.表格作为一种信息的结构化组织方式,具有高度精炼、简明、规范等特点,常用于数据记录统计、实验结果分析等。目前很多表格文档都是以图片的形式提供,将图片形式的表格信息还原成数字资料是进一步处理和数据分析的基础。3.表格图像的获取设备主要包括描仪、高拍仪专用设备和手持式移动终端设备。由于移动终端设备的普及便捷性优点,人们更倾向于使用移动终端随时实现表格图像的获取和表格内容的识别。受光照不均衡、拍照角度等的影响,自然条件下采用移动终端设备拍摄的表格图像存在阴影、对比度低、表格图像畸变等问题,使自然条件下拍摄图像的表格识别比采用专用设备获取图像的表格识别更加困难。4.其中retinex图像增强算法基于“视网膜(retina)-大脑皮层(cortex)理论”,基本原理就是根据图像的照度-反射模型,从原始图像中估计光照分量,然后设法消除(或降低)光照分量,获得物体的反射分量,从而得到物体的本来面貌。照度-反射模型将自然景物图像f(x,y)表示为光源照度场函数i(x,y)和场景中物体反射场函数r(x,y)的乘积:5.f(x,y)=i(x,y)·r(x,y);6.采用中心环绕retinex算法,光照分量i(x,y)的估计值i’(x,y)可表示为7.i′(x,y)=f(x,y)*f(x,y);8.其中“*”为卷积运算,f(x,y)为中心环绕函数[0009][0010]其中k为归一化因子。[0011]将光照分量估计值i’(x,y)代替i(x,y),带入f(x,y)=i(x,y)·r(x,y),可以获得消除光照分量影响后的retinex增强输出图像[0012]r(x,y)=ln[f(x,y)]-ln[f(x,y)*f(x,y)];[0013]最大稳定极值区域(maximallystableextremaregion,mser)算法由matas等人于2004年提出,mser算法首先对图像进行二值化,二值化阈值取区间[0,255]内的256个不同阈值,二值化图像经历一个从全白到全黑的过程。令r(i)表示阈值为i时二值化图像中某一连通区域,阈值由i变为i+δ时,连通区域变为r(i+δ),[0014][0015]其中|r(i)|表示区域r(i)的面积,|r(i+△)-r(i)|表示当i变为i+△时,连通区域变化的面积。当q(i)为局部极小值时,表示该区域在一定的灰度阈值变化范围内,所得二值化图像的连通区域面积变化最小,此时r(i)被称为为最大稳定极值区域。[0016]而mser算法能很好地适应各种复杂的光照环境,是一种常用于为自然图像中稳定特征区域提取的经典算法,如字符检测、车牌检测和交通标志检测等。技术实现要素:[0017]本发明要解决的技术问题是提供一种基于mser算法的自然拍照条件下图像中表格的检测方法,旨在解决对手机等移动终端拍摄的图像预处理效果不理想、表格检测与识别鲁棒性的问题。[0018]为解决上述问题,本发明采用的技术方案为:该自然拍照条件下基于mser的图像表格的检测方法,包括以下步骤:[0019]s1:将采集的图像转换为灰度图像,采用retinex图像增强算法消除图像中光照不均衡的影响,获得灰度图像r(x,y);[0020]s2:采用图像伽马变换,对所述步骤s1中获得的灰度图像r(x,y)进行对比度增强处理,得到增强处理后的图像h(x,y);[0021]s3:采用图像形态学处理方法和连通域分析法提取灰度图像h(x,y)中的文字区域,计算图像中字符的高度平均值;[0022]s4:采用最大稳定极值区域mser算法检测灰度图像h(x,y)中的整体表格区域,根据所述步骤s3中获得的图像h(x,y)中字符的高度平均值确定mser算法的最小检测面积,从而获得整体表格区域轮廓;[0023]s5:利用所述步骤s4中的整体表格区域轮廓的最小外接矩形和外接矩形计算透视变换矩阵,对图像进行矫正操作,计算各矫正后表格区域在图像中的坐标值;[0024]s6:采用最大稳定极值区域mser算法检测图像畸变校正后各表格单元,对各表格单元进行行和列的归并,确定表格单元格的行坐标和列坐标。[0025]采用上述技术方案,利用基于视网膜大脑皮层理论的retinex图像增强算法和图像伽马变换对自然拍照条件下拍摄的图像进行图像增强;使用形态学和连通域分析法提取图像中的文字区域,获得图像中字符的平均高度参数;使用区域检测mser方法检测图像中的整体表格区域,最大稳定极值区域mser算法的最小检测面积根据字符高度均值确定。利用整体表格区域轮廓的最小外接矩形和外接矩形计算透视变换矩阵,对图像进行畸变校正操作。检测校正后各表格单元,对各表格单元进行行和列的归并,确定表格单元格的行坐标和列坐标;该方法对各种条件下拍摄的图像具有良好的鲁棒性,可以用图像中表格的自动检测和识别,具有很好的实用性。[0026]作为本发明的优先技术方案,所述步骤s2中采用图像伽马变换对灰度图像r(x,y)进行图像增强处理的具体步骤包括:[0027]s21:对灰度图像r(x,y)进行直方图统计分析,得到直方图峰值对应的灰度级记为maxval,灰度图像r(x,y)的最小灰度级记为minval;[0028]s22:对灰度图像r(x,y)中的像素r(x,y)进行灰度变换至h(x,y),得到增强图像h(x,y),其中变换公式为:[0029][0030]作为本发明的优先技术方案,所述步骤s3中采用形态学方法和连通域分析法提取图像中的文字区域,计算图像中字符的平均高度值,具体的步为:[0031]s31:利用大津(ostu)算法获得增强后灰度图像h(x,y)的二值化阈值,通过获得二值化阈值将灰度图像h(x,y)转化为二值图像,并对所述二值图像进行反转,即将二值图像进行幅值反转,得到背景为0,表格和字符为1的二值图像b(x,y);再对二值图像b(x,y)进行闭运算,闭运算核的大小可选5×5或7×7;[0032]s32:采用图像连通域提取方法提取二值图像中的连通区域,计算各连通区域的宽w和高h;根据图像中的文字相对于图像的尺度大小(宽w、高h)设置阈值,设置阈值tw=w/10、th=h/20;滤除w》tw或h》th的连通区域,获得符合条件的连通区域高度;[0033]s33:计算所有符合条件连通区域的高度平均值,所述高度平均值作为图像中字符的平均高度值h_char。[0034]作为本发明的优先技术方案,所述步骤s4中采用区域检测mser方法检测图像中的整体表格区域,具体步骤为:[0035]s41:设置mser对象初始化的各参数,其中:[0036]_min_area为mser算法检测的最小表格面积,该值根据步骤s3中获得的图像中的字符高度平均值h_char确定,设置_min_area=k1×h_char×h_char,表示待检测表格的最小面积应大于图像中字符平均面积的k1倍;k1的取值范围为50~300;[0037]_max_area为mser算法检测的最大表格面积,该值根据待检测表格面积占图像面积的最大比值k2确定,设置为_max_area=k2×w×h,其中w、h分别为图像的宽度和高度,0《k2《1;[0038]s42:利用mser算法获得图像中各区域的轮廓坐标值[cent1,cent2,…,centn]和各轮廓对应的外接矩形坐标值[box1,box2,…,boxn];[0039]s43:对所述步骤s42中获得的轮廓的所有外接矩形采用非极大值抑制(nms)算法,滤除整体表格轮廓外接矩形内的所有内接矩形,得到图像中表格的整体轮廓contour_table。[0040]作为本发明的优先技术方案,所述步骤s5中具体步骤为:[0041]s51:求得表格轮廓contour_table的最小外接矩形rectminbox和外接矩形rectbox,对应的四个角点分别为[srcpoint1,srcpoint2,srcpoint3,srcpoint4]和最小外接矩形的四个角点[dstpoint1,dstpoint2,dstpoint3,dstpoint4];[0042]s52:[srcpoint1,srcpoint2,srcpoint3,srcpoint4]和[dstpoint1,dstpoint2,dstpoint3,dstpoint4]构成具有透视映射关系的4个点对,将所述4个对点的坐标代入透视变换公式中,求得图像的透视变换系数矩阵m,[0043][0044]s53:利用透视变换矩阵m实现对图像h(x,y)的畸变校正,矫正后图像i(x,y)中像素坐标点(x,y)与原图像中对应坐标点(x,y)的映射关系为:[0045][0046][0047]作为本发明的优先技术方案,所述步骤s6的具体步骤为:[0048]s61:采用mser算法检测畸变矫正后图像i(x,y)的各表格单元;[0049]s611:设置mser算法各参数,其中:[0050]_min_area:mser检测的表格最小单元格面积,设置为k3×h_char×h_char,表示待检测表格单元格的最小面积应大于图像中字符平均面积的k3倍;k3的取值为5~10;[0051]_max_area:mser检测的表格最大单元格面积,设置为k4×h_char×h_char,表示待检测表格单元格的最大面积应小于图像中字符平均面积的k4倍;k4的取值为100~200;[0052]s612:采用mser算法获得图像中各区域的轮廓坐标值和各轮廓对应的外接矩形;[0053]s613:对轮廓的所有外接矩形采用非极大值抑制(nms)算法,滤除表格单元格轮廓外接矩形内的所有内接矩形,得到图像中表格的n个单元格轮廓的外接矩形,外接矩形的左上角点为[top_left_x_i,top_left_y_i],i=1,2,…,n;[0054]s62:设序列[label_x_1,,…,label_x_n]为表格各单元格的列标志,设置label_x_1=1;对外接矩形左上角点的纵坐标top_left_x_i(i=1,2,…,n)进行由小到大排序,得到序列top_left_sort_x_i(i=1,2,…,n),计算该排序后序列前后点i+1,i的差值delt_x_i+1,公式为:[0055]delt_x_i+1=top_left_sort_x_i+1-top_left_sort_x_i;[0056]若delt_x_i+1》h_char,i+1单元格的列坐标label_x_i+1=label_x_i+1,否则label_x_i+1=label_x_i;进行迭代计算,可获得表格各单元格的列标志[label_x_1,,…,label_x_n];[0057]s63:设序列[label_y_1,,…,label_y_n]为表格各单元格的行标志,设置label_y_1=1;对外接矩形左上角点的纵坐标top_left_y_i(i=1,2,…,n)进行由小到大排序,得到序列top_left_sort_y_i(i=1,2,…,n),计算delt_y_i+1公式为:[0058]delt_y_i+1=top_left_sort_y_i+1-top_left_sort_y_i;[0059]若delt_y_i+1》h_char,i+1单元格的行坐标label_y_i+1=label_y_i+1,否则label_y_i+1=label_y_i;进行迭代计算,可获得表格各单元格的行标志[label_y_1,,…,label_y_n]。[0060]作为本发明的优先技术方案,所述步骤s1中利用retinex图像增强算法对自然拍照条件下拍摄的图像进行处理,消除图像中光照分量分布不均匀对后续表格结构提取和ocr识别性能的影响;具体步骤为:将移动终端采集的表格图像由rgb空间转化为灰度空间,得到灰度图像;再采用单尺度retinex算法对灰度图像进行增强处理,消除光照不均衡对算法整体性能的影响。[0061]作为本发明的优先技术方案,所述步骤s1中采用单尺度retinex算法对灰度图像进行增强处理的具体步骤为:[0062]s11:采用大尺度高斯模糊计算灰度图像在像素点(x,y)处的光照分量估计值i’(x,y),高斯核模板尺寸为size×size,size的公式为:[0063][0064]其中h、w为灰度图像的高和宽,k的取值为9~13;[0065]s12:对灰度图像在像素点(x,y)处的灰度值为f(x,y)取对数ln[f(x,y)];[0066]s13:在对数域中,用f(x,y)减去光照分量i’(x,y),获得灰度图像的高频反射分量r(x,y),r(x,y)即为灰度图像的单尺度retinex输出图像r(x,y);公式为:r(x,y)=ln[f(x,y)]-ln[i′(x,y)]。通常的高斯尺度(size)的取值为5、7、9等,该技术方案中的大尺度高斯中的尺度(size)取值为90~150。[0067]作为本发明的优先技术方案,所述步骤s22中对灰度图像r(x,y)中的像素r(x,y)进行灰度变换至h(x,y)的具体步骤为:[0068]s221:将图像r(x,y)的灰度动态范围由0~255压缩为minval~maxval;[0069][0070]s222:将灰度值r’(x,y)归一化为0~1,对归一化图像进行伽马变换,伽马系数γ=3,再将伽马变换后的归一化图像映射为0~255整型,获得h(x,y);其中映射公式为:[0071]h(x,y)=int(255*[(r′(x,y)-minval)/(maxval-minval)]γ)。[0072]与现有技术相比,本发明技术方案具有的有益效果是:该自然拍照条件下基于mser的图像表格的检测方法利用基于视网膜大脑皮层理论的retinex图像增强算法和图像伽马变换对自然拍照条件下拍摄的图像进行图像增强;使用形态学和连通域分析法提取图像中的文字区域,获得图像中字符的平均高度参数;使用mser算法检测图像中的整体表格区域,mser算法的最小检测面积根据字符高度均值确定。利用整体表格区域轮廓的最小外接矩形和外接矩形计算透视变换矩阵,对图像进行畸变校正操作;检测校正后各表格单元,对各表格单元进行行和列的归并,确定表格单元格的行坐标和列坐标;本发明对各种条件下拍摄的图像具有良好的鲁棒性,可以用图像中表格的自动检测和识别,具有很好的实用性。附图说明[0073]下面结合附图进一步描述本发明的技术方案:[0074]图1为本发明的自然拍照条件下基于mser的图像表格的检测方法的流程图;[0075]图2为本发明的自然拍照条件下基于mser的图像表格的检测方法的在自然光照条件下手持式移动终端拍摄的待识别表格原始图像;[0076]图3为本发明的自然拍照条件下基于mser的图像表格的检测方法中经retinex处理和伽马变换后的增强图像;[0077]图4为本发明的自然拍照条件下基于mser的图像表格的检测方法中采用mser算法检测得到图像中表格的最小外接矩形和外接矩形;[0078]图5为本发明的自然拍照条件下基于mser的图像表格的检测方法中经透视变换后的表格图像;[0079]图6为本发明的自然拍照条件下基于mser的图像表格的检测方法中采用mser算法检测得到图像中待识别表格的各表格单元格。具体实施方式[0080]下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0081]实施例:如图1所示,该自然拍照条件下基于mser的图像表格的检测方法,包括以下步骤:[0082]s1:将采集的图像转换为灰度图像,采用retinex图像增强算法消除图像中光照不均衡的影响,获得灰度图像r(x,y);具体步骤为:将移动终端采集的表格图像由rgb空间转化为灰度空间,得到灰度图像,如图2所示;再采用单尺度retinex算法对灰度图像进行增强处理,消除光照不均衡对算法整体性能的影响;[0083]其中采用单尺度retinex算法对灰度图像进行增强处理的具体步骤为:[0084]s11:采用大尺度高斯模糊计算灰度图像在像素点(x,y)处的光照分量估计值i’(x,y),高斯核模板尺寸为size×size,size的公式为:[0085][0086]其中h、w为灰度图像的高和宽,k的取值为9~13;[0087]s12:对灰度图像在像素点(x,y)处的灰度值为f(x,y)取对数ln[f(x,y)];[0088]s13:在对数域中,用f(x,y)减去光照分量i’(x,y),获得灰度图像的高频反射分量r(x,y),r(x,y)即为灰度图像的单尺度retinex输出图像r(x,y);公式为:[0089]r(x,y)=ln[f(x,y)]-ln[i′(x,y)];[0090]s2:采用图像伽马变换,对retinex算法输出的灰度图像r(x,y)进行对比度增强处理,得到增强处理后的灰度图像h(x,y);[0091]所述步骤s2中采用图像伽马变换对灰度图像r(x,y)进行图像增强处理的具体步骤包括:[0092]s21:对灰度图像r(x,y)进行直方图统计分析,得到直方图峰值对应的灰度级记为maxval,灰度图像r(x,y)的最小灰度级记为minval;[0093]s22:对灰度图像r(x,y)中的像素r(x,y)进行灰度变换至h(x,y),得到增强图像h(x,y),其中变换公式为:[0094][0095]所述步骤s22中对灰度图像r(x,y)中的像素r(x,y)进行灰度变换至h(x,y)的具体步骤为:[0096]s221:将图像r(x,y)的灰度动态范围由0~255压缩为minval~maxval;[0097][0098]s222:将灰度值r’(x,y)归一化为0~1,对归一化图像进行伽马变换,伽马系数γ=3,再将伽马变换后的归一化图像映射为0~255整型,获得h(x,y);其中映射公式为:[0099]h(x,y)=int(255*[(r′(x,y)-minval)/(maxval-minval)]γ);图3为经retinex处理和伽马变换后的增强图像;[0100]s3:采用图像形态学处理方法和连通域分析法提取灰度图像h(x,y)中的文字区域,计算图像中字符的高度平均值;[0101]所述步骤s3中采用形态学方法和连通域分析法提取图像中的文字区域,计算图像中字符的平均高度值,具体的步为:[0102]s31:利用大津(ostu)算法获得增强后灰度图像h(x,y)的二值化阈值,通过获得二值化阈值将灰度图像h(x,y)转化为二值图像,并对所述二值图像进行反转,即将二值图像进行幅值反转,得到背景为0,表格和字符为1的二值图像b(x,y);再对二值图像b(x,y)进行闭运算,闭运算核的大小可选5×5或7×7;[0103]s32:采用图像连通域提取方法提取二值图像中的连通区域,计算各连通区域的宽w和高h;根据图像中的文字相对于图像的尺度大小(宽w、高h)设置阈值,设置阈值tw=w/10、th=h/20;滤除w》tw或h》th的连通区域,获得符合条件的连通区域高度;[0104]s33:计算所有符合条件连通区域的高度平均值,所述高度平均值作为图像中字符的平均高度值h_char。[0105]s4:采用最大稳定极值区域(msers)算法检测图像中的整体表格区域,根据所述步骤s3中获得的图像中字符的高度平均值确定mser算法的最小检测面积,从而获得整体表格区域轮廓;[0106]所述步骤s4中采用区域检测mser方法检测图像中的整体表格区域,具体步骤为:[0107]s41:设置mser对象初始化的各参数,其中:[0108]_min_area为mser算法检测的最小表格面积,该值根据步骤s3中获得的图像中的字符高度平均值h_char确定,设置_min_area=k1×h_char×h_char,表示待检测表格的最小面积应大于图像中字符平均面积的k1倍;k1的取值范围为50~300;[0109]_max_area为mser算法检测的最大表格面积,该值根据待检测表格面积占图像面积的最大比值k2确定,设置为_max_area=k2×w×h,其中w、h分别为图像的宽度和高度,0《k2《1;[0110]s42:利用mser算法获得图像中各区域的轮廓坐标值[cent1,cent2,…,centn]和各轮廓对应的外接矩形坐标值[box1,box2,…,boxn];[0111]s43:对所述步骤s42中获得的轮廓的所有外接矩形采用非极大值抑制(nms)算法,滤除整体表格轮廓外接矩形内的所有内接矩形,得到图像中表格的整体轮廓contour_table;[0112]s5:利用所述步骤s4中的整体表格区域轮廓的最小外接矩形和外接矩形计算透视变换矩阵,对图像进行矫正操作,计算各矫正后表格区域在图像中的坐标值;所述步骤s5中具体步骤为:[0113]s51:求得表格轮廓contour_table的最小外接矩形rectminbox和外接矩形rectbox,对应的四个角点分别为[srcpoint1,srcpoint2,srcpoint3,srcpoint4]和最小外接矩形的四个角点[dstpoint1,dstpoint2,dstpoint3,dstpoint4];如图4所示,图4中以4个空心圆为角点的矩形是待识别表格轮廓的最小外接矩形,以4个小方框为角点的矩形是待识别表格轮廓的外接矩形;[0114]s52:[srcpoint1,srcpoint2,srcpoint3,srcpoint4]和[dstpoint1,dstpoint2,dstpoint3,dstpoint4]构成具有透视映射关系的4个点对,将所述4个对点的坐标代入透视变换公式中,求得图像的透视变换系数矩阵m,[0115][0116]s53:利用透视变换矩阵m实现对图像h(x,y)的畸变校正,矫正后图像i(x,y)中像素坐标点(x,y)与原图像中对应坐标点(x,y)的映射关系为:[0117][0118][0119]s6:采用msers算法检测图像畸变校正后各表格单元,对各表格单元进行行和列的归并,确定表格单元格的行坐标和列坐标;如图5所示,图5为经畸变矫正后的表格图像;[0120]所述步骤s6的具体步骤为:[0121]s61:采用mser算法检测畸变矫正后图像i(x,y)的各表格单元;[0122]s611:设置mser算法各参数,其中:[0123]_min_area:mser检测的表格最小单元格面积,设置为k3×h_char×h_char,表示待检测表格单元格的最小面积应大于图像中字符平均面积的k3倍;k3的取值为5~10;[0124]_max_area:mser检测的表格最大单元格面积,设置为k4×h_char×h_char,表示待检测表格单元格的最大面积应小于图像中字符平均面积的k4倍;k4的取值为100~200;[0125]s612:采用mser算法获得图像中各区域的轮廓坐标值和各轮廓对应的外接矩形;[0126]s613:对轮廓的所有外接矩形采用非极大值抑制(nms)算法,滤除表格单元格轮廓外接矩形内的所有内接矩形,得到图像中表格的n个单元格轮廓的外接矩形,外接矩形的左上角点为[top_left_x_i,top_left_y_i],i=1,2,…,n;[0127]s62:设序列[label_x_1,,…,label_x_n]为表格各单元格的列标志,设置label_x_1=1;对外接矩形左上角点的纵坐标top_left_x_i(i=1,2,…,n)进行由小到大排序,得到序列top_left_sort_x_i(i=1,2,…,n),计算该排序后序列前后点i+1,i的差值delt_x_i+1,公式为:[0128]delt_x_i+1=top_left_sort_x_i+1-top_left_sort_x_i;[0129]若delt_x_i+1》h_char,i+1单元格的列坐标label_x_i+1=label_x_i+1,否则label_x_i+1=label_x_i;进行迭代计算,可获得表格各单元格的列标志[label_x_1,,…,label_x_n];[0130]s63:设序列[label_y_1,,…,label_y_n]为表格各单元格的行标志,设置label_y_1=1;对外接矩形左上角点的纵坐标top_left_y_i(i=1,2,…,n)进行由小到大排序,得到序列top_left_sort_y_i(i=1,2,…,n),计算delt_y_i+1公式为:[0131]delt_y_i+1=top_left_sort_y_i+1-top_left_sort_y_i;[0132]若delt_y_i+1》h_char,i+1单元格的行坐标label_y_i+1=label_y_i+1,否则label_y_i+1=label_y_i;进行迭代计算,可获得表格各单元格的行标志[label_y_1,,…,label_y_n];如图6所示,图6中用不同灰度级表示了图像矫正后表格的各单元格坐标。[0133]对于本领域的普通技术人员而言,具体实施例只是对本发明进行了示例性描述,显然本发明具体实现并不受上述方式的限制,只要采用了本发明的方法构思和技术方案进行的各种非实质性的改进,或未经改进将本发明的构思和技术方案直接应用于其它场合的,均在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1