CN105069898B - 一种发票字条自动定位的方法及装置 - Google Patents

一种发票字条自动定位的方法及装置 Download PDF

Info

Publication number
CN105069898B
CN105069898B CN201510416790.6A CN201510416790A CN105069898B CN 105069898 B CN105069898 B CN 105069898B CN 201510416790 A CN201510416790 A CN 201510416790A CN 105069898 B CN105069898 B CN 105069898B
Authority
CN
China
Prior art keywords
invoice
bounding box
brief note
fraction
tranining database
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.)
Active
Application number
CN201510416790.6A
Other languages
English (en)
Other versions
CN105069898A (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.)
Guangzhou Dunhe Information Technology Co Ltd
Original Assignee
Guangzhou Dunhe Information 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 Guangzhou Dunhe Information Technology Co Ltd filed Critical Guangzhou Dunhe Information Technology Co Ltd
Priority to CN201510416790.6A priority Critical patent/CN105069898B/zh
Publication of CN105069898A publication Critical patent/CN105069898A/zh
Application granted granted Critical
Publication of CN105069898B publication Critical patent/CN105069898B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Character Input (AREA)

Abstract

本发明提出了一种发票字条自动化定位的方法,包括如下步骤:收集各种不同格式的发票并保存到训练数据库中;对训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记;接收需要识别的发票,遍历训练数据库中所有格式的发票,并将每种格式的发票上面标记的包围盒分别套用到需要识别的发票上;对套用在需要识别的发票上的包围盒进行识别并得到包围盒识别结果;根据包围盒识别结果,分别计算训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为需要识别的发票的格式。本发明还涉及一种实现上述方法的装置。实施本发明的发票字条自动化定位的方法及装置,具有以下有益效果:对发票字条的定位速度较快、定位效率较高。

Description

