一种海量发票的识别方法、系统及存储介质技术方案

技术编号:31834039 阅读:29 留言:0更新日期:2022-01-12 13:11
本发明专利技术公开了一种海量发票的识别方法,涉及计算机图像识别技术领域,解决发票识别精确度差的技术问题,方法包括:步骤S1.获取图片;步骤S2.检测图片中是否存在发票,若存在发票,则定位发票的四个角,根据四个角对图片进行矫正得到矫正图片;否则退出;步骤S3.通过yolo模型定位所述矫正图片中的二维码和需要识别的字符;步骤S4.对所述二维码和需要识别的字符进行预处理,并输入到tensorflow模型中识别得到识别结果。本发明专利技术还公开了一种海量发票的识别系统及存储介质。本发明专利技术通过yolo模型可以快速精确定位发票需要识别区域,使用tensorflow模型不断学习,对发票字段中不同字体进行训练,可以提高识别率。可以提高识别率。可以提高识别率。

【技术实现步骤摘要】
一种海量发票的识别方法、系统及存储介质


[0001]本专利技术涉及计算机图像识别
,更具体地说,它涉及一种海量发票的识别方法、系统及存储介质。

技术介绍

[0002]发票图片信息提取最传统的方式是OCR识别。传统OCR技术框架主要分为五个步骤:首先文本定位,接着进行倾斜文本矫正,之后分割出单字后,并对单字识别,最后基于统计模型进行语义纠错。传统OCR冗长的处理流程以及大量人工规则的存在,无法处理二维码,识别要素有限,效率低下,精确度不高。

技术实现思路

[0003]本专利技术要解决的技术问题是针对现有技术的上述不足,本专利技术的目的一是提供一种可以提高识别精度的海量发票的识别方法。
[0004]本专利技术的目的二是提供一种可以提高识别精度的海量发票的识别系统。
[0005]本专利技术的目的三是提供一种可以实现上述识别方法的计算机可读存储介质。
[0006]为了实现上述目的一,本专利技术提供一种海量发票的识别方法,包括:
[0007]步骤S1.获取图片;
[0008]步骤S2.检测所述图片中是否存在发票,若存在发票,则定位所述发票的四个角,根据所述四个角对所述图片进行矫正得到矫正图片;否则退出;
[0009]步骤S3.通过yolo模型定位所述矫正图片中的二维码和需要识别的字符;
[0010]步骤S4.对所述二维码和需要识别的字符进行预处理,并输入到tensorflow模型中识别得到识别结果。
[0011]作为进一步地改进,在所述步骤S2中,采用tensorflow模型来识别所述图片中的发票,并将所述图片矫正,具体步骤包括:
[0012]步骤S21.通过人工打标标注多个发票的四个直角;
[0013]步骤S22.对所述多个发票进行增加样本量处理得到标注图片样本,增加样本量处理包括对发票进行旋转、腐蚀、加噪、划线中的至少一种处理;
[0014]步骤S23.将所述标注图片样本输入基于tensorflow模型实现的crnn目标检索网络,经过迭代训练后得到定位发票四角模型;
[0015]步骤S24.将获取的图片输入所述定位发票四角模型,若能检测到发票的四个角落,则认为该图片中存在发票,执行步骤S25;否则,认为该图片中不存在发票,退出;
[0016]步骤S25.以所述定位发票四角模型得到的四个角落坐标位置为原坐标,以实际发票的长、宽为目标坐标,使用图像处理工具的透视变换,将该图片摆正。
[0017]进一步地,所述crnn目标检索网络包括7个cnn卷积层、2个rnn层、5个池化层。
[0018]进一步地,将所述标注图片样本归一化为768*1536后,再输入tensorflow模型训练得到所述定位发票四角模型。
[0019]进一步地,在所述步骤S3中,通过yolov3

tiny模型定位二维码和需要识别的字符,具体步骤包括:
[0020]步骤S31.对所述标注图片样本使用labelimg进行打标,标出需要识别的内容;
[0021]步骤S32.将打标好的标注图片样本输入yolov3

tiny模型中训练并获取权重值;
[0022]步骤S33.根据所述权重值将所述矫正图片输入yolov3

tiny模型得到二维码和需要识别的字符的位置信息、置信度;
[0023]步骤S34.通过图像处理工具把置信度最高的相应位置图片裁剪出来,得到二维码和需要识别的字符。
[0024]进一步地,所述yolov3

tiny模型的主干网络采用一个7层conv+max网络提取特征,所述yolov3

