一种增值税发票的识别方法转让专利

申请号 : CN201710073714.9

文献号 : CN106875546B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王新年廖玉钦王慧玉

申请人 : 大连海事大学

摘要 :

本发明提供一种增值税发票的识别方法,其特征在于,包括如下步骤:对输入的发票图像进行预处理;对发票图像进行选项区域定位;字符分割;字符区域分为9块;提取每个图像块的HOG特征,得到9个一维的HOG特征序列;特征序列分别与模板做比对,得到差异系数;根据差异系数的大小,为这9块赋予不同权重,生成权重矩阵;将权重与差异系数加权求和,得到候选字符差异得分,计算每个候选字符差异得分,取最小值对应字符为匹配结果;对每个切分后的字符重复上述步骤直至完成发票各项内容的识别。本发明有效地实现对增值税发票中的汉字模块识别,同时对形近字区分能力增强,具有光照不变性和旋转不变性,抗干扰能力更强,对模糊字符有着较好的识别能力。

权利要求 :

1.一种增值税发票的识别方法,其特征在于,包括如下步骤:

S1、对输入的发票图像进行预处理:提取原始彩色发票图像的R分量,作为灰度图像,对灰度图像进行中值滤波操作,减少噪点,对灰度图像进行Radon变换,进行倾斜校正;

S2、对发票图像进行选项区域定位:寻找标记点,进行选项区域定位,截取各选项区域,分别二值化处理得到黑底白字图像;

S3、字符分割:将各选项区域的字符通过投影法分割开来,得到单个字符的最小外接矩形,便于后续的识别处理;

S4、字符区域分块:将分割好的字符,进行尺度变换,变为正方形,然后将字符图像的高和宽等间距各分3份,得到9个正方形的图像块;

S5、提取每个图像块的HOG特征,得到9个一维的HOG特征序列;

S6、将步骤S5中的特征序列分别与模板做比对,比对公式如下:

其中,An为待识别字符块的HOG特征序列,为An的均值;Bn为模板字符块HOG特征序列,为Bn的均值;r为待识别字符块与模板字符块的相关系数,当-1≤r<0时,An与Bn为负相关;

当0<r≤1时,An与Bn为正相关;当r=0时,An与Bn不相关;其差异系数d用1-r来表示;

S7、将候选字符中的9个块,进行加权求和,根据差异系数d的取值范围,为其赋予不同权重,生成权重矩阵,其权重分配方式如下:S8、将权重与差异系数加权求和,得到候选字符差异得分,计算每个候选字符差异得分,取最小值对应字符为匹配结果;

S9、对每个切分后的字符重复上述步骤S4至S8,直至完成发票各项内容的识别。

2.根据权利要求1所述的增值税发票的识别方法,其特征在于,所述步骤S2中,具体包括:S21、寻找标记点,将发票矩形框的四个顶点定位,取原始彩色发票图像的b分量图像,将其二值化,并分别水平、垂直投影;投影值第一个和最后一个向下尖峰处,即为矩形顶点位置,从而确定矩形框的位置;

S22、进行选项区域定位,发票各选项区域位置是固定的,根据矩形框位置,与发票各选项区域的相对位置关系,将各区域坐标计算出来;

S23、用S22中计算出的坐标,在步骤S1处理完的灰度图像上,截取各选项区域,并分别二值化处理,得到黑底白字的二值图像。

3.根据权利要求1所述的增值税发票的识别方法,其特征在于,所述步骤S3中,字符通过投影法分割具体为,分别获取各字符的左右边界,进行垂直分割;再将分割出的每个块,进行水平投影,去除零点,即字符上方和下方多余部分;保留非零点,即字符。

4.根据权利要求3所述的增值税发票的识别方法,其特征在于,根据不同区域内容不同,具体的切分方式也相应不同:①只有一行字的情况:

先垂直投影,再从左向右水平扫描,若当前点像素值为零,前面有连续若干个点像素值为零,后面连续若干个点像素值非零,则认为该点为字符左边界,遍历所有点,得到所有字符的左边界;若当前点像素值非零,前面有连续若干个点像素值非零,后面有连续若干个点像素值为零,则认为该点为字符右边界,遍历所有点,得到所有字符右边界,使用这些边界信息,进行垂直分割;