一种发票字条自动定位的方法及装置
技术领域
本发明涉及发票识别领域,特别涉及一种发票字条自动定位的方法及装置。
背景技术
在进行发票识别时,发票识别相对于其他素材的识别,其识别格式非常多。因为发票识别需要一个自动化系统,能够自动化定位字条的位置,但目前还不能做到对发票字条的自动定位。传统技术中,在对发票字条进行定位时,通常在寻找最优的字条的时,系统会对每种发票格式进行运算和匹配,引起大量的计算,导致系统计算时间大量上涨,造成对发票字条的定位速度较慢,定位效率较低。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述对发票字条的定位速度较慢、定位效率较低的缺陷,提供一种对发票字条的定位速度较快、定位效率较高的发票字条自动定位的方法及装置。
本发明解决其技术问题所采用的技术方案是:构造一种发票字条自动化定位的方法,包括如下步骤:
A)建立训练数据库,收集各种不同格式的发票并保存到所述训练数据库中;所述发票包括多个字条;
B)对所述训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记;
C)接收需要识别的发票,遍历所述训练数据库中所有格式的发票,并将每种格式的发票上面标记的包围盒分别套用到所述需要识别的发票上;
D)对套用在所述需要识别的发票上的包围盒进行识别并得到包围盒识别结果;
E)根据所述包围盒识别结果,分别计算所述训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为所述需要识别的发票的格式。
在本发明所述的发票字条自动化定位的方法中,在所述步骤D)中,使用开源OCR(光学字符识别)识别引擎对套用在所述需要识别的发票上的包围盒进行识别。
在本发明所述的发票字条自动化定位的方法中,在所述步骤B)和步骤C)之间还包括:
C0)计算所述训练数据库中每种格式的发票中每个字条的字符的出现概率。
在本发明所述的发票字条自动化定位的方法中,所述步骤E)进一步包括:
E1)计算出当前包围盒识别结果中每个字符的出现概率及其数量的乘积;
E2)将所述每个字符的出现概率及其数量的乘积进行相加得到所述当前包围盒的分数;
E3)找到所述当前包围盒所在的发票中剩余的包围盒,并按照所述步骤E1)和E2)的方式分别计算所述剩余包围盒的分数;
E4)将每个所述包围盒的分数进行相加后除以所述包围盒的个数,得到当前格式的发票的分数;
E5)判断是否遍历所述训练数据库中所有格式的发票,如是,找到分数最高的发票,并将所述分数最高的发票的格式作为所述需要识别的发票的格式;否则,找到下一种格式的发票中的包围盒,并返回所述步骤E1)。
在本发明所述的发票字条自动化定位的方法中,所述不同格式的发票为每种格式的发票中字条的分布位置不同。
本发明还涉及一种实现上述发票字条自动化定位的方法的装置,包括:
训练数据库建立单元:用于建立训练数据库,收集各种不同格式的发票并保存到所述训练数据库中;所述发票包括多个字条;
标记单元:用于对所述训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记;
套用单元:用于接收需要识别的发票,遍历所述训练数据库中所有格式的发票,并将每种格式的发票上面标记的包围盒分别套用到所述需要识别的发票上;
识别单元:用于对套用在所述需要识别的发票上的包围盒进行识别并得到包围盒识别结果;
字条定位单元:用于根据所述包围盒识别结果,分别计算所述训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为所述需要识别的发票的格式。
在本发明所述的装置中,在所述识别单元中,使用开源OCR识别引擎对套用在所述需要识别的发票上的包围盒进行识别。
在本发明所述的装置中,还包括:
字符出现概率计算单元:用于计算所述训练数据库中每种格式的发票中每个字条的字符的出现概率。
在本发明所述的装置中,所述字条定位单元进一步包括:
乘积计算模块:用于计算出当前包围盒识别结果中每个字符的出现概率及其数量的乘积;
当前包围盒获取模块:用于将所述每个字符的出现概率及其数量的乘积进行相加得到所述当前包围盒的分数;
剩余包围盒分数计算模块:用于找到所述当前包围盒所在的发票中剩余的包围盒,并按照所述乘积计算模块和当前包围盒获取模块的方式分别计算所述剩余包围盒的分数;
当前发票分数获取模块:用于将每个所述包围盒的分数进行相加后除以所述包围盒的个数,得到当前格式的发票的分数;
遍历判断模块:用于判断是否遍历所述训练数据库中所有格式的发票,如是,找到分数最高的发票,并将所述分数最高的发票的格式作为所述需要识别的发票的格式;否则,找到下一种格式的发票中的包围盒。
在本发明所述的装置中,所述不同格式的发票为每种格式的发票中字条的分布位置不同。
实施本发明的发票字条自动定位的方法及装置,具有以下有益效果:由于通过收集各种不同格式的发票并保存到训练数据库中,对训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记;将每种格式的发票上面标记的包围盒分别套用到需要识别的发票上;根据对包围盒识别结果,分别计算训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为需要识别的发票的格式,这样就能得到需要识别的发票上每个字条位置和类别,其不再需要对每种发票格式进行运算和匹配,这样会大大减小计算量,所以其对发票字条的定位速度较快、定位效率较高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明发票字条自动定位的方法及装置一个实施例中方法的流程图;
图2为所述实施例中根据包围盒识别结果,分别计算训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为需要识别的发票的格式的具体流程图;
图3为所述实施例中装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明发票字条自动化定位的方法及装置实施例中,其发票字条自动化定位的方法的流程图如图1所示。图1中,该发票字条自动化定位的方法包括如下步骤:
步骤S01建立训练数据库,收集各种不同格式的发票并保存到训练数据库中:本步骤中,建立训练数据库,收集各种不同格式的发票并保存到训练数据库中,值得一提的是,发票包括多个字条,例如:字条可以是发票抬头、发票代码、发票号码、发票金额、开票日期或开票人中的几个或全部;利用训练数据库中的发票格式可以对字条进行定位。不同格式的发票指的是每种格式的发票中字条的分布位置不同。例如:如果第一张发票中各个字条的分布位置和第二张发票中各个字条的分布位置不一样,这样就把第一张发票和第二张发票认为是不同格式的发票。
步骤S02对训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记:本步骤中,对训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记,具体来讲,对训练数据库中每种格式的发票中的每个字条分别画一个外框,这个外框就是包围盒,然后在外框的边界外标记该字条的所属类别,所属类别可以是发票抬头、发票代码、发票号码、发票金额、开票日期或开票人等等。
步骤S03接收需要识别的发票,遍历训练数据库中所有格式的发票,并将每种格式的发票上面标记的包围盒分别套用到需要识别的发票上:训练数据库中的每一张发票都代表一种格式。当我们接收到一张发票(接收的是发票的图片),需要从训练数据库中找出最有可能的格式的发票。本步骤中,接收需要识别的发票,遍历训练数据库中所有格式的发票,并将每种格式的发票上面标记的包围盒分别套用到需要识别的发票上,也就是将训练数据库中所有可能的包围盒套用到这个需要识别的发票上。
步骤S04对套用在需要识别的发票上的包围盒进行识别并得到包围盒识别结果:本步骤中,对套用在需要识别的发票上的包围盒进行识别并得到包围盒识别结果,具体的,本实施例中,使用开源OCR识别引擎对套用在需要识别的发票上的包围盒进行识别,并得到包围盒识别结果,值得一提的是,每个包围盒都会对应有一个包围盒识别结果。为了方便理解,假设训练数据库库中采集到两张发票,这里为了更加容易理解,假设只标记了两个包围盒,分别为发票代码和发票号码。分别将两张发票中的包围盒(发票代码和发票号码)套用在需要识别的发票上,为了方便描述,这两张发票分别称为第一发票和第二发票,第一发票中的两个包围盒分别称为第一包围盒和第二包围盒,第二发票中的两个包围盒分别称为第三包围盒和第四包围盒,使用开源OCR识别引擎对每个包围盒进行识别,假设第一包围盒的识别结果为144011420194,第二包围盒的识别结果为00162852,第三包围盒的识别结果为1483.7,第四包围盒的识别结果为空。当然,在本实施例的一些情况下,每个发票中包围盒的数量可以不是两个,可以是三个、四个或更多,具体为多少,要根据发票的用途和行业来确定。
步骤S05根据包围盒识别结果,分别计算训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为需要识别的发票的格式:本步骤中,根据包围盒识别结果,分别计算训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为需要识别的发票的格式,也就是需要识别的发票的格式与分数最高的发票的格式相同,由于分数最高的发票中的包围盒及文字内容已经事先标记好,这样就能很快得到需要识别的发票中各个字条的所在位置以及所属类别(即发票抬头、发票代码、发票号码、发票金额、开票日期或开票人等等)。其不再需要对每种发票格式进行运算和匹配,这样会大大减小计算量,所以其对发票字条的定位速度较快、定位效率较高。
对于本实施例而言,在上述步骤S02和步骤S03之间还包括如下步骤:
计算训练数据库中每种格式的发票中每个字条的字符的出现概率:本步骤中,计算训练数据库中每种格式的发票中每个字条的字符(可以是汉字、数字、拉丁字母等等)的出现概率,值得一提的是,字符的出现概率是对整个训练数据库的统计,而不是对单一样图片的统计。假设获得以下字符的出现概率:发票代码中每个字符的出现概率为prob(‘0’)=0.1、prob(‘1’)=0.1、prob(‘2’)=0.1、prob(‘3’)=0.1、prob(‘4’)=0.1、prob(‘5’)=0.1、prob(‘6’)=0.1、prob(‘7’)=0.1、prob(‘8’)=0.1和prob(‘9’)=0.1;发票号码中每个字符的出现概率为prob(‘0’)=0.1、prob(‘1’)=0.1、prob(‘2’)=0.1、prob(‘3’)=0.1、prob(‘4’)=0.1、prob(‘5’)=0.1、prob(‘6’)=0.1、prob(‘7’)=0.1、prob(‘8’)=0.1和prob(‘9’)=0.1。其中,prob指字符的出现概率。
对于本实施例而言,上述步骤S05还可进一步细化,其细化后的流程图如图2所示。图2中,上述步骤S05进一步包括:
步骤S51计算出当前包围盒识别结果中每个字符的出现概率及其数量的乘积:本步骤中,计算出当前包围盒识别结果中每个字符的出现概率及其数量的乘积,即prob(char)*num(char),其中,prob(char)为字符的出现概率,num(char)为字符的数量,char为字符。
步骤S52将每个字符的出现概率及其数量的乘积进行相加得到当前包围盒的分数:本步骤中,将每个字符的出现概率及其数量的乘积进行相加得到当前包围盒的分数,也就是Σ(prob(char)*num(char))。
步骤S53找到当前包围盒所在的发票中剩余的包围盒,并按照步骤S51和S52的方式分别计算剩余包围盒的分数:本步骤中,找到当前包围盒所在的发票中剩余的包围盒,并按照步骤S51和S52的方式分别计算剩余包围盒的分数。
步骤S54将每个包围盒的分数进行相加后除以包围盒的个数,得到当前格式的发票的分数:本步骤中,将每个包围盒(同一个发票中的包围盒)的分数进行相加后除以包围盒的个数(同一发票中包围盒的数量),得到当前格式的发票的分数,也就是Σ(prob(char)*num(char))/包围盒个数。例如:根据上述第一包围盒识别结果144011420194,第二包围盒的识别结果00162852,可以得到训练数据库中第一发票中第一包围盒和第二包围盒中每个字符的数量为:num(‘0’)=4(第一包围盒:144011420194,第二包围盒:00162852),num(‘1’)=5(第一包围盒:144011420194,第二包围盒:00162852),num(‘2’)=3(第一包围盒:144011420194,第二包围盒:00162852),num(‘3’)=0(第一包围盒:144011420194,第二包围盒:00162852),num(‘4’)=4(第一包围盒:144011420194,第二包围盒:00162852),num(‘5’)=1(第一包围盒:144011420194,第二包围盒:00162852),num(‘6’)=1(第一包围盒:144011420194,第二包围盒:00162852),num(‘7’)=0(第一包围盒:144011420194,第二包围盒:00162852),num(‘8’)=1(第一包围盒:144011420194,第二包围盒:00162852),num(‘9’)=1(第一包围盒:144011420194,第二包围盒:00162852)。训练数据库中第一发票的分数为=[prob(‘0’)*num(‘0’)+prob(‘1’)*num(‘1’)+…+prob(‘9’)*num(‘9’)]/2=[0.1*4+0.1*5+…+0.1*1]/2=2/2=1。同理可得第二发票的分数为=[prob(‘0’)*num(‘0’)+prob(‘1’)*num(‘1’)+…+prob(‘9’)*num(‘9’)]/2=0.5/2=0.25。
步骤S55判断是否遍历训练数据库中所有格式的发票:本步骤中,判断是否遍历训练数据库中所有格式的发票,如果判断的结果为是,则执行步骤S57;否则,执行步骤S56。
步骤S56找到下一种格式的发票中的包围盒:如果上述步骤S55的判断结果为否,则执行本步骤。本步骤中,找到下一种格式的发票中的包围盒,并返回步骤S51。
步骤S57找到分数最高的发票,并将分数最高的发票的格式作为需要识别的发票的格式:如果上述步骤S55的判断结果为是,则执行本步骤。本步骤中,找到分数最高的发票,并将分数最高的发票的格式作为需要识别的发票的格式。对比上述第一发票的分数和第二发票的分数,其第一发票的分数最高,第一发票为最匹配的发票,这样就可以从训练数据库中选取第一发票的模版作为需要识别的发票的格式。其只需要计算每种格式的发票的分数,通过对比分数,将分数最高的发票的格式作为需要识别的发票的格式,这样就可以快速的得到需要识别的发票中字条的位置及所属类别。所以其大大提高了字条定位的速度以及定位的效率,同时由于不需要那么多的计算量,这样就大大降低了系统资源的消耗。
本实施例还涉及一种实现上述发票字条自动化定位的方法的装置,其结构示意图如图3所示。图3中,该装置包括训练数据库建立单元1、标记单元2、套用单元3、识别单元4和字条定位单元5;其中,训练数据库建立单元1用于建立训练数据库,收集各种不同格式的发票并保存到训练数据库中;每个发票包括多个字条;不同格式的发票为每种格式的发票中字条的分布位置不同;标记单元2用于对训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记;套用单元3用于接收需要识别的发票,遍历训练数据库中所有格式的发票,并将每种格式的发票上面标记的包围盒分别套用到需要识别的发票上;识别单元4用于对套用在需要识别的发票上的包围盒进行识别并得到包围盒识别结果;字条定位单元5用于根据包围盒识别结果,分别计算训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为需要识别的发票的格式。值得一提的是,在识别单元4中,使用开源OCR识别引擎对对套用在需要识别的发票上的包围盒进行识别。本实施例不再需要对每种发票格式进行运算和匹配,这样会大大减小计算量,所以其对发票字条的定位速度较快、定位效率较高。
本实施例中,该装置还包括字符出现概率计算单元30,字符出现概率计算单元30用于计算训练数据库中每种格式的发票中每个字条的字符的出现概率。
本实施例中,字条定位单元5进一步包括乘积计算模块51、当前包围盒获取模块52、剩余包围盒分数计算模块53、当前发票分数获取模块54和遍历判断模块55;其中,乘积计算模块51用于计算出当前包围盒识别结果中每个字符的出现概率及其数量的乘积;当前包围盒获取模块52用于将每个字符的出现概率及其数量的乘积进行相加得到当前包围盒的分数;剩余包围盒分数计算模块53用于找到当前包围盒所在的发票中剩余的包围盒,并按照乘积计算模块和当前包围盒获取模块的方式分别计算剩余包围盒的分数;当前发票分数获取模块54用于将每个包围盒的分数进行相加后除以包围盒的个数,得到当前格式的发票的分数;遍历判断模块55用于判断是否遍历训练数据库中所有格式的发票,如是,找到分数最高的发票,并将分数最高的发票的格式作为需要识别的发票的格式;否则,找到下一种格式的发票中的包围盒。
总之,在本实施例中,由于通过收集各种不同格式的发票并保存到训练数据库中,对训练数据库中每种格式的发票中的每个字条标记包围盒及文字内容,这里,文字内容指的是字条所属类别(发票抬头、发票代码、发票号码、发票金额、开票日期或开票人等等);将每种格式的发票上面标记的包围盒分别套用到需要识别的发票上,通过计算每种发票的分数,将分数最高的发票的格式作为需要识别的发票的格式,这样就能自动化识别发票的格式,对字条自动化定位。其不再需要对每种发票格式进行运算和匹配,这样会大大减小计算量,所以对发票字条的定位速度较快、定位效率较高。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种发票字条自动化定位的方法,其特征在于,包括如下步骤:
A)建立训练数据库,收集各种不同格式的发票并保存到所述训练数据库中;所述发票包括多个字条;所述字条是发票抬头、发票代码、发票号码、发票金额、开票日期或开票人中的几个或全部;利用训练数据库中的发票格式对字条进行定位,不同格式的发票指的是每种格式的发票中字条的分布位置不同;
B)对所述训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记;对所述训练数据库中每种格式的发票中的每个字条分别画一个外框,这个外框就是包围盒,然后在所述外框的边界外标记该字条的所属类别,所属类别是发票抬头、发票代码、发票号码、发票金额、开票日期或开票人;
C)接收需要识别的发票,遍历所述训练数据库中所有格式的发票,并将每种格式的发票上面标记的包围盒分别套用到所述需要识别的发票上;
D)对套用在所述需要识别的发票上的包围盒进行识别并得到包围盒识别结果;使用开源OCR识别引擎对每个包围盒进行识别;
E)根据所述包围盒识别结果,分别计算所述训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为所述需要识别的发票的格式;
在所述步骤B)和步骤C)之间还包括:
C0)计算所述训练数据库中每种格式的发票中每个字条的字符的出现概率;
所述字符的出现概率是对整个训练数据库的统计,而不是对单一样图片的统计。
2.根据权利要求1所述的发票字条自动化定位的方法,其特征在于,在所述步骤D)中,使用开源OCR识别引擎对套用在所述需要识别的发票上的包围盒进行识别。
3.根据权利要求1所述的发票字条自动化定位的方法,其特征在于,所述步骤E)进一步包括:
E1)计算出当前包围盒识别结果中每个字符的出现概率及其数量的乘积;
E2)将所述每个字符的出现概率及其数量的乘积进行相加得到所述当前包围盒的分数;
E3)找到所述当前包围盒所在的发票中剩余的包围盒,并按照所述步骤E1)和E2)的方式分别计算所述剩余包围盒的分数;
E4)将每个所述包围盒的分数进行相加后除以所述包围盒的个数,得到当前格式的发票的分数;
E5)判断是否遍历所述训练数据库中所有格式的发票,如是,找到分数最高的发票,并将所述分数最高的发票的格式作为所述需要识别的发票的格式;否则,找到下一种格式的发票中的包围盒,并返回所述步骤E1)。
4.一种实现如权利要求1所述的发票字条自动化定位的方法的装置,其特征在于,包括:
训练数据库建立单元:用于建立训练数据库,收集各种不同格式的发票并保存到所述训练数据库中;所述发票包括多个字条;所述字条是发票抬头、发票代码、发票号码、发票金额、开票日期或开票人中的几个或全部;利用训练数据库中的发票格式对字条进行定位,不同格式的发票指的是每种格式的发票中字条的分布位置不同;
标记单元:用于对所述训练数据库中每种格式的发票中的每个字条进行包围盒及文字内容的标记;对所述训练数据库中每种格式的发票中的每个字条分别画一个外框,这个外框就是包围盒,然后在所述外框的边界外标记该字条的所属类别,所属类别是发票抬头、发票代码、发票号码、发票金额、开票日期或开票人;
套用单元:用于接收需要识别的发票,遍历所述训练数据库中所有格式的发票,并将每种格式的发票上面标记的包围盒分别套用到所述需要识别的发票上;
识别单元:用于对套用在所述需要识别的发票上的包围盒进行识别并得到包围盒识别结果;使用开源OCR识别引擎对每个包围盒进行识别;
字条定位单元:用于根据所述包围盒识别结果,分别计算所述训练数据库中每种格式的发票的分数,并将分数最高的发票的格式作为所述需要识别的发票的格式;
还包括:
字符出现概率计算单元:用于计算所述训练数据库中每种格式的发票中每个字条的字符的出现概率;
所述字符的出现概率是对整个训练数据库的统计,而不是对单一样图片的统计。
5.根据权利要求4所述的装置,其特征在于,在所述识别单元中,使用开源OCR识别引擎对套用在所述需要识别的发票上的包围盒进行识别。
6.根据权利要求5所述的装置,其特征在于,所述字条定位单元进一步包括:
乘积计算模块:用于计算出当前包围盒识别结果中每个字符的出现概率及其数量的乘积;
当前包围盒获取模块:用于将所述每个字符的出现概率及其数量的乘积进行相加得到所述当前包围盒的分数;
剩余包围盒分数计算模块:用于找到所述当前包围盒所在的发票中剩余的包围盒,并按照所述乘积计算模块和当前包围盒获取模块的方式分别计算所述剩余包围盒的分数;
当前发票分数获取模块:用于将每个所述包围盒的分数进行相加后除以所述包围盒的个数,得到当前格式的发票的分数;
遍历判断模块:用于判断是否遍历所述训练数据库中所有格式的发票,如是,找到分数最高的发票,并将所述分数最高的发票的格式作为所述需要识别的发票的格式;否则,找到下一种格式的发票中的包围盒。
CN201510416790.6A 2015-07-15 2015-07-15 一种发票字条自动定位的方法及装置 Active CN105069898B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510416790.6A CN105069898B (zh) 2015-07-15 2015-07-15 一种发票字条自动定位的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510416790.6A CN105069898B (zh) 2015-07-15 2015-07-15 一种发票字条自动定位的方法及装置

