1.一种基于文字识别与语义分析的发票分类方法,其特征在于:具体包括以下步骤:步骤一,通过图像采集设备采集发票图像,记作A;
步骤二,利用霍夫变换检测图像A中发票的长length和宽width,单位为像素;
步骤三,设定边长阈值lthreshold,并将边长阈值与长和宽进行比较,对发票进行初步分类;
步骤四,根据上一步的初步分类结果,调用发票模版,根据发票模板切割出需要进行文字识别的区域X;
步骤五,调用第三方文字识别系统,识别区域X中的文字并对识别结果进行语义分析,得出精确的发票分类。
2.根据权利要求1所述的一种基于文字识别与语义分析的发票分类方法,其特征是:所述步骤二中利用霍夫变换检测图像A中发票的长length和宽width,具体步骤包括:步骤2-1,将图像A二值化,得到二值图像B,并在直角坐标系下将二值图像B离散化,计算出图像B的长和宽,分别记为m,n;
步骤2-2,建立并初始化离散化的参数空间ρ-θ,其中,θ∈[0,180),单位为度,单位间隔为1;建立并初始化水平二维累加数组KH(0°,ρ)和垂直二维累加数组KV(90°,ρ);
步骤2-3,遍历步骤2-1中离散化的二值图像B,找出所有像素值不为0的点(x,y),每找出一个点,将其带入方程ρ=xcosθ+ysinθ中,分别求出θ=0°和θ=90°对应的ρ,并分别在相应的水平二维累加数组KH(0°,ρ)和垂直二维累加数组KV(90°,ρ)上加1;
步骤2-4,遍历水平二维累加数组KH(0°,ρ),找出最大值和次最大值,将其对应的θ=0°和ρ带入方程ρ=xcosθ+ysinθ,得到lH1和lH2,即为发票图像水平方向两条边的方程;同理,遍历垂直二维累加数组KV(90°,ρ),将其对应的θ=90°和ρ带入方程ρ=xcosθ+ysinθ,得到发票图像竖直方向两条边的方程lV1和lV2;
步骤2-5,联立lH1和lV1,可以得到交点(x11,y11),联立lH1和lV2可以得到交点(x12,y12),联立lH2和lV1可以得到交点(xmin,ymin),联立lH2和lV2得到交点(x22,y22),根据这些点求得发票的长length和宽width,公式如下:步骤2-6,比较上述四个交点的横、纵坐标的大小,找出横坐标最小且纵坐标最小的交点,即图像A中发票的左顶点,记为(xmin,ymin)。
3.根据权利要求1所述的一种基于文字识别与语义分析的发票分类方法,其特征是:所述步骤三,对发票进行初步分类具体为:如果长length≥lthreshold,或者宽width≥lthreshold,判定该发票为Ⅰ型发票,否则就判定为Ⅱ型发票。
4.根据权利要求1所述的一种基于文字识别与语义分析的发票分类方法,其特征是:所述步骤四中,根据初步分类结果,调用发票模版,根据发票模板切割出需要进行文字识别的区域X,具体步骤包括:步骤4-1,根据初步分类的结果,调用相应的发票模板,发票模板里包含需要进行文字识别区域的坐标信息;
步骤4-2,根据发票模板中的坐标信息切割出需要进行文字识别的区域X,切割区域X坐标信息记为(xmin,ymin,l,w),xmin为图像A左上角顶点横坐标,ymin为图像A左上角顶点纵坐标,l为所切割区域的长,w为所切割区域的宽。
5.根据权利要求3所述的一种基于文字识别与语义分析的发票分类方法,其特征是:所述Ⅰ型发票的切割区域为 记该区域为X-Ⅰ;Ⅱ型发票的切割区域有两块,分别为 记该区域为X-Ⅱ,xmin
为图像A左上角顶点横坐标,ymin为图像A左上角顶点纵坐标。
6.根据权利要求1所述的一种基于文字识别与语义分析的发票分类方法,其特征是:所述步骤五中,识别区域X中的文字并对识别结果进行语义分析,得出精确的发票分类,具体包括如下步骤:步骤5-1,调用第三方文字识别系统,识别区域X中的文字,得到识别结果;
步骤5-2,收集各类发票图像,找出每类发票独有的特征字符,再根据特征字符建立特征字符向量 特征字符向量中每一个位置对应一个特征字符;
步骤5-3,初始化特征字符向量 即每个特征字符对应的位置置0,利用特征字符向量 对应的特征字符检索或匹配识别结果,如果匹配到某个字符,那么 相应的位置置1,当检索完成后,根据 中元素的值,找出对应的发票类别,即可实现发票精确分类。
7.根据权利要求1所述的一种基于文字识别与语义分析的发票分类方法,其特征是:所述步骤五中,第三方文字识别系统包括百度文字识别系统、腾讯文字识别系统。