②有多行文字的情况:

首先进行水平分割,将多行字分割成多个单行字,这样后面的步骤同①一样,水平分割做法:先水平投影,再从上往下扫描,若当前点像素值为零,前面有连续若干个点像素值为零,后面连续若干个点像素值非零,则认为该点为行的上边界,遍历所有点,得到所有行的上边界;若当前点像素值非零,前面有连续若干个点像素值非零,后面有连续若干个点像素值为零,则认为该点为行的边界,遍历所有点,得到所有行的下边界,使用这些边界信息,将图像分割为单行字,再重复步骤①,将单行字分割成单个字符。

5.根据权利要求1所述的增值税发票的识别方法,其特征在于,所述步骤S6中,其比对过程为:S61、读取一个待识别字符,从左至右,从上之下,从第1块开始进行模板匹配,然后依次对第2、3、4块,直至第9块进行匹配;

S62、当前模板9块匹配结束,读取下一个模板,重复步骤S61,直至所有模板相似度计算完毕;

S63、设定相似度阈值T,统计每个模板字符的9块相似度,若相似度小于该阈值的块数大于等于6,则该模板字符必定不是正确结果,不进行操作;若小于6块,则将该模板存入候选字符。

说明书 :

一种增值税发票的识别方法

技术领域

[0001] 本发明涉及一种增值税发票的识别方法,特别是针对形近字有着较高的辨别能力。

背景技术

[0002] 现有技术中,对于增值税发票识别,通常采用如下方式:通过表格模板定制,设置识别区域,识别属性,调用专用的字符,进行选项区域识别,根据识别属性进行识别后处理,最后输出结构化的识别结果;或者在使用清华TH-OCR技术的基础上,对发票进行多项预处理操作,具体有纠偏、偏色校正、滤色、降噪、二值化、增强识别单元对比度等功能,这些功能可灵活配置、自由组合,为之后识别输出最优的图像质量。
[0003] 目前,对于增值税发票识别存在以下问题:
[0004] 1、目前增值税发票识别中通常只识别数字,缺少对增值税发票中汉字的识别模块;
[0005] 2、对于形近字的区分能力相对较弱,容易出现误识的情况;
[0006] 3、增值税发票纸质为复写纸,打印时字符笔画容易粘连,造成识别困难。

发明内容

