1.本技术涉及计算机技术领域,特别是涉及一种卡证信息检测方法、装置、计算机设备和存储介质。
背景技术:
2.随着技术的发展,自动检测卡证代替人工检测卡证的场景越来越常见。目前,对于卡证识别,较为常用的有ocr识别技术,用此技术提高相应场景的自动化程度减少人工工作量,是一直以来都需要解决的问题。
3.在某些应用场景中,用户上传的图片中可能包含重叠放置的一张或多张卡证,而该应用场景下所需的卡证信息仅为其中的一张卡证的部分信息,此时需先从图片中准确识别出各卡证,然后再对卡证中的信息进行识别,目前的通用的ocr模型,尚不能解决这类图片的准确识别。
技术实现要素:
4.基于此,有必要针对上述技术问题,提供一种能够识别多张卡证的卡证信息检测方法、装置、计算机设备和存储介质。
5.一种卡证信息检测方法,所述方法包括:
6.获取待识别图片;
7.对所述待识别图片进行文本检测,得到所述待识别图片中的各文本检测框;
8.确定各所述文本检测框的自定义中点线,根据各所述自定义中点线获取各所述文本检测框的属性信息;所述自定义中点线为所述文本检测框的各短边中点的连接线;
9.利用各所述文本检测框的属性信息进行聚类,得到聚类结果;
10.根据聚类结果确定卡证检测结果;所述卡证检测结果包括在特定方向上是否存在两张以上卡证。
11.在其中的一个实施例中,所述文本检测框的属性信息包括:所述文本检测框的中心点横坐标,以及所述自定义中点线与预设坐标系的横轴夹角;
12.所述利用文本检测框的属性信息进行聚类,得到聚类结果,包括:
13.分别以所述文本检测框的中心点横坐标,以及自定义中点线与预设坐标系的横轴夹角作为两个聚类维度进行两次聚类,得到包含一个分类的第一聚类结果,以及包含两个分类的第二聚类结果。
14.在其中的一个实施例中,所述根据聚类结果确定卡证检测结果,包括:
15.确定所述第一聚类结果中,各点与所在聚类结果的中心点的第一距离平均值,确定所述第二聚类结果中,各点与所在聚类结果的中心点的第二距离平均值;
16.确定所述第二距离平均值与第一距离平均值的比值;
17.将所述比值与预设阈值进行大小比较,得到大小比较结果;
18.根据所述大小比较结果,确定所述卡证检测结果。
19.在其中的一个实施例中,根据所述第一比值和第二比值分别与对应的预设阈值的大小比较结果,确定所述卡证检测结果,包括:
20.若所述大小比较结果为比值大于预设阈值,确定所述卡证检测结果包括在倾斜方向或水平方向上存在两张以上卡证。
21.在其中的一个实施例中,在根据聚类结果确定卡证检测结果之后,还包括:
22.根据卡证检测结果将文本检测框按照预定方向输入文本识别模块,得到文本识别结果;
23.对所述文本识别结果进行模板匹配,得到一张卡证的完整卡证信息。
24.在其中的一个实施例中,在对所述文本识别结果进行模板匹配,得到一张卡证的完整卡证信息之后,还包括:
25.获取标准卡证信息;
26.结合所述标准卡证信息从所述完整卡证信息中筛选出所述卡证信息的目标字段信息。
27.在其中的一个实施例中,在结合所述标准卡证信息从所述完整卡证信息中筛选出所述卡证信息的目标字段信息之后,还包括:
28.从所述目标字段信息中确定婚假的申请人信息、登记日期;
29.根据所述申请人信息从系统中获取对应的婚假信息;
30.将所述婚假信息与所述申请人信息、所述登记日期进行信息匹配,若信息匹配则婚假通过。
31.一种卡证信息检测装置,所述装置包括:
32.获取模块,用于获取待识别图片;
33.文本检测模块,用于对所述待识别图片进行文本检测,得到所述待识别图片中的各文本检测框;
34.属性信息获取模块,用于确定各所述文本检测框的自定义中点线,根据各所述自定义中点线获取各所述文本检测框的属性信息;所述自定义中点线为所述文本检测框的各短边中点的连接线;
35.聚类模块,用于利用各所述文本检测框的属性信息进行聚类,得到聚类结果;
36.卡证检测模块,用于根据聚类结果确定卡证检测结果;所述卡证检测结果包括在特定方向上是否存在两张以上卡证。
37.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述卡证信息检测方法的步骤。
38.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述卡证信息检测方法的步骤。
39.上述卡证信息检测方法、装置、计算机设备和存储介质,对于获取的待识别图片,首先进行文本检测得到文本检测框的信息,然后确定各文本检测框的自定义中点线,根据各自定义中点线获取各文本检测框的属性信息,其中,自定义中点线为文本检测框的各短边中点的连接线;利用各文本检测框的属性信息进行聚类,得到聚类结果;最后根据聚类结果得到在特定方向上是否存在两张以上卡证的卡证检测结果。上述方法,通过从图片中识别的文本检测框的属性信息进行聚类,得到聚类结果,对聚类结果进行分析可得到图片中
是否在特定方向上包含两张以上的卡证;确定图片中卡证的数量和排列方向,这一信息可用于对卡证中信息的识别,解决多张卡证识别的问题。
附图说明
40.图1为一个实施例中卡证信息检测方法的流程示意图;
41.图2为一个实施例中根据聚类结果确定卡证检测结果的流程示意图;
42.图3为另一个实施例中卡证信息检测方法的流程示意图;
43.图4为另一个实施例中卡证信息检测方法的流程示意图;
44.图5为另一个实施例中卡证信息检测方法的流程示意图;
45.图6为一个具体实施例中卡证信息检测方法的流程示意图;
46.图7(1)为一个具体实施例中一张图片中存在多张证件的示意图;
47.图7(2)为一个具体实施例中一张图片中存在多张证件的示意图;
48.图8为一个实施例中卡证信息检测装置的结构框图;
49.图9为一个实施例中计算机设备的内部结构图。
具体实施方式
50.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
51.在一个实施例中,如图1所示,提供了一种卡证信息检测方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括步骤s110至步骤s150。
52.步骤s110,获取待识别图片。
53.其中,待识别图片为需要进行卡证识别的图片;待识别图片可以由用户上传,也可以是通过图像采集装置采集得到,或者还可以从数据库中获取;可以理解地,在其它实施例中也可以通过其它方式获取需要进行卡证识别的待识别图片。卡证表示卡片、证件等。
54.步骤s120,对待识别图片进行文本检测,得到待识别图片中的各文本检测框。
55.文本是指书面语言的表现形式,任何由书写所固定下来的任何话语,都可以成为一个文本。在本实施例中,对待识别图片进行文本检测是指对待识别图片中的所有文本进行检测,得到待识别图片中各文本分别对应的文本检测框。文本检测可以采用任意一种方法实现,文本通常为四边形,在一个具体实施例中,基于常规卡证的设置一般为四边形卡片或证件,对待识别图片进行文本检测的算法为east(an efficient and accurate scene text detector,一种高效准确的场景文本检测器),该算法可实现四边形文本的有效检测。
56.一张卡证中通常会包含多项信息,每一项信息对应一个文本检测框,则一张卡证对应包含多个文本检测框。例如以身份证件为例,其中一面的信息通常包含“姓名:**”、“性别:*”、“出生日期:****年**月**日”、“卡证号码:******”、
…“
有效期限:****年**月**日至****年**月**日”等等信息;其中的每一项信息均可以作为一个文本,在文本检测时各对应一个文本检测框。
57.步骤s130,确定各文本检测框的自定义中点线,根据各自定义中点线获取各文本检测框的属性信息。
58.其中,自定义中点线为文本检测框的各短边中点的连接线;在一个实施例中,文本检测框为矩形框,短边表示的是矩形的宽所在边,一个文本检测框包括两条短边,进而可得到两条短边的中点,将该两个中点连接,即可得到该文本检测框的自定义中点线。可以理解地,一个文本检测框对应一条自定义中点线。
59.在根据文本识别得到待识别图片中的各文本检测框中之后,对于各文本检测框,分别识别出其中的短边,并在短边中确定中点位置,并将一个文本检测框的中点连接得到该文本检测框对应的自定义中点线。
60.其中,文本检测框的属性信息是指文本检测框的一些属性;在一个实施例中,文本检测框的属性信息包括文本检测框对应的自定义中点线与预设坐标系的横坐标轴之间的夹角、以及文本检测框对应的中心点在预设坐标系中的坐标值。其中预设坐标系可以根据实际需求选取合适的原点进行坐标轴的设置。
61.步骤s140,利用各文本检测框的属性信息进行聚类,得到聚类结果。
62.将物理或抽象对象的集合分成由类似的对象组成的多个类的过程被称为聚类。由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相异。在本实施例中,以文本检测框的属性信息作为聚类的维度,进行聚类,可得到对应属性信息的聚类结果。
63.其中,聚类可通过任意一种聚类方式实现;在一个实施例中,对文本检测框的属性信息进行聚类采用的方法包括:k-means(k均值聚类)聚类、均值偏移聚类算法、单滑动窗口的均值偏移聚类、dbscan(density-based spatial clustering of applications with noise,基于密度的噪声应用空间聚类)笑脸聚类或者层次聚类方法。
64.进一步地,在一个实施例中,文本检测框的属性信息包括:文本检测框的中心点在预设坐标系中的横坐标,以及文本检测框对应的自定义中点线与预设坐标系的横轴夹角。在本实施例中,利用文本检测框的属性信息进行聚类,得到聚类结果,包括:以文本检测框的中心点的横坐标作为第一维度,以文本检测框对应的自定义中点线与预设坐标系的横轴夹角作为第二维度,基于第一维度和第二维度的特征对文本检测框进行两次聚类,得到包含一个分类的第一聚类结果,以及包含两个分类的第二聚类结果。
65.其中,文本检测框的中心点也即自定义中点线的中点。在确定预设坐标系以及确定文本检测框的中心点的位置之后,可得到中心点在预设坐标系的坐标点,中心点的横坐标即该中心点在预设坐标系的横坐标轴方向上的坐标值;自定义中点线与预设坐标系的横轴夹角,表示自定义中点线或者自定义中点线的延长线与坐标系横轴相交所产生的夹角。
66.在一个实施例中,预设坐标系为二维直角坐标系,预设坐标系可根据实际情况进行设置,例如可以将待识别图片的一个角点作为预设坐标系的原点,选定的两个相互垂直的方向作为预设坐标系的两个坐标轴所在方向。在一个具体实施例中,将待识别图片的左上角作为坐标系原点,水平方向作为横轴所在方向,竖直方向作为纵轴所在方向,得到预设坐标系。其中,选取不同原点或者不同坐标轴方向,仅影响自定义中点线与横坐标轴的夹角数值和/或文本检测框的中心点横坐标数值,对于利用属性信息进行聚类的步骤并不产生影响。
67.进一步地,在一个具体实施例中,聚类可采用k-means聚类方式,即以中心点横坐标、横轴夹角这两个聚类维度,分别进行k=1和k=2进行聚类,得到的聚类结果记为第一聚类结果和第二聚类结果。
68.在一个具体实施例中,利用各文本检测框的属性信息进行k-means聚类;k-means聚类是一种迭代求解的聚类分析算法,其目的是对于给定的样本集,按照样本之间的距离(也就是相似程度)大小;将样本集划分为k个簇(即类别);其步骤是,将数据分为k组,则随机选取k个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。
69.本实施例中,利用了预设坐标系,以各文本检测框的中心点横坐标、自定义中点线与坐标系的横轴夹角作为两个聚类维度,进行两次聚类,可得到文本检测框的两个聚类结果(包含一个分类和包含两个分类的聚类结果);其中聚类结果分别从中心点横坐标、自定义中点线与坐标系的横轴夹角两个方面反映文本检测框的特征信息,后续可用于对卡证中的信息进行分析。
70.步骤s150,根据聚类结果确定卡证检测结果;卡证检测结果包括在特定方向上是否存在两张以上卡证。
71.在得到聚类结果之后,对其进行分析可得到卡证的检测结果。在一个实施例中,如图2所示,根据聚类结果确定卡证检测结果,包括步骤s151至步骤s154。
72.步骤s151,确定第一聚类结果中,各点与所在聚类结果的中心点的第一距离平均值;确定第二聚类结果中各点与所在聚类结果的中心点的第二距离平均值。
73.其中,聚类结果中包含的点,对应的是文本检测框;在本实施例中,聚类结果中的点对应包含了文本检测框的中心点横坐标,和自定义中点线与预设坐标系的横轴夹角两个属性。
74.由上述实施例可知,第一聚类结果中仅包含一个分类,即所有点均属于同一个聚类;在一个实施例中,对于第一聚类结果中,确定各点与所在聚类结果的中心点的平均值,包括:计算第一聚类结果的中心点,分别计算各点与该中心点的距离,即可计算距离平均值,在本实施例中记为第一距离平均值。
75.第二聚类结果中包含两个分类,即所有点被划分为两个不同的聚类,记为第一目标聚类和第二目标聚类;在一个实施例中,确定第一目标聚类和第二目标聚类的第一中心点和第二中心点,分别计算第一目标聚类中各点与第一中心点的距离,分别计算第二目标聚类中各点与第二中心点的距离,然后对所有距离值取平均值,即第二距离平均值。
76.在另一个实施例中,对于第二聚类结果中,确定各点与所在聚类结果的中心点的平均值,包括:计算第一目标聚类的第一中心点,分别计算第一目标聚类中各点与该第一中心点的距离,即可计算第一目标聚类的距离平均值;以同样的方式可计算得到第二目标聚类的距离平均值,然后将在本实施例中第一目标聚类的距离平均值和第二目标聚类的距离平均值的平均值,作为第二距离平均值。
77.其中,在一个实施例中,计算两点之间的距离可以通过欧几里德距离、余弦相似度
等方式实现。
78.步骤s152,确定第二距离平均值与第一距离平均值的比值。
79.步骤s153,将比值与预设阈值进行大小比较,得到大小比较结果。
80.其中,预设阈值可根据实际情况预先进行设置。在一个实施例中,预设阈值的确定包括步骤:随机选择n张仅包含1张卡证的第一组样本图片,以及n张在特定方向上存在2张以上卡证的第二组样本图片;以随机选择的这两组样本,分别进行以下步骤:文本框检测,确定文本框的自定义中点线、文本检测框的中心点;以文本检测框的中心点横坐标、自定义中点线与横轴的夹角作为两个维度进行两次聚类,得到包含一个分类的第一样本聚类结果,和包含两个分类的第二样本聚类结果;然后分别计算各样本聚类结果中各点与所在聚类结果中心点的距离平均值,记为第一样本距离平均值、第二样本距离平均值。然后对于仅包含1张卡证的样本组计算第二样本距离平均值与第一样本距离平均值的比值;对于包含2张以上卡证的样本组计算第二样本距离平均值与第一样本距离平均值的比值,根据两个样本组的比值确定明显分隔的α作为预设阈值;在一个具体实施例中,预设阈值α=1.5。
81.步骤s154,根据大小比较结果,确定卡证检测结果。
82.进一步地,在一个实施例中,根据大小比较结果,确定卡证检测结果,包括:若大小比较结果为比值大于预设阈值,确定卡证检测结果包括在倾斜方向或水平方向上存在两张以上卡证。
83.在一个实施例中,特定方向是指水平方向或者倾斜方向;其中倾斜方向表示与水平方向存在不为零的夹角的方向。其中,水平方向根据待识别图片确定。
84.本实施例中,利用文本检测框的中心点横坐标、以及自定义中点线与横坐标轴的夹角作为两个维度进行两次聚类,根据两个聚类结果进行分析,可确定待识别图片中在水平方向和倾斜方向是否存在两张卡证,确定卡证数量之后有利于提高后续识别卡证信息的效率和准确率。
85.上述卡证信息检测方法,对于获取的待识别图片,首先进行文本检测得到文本检测框的信息,然后确定各文本检测框的自定义中点线,根据各自定义中点线获取各文本检测框的属性信息,其中,自定义中点线为文本检测框的各短边中点的连接线;利用各文本检测框的属性信息进行聚类,得到聚类结果;最后根据聚类结果得到在特定方向上是否存在两张以上卡证的卡证检测结果。上述方法,通过从图片中识别的文本检测框的属性信息进行聚类,得到聚类结果,对聚类结果进行分析可得到图片中是否在特定方向上包含两张以上的卡证;确定图片中卡证的数量和排列方向,这一信息可用于对卡证中信息的识别,解决多张卡证识别的问题。
86.进一步地,在一个实施例中,如图3所示,在根据聚类结果确定卡证检测结果之后,还包括步骤s310和步骤s320。
87.步骤s310,根据卡证检测结果将文本检测框按照预定方向输入文本识别模块,得到文本识别结果。
88.在一个实施例中,预定方向可根据实际需求进行预先设置。例如在一个具体实施例中,将预定方向设置为竖直方向从上至下。进一步地,若在竖直方向的同一位置包括多个文本检测框,按照水平方向从左至右的顺序将各文本检测框输入到文本识别模块中进行识别。本实施例中,以竖直方向从上之下作为预定方向,更优的适用于文本在卡证中从上至下
的顺序,与文本在待识别图片中的文本从上至下的顺序相同的情形。在另一个实施例中,也可以在获取到卡证中文本检测框从上至下的顺序在待识别图片中对应的方向作为预定方向。
89.在另一个实施例中,预定方向也可根据对待识别图片的文本检测框确定。在检测得到待识别图片的文本检测框之后,可得到文本检测框的长边和短边方向,以文本检测框的短边方向确定为预定方向。本实施例中,考虑到实际情况中待识别图片中卡证的方向可能存在旋转的情况,因此根据文本检测框确定预定方向,可提高文字识别的效率和准确率。
90.在一个实施例中,根据卡证检测结果将文本检测框按照预定方向输入文本识别模块,得到文本识别结果,包括:若卡证检测结果为在特定方向上包含两张卡证,则将两个聚类结果中对应包括的文本检测框分别按照预定方向输入文本识别模块,得到两个聚类结果分别对应的文本识别结果;若卡证结果为在特定方向仅包含一张卡证,则将各文本检测框按照预定方向输入文本识别模块。
91.在本实施例中,根据卡证检测结果将文本检测框按照预定方向输入文本识别模块,得到的文本识别结果为按照一定顺序排列的文本识别结果。并且如果根据卡证检测结果确定待识别图片包含两张卡证,可将两个聚类结果分别进行文本识别,得到的文本识别结果分别对应图片中识别的两张卡证中信息的文本识别结果。
92.在一个实施例中,对文本检测框进行文本识别可通过任意一种方式实现;在一个具体实施例中,采用卷积神经网络(cnn)中的densenet(densely connected convolutional networks,密接卷积网络),损失函数为权重时间连接分类weight ctc loss(weight connectionist temporal classisfication loss,重量连接暂时分类丢失)。
93.步骤s320,对文本识别结果进行模板匹配,得到一张卡证的完整卡证信息。
94.在一个实施例中,对文本识别结果进行模板匹配,得到一张卡证的完整卡证信息,包括:获取标准卡证信息,将文本识别结果依次与标准卡证信息中的关键字段进行匹配,将与关键字段完整连续匹配成功的文本识别结果确定为完整卡证信息。标准卡证信息中包含该卡证中应当包含的所有信息,在本实施例中记为关键字段,例如“姓名”、“出生日期”、“身份证号”等等;依次将各文本识别结果与标准卡证信息的各关键字段进行匹配,将连续匹配成功的文本识别结果确定为完整卡证信息。其中,各文本识别结果与标准卡证信息的各关键字段进行匹配时,依次以标准卡证信息中从上往下的顺序进行匹配。
95.在另一个实施例中,文本识别结果包括两个,分别将两个文本识别结果分别与标准卡证信息的关键字段依次进行匹配,将连续匹配成功更多的文本识别结果确定为完整卡证信息。
96.本实施例中,对待识别图片中各文本检测框依次进行文本识别,并利用标准卡证信息的关键字段与文本识别的结果依次进行匹配,从而可以从各个文本检测框对应的文本识别结果中得到单张卡证的信息,即便待识别图片中存在多张卡证,也可通过上述方法从中分离出单张包含完整信息的卡证,进而可用于具体场景的卡证信息的分析。同时利用标准卡证信息进行模板匹配,还可以用于在竖直方向上包含两张以上卡证的情形识别出卡证的数量和方向,并从其中分离出一张完整的卡证。
97.在一个实施例中,如图4所示,在对文本识别结果进行模板匹配,得到一张卡证的
完整卡证信息之后,还包括步骤s410和步骤s420:
98.步骤s410,获取标准卡证信息。
99.步骤s420,结合标准卡证信息从完整卡证信息中筛选出卡证信息的目标字段信息。
100.在一些实施例中,将上述卡证信息检测方法应用于具体的场景时,所需的信息可能是单张卡证中的部分信息,通过本实施例中的方法即可实现自动从识别的卡证信息中筛选出所需要的目标字段信息。
101.在一个实施例中,目标字段可根据实际应用场景确定,例如在身份验证的应用场景中,目标字段可能是身份证件中的“姓名”、“身份证号码”等;在用到结婚证件进行流程审批的应用场景中,目标字段可能是结婚证件中的“持证人姓名”、“登记日期”等等,并由其中的“持证人姓名”确定实际的申请人。
102.进一步地,在一个实施例中,如图5所示,在将上述方法应用于婚假稽核的应用场景中时,在结合标准卡证信息从完整卡证信息中筛选出卡证信息的目标字段信息之后,还包括步骤s510至步骤s530。
103.步骤s510,从目标字段信息中确定婚假的申请人信息、登记日期。
104.在本实施例中可根据待识别图片确定对应的申请信息为婚假。在一个实施例中,从目标字段信息中确定婚假的申请人信息,包括:将持证人或者姓名确定为申请人信息,从文本识别结果中提取出登记日期。
105.步骤s520,根据申请人信息从系统中获取对应的婚假信息。
106.在一个实施例中,从系统获取对应的婚假信息表示的是从系统中获取申请人是否具备婚假,以及婚假的可用时间。
107.步骤s530,将婚假信息与所述申请人信息、登记日期进行信息匹配,若信息匹配则婚假通过。
108.在一个具体实施例中,对申请人信息的身份进行核查,将登记日期与申请人婚假的可用时间进行对比,可确定婚假是否可以通过。
109.本实施例中,可对婚假的申请进行自动稽核,减少人工的工作量,提高婚假稽核的检测效率。
110.在一个具体实施例中,如图6所示,上述卡证信息检测方法应用于婚假自动稽核的场景中,包括步骤:文本检测、文本识别、模板匹配和校验输出。
111.其中,多卡证重叠情况包括三种:水平重叠:两重叠结婚证近乎平行,整体夹角小于10
°
;垂直重叠:两重叠结婚证近乎垂直,整体夹角小于10
°
;倾斜重叠:两重叠结婚证不平行也不垂直,整体夹角大于等于10
°
。
112.具体地址,上述卡证信息检测方法包括以下步骤:
113.第一步,待获取的待识别图片进行文本检测,得到文本检测框(文本检测算法为east,该算法可实现四边形文本的有效检测):
114.1.求得各个文本检测框短边上的中点,连接文本检测框中各自两条短边上的中点,得到自定义中点线。
115.2.计算各文本检测框的中心点(可借助自定义中点线的中点确定),以该中点的横坐标x作为聚类的一个维度。
116.3.计算各检测框中自定义中点线与坐标轴x轴的夹角θ,以该角度θ作为聚类的另一个维度。
117.4.将上述两个维度特征作为k-means的聚类特征进行聚类。
118.5.分别设置聚类类别数量k=1和k=2,进行聚类。
119.6.分别计算聚类类别数量为1和2时,各点到该点所属聚类中心点距离的平均值d1、d2。
120.7.比较d1和d2之间的比值:
121.(1)如果d2/d1>α,则认为在倾斜方向或水平方向上,存在2张结婚证图片。
122.(2)如果d2/d1≤α,则认为在倾斜方向或水平方向上,存在1张结婚证图片。
123.其中,α由随机选择10张单结婚证图片和10张倾斜方向或水平方向上存在2张结婚证的图片计算得出。以随机选择的这两组样本,进行上述1-6,再计算组内的d2/d1,得到明显分隔的α,在本实施例中,α=1.5。然后分别按聚类结果,将文本检测框从上至下传送至识别模块。
124.第二步,对文本检测框进行文本识别:
125.文本识别模块对各类别中排序后的文本框,依次进行识别,得到文本识别结果。
126.本实施例中,使用识别模型为卷积神经网络(cnn)中的densenet,损失函数为权重时间连接分类weight ctc loss。
127.第三步,对文本识别结果进行模板匹配:
128.1.由于标准卡证信息中,关键字段按从上到下的顺序依次为:持证人姓名、登记日期、姓名1、身份证号1、姓名2、身份证号2;6个字段主要是三类文字信息,姓名、日期、身份证号码,因此,首先将模板定为:姓名、日期、姓名、身份证号码、姓名、身份证号码。
129.2.根据文本识别结果,分别将各类别中(1类或2类,2类则是检测模块认定存在重叠的样本)所识别的内容归类到姓名、日期、身份证号码。
130.3.对各聚类结果中的文本识别结果,进行自上而下的模板滑窗匹配操作,聚类结果与标准卡证信息相同的窗口则记为匹配,否则记为不匹配。
131.4.选定连续匹配窗口数量最多的匹配结果,作为最终的处理结果。
132.通过上述操作,即可有效取出各种情形(包括垂直重叠情况)下,信息更多的那一张结婚证信息,作为识别得到的完整卡证信息。如图7(1)、图7(2)所示分别为一个具体实施例中一张图片中存在多张证件的示意图。
133.最后,进行校验输出:
134.在得到完整卡证信息之后执行校验过程,即对婚假申请进行稽核。在一个实施例中,如果在持证人姓名和姓名1都存在的情况下,执行以下校验操作:
135.1.比较持证人姓名和姓名1是否相同,直接输出姓名1的识别结果;
136.2.如果持证人姓名和姓名1不相同,且持证人姓名识别置信度大于姓名1的识别置信度,将持证人姓名的识别结果作为姓名1的识别结果。
137.最终输出有效识别的登记日期、姓名1、身份证号1、姓名2、身份证号2。对于目标字段无法识别的结果,输出空格占位,进行人工校验。
138.上述卡证信息检测方法,对于图片中包含多张卡证的情形,从其中分离出单张卡证,并由单张卡证信息筛选出目标字段信息;应用于婚假稽核的应用场景时,由于各结婚证
之间目标字段对应的个人信息顺序一致,上述方法直接对目标字段个人信息文本部分进行检测,后续通过识别结果结合后处理来完成信息的映射,而无需对目标字段关键词进行检测。通过在文本检测模块和文本识别模块分别增加相应的后处理操作,来解决多卡证折叠情况下,目标字段的分离对于整个婚假申请的稽核流程可自动完成,可有效提高婚假稽核效率,节约相应人力成本。
139.应该理解的是,虽然上述实施例中所涉及的各流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述实施例中所涉及的各流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
140.在一个实施例中,如图8所示,提供了一种卡证信息检测装置,包括:获取模块810、文本检测模块820、属性信息获取模块830、聚类模块840和卡证检测模块850,其中:
141.获取模块810,用于获取待识别图片。
142.文本检测模块820,用于对待识别图片进行文本检测,得到待识别图片中的各文本检测框。
143.属性信息获取模块830,用于确定各文本检测框的自定义中点线,根据各自定义中点线获取各文本检测框的属性信息;自定义中点线为文本检测框的各短边中点的连接线。
144.聚类模块840,用于利用各文本检测框的属性信息进行聚类,得到聚类结果。
145.卡证检测模块850,用于根据聚类结果确定卡证检测结果;卡证检测结果包括在特定方向上是否存在两张以上卡证。
146.上述卡证信息检测装置,对于获取的待识别图片,首先进行文本检测得到文本检测框的信息,然后确定各文本检测框的自定义中点线,根据各自定义中点线获取各文本检测框的属性信息,其中,自定义中点线为文本检测框的各短边中点的连接线;利用各文本检测框的属性信息进行聚类,得到聚类结果;最后根据聚类结果得到在特定方向上是否存在两张以上卡证的卡证检测结果。上述装置,通过从图片中识别的文本检测框的属性信息进行聚类,得到聚类结果,对聚类结果进行分析可得到图片中是否在特定方向上包含两张以上的卡证;确定图片中卡证的数量和排列方向,这一信息可用于对卡证中信息的识别,解决多张卡证识别的问题。
147.在一个实施例中,文本检测框的属性信息包括:文本检测框的中心点横坐标,以及自定义中点线与预设坐标系的横轴夹角;在本实施例中,上述聚类模块840具体用于:分别以文本检测框的中心点横坐标,以及自定义中点线与预设坐标系的横轴夹角作为两个聚类维度进行两次聚类,得到包含一个分类的第一聚类结果,以及包含两个分类的第二聚类结果。
148.在一个实施例中,上述装置的卡证检测模块850,包括:距离平均值确定单元,用于确定第一聚类结果中,各点与所在聚类结果的中心点的第一距离平均值,确定第二聚类结果中,各点与所在聚类结果的中心点的第二距离平均值;比值确定单元,用于确定第二距离平均值与第一距离平均值的比值;大小比较单元,用于将比值与预设阈值进行大小比较,得
到大小比较结果;卡证检测结果确定单元,用于根据大小比较结果,确定卡证检测结果。
149.在一个实施例中,上述装置的大小比较单元具体用于:若大小比较结果为比值大于预设阈值,确定卡证检测结果包括在倾斜方向或水平方向上存在两张以上卡证。
150.在一个实施例中,上述装置还包括:文本识别模块,用于根据卡证检测结果将文本检测框按照预定方向输入文本识别模块,得到文本识别结果;单张卡证信息输出模块,用于对文本识别结果进行模板匹配,得到一张卡证的完整卡证信息。
151.在一个实施例中,上述装置还包括:标准卡证信息获取模块,用于获取标准卡证信息;目标字段输出模块,用于结合标准卡证信息从完整卡证信息中筛选出卡证信息的目标字段信息。
152.在一个实施例中,上述装置还包括:申请人信息确定模块,用于从目标字段信息中确定婚假的申请人信息、登记日期;婚假信息获取模块,用于根据申请人信息从系统中获取对应的婚假信息;婚假稽核模块,用于将婚假信息与所述申请人信息、登记日期进行信息匹配,若信息匹配则婚假通过。
153.关于卡证信息检测装置的具体限定可以参见上文中对于卡证信息检测方法的限定,在此不再赘述。上述卡证信息检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
154.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种卡证信息检测方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
155.本领域技术人员可以理解,图9中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
156.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
157.获取待识别图片;对待识别图片进行文本检测,得到待识别图片中的文本检测框;确定各文本检测框的自定义中点线,根据各自定义中点线获取各文本检测框的属性信息;自定义中点线为文本检测框的各短边中点的连接线;利用各文本检测框的属性信息进行聚类,得到聚类结果;根据聚类结果确定卡证检测结果;卡证检测结果包括在特定方向上是否存在两张以上卡证。
158.在一个实施例中,处理器执行计算机程序时还实现以下步骤:分别以文本检测框
的中心点横坐标,以及自定义中点线与预设坐标系的横轴夹角作为两个聚类维度进行两次聚类,得到包含一个分类的第一聚类结果,以及包含两个分类的第二聚类结果。
159.在一个实施例中,处理器执行计算机程序时还实现以下步骤:确定第一聚类结果中,各点与所在聚类结果的中心点的第一距离平均值,确定第二聚类结果中,各点与所在聚类结果的中心点的第二距离平均值;确定第二距离平均值与第一距离平均值的比值;将比值与预设阈值进行大小比较,得到大小比较结果;根据大小比较结果,确定卡证检测结果。
160.在一个实施例中,处理器执行计算机程序时还实现以下步骤:若大小比较结果为比值大于预设阈值,确定卡证检测结果包括在倾斜方向或水平方向上存在两张以上卡证。
161.在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据卡证检测结果将文本检测框按照预定方向输入文本识别模块,得到文本识别结果;对文本识别结果进行模板匹配,得到一张卡证的完整卡证信息。
162.在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取标准卡证信息;结合标准卡证信息从完整卡证信息中筛选出卡证信息的目标字段信息。
163.在一个实施例中,处理器执行计算机程序时还实现以下步骤:从目标字段信息中确定婚假的申请人信息、登记日期;根据申请人信息从系统中获取对应的婚假信息;将婚假信息与申请人信息、登记日期进行信息匹配,若信息匹配则婚假通过。
164.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取待识别图片;对待识别图片进行文本检测,得到待识别图片中的文本检测框;确定各文本检测框的自定义中点线,根据各自定义中点线获取各文本检测框的属性信息;自定义中点线为文本检测框的各短边中点的连接线;利用各文本检测框的属性信息进行聚类,得到聚类结果;根据聚类结果确定卡证检测结果;卡证检测结果包括在特定方向上是否存在两张以上卡证。
165.在一个实施例中,处理器执行计算机程序时还实现以下步骤:分别以文本检测框的中心点横坐标,以及自定义中点线与预设坐标系的横轴夹角作为两个聚类维度进行两次聚类,得到包含一个分类的第一聚类结果,以及包含两个分类的第二聚类结果。
166.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:确定第一聚类结果中,各点与所在聚类结果的中心点的第一距离平均值,确定第二聚类结果中,各点与所在聚类结果的中心点的第二距离平均值;确定第二距离平均值与第一距离平均值的比值;将比值与预设阈值进行大小比较,得到大小比较结果;根据大小比较结果,确定卡证检测结果。
167.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若大小比较结果为比值大于预设阈值,确定卡证检测结果包括在倾斜方向或水平方向上存在两张以上卡证。
168.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据卡证检测结果将文本检测框按照预定方向输入文本识别模块,得到文本识别结果;对文本识别结果进行模板匹配,得到一张卡证的完整卡证信息。
169.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取标准卡证信息;结合标准卡证信息从完整卡证信息中筛选出卡证信息的目标字段信息。
170.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:从目标字段信息
中确定婚假的申请人信息、登记日期;根据申请人信息从系统中获取对应的婚假信息;将婚假信息与申请人信息、登记日期进行信息匹配,若信息匹配则婚假通过。
171.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
172.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
173.以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
技术特征:
1.一种卡证信息检测方法,其特征在于,所述方法包括:获取待识别图片;对所述待识别图片进行文本检测,得到所述待识别图片中的文本检测框;确定各所述文本检测框的自定义中点线,根据各所述自定义中点线获取各所述文本检测框的属性信息;所述自定义中点线为所述文本检测框的各短边中点的连接线;利用所述文本检测框的属性信息进行聚类,得到聚类结果;根据聚类结果确定卡证检测结果;所述卡证检测结果包括在特定方向上是否存在两张以上卡证。2.根据权利要求1所述的方法,其特征在于,所述文本检测框的属性信息包括:所述文本检测框的中心点横坐标,以及所述自定义中点线与预设坐标系的横轴夹角;所述利用文本检测框的属性信息进行聚类,得到聚类结果,包括:分别以所述文本检测框的中心点横坐标,以及自定义中点线与预设坐标系的横轴夹角作为两个聚类维度进行两次聚类,得到包含一个分类的第一聚类结果,以及包含两个分类的第二聚类结果。3.根据权利要求2所述的方法,其特征在于,所述根据聚类结果确定卡证检测结果,包括:确定所述第一聚类结果中,各点与所在聚类结果的中心点的第一距离平均值,确定所述第二聚类结果中,各点与所在聚类结果的中心点的第二距离平均值;确定所述第二距离平均值与第一距离平均值的比值;将所述比值与预设阈值进行大小比较,得到大小比较结果;根据所述大小比较结果,确定所述卡证检测结果。4.根据权利要求3所述的方法,其特征在于,所述根据所述大小比较结果,确定所述卡证检测结果,包括:若所述大小比较结果为比值大于预设阈值,确定所述卡证检测结果包括在倾斜方向或水平方向上存在两张以上卡证。5.根据权利要求1至4任意一项所述的方法,其特征在于,在根据聚类结果确定卡证检测结果之后,还包括:根据卡证检测结果将文本检测框按照预定方向输入文本识别模块,得到文本识别结果;对所述文本识别结果进行模板匹配,得到一张卡证的完整卡证信息。6.根据权利要求5所述的方法,其特征在于,在对所述文本识别结果进行模板匹配,得到一张卡证的完整卡证信息之后,还包括:获取标准卡证信息;结合所述标准卡证信息从所述完整卡证信息中筛选出所述卡证信息的目标字段信息。7.根据权利要求6所述的方法,其特征在于,在结合所述标准卡证信息从所述完整卡证信息中筛选出所述卡证信息的目标字段信息之后,还包括:从所述目标字段信息中确定婚假的申请人信息、登记日期;根据所述申请人信息从系统中获取对应的婚假信息;将所述婚假信息与所述申请人信息、所述登记日期进行信息匹配,若信息匹配则婚假
通过。8.一种卡证信息检测装置,其特征在于,所述装置包括:获取模块,用于获取待识别图片;文本检测模块,用于对所述待识别图片进行文本检测,得到所述待识别图片中的各文本检测框;属性信息获取模块,用于确定各所述文本检测框的自定义中点线,根据各所述自定义中点线获取各所述文本检测框的属性信息;所述自定义中点线为所述文本检测框的各短边中点的连接线;聚类模块,用于利用各所述文本检测框的属性信息进行聚类,得到聚类结果;卡证检测模块,用于根据聚类结果确定卡证检测结果;所述卡证检测结果包括在特定方向上是否存在两张以上卡证。9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
技术总结
一种卡证信息检测方法、装置、计算机设备和存储介质,所述方法包括:获取待识别图片;对待识别图片进行文本检测,得到待识别图片中的各文本检测框;确定各文本检测框的自定义中点线,根据各自定义中点线获取各文本检测框的属性信息;自定义中点线为文本检测框的各短边中点的连接线;利用各文本检测框的属性信息进行聚类,得到聚类结果;根据聚类结果确定卡证检测结果;卡证检测结果包括在特定方向上是否存在两张以上卡证。上述方法通过对文本检测框的属性信息进行聚类,得到聚类结果,对其进行分析可得到图片中是否在特定方向上包含两张以上的卡证;确定图片中卡证的数量和排列方向,这一信息可用于对卡证中信息的识别,解决多张卡证识别的问题。卡证识别的问题。卡证识别的问题。
技术研发人员:徐汉飞 马佳炯 喻雨峰 朴安妮
受保护的技术使用者:顺丰科技有限公司
技术研发日:2020.11.19
技术公布日:2022/5/25
转载请注明原文地址:https://tc.8miu.com/read-22311.html