Publications (2)

Publication Number Publication Date
CN105069898A CN105069898A (zh) 2015-11-18
CN105069898B true CN105069898B (zh) 2018-03-30

Family

ID=54499254

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510416790.6A Active CN105069898B (zh) 2015-07-15 2015-07-15 一种发票字条自动定位的方法及装置

Country Status (1)

Country Link
CN (1) CN105069898B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1482572A (zh) * 2003-06-27 2004-03-17 杭州信雅达系统工程股份有限公司 票据图象处理装置
CN101685498A (zh) * 2008-06-20 2010-03-31 富士通先端科技株式会社 帐票识别装置、方法、数据库生成装置、方法以及程序
CN101925904A (zh) * 2007-12-12 2010-12-22 3M创新有限公司 使用动态文档识别框架的文档验证
CN102208092A (zh) * 2011-05-25 2011-10-05 重庆市电力公司永川供电局 财务票据报销自动处理方法
CN103208004A (zh) * 2013-03-15 2013-07-17 北京英迈杰科技有限公司 票据信息区域自动识别和提取方法及设备
CN103984943A (zh) * 2014-05-30 2014-08-13 厦门大学 一种基于贝叶斯概率框架的场景文本识别方法
CN104732226A (zh) * 2015-03-31 2015-06-24 浪潮集团有限公司 一种字符识别方法和装置
CN104766077A (zh) * 2015-04-03 2015-07-08 北京奇虎科技有限公司 一种识别图片中的字符的方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1482572A (zh) * 2003-06-27 2004-03-17 杭州信雅达系统工程股份有限公司 票据图象处理装置
CN101925904A (zh) * 2007-12-12 2010-12-22 3M创新有限公司 使用动态文档识别框架的文档验证
CN101685498A (zh) * 2008-06-20 2010-03-31 富士通先端科技株式会社 帐票识别装置、方法、数据库生成装置、方法以及程序
CN102208092A (zh) * 2011-05-25 2011-10-05 重庆市电力公司永川供电局 财务票据报销自动处理方法
CN103208004A (zh) * 2013-03-15 2013-07-17 北京英迈杰科技有限公司 票据信息区域自动识别和提取方法及设备
CN103984943A (zh) * 2014-05-30 2014-08-13 厦门大学 一种基于贝叶斯概率框架的场景文本识别方法
CN104732226A (zh) * 2015-03-31 2015-06-24 浪潮集团有限公司 一种字符识别方法和装置
CN104766077A (zh) * 2015-04-03 2015-07-08 北京奇虎科技有限公司 一种识别图片中的字符的方法和装置