[0007] 根据上述提出的技术问题,而提供一种增值税发票的识别方法。本发明主要利用通过对输入图像的预处理、票据选项定位、字符分割、字符区域分块、提取HOG特征、对比识别、块权重分配到输出核对,对增值税发票进行识别,从而有效的实现对增值税发票中的汉字模块识别,同时对形近字区分能力增强。
[0008] 本发明采用的技术手段如下:
[0009] 一种增值税发票的识别方法,其特征在于,包括如下步骤:
[0010] S1、对输入的发票图像进行预处理:提取原始彩色发票图像的r分量,作为灰度图像,对灰度图像进行中值滤波操作,减少噪点,对灰度图像进行Radon变换,进行倾斜校正;
[0011] S2、对发票图像进行选项区域定位:寻找标记点,进行选项区域定位,截取各选项区域,分别二值化处理得到黑底白字图像;
[0012] S3、字符分割:将各选项区域的字符通过投影法分割开来,得到单个字符的最小外接矩形,便于后续的识别处理;
[0013] S4、字符区域分块:将分割好的字符,进行尺度变换,变为正方形,然后将字符图像的高和宽等间距各分3份,得到9个正方形的图像块;
[0014] S5、提取每个图像块的HOG特征,得到9个一维的HOG特征序列;
[0015] S6、将步骤S5中的特征序列分别与模板做比对,比对公式如下:
[0016]
[0017] 其中,An为待识别字符块的HOG特征序列,为An的均值;Bn为模板字符块HOG特征序列,为Bn的均值;r为待识别字符块与模板字符块的相关系数,当-1≤r<0时,An与Bn为负相关;当0<r≤1时,An与Bn为正相关;当r=0时,An与Bn不相关;其差异系数d用1-r来表示;
[0018] S7、将候选字符中的9个块,进行加权求和,根据差异系数d的取值范围,为其赋予不同权重,生成权重矩阵,其权重分配方式如下:
[0019]
[0020] S8、将权重与差异系数加权求和,得到候选字符差异得分,计算每个候选字符差异得分,取最小值对应字符为匹配结果;
[0021] S9、对每个切分后的字符重复上述步骤S4至S8,直至完成发票各项内容的识别。
[0022] 进一步地,所述步骤S2中,具体包括:
[0023] S21、寻找标记点,将发票矩形框的四个顶点定位,取原始彩色发票图像的b分量图像,将其二值化,并分别水平、垂直投影;投影值第一个和最后一个向下尖峰处,即为矩形顶点位置,从而确定矩形框的位置;
[0024] S22、进行选项区域定位,发票各选项区域位置是固定的,根据矩形框位置,与发票各选项区域的相对位置关系,将各区域坐标计算出来;
[0025] S23、用S22中计算出的坐标,在步骤S1处理完的灰度图像上,截取各选项区域,并分别二值化处理,得到黑底白字的二值图像。
[0026] 进一步地,所述步骤S3中,字符通过投影法分割具体为,分别获取各字符的左右边界,进行垂直分割;再将分割出的每个块,进行水平投影,去除零点,即字符上方和下方多余部分;保留非零点,即字符。
[0027] 进一步地,根据不同区域内容不同,具体的切分方式也相应不同:
[0028] ①只有一行字的情况:
[0029] 先垂直投影,再从左向右水平扫描,若当前点像素值为零,前面有连续若干个点像素值为零,后面连续若干个点像素值非零,则认为该点为字符左边界,遍历所有点,得到所有字符的左边界;若当前点像素值非零,前面有连续若干个点像素值非零,后面有连续若干个点像素值为零,则认为该点为字符右边界,遍历所有点,得到所有字符右边界,使用这些边界信息,进行垂直分割;
[0030] ②有多行文字的情况:
[0031] 首先进行水平分割,将多行字分割成多个单行字,这样后面的步骤同①一样,水平分割做法:先水平投影,再从上往下扫描,若当前点像素值为零,前面有连续若干个点像素值为零,后面连续若干个点像素值非零,则认为该点为行的上边界,遍历所有点,得到所有行的上边界;若当前点像素值非零,前面有连续若干个点像素值非零,后面有连续若干个点像素值为零,则认为该点为行的边界,遍历所有点,得到所有行的下边界,使用这些边界信息,将图像分割为单行字,再重复步骤①,将单行字分割成单个字符。
[0032] 进一步地,所述步骤S6中,其比对过程为:
[0033] S61、读取一个待识别字符,从左至右,从上之下,从第1块开始进行模板匹配,然后依次对第2、3、4块,直至第9块进行匹配;
[0034] S62、当前模板9块匹配结束,读取下一个模板,重复步骤S61,直至所有模板相似度计算完毕;
[0035] S63、设定相似度阈值T,统计每个模板字符的9块相似度,若相似度小于该阈值的块数大于等于6,则该模板字符必定不是正确结果,不进行操作;若小于6块,则将该模板存入候选字符。
[0036] 本发明具有以下优点:
[0037] 1、本发明不仅对增值税发票中的数字部分进行识别,如买方税号、售方税号等,还对发票中的汉字进行了识别,如买方名称、售方名称等;
[0038] 2、本发明考虑到汉字的结构特点,将字符划分为9宫格,并提出“差异越大,权重越大”的加权求和思想,对形近字有良好的区分度;
[0039] 3、本发明具有光照不变性和旋转不变性,抗干扰能力更强,对模糊字符有着较好的识别能力。

附图说明

[0040] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做以简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0041] 图1为本发明识别方法的流程框图。
[0042] 图2为本发明对发票图像进行处理示意图,其中,a为倾斜图像,b为倾斜校正后的图像。
[0043] 图3为本发明票据选项定位时寻找标记点的示意图。
[0044] 图4为本发明字符区域分块后得到的图像块示意图。
[0045] 图5为图3寻找标记点后分别进行水平投影和垂直投影的图像。
[0046] 图6为本发明字符比对与识别过程流程图。

具体实施方式

