一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

证件识别模型的配置方法、装置、电子设备、存储介质与流程

2022-06-05 05:43:06 来源:中国专利 TAG:


1.本发明属于人工智能技术领域,尤其涉及一种证件识别模型的配置方法、装置、电子设备、存储介质。


背景技术:

2.目前,深度学习通常利用显卡完成,在利用深度学习模型进行证件识别的场景中,需要从证件图像中识别出文字信息,用于后续流程处理。由于不同证件的样式不同,通常会针对每种证件配置专用的识别模型,并通过各自的训练数据进行训练。
3.证件识别模型在初始化和使用过程中会占用显存,显卡的显存是有限的,为了确保证件识别模型正常运行,通常一张显卡只会封装一个证件识别模型,这就导致显卡的证件识别功能单一,而且剩余的显存较多,显存资源利用率不高,对于具有多种证件识别需求的识别系统而言,还需要配备多张显卡,导致硬件成本较高。


技术实现要素:

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.封装单元,用于根据多条所述识别路径,将所述共享模块和所述专用模块封装成多个目标功能组,其中,所述共享模块由多个所述目标模块组共享,所述专用功能模块由一个所述目标功能组独占;
41.第三方面,本发明实施例提供了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的证件识别模型的配置方法。
42.第四方面,本发明实施例提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序用于执行如第一方面所述的证件识别模型的配置方法。
43.本发明实施例包括:获取多个证件识别模型,所述证件识别模型用于从目标证件的图像中识别出证件信息,不同的所述证件识别模型所对应的所述目标证件不同;以功能模块粒度拆分全部的所述证件识别模型,得到多个功能模块,其中,每个所述证件识别模型至少拆分为两个所述功能模块,归属于同一个所述证件识别模型的不同所述功能模块的图像处理功能互不相同;将图像处理功能相同的所述功能模块集成为一个共享模块,将剩余的所述功能模块确定为专用模块;确定每个所述证件识别模型的识别路径,所述识别路径表征归属于同一个所述证件识别模型的所述功能模块之间的数据传递关系;根据多条所述识别路径,将所述共享模块和所述专用模块封装成多个目标功能组,其中,所述共享模块由多个所述目标模块组共享,所述专用功能模块由一个所述目标功能组独占;将多个所述目标功能组集成为目标识别模型,将所述目标识别模型配置至目标显卡。根据本实施例的技术方案,能够将识别功能相同的功能模块集成为一个共享模块,有效减少了目标识别模型中功能模块的数量,通过功能模块的共享大大减少了多个目标功能组对显存的需求,使得一张显卡中能够集成多种证件识别功能,提高显存资源的利用率,减少识别系统所需要的显卡数量,降低硬件成本。
44.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
45.附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
46.图1是本发明一个实施例提供的证件识别模型的配置方法的流程图;
47.图2是本发明另一个实施例提供的证件识别模型的功能模块示意图;
48.图3是本发明另一个实施例提供的目标识别模型的结构示意图;
49.图4是本发明另一个实施例提供的得到共享模块的流程图;
50.图5是本发明另一个实施例提供的训练专用模块的流程图;
51.图6是本发明另一个实施例提供的配置业务接口的流程图;
52.图7是本发明另一个实施例提供的配置图像分类模块的流程图;
53.图8是本发明另一个实施例提供的确定显卡可用的流程图;
54.图9是本发明另一个实施例提供的复制共享模块的流程图;
55.图10是本发明另一个实施例提供的证件识别模型的配置装置的结构图;
56.图11是本发明另一个实施例提供的电子设备的装置图。
具体实施方式
57.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
58.需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书、权利要求书或上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
59.本发明提供了一种证件识别模型的配置方法、装置、电子设备、存储介质,方法包括:获取多个证件识别模型,所述证件识别模型用于从目标证件的图像中识别出证件信息,不同的所述证件识别模型所对应的所述目标证件不同;以功能模块粒度拆分全部的所述证件识别模型,得到多个功能模块,其中,每个所述证件识别模型至少拆分为两个所述功能模块,归属于同一个所述证件识别模型的不同所述功能模块的图像处理功能互不相同;将图像处理功能相同的所述功能模块集成为一个共享模块,将剩余的所述功能模块确定为专用模块;确定每个所述证件识别模型的识别路径,所述识别路径表征归属于同一个所述证件识别模型的所述功能模块之间的数据传递关系;根据多条所述识别路径,将所述共享模块和所述专用模块封装成多个目标功能组,其中,所述共享模块由多个所述目标模块组共享,所述专用功能模块由一个所述目标功能组独占;将多个所述目标功能组集成为目标识别模型,将所述目标识别模型配置至目标显卡。根据本实施例的技术方案,能够将识别功能相同的功能模块集成为一个共享模块,有效减少了目标识别模型中功能模块的数量,通过功能模块的共享大大减少了多个目标功能组对显存的需求,使得一张显卡中能够集成多种证件识别功能,提高显存资源的利用率,减少识别系统所需要的显卡数量,降低硬件成本。
60.本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用装置。
61.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互装置、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
62.本发明实施例所提及的终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、车载计算机、智能家居、可穿戴电子设备、vr(virtual reality,虚拟现实)/ar(augmented reality,增强现实)设备等等;服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。
63.需要说明的是,本发明实施例的数据可以保存在服务器中,服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。
64.机器学习(machine learning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
65.计算机视觉技术(computer vision,cv)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建、自动驾驶、智慧交通等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
66.神经网络(neural network)是实现机器学习任务的一种方法,在机器学习领域谈论神经网络,一般是指“神经网络学习”。它是一种由许多简单元组成的网络结构,这种网络结构类似于生物神经系统,用来模拟生物与自然环境之间的交互,并且网络结构越多,神经网络的功能往往越丰富。神经网络是一个比较大的概念,针对语音、文本、图像等不同的学习任务,衍生出了更适用于具体学习任务的神经网络模型,如递归神经网络(recurrent neural network,rnn)、卷积神经网络(convolutional neural network,cnn)、全连接卷积神经网络(fully convolutional neural network,fcnn)等等。
67.如图1所示,图1是本发明一个实施例提供的一种证件识别模型的配置方法的流程图,该证件识别模型的配置方法包括但不限于有以下步骤:
68.步骤s110,获取多个证件识别模型,证件识别模型用于从目标证件的图像中识别出证件信息,不同的证件识别模型所对应的目标证件不同;
69.步骤s120,以功能模块粒度拆分全部的证件识别模型,得到多个功能模块,其中,每个证件识别模型至少拆分为两个功能模块,归属于同一个证件识别模型的不同功能模块的图像处理功能互不相同;
70.步骤s130,将图像处理功能相同的功能模块集成为一个共享模块,将剩余的功能
模块确定为专用模块;
71.步骤s140,确定每个证件识别模型的识别路径,识别路径表征归属于同一个证件识别模型的功能模块之间的数据传递关系;
72.步骤s150,根据多条识别路径,将共享模块和专用模块封装成多个目标功能组,其中,共享模块由多个目标模块组共享,专用功能模块由一个目标功能组独占;
73.步骤s160,将多个目标功能组集成为目标识别模型,将目标识别模型配置至目标显卡。
74.需要说明的是,本实施例的目标证件可以是身份证或驾驶证等证件,上述证件具有固定的布局方式,例如身份证正面以固定格式记载有用户的姓名、地址、身份证号等信息,反面以固定格式记载有有效期等信息,通过证件识别模型,能够从身份证中以文字方式提取出相对应的证件信息,从而将证件信息应用到后续的业务办理流程,本实施例仅涉及用于证件识别的模型配置,对于后续应用证件信息进行业务办理流程并不涉及,在此不多作赘述。
75.值得注意的是,本实施例的目标证件除了具有固定布局方式的证件以外,还可以是具有固定布局方式的银行卡等卡类,例如银行卡以固定的布局方式在正面记载卡号和归属的银行,本实施例对具体的识别对象的类型不作过多限定。
76.值得注意的是,由于同一种目标证件的信息布局位置是相同的,因此为了避免相同的功能重复封装,本实施例的多个证件识别模型可以是互不相同的目标证件的证件识别模型,例如图2所示,获取3个证件识别模型进行目标识别模型的配置,分别为证件识别模型1、证件识别模型2和证件识别模型3,其中,证件识别模型1所对应的目标证件为身份证、证件识别模型2所对应的目标证件为银行卡,证件识别模型3所对应的目标证件为驾驶证,在集成为目标识别模型之后,目标识别模型能够用于识别身份证、银行卡和驾驶证,将3个证件识别模型拆分为多个功能模块,通过专用模块和共享模块的封装和共享模块的共享,将3种识别能力封装到一个目标识别模型中,得到的目标识别模型如图3所示,从而实现多证件识别功能的集成,减少了识别系统所需要的识别模型的数量,减少了显卡的硬件成本。
77.需要说明的是,由于每个证件识别模型的识别过程需要进行多次不同的图像识别,例如文字检测、文字识别、文字方向判断、证件专有的特殊处理等,因此,本实施例以功能模块为粒度进行证件识别模型的拆分,得到功能模块能够独立完整地执行某一个图像识别处理,例如拆分到文字检测模块,能够对输入图像中是否具备文字进行检测,当然,本实施例以功能模块为粒度是处于方便整合共享模块,若出于实际需求,也可以以更大的粒度进行模块的拆分,拆分之后能够在一张显卡中封装多个证件的识别功能即可。
78.需要说明的是,同一个证件识别模型通常不需要执行相同的操作,例如不需要进行两次文字检测,因此同一个证件识别模型拆分出的功能模块所能够实现的图像处理功能互不相同,但是不同的证件识别模块之间可能具有相同的功能模块,例如每个证件识别模型在获取到图像之后,都需要进行文字方向的判断,以调整图像至合适的方向进行识别,因此无论目标证件是什么类型,其识别结果都是正向或者反向,图像处理功能是相同的,因此两个证件识别模型可以拆分得到具有相同图像处理功能的文字方向识别模块,作为共享模块。对于图像内容进行识别的功能模块而言,其图像处理功能通常不相同,例如对身份证进行身份证号码进行提取,以及对银行卡进行银行卡号码的提取,虽然都是进行号码提取,但
是身份证号码和银行卡号码的长度互不相同,因此两个功能模块的目标功能是不同的,属于具有不同的图像处理功能的专用模块。
79.值得注意的是,共享模块和专用模块的数量可以是任意,不同的证件识别模型可以具有多个图像处理功能相同的功能模块,例如多个证件识别模型都可以包括文字方向检测模块和文字识别模块,本实施例对共享模块和专用模块的数量不做过多限定。
80.需要说明的是,在将证件识别模型进行拆分成功能模块之后,为了集成得到的目标识别模型能够具备完整的识别的功能,需要确定每个证件识别模型的识别路径,即每个功能模块执行的先后顺序,例如图2所示,证件识别模型1包括共享模块1、共享模块2和专用模块1,获取到输入图像之后,先输入共享模块1,共享模块1执行处理后,将结果输入至共享模块2,共享模块2执行处理后将结果输入至专用模块1,从而完成整个识别流程,输出识别结果1。这个顺序在证件识别模型中是已知的,因此在将证件识别模型进行拆分后,确定其识别路径,根据识别路径进行后续的目标识别模型的封装。
81.需要说明的是,由于共享模块所能实现的图像处理功能相同,而每个功能模块在显卡中进行初始化和运行都需要分配显存资源,为了节约显存,可以将多个相同的共享模块集成为一个,再根据识别路径对共享模块和专用模块进行功能封装,使得得到的多个目标功能组共享一个共享模块,例如图2和图3所示,证件识别模型1拆分得到共享模块1、共享模块2和专用模块1,证件识别模型2拆分得到共享模块1、共享模块2和专用模块2,证件识别模型3拆分得到共享模块1、共享模块2、共享模块3和专用模块3,则根据上述实施例的叙述,保留一个共享模块1和一个共享模块2,使得封装到的目标识别模型如图3所示,在该目标识别模型中,只有一个共享模块1、共享模块2和共享模块3,还具备专用模块1、专用模块2和专用模块3,通过3个证件识别模型的识别路径关联共享模块和专用模块,使得根据证件识别模块1的识别路径关联得到的目标功能组依次包括到共享模块1、共享模块2和专用模块1,根据证件识别模块2的识别路径关联得到的目标功能组依次包括共享模块1、共享模块2和专用模块2,根据证件识别模块3的识别路径关联得到的目标功能组依次包括共享模块1、共享模块2、共享模块3和专用模块3,相比起3个独立的证件识别模型而言,减少了两个共享模块1和共享模块2,有效节约了在显存中为功能模块分配的初始化资源,由于对显存的资源需求减少了,能够在显存有限的情况下,以更少的显存需求在一张显卡中集成多个证件识别功能,同时,由于一张显卡能够集成多个证件识别功能,因此对于具有多种证件识别需求的识别系统而言,能够有效减少显卡的数量,大大减少了硬件成本。
82.需要说明的是,专用模块和共享模块的顺序可以是任意,本实施例对其在识别路径中的先后顺序不做过多限定,图3所示的目标识别模型中仅为本实施例的示例,并不会对技术方案造成限定。
83.另外,参照图4,在一实施例中,图1所示实施例的步骤s130还包括但不限于有以下步骤:
84.步骤s410,将配置有深度学习模型的功能模块确定为备选模块;
85.步骤s420,将所配置的深度学习模型相同的备选模块集成为一个共享模块。
86.需要说明的是,在图像处理领域,文字识别、文字方向检测等功能模块通常由深度学习模型完成,深度学习模型所需要的算力较高,通常由显卡的图像处理器(graphics processing unit,gpu)执行,因此,在实际执行过程中,深度学习模型所占用的显存资源较
高,共享深度学习模型所对应的功能模块能够大大减少显存占用。
87.需要说明的是,本实施例中的深度学习模型可以是任意证件识别过程中常用的模型,本领域技术人员熟知如何配置和训练深度学习模型,本实施例不涉及深度学习模型的具体改进,在此不多作赘述。
88.需要说明的是,为了确定深度学习模型相同,可以预先为配置有深度学习模型的功能模块分配模型标识,通过模型标识能够简便地确定功能模块的深度学习模型相同,当然,也可以用其他匹配方法,在此不多作限定。
89.值得注意的是,在证件识别过程中,除了利用gpu进行深度学习处理,还有通过cpu进行简单的cv算法实现图像处理的功能模块,利用cv算法通常用于实现每种证件的专有功能,因此可以确定为专用模块,基于上述描述,也可以将携带有深度学习模型的功能模块确定为共享模块,剩余的功能模块确定为专用模块,以确保占用显存更多的功能模块以共享模块的形式封装到目标识别模型,使得目标识别模型后续能够以更少的资源占用扩展更多的识别功能。
90.另外,参照图5,在一实施例中,在执行完图1所示实施例的步骤s130之后,还包括但不限于有以下步骤:
91.步骤s510,获取由多种目标证件的训练图像组成的共享样本集,根据共享样本集训练共享模块;
92.步骤s520,获取由一种目标证件的训练图像组成的专用样本集,根据专用样本集训练归属于同一个证件识别模型的专用模块。
93.值得注意的是,共享模块由多个目标功能组共享,并且通过深度学习模型执行,而深度学习模型通常用于预测、分类和识别,例如文字检测、文字识别、文字方向判断等,通常不会涉及针对某一证件的特殊处理,例如不会涉及根据身份证号读取用户信息的操作,因此,可以通过由多种目标证件的训练图像组成的共享样本集对共享模块进行训练,使得共享模块能够从目标识别模型所需要识别的多种证件图像中进行深度学习,例如,为了训练文字方向检测的共享模块,共享样本集可以包括不同方向的多张身份证图像、多张驾驶证图像等,使得该共享模块获取到输入图像之后,能够对文字方向进行检测,并调整成正向作为输出。
94.需要说明的是,根据上述实施例的描述,对于证件识别领域,专用模型通常用于执行cv算法,例如从一张身份证图像的特定位置提取身份证号码,由于不同的证件所要提取信息的位置不同,因此专用模块由每一种目标证件独占,基于此,为了提高识别的准确性,可以通过同一种目标证件的训练图像组成的专用样本集训练专用模块,例如图2所示的证件识别模型1用于识别身份证,则可以获取多张身份证正面的训练样本图像组成专用样本集,针对专用模块1进行训练,使其能够从身份证中识别出所需要的信息。
95.需要说明的是,利用共享样本集训练共享模块,以及利用专用样本集训练专用模块为本实施例技术人员熟知的技术,本实施例对具体的模块训练过程不多作限定。
96.另外,参照图6,在一实施例中,在执行完图1所示实施例的步骤s160之后,还包括但不限于有以下步骤:
97.步骤s610,为目标识别模型配置多个业务接口,为每个业务接口关联唯一对应的目标识别路径;
98.步骤s620,获取目标识别路径所归属的证件识别模型所对应的目标证件的目标证件类型信息;
99.步骤s630,根据目标证件类型信息配置业务接口,以使业务接口根据目标证件类型信息获取目标输入图像,并将目标输入图像输入至目标识别路径所关联的目标功能组进行证件识别。
100.需要说明的是,由于目标识别模型中集成有多种识别功能,因此输入至目标识别模型的输入图像的类型可以多种,例如目标识别模型集成有身份证、驾驶证和银行卡,输入图像可能是身份证图像、驾驶证图像或者银行卡图像,而每种图像所对应的识别路径不同,为了进行确保输入图像以正确的识别路径进行证件识别,可以在目标识别模型配置多个业务接口,每个业务接口关联一条目标识别路径。例如,通过图2所示的3个证件识别模块集成图3所示的目标识别模块后,证件识别模块1为身份证识别模型,目标识别路径为共享模块1、共享模块2、专用模块1,在识别系统中配置可视化客户端,在可视化客户端中显示不同的业务接口选项,操作人员可以通过身份证业务接口输入身份证图像,使得目标识别模型通过共享模块1、共享模块2、专用模块1进行证件识别,并输出识别结果1。
101.需要说明的是,由于不同的目标功能组所对应的证件识别功能不同,因此可以以目标功能组为单位与业务接口进行关联,具体的业务接口配置名称或者方式可以根据实际需求选取,本实施例对此不多作限定。
102.另外,参照图7,在一实施例中,目标识别模型还包括预先训练好的图像分类模块,在执行完图1所示实施例的步骤s160之后,还包括但不限于有以下步骤:
103.步骤s710,将识别路径关联至图像分类模块的输出端;
104.步骤s720,当获取到输入的待识别图像,通过图像分类模块确定待识别图像的目标证件类型信息,并根据目标证件类型信息确定对应的目标识别路径,从而根据目标识别路径所关联的目标功能组识别待识别图像。
105.需要说明的是,除了通过业务接口确定每个输入图像的目标识别路径,还可以在目标识别模型的输入端设置图像分类模块,在获取到输入图像之后,通过图像分类模块确定输入图像所对应的目标证件类型信息,从而根据目标证件类型信息确定对应的目标识别路径,相比起设置业务接口的智能化程度更高。
106.需要说明的是,图像分类模块可以是常见的分类模型,可以通过输入图像的关键性特征确定其类型,例如身份证正面特有的纹路、驾驶证的底色等,本领域技术人员熟知如何配置简单的图像分类模块,从而确定输入图像的证件类型,在此不多作赘述。
107.需要说明的是,由于每个证件识别模型的目标证件是已知的,因此可以根据已知的目标证件获取图像分类模块的训练数据,具体训练过程在此不多作赘述。
108.另外,参照图8,在一实施例中,在执行图1所示实施例的步骤s160之前,还包括但不限于有以下步骤:
109.步骤s810,确定目标显卡的可用显存;
110.步骤s820,获取每个专用模块的第一显存与共享模块的第二显存;
111.步骤s830,将第一显存和第二显存之和确定为目标显存;
112.步骤s840,确定可用显存满足目标显存。
113.需要说明的是,由于每张显卡的显存是可知的,为了确保目标识别模型在运行过
程中不超过显存,可以在将目标识别模型部署到目标显卡之前,对目标识别模型的目标显存进行计算,当目标显存小于或等于目标显卡的可用显存,再将目标识别模型配置到目标显卡。
114.需要说明的是,由于共享模块由多个目标功能组共享,使得通过gpu执行图像处理所需要的第二显存大幅减少,在此基础上,目标识别模型相比起多个独立的证件识别模型,在目标显存的数值上有了较大的下降,基于此,即使在一张显卡中集成多个识别功能,也可能不超出目标显卡的可用显存,从而实现在一张显卡中集成多个识别功能。
115.需要说明的是,第一显存可以是专用模块处于满载状态下的最大显存需求,第二显存可以是共享模块处于满载状态下的最大显存需求,以最大显存需求得到的目标显存表征目标识别模型处于满载状态下的最大显存需求,在目标显存小于或等于可用显存的情况下,目标识别模型运行过程中不会超出显卡的显存,确保识别功能的正常运行。
116.另外,参照图9,在一实施例中,在执行完图1所示实施例的步骤s160之后,还包括但不限于有以下步骤:
117.步骤s910,确定共享模块的显存使用率;
118.步骤s920,当显存使用率超过预设阈值,且剩余的可用显存大于第二显存,复制新的共享模块,并通过新的共享模块协同处理待处理进程。
119.需要说明的是,由于共享模块由多个目标功能组共享,为了避免多个待处理进程发生冲突,可以通过队列的形式保存每个功能模块的待处理进程,以确保待处理进程按照输入顺序执行。
120.可以理解的是,为了确保待处理进程处理后输出至正确的下一个功能模块,可以在待处理进程中关联目标识别路径,根据目标识别路径确定下一个功能模块,后续不重复赘述。
121.需要说明的是,基于上述实施例的描述,共享模块用于执行深度学习,而且由多个目标功能组共享,因此很可能出现某个共享模块的处理队列中待处理进程较多的情况,在这种情况下,为了提高图像识别处理的效率,可以在显存足够的情况下,复制一个相同的共享模块分摊待处理进程的处理。例如图3所示,当共享模块2的第二显存的显存使用率较高的情况下,生成新的共享模块2,通过该新的共享模块2分摊待处理进程,使得待处理进程的处理速度更高,并且在完成队列中的待处理进程的处理之后,删除该新的共享模块2,减少对显存的占用,能够有效提高显存的利用率。
122.需要说明的是,显存使用率的预设阈值可以根据实际需求制定,例如设定分配至共享模块2的第二显存的使用率超过一定的百分比,具体数值根据实际需求制定即可,能够表征共享模块的负荷较大即可,在此不多作限定。
123.另外,参照图10,本发明实施例提供了一种证件识别模型的配置装置,证件识别模型的配置装置1000包括:
124.第一获取单元1010,用于获取多个证件识别模型,证件识别模型用于从目标证件的图像中识别出证件信息,不同的证件识别模型所对应的目标证件不同;
125.第二获取单元1020,用于以功能模块粒度拆分全部的证件识别模型,得到多个功能模块,其中,每个证件识别模型至少拆分为两个功能模块,归属于同一个证件识别模型的不同功能模块的图像处理功能互不相同;
126.模块确定单元1030,用于将图像处理功能相同的功能模块集成为一个共享模块,将剩余的功能模块确定为专用模块;
127.路径确定单元1040,用于确定每个证件识别模型的识别路径,识别路径表征归属于同一个证件识别模型的功能模块之间的数据传递关系;
128.封装单元1050,用于根据多条识别路径,将共享模块和专用模块封装成多个目标功能组,其中,共享模块由多个目标模块组共享,专用功能模块由一个目标功能组独占;
129.集成单元1060,用于将多个目标功能组集成为目标识别模型,将目标识别模型配置至目标显卡。
130.另外,参照图11,本发明的一个实施例还提供了一种电子设备,该电子设备1100包括:存储器1110、处理器1120及存储在存储器1110上并可在处理器1120上运行的计算机程序。
131.处理器1120和存储器1110可以通过总线或者其他方式连接。
132.实现上述实施例的证件识别模型的配置方法所需的非暂态软件程序以及指令存储在存储器1110中,当被处理器1120执行时,执行上述实施例中的应用于电子设备的证件识别模型的配置方法,例如,执行以上描述的图1中的方法步骤s110至步骤s160、图4中的方法步骤s410至步骤s420、图5中的方法步骤s510至步骤s520、图6中的方法步骤s610至步骤s630、图7中的方法步骤s710至步骤s720、图8中的方法步骤s810至步骤s840、图9中的方法步骤s910至步骤s920。
133.以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
134.此外,本发明的一个实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被一个处理器或控制器执行,例如,被上述电子设备实施例中的一个处理器执行,可使得上述处理器执行上述实施例中的证件识别模型的配置方法,例如,执行以上描述的图1中的方法步骤s110至步骤s160、图4中的方法步骤s410至步骤s420、图5中的方法步骤s510至步骤s520、图6中的方法步骤s610至步骤s630、图7中的方法步骤s710至步骤s720、图8中的方法步骤s810至步骤s840、图9中的方法步骤s910至步骤s920。本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、装置可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读存储介质上,计算机可读存储介质可以包括计算机存储介质(或非暂时性存储介质)和通信存储介质(或暂时性存储介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除存储介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的存储介质。此外,本领域普通技术人员公知的是,通信存储介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数
据,并且可包括任何信息递送存储介质。
135.本技术可用于众多通用或专用的计算机装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、基于微处理器的装置、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何装置或设备的分布式计算环境等等。本技术可以在由计算机执行的计算机程序的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
136.附图中的流程图和框图,图示了按照本技术各种实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的程序。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。
137.描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
138.应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
139.通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本技术实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本技术实施方式的方法。
140.本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。
141.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
142.以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替
换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献