Also Published As

Publication number Publication date
CN105069898A (zh) 2015-11-18

Similar Documents

Publication Publication Date Title
CN105045780B (zh) 一种发票字条语义信息的识别方法及装置
CN106777275B (zh) 基于多粒度语义块的实体属性和属性值提取方法
CN103049750B (zh) 字符识别方法
CN109308476A (zh) 票据信息处理方法、系统及计算机可读存储介质
CN105975980B (zh) 监控图像标注质量的方法和装置
CN106201643B (zh) 数据解析方法及装置
CN107622255A (zh) 基于位置模板与语义模板的票据图像字段定位方法及系统
CN104036235B (zh) 基于叶片hog特征和智能终端平台的植物物种识别方法
CN109543614A (zh) 一种全文本差异比对方法及设备
CN107391675A (zh) 用于生成结构化信息的方法和装置
CN110457973A (zh) 一种票据识别的方法及系统
CN109325401A (zh) 基于边缘定位对题目区域进行标注、识别的方法及系统
CN106803093A (zh) 一种基于叶片纹理特征和iOS平台的植物物种识别方法
CN110516259A (zh) 一种技术关键词的识别方法、装置、计算机设备和存储介质
CN110263739A (zh) 基于ocr技术的图片表格识别方法
CN105246149B (zh) 地理位置的识别方法和装置
CN115171143A (zh) 一种电子发票全票面信息提取方法及系统
CN111259980A (zh) 标注数据的处理方法和装置
CN105069898B (zh) 一种发票字条自动定位的方法及装置
CN111383271B (zh) 一种基于图片的方向标注方法及装置
CN110096594A (zh) 一种短信范式库生成方法、装置及计算机存储设备
CN215495106U (zh) 一种标签处理设备
CN106127202A (zh) 一种图片中字符识别的方法以及装置
CN109840492A (zh) 基于深度学习网络的文档识别方法和终端
CN109710808A (zh) 一种xml文件的解析方法、系统、装置及可读存储介质

Legal Events

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