[0047] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048] 如图1所示,一种增值税发票的识别方法,包括如下步骤:
[0049] S1、对输入的发票图像进行预处理,其包括以下步骤:提取原始彩色发票图像的r分量,作为灰度图像;灰度图像进行中值滤波操作,减少噪点;对灰度图像进行Radon变换,进行倾斜校正,其结果如图2所示。
[0050] S2、对发票图像进行选项区域定位。其包括以下步骤:
[0051] S21、寻找标记点,如图3所示,将发票矩形框的四个顶点定位,具体做法是:取原始彩色发票图像的b分量图像,将其二值化,并分别水平、垂直投影。如图5所示,投影值第一个和最后一个向下尖峰处,即为矩形顶点位置。这样便可确定矩形框的位置;
[0052] S22、进行选项区域定位,发票各选项区域位置是固定的,根据矩形框位置,与发票各选项区域的相对位置关系,将各区域坐标计算出来;
[0053] S23、用这些坐标,在步骤S1处理完的灰度图像上,截取各选项区域,并分别二值化处理,得到黑底白字的二值图像。
[0054] S3、字符分割:将各选项区域的字符分割开来,得到单个字符的最小外接矩形,方便后续的识别处理。核心思想是投影法,分别获取各字符的左右边界,进行垂直分割;再将分割出的每个块,进行水平投影,去除零点,即字符上方和下方多余部分;保留非零点,即字符。根据不同区域内容不同,具体的切分方式也相应不同:
[0055] ①只有一行字:
[0056] 先垂直投影,再从左向右水平扫描。若当前点像素值为零,前面有连续若干个点像素值为零,后面连续若干个点像素值非零,则认为该点为字符左边界,遍历所有点,得到所有字符的左边界;若当前点像素值非零,前面有连续若干个点像素值非零,后面有连续若干个点像素值为零,则认为该点为字符右边界,遍历所有点,得到所有字符右边界。使用这些边界信息,进行垂直分割;
[0057] ②有多行文字:
[0058] 首先进行水平分割,将多行字分割成多个单行字,这样后面的步骤同①一样。水平分割做法:先水平投影,再从上往下扫描。若当前点像素值为零,前面有连续若干个点像素值为零,后面连续若干个点像素值非零,则认为该点为行的上边界,遍历所有点,得到所有行的上边界;若当前点像素值非零,前面有连续若干个点像素值非零,后面有连续若干个点像素值为零,则认为该点为行的边界,遍历所有点,得到所有行的下边界。使用这些边界信息,将图像分割为单行字,再重复步骤①,将单行字分割成单个字符。
[0059] S4、字符区域分块(尺寸规范化):将分割好的字符,进行尺度变换,变为正方形,然后将字符图像的高和宽等间距各分3份,得到9个正方形的图像块。如图4所示。
[0060] S5、提取每个图像块的HOG特征,得到9个一维的HOG特征序列。
[0061] S6、将这些序列分别与模板做比对,比对公式如下:
[0062]
[0063] 其中,An为待识别字符块的HOG特征序列,为An的均值;Bn为模板字符块HOG特征序列, 为Bn的均值。r为待识别字符块与模板字符块的相关系数,当-1≤r<0时,An与Bn为负相关;当0<r≤1时,An与Bn为正相关;当r=0时,An与Bn不相关。那么,其差异系数d可用1-r来表示。
[0064] 如图6所示,其比对过程为:
[0065] S61、读取一个待识别字符,从左至右,从上之下,从第1块开始进行模板匹配,然后依次对第2、3、4块,直至第9块进行匹配;
[0066] S62、当前模板9块匹配结束,读取下一个模板,重复步骤S61,直至所有模板相似度计算完毕;
[0067] S63、设定相似度阈值T,统计每个模板字符的9块相似度,若相似度小于该阈值的块数大于等于6,则该模板字符必定不是正确结果,不进行操作;若小于6块,则将该模板存入候选字符。
[0068] S7、将候选字符中的9个块,进行加权求和,根据差异系数d的取值范围,为其赋予不同权重,生成权重矩阵。其权重分配方式如下:
[0069]
[0070] S8、将权重与差异系数加权求和,得到候选字符差异得分,计算每个候选字符差异得分,取最小值对应字符即为匹配结果。
[0071] S9、对每个切分后的字符重复上述步骤S4至S8,即完成发票各项内容的识别。
[0072] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。