tiny模型的嫁接网络采用的是13*13、26*26的分辨率探测网络。
[0025]进一步地,tensorflow模型识别所述二维码的具体步骤包括:
[0026]步骤S41.随机生成一串字符串,通过二维码识别工具编码为二维码样本数据;
[0027]步骤S42.绘制所述二维码样本数据的01点阵,进行随机扰乱,得到二维码训练集,根据所述二维码训练集训练tensorflow模型得到二维码模糊识别模型;
[0028]步骤S43.对所述二维码进行二次识别定位,先放大该二维码的识别区域,然后使用tensorflow模型检测二维码区域,再通过图像处理工具裁剪二维码区域,最后用所述二维码模糊识别模型进行模糊识别得到二维码信息。
[0029]进一步地,tensorflow模型识别所述需要识别的字符的具体步骤包括:
[0030]步骤S51.根据发票字体绘制文字并加上扰乱随机生成不定长的生成文字图片,加入真实发票对应的真实图片作为基础材料,对所述生成文字图片、真实图片进行扰乱生成训练材料;
[0031]步骤S52.将所述训练材料输入tensorflow模型训练得到识别发票字符模型;
[0032]步骤S53.使用所述识别发票字符模型识别所述需要识别的字符得到文字信息。
[0033]为了实现上述目的二,本专利技术提供一种海量发票的识别系统,包括:
[0034]图片获取模块,用于获取图片;
[0035]发票矫正模块,用于检测所述图片中是否存在发票,以及根据发票的四个角对所述图片进行矫正;
[0036]定位字符模块,用于定位图片中的二维码和需要识别的字符;
[0037]识别模块,用于识别图片中的二维码和需要识别的字符;
[0038]所述图片获取模块获取图片后,所述发票矫正模块、定位字符模块、识别模块根据上述的一种海量发票的识别方法依次对所述图片进行矫正、定位图片中的二维码和需要识别的字符、识别图片中的二维码和需要识别的字符。
[0039]为了实现上述目的三,本专利技术提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述的一种海量发票的识别方法。
[0040]有益效果
[0041]本专利技术与现有技术相比,具有的优点为:
[0042](1)本专利技术可以使用tensorflow模型不断学习,对发票字段中不同字体进行训练,不断提高识别率,而且能针对发票信息中因打印问题与其他字段相粘连的问题进行剥离识别。
[0043](2)本专利技术充分利用了Zxing结合tenfowflow模型对发票二维码进行识别,能高效提取发票的所需信息。
[0044](3)本专利技术使用tensorflow模型对发票进行定位,根据定位出的四个角使用opencv对图像进行透视变化校正图像,可以针对发票倾斜情况下的识别。
[0045](4)本专利技术使用yolo定位发票识别区域,能快速精确定位发票需要识别区域。
附图说明
[0046]图1为本专利技术中识别方法的流程图;
[0047]图2为本专利技术中二维码识别的流程图;
[0048]图3为本专利技术中对发票四个角进行人工打标标注的示意图;
[0049]图4本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种海量发票的识别方法,其特征在于,包括:步骤S1.获取图片;步骤S2.检测所述图片中是否存在发票,若存在发票,则定位所述发票的四个角,根据所述四个角对所述图片进行矫正得到矫正图片;否则退出;步骤S3.通过yolo模型定位所述矫正图片中的二维码和需要识别的字符;步骤S4.对所述二维码和需要识别的字符进行预处理,并输入到tensorflow模型中识别得到识别结果。2.根据权利要求1所述的一种海量发票的识别方法,其特征在于,在所述步骤S2中,采用tensorflow模型来识别所述图片中的发票,并将所述图片矫正,具体步骤包括:步骤S21.通过人工打标标注多个发票的四个直角;步骤S22.对所述多个发票进行增加样本量处理得到标注图片样本,增加样本量处理包括对发票进行旋转、腐蚀、加噪、划线中的至少一种处理;步骤S23.将所述标注图片样本输入基于tensorflow模型实现的crnn目标检索网络,经过迭代训练后得到定位发票四角模型;步骤S24.将获取的图片输入所述定位发票四角模型,若能检测到发票的四个角落,则认为该图片中存在发票,执行步骤S25;否则,认为该图片中不存在发票,退出;步骤S25.以所述定位发票四角模型得到的四个角落坐标位置为原坐标,以实际发票的长、宽为目标坐标,使用图像处理工具的透视变换,将该图片摆正。3.根据权利要求2所述的一种海量发票的识别方法,其特征在于,所述crnn目标检索网络包括7个cnn卷积层、2个rnn层、5个池化层。4.根据权利要求2所述的一种海量发票的识别方法,其特征在于,将所述标注图片样本归一化为768*1536后,再输入tensorflow模型训练得到所述定位发票四角模型。5.根据权利要求2所述的一种海量发票的识别方法,其特征在于,在所述步骤S3中,通过yolov3

tiny模型定位二维码和需要识别的字符,具体步骤包括:步骤S31.对所述标注图片样本使用labelimg进行打标,标出需要识别的内容;步骤S32.将打标好的标注图片样本输入yolov3

tiny模型中训练并获取权重值;步骤S33.根据所述权重值将所述矫正图片输入yolov3

tiny模型得到二维码和需要识别的字符的位置信息、置信度;步骤S34.通过图像处理工具把置信度最高的相应位置图片裁剪出来,得到二...

【专利技术属性】
技术研发人员:潘宏沣黄发龙林耀坚林载辉汪建
申请(专利权)人:广东亿迅科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1