CN111814785A - 发票识别方法及相关模型的训练方法以及相关设备、装置 - Google Patents

发票识别方法及相关模型的训练方法以及相关设备、装置 Download PDF

Info

Publication number
CN111814785A
CN111814785A CN202010526072.5A CN202010526072A CN111814785A CN 111814785 A CN111814785 A CN 111814785A CN 202010526072 A CN202010526072 A CN 202010526072A CN 111814785 A CN111814785 A CN 111814785A
Authority
CN
China
Prior art keywords
text
invoice
sub
distance
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010526072.5A
Other languages
English (en)
Other versions
CN111814785B (zh
Inventor
赵诗云
陈媛媛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202010526072.5A priority Critical patent/CN111814785B/zh
Publication of CN111814785A publication Critical patent/CN111814785A/zh
Application granted granted Critical
Publication of CN111814785B publication Critical patent/CN111814785B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/146Aligning or centring of the image pick-up or image-field
    • G06V30/1475Inclination or skew detection or correction of characters or of image to be recognised
    • G06V30/1478Inclination or skew detection or correction of characters or of image to be recognised of characters or characters lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Abstract

本申请公开了一种发票识别方法及相关模型的训练方法以及相关设备、装置,其中,发票识别方法包括:获取待识别发票图像;利用文本检测模型对待识别发票图像进行检测,得到待识别发票图像中的若干子文本区域;将满足预设距离条件的子文本区域合并得到目标文本区域;利用文本识别模型对目标文本区域进行文本识别,得到待识别发票图像的发票信息。上述方案,能够提高发票识别的准确性。

Description

发票识别方法及相关模型的训练方法以及相关设备、装置
技术领域
本申请涉及人工智能技术领域,特别是涉及一种发票识别方法及相关模型的训练方法以及相关设备、装置。
背景技术
发票识别是企业财务、税务机关等进行纳税申报、发票稽核、税务稽核、财务管理等工作的重要基础。以往一般采用人工录入的方式实现发票识别,需要消耗大量的人力成本和时间成本。
随着信息技术的提高,人们越来越广泛地使用手机、计算机等电子设备对发票图像进行识别。然而,在实际应用时,发票中一般包含诸如名称、纳税人识别号等行间距较小的长文本,相互之间极易产生干扰,且发票图像还难免存在背景、亮度不均等其他干扰,从而影响发票识别的准确性。有鉴于此,如何提高发票识别的准确性成为亟待解决的问题。
发明内容
本申请主要解决的技术问题是提供一种发票识别方法及相关模型的训练方法以及相关设备、装置,能够提高发票识别的准确性。
为了解决上述问题,本申请第一方面提供了一种发票识别方法,包括:获取待识别发票图像;利用文本检测模型对待识别发票图像进行检测,得到待识别发票图像中的若干子文本区域;将满足预设距离条件的子文本区域合并得到目标文本区域;利用文本识别模型对目标文本区域进行文本识别,得到待识别发票图像的发票信息。
为了解决上述问题,本申请第二方面提供了一种文本检测模型的训练方法,包括:获取样本发票图像,其中,样本发票图像中标注有与各目标文本的子文本对应的实际子文本区域;利用文本检测模型对样本发票图像进行检测,得到样本发票图像中与各目标文本的子文本对应的预测子文本区域;利用实际子文本区域与预测子文本区域,确定文本检测模型的损失值;利用损失值,调整文本检测模型的参数。
为了解决上述问题,本申请第三方面提供了一种电子设备,包括相互耦接的存储器和处理器,存储器存储有程序指令,处理器用于执行程序指令以实现上述第一方面中的发票识别方法,或实现上述第二方面中的文本检测模型的训练方法。
为了解决上述问题,本申请第四方面提供了一种存储装置,存储有能够被处理器运行的程序指令,程序指令用于实现上述第一方面中的发票识别方法,或实现上述第二方面中的文本检测模型的训练方法。
上述方案,通过利用文本检测模型对获取的待识别发票进行检测,从而得到待识别发票中的若干子文本区域,并将满足预设距离条件的子文本区域合并得到目标文本区域,进而利用文本识别模型对目标文本区域进行文本识别,得到待识别发票的发票信息,故通过文本检测模型对待识别发票进行检测,以及通过文本识别模型对目标文本区域进行文本识别,能够不受背景、亮度等干扰,且由于文本检测模型能够检测得到待识别发票中若干子文本区域,并对子文本区域进行合并得到对应一目标文本区域,故能够降低目标文本区域重叠的概率,从而能够降低目标文本之间的相互干扰,进而能够提高发票识别的准确性。
附图说明
图1是本申请发票识别方法一实施例的流程示意图;
图2是图1中待识别发票图像一实施例的示意图;
图3是图1中步骤S13一实施例的流程示意图;
图4是本申请文本检测模型的训练方法一实施例的流程示意图;
图5是本申请发票识别装置一实施例的框架示意图;
图6是本申请文本检测模型的训练装置一实施例的框架示意图;
图7是本申请电子设备一实施例的框架示意图;
图8是本申请存储装置一实施例的框架示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
请参阅图1,图1是本申请发票识别方法一实施例的流程示意图。具体而言,可以包括如下步骤:
步骤S11:获取待识别发票图像。
待识别发票具体可以包括但不限于:增值税发票、机动车销售发票、货物运输发票,具体可以根据实际应用进行设置,在此不做限定。
待识别发票图像可以是通过手机、平板电脑等具有拍摄功能的电子设备拍摄得到的。请结合参阅图2,图2是图1中待识别发票图像一实施例的示意图,如图2所示,待识别发票图像中以斜线阴影表示的部分为除发票本身之外的背景,例如,发票放置在办公桌上进行拍摄时,拍摄得到的待识别发票图像中除了发票本身之外,还可能存在桌面、桌面上的办公用品(如鼠标、键盘、鼠标垫等),具体可以根据实际应用而设置,在此不做限定。在一个实施场景中,待识别发票图像中也可以不存在发票本身之外的背景,在此不做限定。
步骤S12:利用文本检测模型对待识别发票图像进行检测,得到待识别发票图像中的若干子文本区域。
文本检测模型可以是利用预先标注有目标文本的子文本区域的样本发票图像训练得到的。在一个具体的实施场景中,文本检测模型可以是利用本申请文本检测模型的训练方法实施例中的步骤训练得到的,具体训练过程在此暂不赘述。在另一个具体的实施场景中,文本预测模型可以采用YOLO(You Only Look Once)、SSD(Single Shot Multi-boxDetector)、Faster-RCNN等网络,在此不做限定。
待识别发票图像中,子文本区域与子文本区域中的子文本两者边缘的延迟线不相交(重合或平行)。如图2所示,“XXX”对应的子文本区域,以及“有限公司”对应的子文本区域以一矩形框表示,其区域边缘均与文本边缘(子文本“XXX”和“有限公司”上下的虚线)平行,故在待识别发票图像中的文本行间距较短、文本较长,或存在变形的情况下,区域重叠的概率得以大大降低。
在一个实施场景中,待识别发票还可能会以多种方向放置并被拍摄,从而待识别发票图像中的发票可能呈现多种角度,例如图2中,待识别发票的“XXX发票”字样水平居上,即待识别发票中发票文字方向为0度;或者,待识别发票的“XXX发票”字样还可能存在水平居下的情况(图2待识别发票旋转180度后的情况),即待识别发票中发票文字方向为180度;或者,待识别发票的“XXX发票”字样还可能存在垂直居右的情况(图2待识别发票顺时针旋转90度后的情况),即待识别发票中发票文字方向为90度;或者,待识别发票的“XXX发票”字样还可能存在垂直居左的情况(图2待识别发票顺时针旋转270度后的情况),即待识别发票中发票文字方向为270度,此外,待识别发票图像的方向角度还可能存在其他情况,例如,45度、135度、225度、315度等等,在此不做限定。为了确保文本检测模型的准确性,在利用文本检测模型进行检测之前,还可以利用方向检测模型对待识别发票图像进行检测,得到待识别发票图像的方向角度,从而将待识别发票图像旋转方向角度,以对待识别发票图像进行方向矫正。在一个具体的实施场景中,方向角度可以包括:0度、90度、180度、270度;在另一个具体的实施场景中,方向检测模型可以是利用标注有方向角度的训练集预先训练得到的,例如,采用标注有方向角度包括0度、90度、180度、270度的训练集训练得到一方向检测模型,具体可以根据实际应用进行设置,在此不做限定;在又一个具体的实施场景中,方向检测模型可以采用ResNet、LeNet等等,在此不做限定;在又一个具体的实施场景中,为了进一步提高方向角度检测的准确性,还可以获取待识别发票图像中预设区域(例如,位于图像中央的224*224大小的区域)处的区域图像,再利用方向检测对区域图像进行检测,得到方向角度;在又一个具体的实施场景中,具体可以将待识别发票图像反方向旋转方向角度,以对待识别发票图像进行方向矫正,例如,待识别发票图像的方向角度为90度,则可以将待识别发票图像逆时针旋转90度,以对待识别发票图像进行方向矫正,其他方向角度可以以此类推,在此不再一一举例。
步骤S13:将满足预设距离条件的子文本区域合并得到目标文本区域。
请继续参阅图2,如图2所示,对应同一目标文本“XXXX有限公司”的子文本区域之间在距离上至少存在以下特点:垂直方向上基本不存在距离差,水平方向上存在一定范围内的距离差等;而对应不同目标文本“XXXX有限公司”和“XXXXXXXXXX”的子文本区域在距离上至少存在以下特点:垂直方向上的距离差超出一定范围等。故在一个实施场景中,可以根据上述特点,设置一预设距离条件,从而将满足预设距离条件的子文本区域合并得到目标文本区域。例如,将图2中“XXXX有限公司”对应的两个子文本区域进行合并,得到对应一目标文本区域;将图2中“XXXXXXXXXX”对应的三个字文本区域进行合并,得到对应一目标文本区域,其他实施场景中,可以以此类推,在此不再一一举例。通过将上述子文本区域进行筛选,得到对应目标文本的一组子文本区域,并进行合并处理,从而得到目标文本区域,故在待识别发票图像中的文本行间距较短、文本较长,或存在变形的情况下,目标文本区域重叠的概率得以大大降低。
在一个实施场景中,为了提高目标文本区域的准确性,还可以利用非极大值抑制(Non-maximum Suppression,NMS)对子文本区域进行筛选,再将筛选得到的子文本区域中满足预设距离条件的每组子文本区域进行合并,得到对应一目标文本区域。
步骤S14:利用文本识别模型对目标文本区域进行文本识别,得到待识别发票图像的发票信息。
文本识别模型可以是利用标注有发票信息的训练集训练得到的,在一个实施场景中,文本识别模型可以在利用文本检测模型对待识别发票图像进行检测之前进行训练,具体训练过程可以参阅本申请中任一文本检测模型的训练方法实施例中的步骤,在此暂不赘述。具体地,文本识别模型可以采用CRNN(Convolutional Recurrent Neural Network,卷积循环神经网络)网络,从而利用CRNN的CNN(Convolutional Neural Network,卷积神经网络)对目标文本区域进行特征提取,得到目标文本区域的图像特征,并采用CRNN的RNN(Recurrent Neural Network,循环神经网络)对图像特征进行预测,得到预测结果,再利用CRNN的CTC(Connectionist Temporal Classification,联结主义时间分类)对预测结果进行转录,得到发票信息。请结合参阅图2,通过文本识别模型可以得到图2中的发票信息:“XXXX有限公司”、“XXXX年XX月XX日”等等。
在一个实施场景中,为了在目标文本区域在倾斜的情况下,提高对目标文本区域进行文本识别的准确性,还可以获取目标文本区域的倾斜角度,并将目标文本区域旋转倾斜角度,以对目标文本区域进行倾斜矫正。在一个具体的实施场景中,可以确定目标文本区域中子文本区域的中心位置最远的两个子文本区域(即位于目标文本区域首尾两端的两个子文本区域),并将确定的两个子文本区域的中心位置的连线与水平方向之间的夹角,作为倾斜角度;在另一个具体的实施场景中,还可以利用预设拟合方式对目标文本区域中子文本区域的中心位置进行拟合,得到一拟合线,并将拟合线与水平方向之间的夹角,作为倾斜角度,将目标文本区域旋转倾斜角度,从而能够将目标文本的文字方向旋转至水平,进而能够有利于提高后续文本识别的准确性。
在一个实施场景中,为了提高用户体验,还可以对发票信息进行结构化,具体地,可以对发票信息进行分类处理,得到发票信息的信息类别,并输出各个发票信息以及信息类别。仍以图2为例,对于发票信息“XXXX有限公司”进行分类,可以得到其信息类别“名称”;对于发票信息“XXXX年XX月XX日”进行分类,可以得到其信息类别“开票日期”,以此类推,并输出“名称:XXXX有限公司”、“开票日期:XXXX年XX月XX日”。在一个具体的实施场景中,为了提高发票信息分类的准确性,可以获取预先设置的信息类别及信息类别的正则化表达式,例如,对于信息类别“开票日期”,其正则化表达式可为“\d{4}年(0?[1-9]|[1][012])月(0?[1-9]|[12][0-9]|3[01])日”,其他信息类别可以以此类推,在此不再一一举例,从而可以利用正则化表达式对发票信息进行匹配,得到发票信息的信息类别。
上述方案,通过利用文本检测模型对获取的待识别发票进行检测,从而得到待识别发票中的若干子文本区域,并将满足预设距离条件的子文本区域合并得到目标文本区域,进而利用文本识别模型对目标文本区域进行文本识别,得到待识别发票的发票信息,故通过文本检测模型对待识别发票进行检测,以及通过文本识别模型对目标文本区域进行文本识别,能够不受背景、亮度等干扰,且由于文本检测模型能够检测得到待识别发票中若干子文本区域,并对子文本区域进行合并得到对应一目标文本区域,故能够降低目标文本区域重叠的概率,从而能够降低目标文本之间的相互干扰,进而能够提高发票识别的准确性。
请参阅图3,图3是图1中步骤S13一实施例的流程示意图。具体地,可以包括如下步骤:
步骤S131:获取子文本区域的中心位置之间的第一距离、第一距离在水平方向上的第二距离、第一距离在垂直方向上的第三距离、子文本区域的最近边缘之间的第四距离中的至少一者。
在一个实施场景中,为了提高筛选的准确性,可以获取子文本区域的中心位置之间的第一距离,并将第一距离分别在水平方向和垂直方向进行分解,得到第二距离和第三距离,以及子文本区域的最近边缘之间的第四距离,且最近边缘是指与文本方向垂直的边缘,请结合参阅图2,如图2所示,对于“名称”行,“XXXX”子文本对应的子区域和“有限公司”子文本对应的子区域而言,最近的边缘是指两者相邻的边缘,即文字“X”和“有”之间的边缘,其他场景可以以此类推,在此不再一一举例。在其他实施场景中,可以获取上述第一距离、第二距离、第三距离、第四距离的任意组合,在此不做限定,例如,仅获取第二距离、第三距离和第四距离。在一个具体的实施场景中,上述第一距离可以通过子文本区域的中心位置之间的距离获得。
步骤S132:筛选第一距离、第二距离、第三距离、第四距离中的至少一者满足预设距离条件的子文本区域,对应得到一组子文本区域。
具体地,预设距离条件可以包括以下至少一者:第一距离小于第一预设阈值,第二距离小于第二预设阈值,第三距离小于第三预设阈值,第四距离小于第四预设阈值。上述预设阈值的具体数值可以根据实际应用而进行设置,例如,可以设置水平方向上的第二预设阈值为待识别发票图像宽度与一预设比例(例如:1/60)的乘积,在此不做限定。例如,请结合参阅图2,对于发票中“名称”对应的子文本“XXXX”的子文本区域和子文本“有限公司”的子文本区域而言,两者之间的第一距离、第二距离、第三距离和第四距离均满足预设距离条件,则可以将两者作为一组子文本区域;或者,对于发票中“名称”对应的子文本“XXXX”的子文本区域和发票中的“纳税人识别号”对应的子文本“XXXX”的子文本区域而言,虽然两者之间的第一距离也较小,但是水平方向上的第二距离过小,而垂直方向上的第三距离相较而言较大,故可以确定两者不属于同一目标文本;或者,对应发票中“名称”对应的子文本“XXXX”的子文本区域和发票中的“开票日期”对应的子文本“XXXX年”的子文本区域而言,两者之间的第一距离过大,可以确定两者不属于同一目标文本,其他场景可以以此类推,在此不再一一举例。
步骤S133:将每组子文本区域中的子文本区域进行合并处理,得到目标文本区域。
具体地,可以确定每组子文本区域中第一距离最远的两个子文本,即确定位于每组子文本区域的首尾两端的子文本区域,再基于确定的两个子文本区域的边缘,得到目标文本区域。在一个具体的实施场景中,可以获取确定的两个子文本区域中与文字方向垂直的四个边缘,再利用这四个边缘中相距最远的两个边缘,确定一目标文本区域,例如,将相距最远的两个边缘作为目标文本区域的两个边缘,从而确定一目标文本区域;或者,还可以获取相距最远的两个边缘各自的端点,并将这些端点作为目标文本区域的四个顶点,从而确定一目标文本区域,在此不做限定。请继续结合参阅图2,如图2所示,可以将一组子文本区域:子文本“XXXX”的子文本区域和子文本“有限公司”的子文本区域,进行合并,从而得到“XXXX有限公司”对应的目标文本区域。
区别于前述实施例,通过获取子文本区域的中心位置之间的第一距离、第一距离在水平方向上的第二距离、第一距离在垂直方向上的第三距离、子文本区域的最近边缘之间的第四距离中的至少一者,从而筛选第一距离、第二距离、第三距离、第四距离中的至少一者满足预设距离条件的子文本区域,对应得到一组子文本区域,进而将每组子文本区域中的子文本区域进行合并处理,得到目标文本区域,能够提高筛选得到的每组子文本区域的准确性,进而能够提高目标文本区域的准确性,有利于提高后续文本识别的准确性。
请参阅图4,图4是本申请文本检测模型的训练方法一实施例的流程示意图。具体而言,可以包括如下步骤;
步骤S41:获取样本发票图像,其中,样本发票图像中标注有与各目标文本的子文本对应的实际子文本区域。
样本发票图像具体可以包括但不限于:增值税发票、机动车销售发票、货物运输发票,具体可以根据实际应用进行设置,在此不做限定。
样本发票图像可以是通过手机、平板电脑等具有拍摄功能的电子设备拍摄得到的,具体可以参阅前述实施例中的相关步骤,在此不再赘述。
实际子文本区域与实际子文本区域中的子文本两者边缘的延长线不相交(重合或平行)。具体可以参阅前述实施例中的相关步骤,在此不再赘述。在一个实施场景中,样本发票图像中预先标注有与各民办文本对应的实际目标文本区域,则可以将样本发票图像中的实际目标文本区域划分为多个子区域,且子区域与子文本对应,具体地,可以将实际目标文本区域等比例划分为多个子区域,在得到多个子区域之后,可以将多个子区域进行文本行投影,得到子文本的边缘,利用子文本的边缘,得到与子文本对应的实际子文本区域。在一个具体的实施场景中,文本行投影利用沿着文本行的方向对文本行进行投影得到的投影值集合,要比其他方向投影值集合的方差大这一特点,得到文本边缘;在另一个具体的实施场景中,可以将与子文本的边缘平行且相距一预设距离(例如,4个像素、5个像素、6个像素等)的边缘,作为子文本区域的边缘,进而利用子文本区域的边缘,确定得到子文本区域,从而实际子文本区域与实际子文本区域中的子文本两者边缘的延长线不相交,进而能够降低训练得到的文本检测模型在后续发票识别过程中,检测得到的目标文本区域重叠的概率,提高发票识别的准确性。
步骤S42:利用文本检测模型对样本发票图像进行检测,得到样本发票图像中与各目标文本的子文本对应的预测子文本区域。
具体可以参阅前述实施例中的相关步骤。
步骤S43:利用实际子文本区域与预测子文本区域,确定文本检测模型的损失值。
具体地,可以根据实际子文本区域与预测子文本区域的中心位置差异,实际子文本区域与预测子文本区域的区域尺寸差异,分别确定一位置损失值、一尺寸损失值,从而将上述损失值进行加权处理,得到文本检测模型的损失值。在一个实施场景中,文本检测模型还检测得到预测子文本区域的置信度,从而可以根据实际子文本区域的置信度(例如,统一预设为1)和预测子文本区域的置信度之间的差异,确定一置信度损失值,从而将上述位置损失值、尺寸损失值和置信度损失值进行加权处理,得到文本检测模型的损失值,在此不做限定。
步骤S44:利用损失值,调整文本检测模型的参数。
具体地,可以采用随机梯度下降(Stochastic Gradient Descent,SGD)、批量梯度下降(Batch Gradient Descent,BGD)、小批量梯度下降(Mini-Batch Gradient Descent,MBGD)等方式,利用损失值对文本检测模型的参数进行调整,其中,批量梯度下降是指在每一次迭代时,使用所有样本来进行参数更新;随机梯度下降是指在每一次迭代时,使用一个样本来进行参数更新;小批量梯度下降是指在每一次迭代时,使用一批样本来进行参数更新,在此不再赘述。
在一个实施场景中,还可以设置一训练结束条件,当满足训练结束条件时,可以结束对文本检测模型的训练。具体地,训练结束条件可以包括:损失值小于一预设损失阈值,且损失值不再减小;当前训练次数达到预设次数阈值(例如,500次、1000次等),在此不做限定。
上述方案,通过利用文本检测模型对样本发票图像进行检测,得到样本发票图像中与各目标文本的子文本对应的预测子文本区域,从而利用样本发票图像中所标注的实际子文本区域与预测子文本区域,确定文本检测模型的损失值,进而利用损失值,调整文本检测模型的参数,故能够有利于提高后续发票识别的准确性。
请参阅图5,图5是本申请发票识别装置50一实施例的框架示意图。发票识别装置50包括图像获取模块51、文本检测模块52、区域合并模块53和文本识别模块54,图像获取模块51用于获取待识别发票图像;文本检测模块52用于利用文本检测模型对待识别发票图像进行检测,得到待识别发票图像中的若干子文本区域;区域合并模块53用于将满足预设距离条件的子文本区域合并得到目标文本区域;文本识别模块54用于利用文本识别模型对目标文本区域进行文本识别,得到待识别发票图像的发票信息。
上述方案,通过利用文本检测模型对获取的待识别发票进行检测,从而得到待识别发票中的若干子文本区域,并将满足预设距离条件的子文本区域合并得到目标文本区域,进而利用文本识别模型对目标文本区域进行文本识别,得到待识别发票的发票信息,故通过文本检测模型对待识别发票进行检测,以及通过文本识别模型对目标文本区域进行文本识别,能够不受背景、亮度等干扰,且由于文本检测模型能够检测得到待识别发票中若干子文本区域,并对子文本区域进行合并得到对应一目标文本区域,故能够降低目标文本区域重叠的概率,从而能够降低目标文本之间的相互干扰,进而能够提高发票识别的准确性。
在一些实施例中,区域合并模块53包括距离获取子模块,用于获取子文本区域的中心位置之间的第一距离、第一距离在水平方向上的第二距离、第一距离在垂直方向上的第三距离、子文本区域的最近边缘之间的第四距离中的至少一者,区域合并模块53包括区域筛选子模块,用于筛选第一距离、第二距离、第三距离、第四距离中的至少一者满足预设距离条件的子文本区域,对应得到一组子文本区域,区域合并模块53包括区域合并子模块,用于将每组子文本区域中的子文本区域进行合并处理,得到目标文本区域。
区别于前述实施例,通过获取子文本区域的中心位置之间的第一距离、第一距离在水平方向上的第二距离、第一距离在垂直方向上的第三距离、子文本区域的最近边缘之间的第四距离中的至少一者,从而筛选第一距离、第二距离、第三距离、第四距离中的至少一者满足预设距离条件的子文本区域,对应得到一组子文本区域,进而将每组子文本区域中的子文本区域进行合并处理,得到目标文本区域,能够提高筛选得到的每组子文本区域的准确性,进而能够提高目标文本区域的准确性,有利于提高后续文本识别的准确性。
在一些实施例中,预设距离条件包括以下至少一者:第一距离小于第一预设阈值,第二距离小于第二预设阈值,第三距离小于第三预设阈值,第四距离小于第四预设阈值。
在一些实施例中,区域合并子模块包括区域确定单元,用于确定每组子文本区域中第一距离最远的两个子文本区域,区域合并子模块包括区域获得单元,用于基于确定的两个子文本区域的边缘,得到目标文本区域。
在一些实施例中,发票识别装置50还包括倾斜角度获取模块,用于获取目标文本区域的倾斜角度,发票识别装置50还包括倾斜矫正模块,用于将目标文本区域旋转倾斜角度,以对目标文本区域进行倾斜矫正。
区别于前述实施例,通过获取目标文本区域的倾斜角度,并将目标文本区域旋转倾斜角度,以对目标文本区域进行倾斜矫正,能够将目标文本的文字方向旋转至水平,进而能够有利于提高后续文本识别的准确性。
在一些实施例中,倾斜角度获取模块包括区域确定子模块,用于确定目标文本区域中子文本区域的中心位置最远的两个子文本区域,倾斜角度获取模块包括角度确定子模块,用于将确定的两个子文本区域中心位置的连线与水平方向之间的夹角,作为倾斜角度。
在一些实施例中,倾斜角度获取模块包括中心拟合子模块,用于利用预设拟合方式对目标文本区域中子文本区域的中心位置进行拟合,得到一拟合线,倾斜角度获取模块夹角获取子模块,用于将拟合线与水平方向之间的夹角,作为倾斜角度。
在一些实施例中,发票识别装置50还包括方向角度获取模块,用于利用方向检测模型对待识别发票图像进行检测,得到待识别发票图像的方向角度,发票识别装置50还包括方向矫正模块,用于将待识别发票图像旋转方向角度,以对待识别发票图像进行方向矫正。
区别于前述实施例,利用方向检测模型对待识别发票图像进行检测,得到待识别发票图像的方向角度,并将待识别发票图像旋转方向角度,以对待识别发票图像进行方向矫正,能够将待识别发票图像旋转至水平,从而能够有利于提高后续文本检测的准确性。
在一些实施例中,方向角度获取模块包括区域图像获取子模块,用于获取待识别发票图像中预设区域处的区域图像,方向角度获取模块包括方向角度获取子模块,用于利用方向检测模型对区域图像进行检测,得到方向角度。
区别于前述实施例,通过获取待识别发票图像中预设区域处的区域图像,并利用方向检测模型对区域图像进行检测,得到方向角度,能够有利于降低背景对方向角度检测的干扰,提高方向角度的准确性。
在一些实施例中,发票识别装置50还包括信息分类模块,用于对发票信息进行分类处理,得到发票信息的信息类别,发票识别装置50还包括信息输出模块,用于输出各个发票信息及其信息类别。
区别于前述实施例,通过对发票信息进行分类处理,得到发票信息的信息类别,并输出各个发票信息及其信息类别,能够使发票信息结构化,从而能够提高用户体验。
在一些实施例中,信息分类模块包括规则获取子模块,用于获取预先设置的信息类别及信息类别的正则化表达式,信息分类模块包括规则匹配子模块,用于利用正则化表达式对发票信息进行匹配,得到发票信息的信息类别。
请参阅图6,图6是本申请文本检测模型的训练装置60一实施例的框架示意图。文本检测模型的训练装置60包括图像获取模块61、文本检测模块62、损失确定模块63和参数调整模块64,图像获取模块61用于获取样本发票图像,其中,样本发票图像中标注有与各目标文本的子文本对应的实际子文本区域;文本检测模块62用于利用文本检测模型对样本发票图像进行检测,得到样本发票图像中与各目标文本的子文本对应的预测子文本区域;损失确定模块63用于利用实际子文本区域与预测子文本区域,确定文本检测模型的损失值;参数调整模块64用于利用损失值,调整文本检测模型的参数。
上述方案,通过利用文本检测模型对样本发票图像进行检测,得到样本发票图像中与各目标文本的子文本对应的预测子文本区域,从而利用样本发票图像中所标注的实际子文本区域与预测子文本区域,确定文本检测模型的损失值,进而利用损失值,调整文本检测模型的参数,故能够有利于提高后续发票识别的准确性。
在一些实施例中,样本发票图像中标注有与各目标文本对应的实际目标文本区域,文本检测模型的训练装置60还包括区域划分模块,用于将样本发票图像中实际目标文本区域划分为多个子区域,其中,子区域与子文本对应,文本检测模型的训练装置60还包括行投影模块,用于将多个子区域进行文本行投影,得到子文本的边缘,文本检测模型的训练装置60还包括区域确定模块,用于利用子文本的边缘,得到与子文本对应的实际子文本区域。
区别于前述实施例,通过将样本发票图像中实际目标文本区域划分为多个子区域,且子区域与子文本对应,并将多个子区域进行文本行投影,得到子文本的边缘,从而利用子文本的边缘,得到与子文本对应的实际子文本区域,能够降低实际子文本区域与子文本两者边缘之间的差异,并提高对子文本进行标注的效率。
请参阅图7,图7是本申请电子设备70一实施例的框架示意图。电子设备70包括相互耦接的存储器71和处理器72,存储器71存储有程序指令,处理器72用于执行程序指令以实现上述任一发票识别方法实施例中的步骤,或实现上述任一文本检测模型的训练方法实施例中的步骤。在一个具体的实施场景中,电子设备70可以包括但不限于:手机、平板电脑等移动设备。在另一个具体的实施场景中,电子设备70还可以包括微型计算机、服务器等设备。
具体而言,处理器72用于控制其自身以及存储器71以实现上述任一发票识别方法实施例中的步骤,或实现上述任一文本检测模型的训练方法实施例中的步骤。处理器72还可以称为CPU(Central Processing Unit,中央处理单元)。处理器72可能是一种集成电路芯片,具有信号的处理能力。处理器72还可以是通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器72可以由多个集成电路芯片共同实现。
上述方案,能够提高发票识别的准确性。
请参阅图8,图8为本申请存储装置80一实施例的框架示意图。存储装置80存储有能够被处理器运行的程序指令801,程序指令801用于实现上述任一发票识别方法实施例中的步骤,或实现上述任一文本检测模型的训练方法实施例中的步骤。
上述方案,能够提高发票识别的准确性。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (14)

1.一种发票识别方法,其特征在于,包括:
获取待识别发票图像;
利用文本检测模型对所述待识别发票图像进行检测,得到所述待识别发票图像中的若干子文本区域;
将满足预设距离条件的所述子文本区域合并得到目标文本区域;
利用文本识别模型对所述目标文本区域进行文本识别,得到所述待识别发票图像的发票信息。
2.根据权利要求1所述的发票识别方法,其特征在于,所述将满足预设距离条件的所述子文本区域合并得到目标文本区域包括:
获取所述子文本区域的中心位置之间的第一距离、所述第一距离在水平方向上的第二距离、所述第一距离在垂直方向上的第三距离、所述子文本区域的最近边缘之间的第四距离中的至少一者;
筛选所述第一距离、所述第二距离、所述第三距离、所述第四距离中的至少一者满足所述预设距离条件的所述子文本区域,对应得到一组所述子文本区域;
将每组所述子文本区域中的所述子文本区域进行合并处理,得到所述目标文本区域。
3.根据权利要求2所述的发票识别方法,其特征在于,所述预设距离条件包括以下至少一者:所述第一距离小于第一预设阈值,所述第二距离小于第二预设阈值,所述第三距离小于第三预设阈值,所述第四距离小于第四预设阈值。
4.根据权利要求2所述的发票识别方法,其特征在于,所述将每组所述子文本区域中的所述子文本区域进行合并处理,得到所述目标文本区域包括:
确定每组所述子文本区域中所述第一距离最远的两个所述子文本区域;
基于确定的两个所述子文本区域的边缘,得到所述目标文本区域。
5.根据权利要求1所述的发票识别方法,其特征在于,所述将满足预设距离条件的所述子文本区域合并得到目标文本区域之后,以及利用文本识别模型对所述目标文本区域进行文本识别,得到所述待识别发票图像的发票信息之前,所述方法还包括:
获取所述目标文本区域的倾斜角度;
将所述目标文本区域旋转所述倾斜角度,以对所述目标文本区域进行倾斜矫正。
6.根据权利要求5所述的发票识别方法,其特征在于,所述获取所述目标文本区域的倾斜角度包括:
确定所述目标文本区域中所述子文本区域的中心位置最远的两个所述子文本区域;
将确定的两个所述子文本区域中心位置的连线与水平方向之间的夹角,作为所述倾斜角度;
或者,利用预设拟合方式对所述目标文本区域中所述子文本区域的中心位置进行拟合,得到一拟合线,
将所述拟合线与水平方向之间的夹角,作为所述倾斜角度。
7.根据权利要求1所述的发票识别方法,其特征在于,所述利用文本检测模型对所述待识别发票图像进行检测,得到所述待识别发票图像中的若干子文本区域之前,所述方法还包括:
利用方向检测模型对所述待识别发票图像进行检测,得到所述待识别发票图像的方向角度;
将所述待识别发票图像旋转所述方向角度,以对所述待识别发票图像进行方向矫正。
8.根据权利要求7所述的发票识别方法,其特征在于,所述利用方向检测模型对所述待识别发票图像进行检测,得到所述待识别发票图像的方向角度包括:
获取所述待识别发票图像中预设区域处的区域图像;
利用所述方向检测模型对所述区域图像进行检测,得到所述方向角度。
9.根据权利要求1所述的发票识别方法,其特征在于,所述利用文本识别模型对所述目标文本区域进行文本识别,得到所述待识别发票图像的发票信息之后,所述方法还包括:
对所述发票信息进行分类处理,得到所述发票信息的信息类别;
输出各个所述发票信息及其信息类别。
10.根据权利要求9所述的发票识别方法,其特征在于,所述对所述发票信息进行分类处理,得到所述发票信息的信息类别包括:
获取预先设置的所述信息类别及所述信息类别的正则化表达式;
利用所述正则化表达式对所述发票信息进行匹配,得到所述发票信息的信息类别。
11.一种文本检测模型的训练方法,其特征在于,包括:
获取样本发票图像,其中,所述样本发票图像中标注有与各目标文本的子文本对应的实际子文本区域;
利用所述文本检测模型对所述样本发票图像进行检测,得到所述样本发票图像中与各所述目标文本的子文本对应的预测子文本区域;
利用所述实际子文本区域与所述预测子文本区域,确定所述文本检测模型的损失值;
利用所述损失值,调整所述文本检测模型的参数。
12.根据权利要求11所述的训练方法,其特征在于,所述样本发票图像中标注有与各所述目标文本对应的实际目标文本区域;所述方法还包括:
将所述样本发票图像中所述实际目标文本区域划分为多个子区域,其中,所述子区域与所述子文本对应;
将所述多个子区域进行文本行投影,得到所述子文本的边缘;
利用所述子文本的边缘,得到与所述子文本对应的实际子文本区域。
13.一种电子设备,其特征在于,包括相互耦接的存储器和处理器,所述存储器存储有程序指令,所述处理器用于执行所述程序指令以实现权利要求1至10任一项所述的发票识别方法,或实现权利要求11至12任一项所述的文本检测模型的训练方法。
14.一种存储装置,其特征在于,存储有能够被处理器运行的程序指令,所述程序指令用于实现权利要求1至10任一项所述的发票识别方法,或实现权利要求11至12任一项所述的文本检测模型的训练方法。
CN202010526072.5A 2020-06-11 2020-06-11 发票识别方法及相关模型的训练方法以及相关设备、装置 Active CN111814785B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010526072.5A CN111814785B (zh) 2020-06-11 2020-06-11 发票识别方法及相关模型的训练方法以及相关设备、装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010526072.5A CN111814785B (zh) 2020-06-11 2020-06-11 发票识别方法及相关模型的训练方法以及相关设备、装置

Publications (2)

Publication Number Publication Date
CN111814785A true CN111814785A (zh) 2020-10-23
CN111814785B CN111814785B (zh) 2024-03-29

Family

ID=72845745

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010526072.5A Active CN111814785B (zh) 2020-06-11 2020-06-11 发票识别方法及相关模型的训练方法以及相关设备、装置

Country Status (1)

Country Link
CN (1) CN111814785B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257712A (zh) * 2020-10-29 2021-01-22 湖南星汉数智科技有限公司 一种火车票图像摆正方法、装置、计算机装置及计算机可读存储介质
CN112598000A (zh) * 2021-03-03 2021-04-02 北京世纪好未来教育科技有限公司 题目识别方法、装置、电子设备及计算机存储介质
CN112818823A (zh) * 2021-01-28 2021-05-18 建信览智科技(北京)有限公司 一种基于票据内容和位置信息的文本抽取方法
CN112949653A (zh) * 2021-02-23 2021-06-11 科大讯飞股份有限公司 文本识别方法以及电子设备、存储装置
CN113361253A (zh) * 2021-05-28 2021-09-07 北京金山数字娱乐科技有限公司 识别模型训练方法及装置
CN113673497A (zh) * 2021-07-21 2021-11-19 浙江大华技术股份有限公司 文本检测方法、终端及其计算机可读存储介质
CN113688834A (zh) * 2021-07-27 2021-11-23 深圳中兴网信科技有限公司 车票识别方法、车票识别系统及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108446621A (zh) * 2018-03-14 2018-08-24 平安科技(深圳)有限公司 票据识别方法、服务器及计算机可读存储介质
CN109284750A (zh) * 2018-08-14 2019-01-29 北京市商汤科技开发有限公司 票据识别方法及装置、电子设备及存储介质
CN109919014A (zh) * 2019-01-28 2019-06-21 平安科技(深圳)有限公司 Ocr识别方法及其电子设备
CN110348441A (zh) * 2019-07-10 2019-10-18 深圳市华云中盛科技有限公司 增值税发票识别方法、装置、计算机设备及存储介质
CN110647829A (zh) * 2019-09-12 2020-01-03 全球能源互联网研究院有限公司 一种票据的文本识别方法及系统
WO2020107866A1 (zh) * 2018-11-30 2020-06-04 平安科技(深圳)有限公司 一种文字区域获取方法、装置、存储介质及终端设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108446621A (zh) * 2018-03-14 2018-08-24 平安科技(深圳)有限公司 票据识别方法、服务器及计算机可读存储介质
WO2019174130A1 (zh) * 2018-03-14 2019-09-19 平安科技(深圳)有限公司 票据识别方法、服务器及计算机可读存储介质
CN109284750A (zh) * 2018-08-14 2019-01-29 北京市商汤科技开发有限公司 票据识别方法及装置、电子设备及存储介质
WO2020107866A1 (zh) * 2018-11-30 2020-06-04 平安科技(深圳)有限公司 一种文字区域获取方法、装置、存储介质及终端设备
CN109919014A (zh) * 2019-01-28 2019-06-21 平安科技(深圳)有限公司 Ocr识别方法及其电子设备
CN110348441A (zh) * 2019-07-10 2019-10-18 深圳市华云中盛科技有限公司 增值税发票识别方法、装置、计算机设备及存储介质
CN110647829A (zh) * 2019-09-12 2020-01-03 全球能源互联网研究院有限公司 一种票据的文本识别方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
蒋冲宇;鲁统伟;闵峰;熊寒颖;胡记伟;: "基于神经网络的发票文字检测与识别方法", 武汉工程大学学报, no. 06 *
邱晓欢;吴?超;: "一种基于改进EAST网络和改进CRNN网络的火车票站名识别系统", 南方职业教育学刊, no. 06 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257712A (zh) * 2020-10-29 2021-01-22 湖南星汉数智科技有限公司 一种火车票图像摆正方法、装置、计算机装置及计算机可读存储介质
CN112257712B (zh) * 2020-10-29 2024-02-27 湖南星汉数智科技有限公司 一种火车票图像摆正方法、装置、计算机装置及计算机可读存储介质
CN112818823A (zh) * 2021-01-28 2021-05-18 建信览智科技(北京)有限公司 一种基于票据内容和位置信息的文本抽取方法
CN112818823B (zh) * 2021-01-28 2024-04-12 金科览智科技(北京)有限公司 一种基于票据内容和位置信息的文本抽取方法
CN112949653A (zh) * 2021-02-23 2021-06-11 科大讯飞股份有限公司 文本识别方法以及电子设备、存储装置
CN112949653B (zh) * 2021-02-23 2024-04-16 科大讯飞股份有限公司 文本识别方法以及电子设备、存储装置
CN112598000A (zh) * 2021-03-03 2021-04-02 北京世纪好未来教育科技有限公司 题目识别方法、装置、电子设备及计算机存储介质
CN113361253A (zh) * 2021-05-28 2021-09-07 北京金山数字娱乐科技有限公司 识别模型训练方法及装置
CN113361253B (zh) * 2021-05-28 2024-04-09 北京金山数字娱乐科技有限公司 识别模型训练方法及装置
CN113673497A (zh) * 2021-07-21 2021-11-19 浙江大华技术股份有限公司 文本检测方法、终端及其计算机可读存储介质
CN113688834A (zh) * 2021-07-27 2021-11-23 深圳中兴网信科技有限公司 车票识别方法、车票识别系统及计算机可读存储介质

Also Published As

Publication number Publication date
CN111814785B (zh) 2024-03-29

Similar Documents

Publication Publication Date Title
CN111814785B (zh) 发票识别方法及相关模型的训练方法以及相关设备、装置
US10783367B2 (en) System and method for data extraction and searching
US11151369B2 (en) Systems and methods for classifying payment documents during mobile image processing
CN107798299B (zh) 票据信息识别方法、电子装置及可读存储介质
JP6250014B2 (ja) モバイル画像キャプチャおよび処理のためのシステムならびに方法
JP2016517587A (ja) モバイル装置を用いて取込まれたデジタル画像におけるオブジェクトの分類
CN109829453A (zh) 一种卡证中文字的识别方法、装置以及计算设备
CN109766778A (zh) 基于ocr技术的发票信息录入方法、装置、设备及存储介质
US20180253852A1 (en) Method and device for locating image edge in natural background
CN112016438A (zh) 一种基于图神经网络识别证件的方法及系统
CN111353497A (zh) 一种身份证信息的识别方法和装置
US10776434B1 (en) System and method for document data extraction, data indexing, data searching and data filtering
CN110443159A (zh) 数字识别方法、装置、电子设备及存储介质
US11023720B1 (en) Document parsing using multistage machine learning
US11436852B2 (en) Document information extraction for computer manipulation
CN111445058A (zh) 数据分析方法、装置、设备及计算机可读存储介质
US11106908B2 (en) Techniques to determine document recognition errors
WO2021092797A1 (zh) 图像的配准方法、终端以及计算机存储介质
CN114140649A (zh) 票据分类方法、票据分类装置、电子设备和存储介质
CN113268567A (zh) 多属性文本匹配方法、装置、设备和存储介质
CN112866797A (zh) 一种视频处理方法、装置、电子设备及存储介质
CN111277465A (zh) 一种异常数据报文检测方法、装置及电子设备
CN111768346A (zh) 身份证背面图像的校正方法、装置、设备及存储介质
CN111768345A (zh) 身份证背面图像的校正方法、装置、设备及存储介质
CN112396057A (zh) 一种字符识别方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant