CN117994604A - 卡证检测模型的训练方法、卡证检测方法及装置 - Google Patents
卡证检测模型的训练方法、卡证检测方法及装置 Download PDFInfo
- Publication number
- CN117994604A CN117994604A CN202410075949.1A CN202410075949A CN117994604A CN 117994604 A CN117994604 A CN 117994604A CN 202410075949 A CN202410075949 A CN 202410075949A CN 117994604 A CN117994604 A CN 117994604A
- Authority
- CN
- China
- Prior art keywords
- card
- sample image
- detection
- target
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 247
- 238000012549 training Methods 0.000 title claims abstract description 92
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000006870 function Effects 0.000 claims description 43
- 238000011156 evaluation Methods 0.000 claims description 33
- 230000015654 memory Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 3
- 206010047289 Ventricular extrasystoles Diseases 0.000 description 16
- 238000005129 volume perturbation calorimetry Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000452 restraining effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/62—Text, e.g. of license plates, overlay texts or captions on TV images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本说明书一个或多个实施例公开了一种卡证检测模型的训练方法,包括:基于检测任务,选择至少一个卡证模板;基于所述卡证模板,生成卡证样本图像,所述卡证样本图像中包括所述检测任务的检测目标;确定所述检测目标的检测框和类别标签;获取所述卡证样本图像的描述文本,所述卡证样本图像的描述文本用于描述所述卡证样本图像中的检测目标;将所述卡证样本图像和所述卡证样本图像的描述文本作为样本对,训练开集目标检测器,直至获得目标卡证检测模型。通过该方法训练的卡证检测模型能够灵活应用于多种不同的检测任务,从而节省了模型训练成本,提高了模型部署效率。相应地,本说明书还公开了卡证检测模型的训练装置、卡证检测方法及装置。
Description
技术领域
本发明涉及机器学习技术领域,尤其涉及一种卡证检测模型的训练方法、卡证检测方法及装置。
背景技术
在基于卡证检测的身份认证系统当中,有多种目标检测任务,例如证件定位、文字行检测、证件人脸检测、证件标志检测、手指检测、异物检测等。目前,这些证件任务都是独立任务,需要为每个独立任务分别训练模型,导致整体模型部署速度较慢,训练成本较高。
发明内容
本说明书一个或多个实施例描述了一种卡证检测模型的训练方法、卡证检测方法及装置,能够通过一个模型实现多任务的检测。
第一方面,提供了一种卡证检测模型的训练方法,包括:
基于检测任务,选择至少一个卡证模板;
基于所述卡证模板,生成卡证样本图像,所述卡证样本图像中包括所述检测任务的检测目标;
确定所述检测目标的检测框和类别标签;
获取所述卡证样本图像的描述文本,所述卡证样本图像的描述文本用于描述所述卡证样本图像中的检测目标;
将所述卡证样本图像和所述卡证样本图像的描述文本作为样本对,训练开集目标检测器,直至获得目标卡证检测模型。
作为第一方面所述方法的一种可选实施方式,所述卡证模板用于描述所述卡证样本图像中的卡证因子的类型及位置;基于所述卡证模板,生成卡证样本图像,具体包括:
从卡证因子库中获取所述卡证模板规定的卡证因子,并将所述卡证因子布局在所述卡证模板规定的位置,以得到所述卡证样本图像。
作为第一方面所述方法的一种可选实施方式,在生成所述卡证样本图像之后,还包括:
对所述卡证样本图像进行真实性评估,得到评估分数;
若所述评估分数大于预设的分数阈值,则保留所述卡证样本图像;
若所述评估分数小于等于所述分数阈值,则删除所述卡证样本图像。
具体来说,对所述卡证样本图像进行真实性评估,得到评估分数,具体包括:
将所述卡证样本图像输入预训练的分类器,所述分类器用于识别真实卡证图像和伪造卡证图像;
基于所述分类器的分类结果,确定所述评估分数。
作为第一方面所述方法的一种可选实施方式,获取所述卡证样本图像的描述文本,具体包括:
将所述检测任务的描述文本输入预训练的大语言模型,以得到所述卡证样本图像的描述文本。
作为第一方面所述方法的一种可选实施方式,将所述卡证样本图像和所述卡证样本图像的描述文本作为样本对,训练开集目标检测器,具体包括:
将所述样本对输入所述开集目标检测器,得到预测目标;
基于所述预测目标的检测框和所述检测目标的检测框,确定第一损失函数;
基于所述预测目标的类别和所述检测目标的类别标签,确定第二损失函数;
基于所述第一损失函数和所述第二损失函数,更新所述开集目标检测器的参数。
第二方面,提供了一种卡证检测方法,包括:
获取待检测的卡证图像;
获取用户输入的检测目标描述文本;
将所述卡证图像和所述检测目标描述文本输入卡证检测模型,得到所述卡证检测模型输出的检测目标;所述卡证检测模型是采用所述的卡证检测模型的训练方法训练得到的。
第三方面,提供了一种卡证检测模型的训练装置,包括:
样本图像生成模块,配置为基于检测任务,选择至少一个卡证模板以生成卡证样本图像,所述卡证样本图像中包括所述检测任务的检测目标以及所述检测目标的检测框和类别标签;
样本文本生成模块,配置为获取所述卡证样本图像的描述文本,所述卡证样本图像的描述文本用于描述所述卡证样本图像中的检测目标;
训练模块,配置为将所述卡证样本图像和所述卡证样本图像的描述文本作为样本对,训练开集目标检测器,直至获得目标卡证检测模型。
作为第三方面所述装置的一种可选实施方式,所述样本图像生成模块具体包括:
存储模块,配置为存储预先构建的卡证模板;
第一数据获取模块,配置为基于所述检测任务,从所述存储模块选择至少一个所述卡证模板;
第二数据获取模块,配置为从卡证因子库中获取所述卡证模板规定的卡证因子;
生成模块,配置为将所述卡证因子布局在所述卡证模板规定的位置,以得到所述卡证样本图像。
作为第三方面所述装置的一种可选实施方式,还包括:
筛选模块,配置为对所述样本图像生成模块生成的所述卡证样本图像进行真实性评估,得到评估分数;若所述评估分数大于预设的分数阈值,则保留所述卡证样本图像;若所述评估分数小于等于所述分数阈值,则删除所述卡证样本图像。
具体来说,所述筛选模块具体用于将所述卡证样本图像输入预训练的分类器,所述分类器用于识别真实卡证图像和伪造卡证图像;基于所述分类器的分类结果,确定所述评估分数。
作为第三方面所述装置的一种可选实施方式,所述样本文本生成模块具体用于将所述检测任务的描述文本输入预训练的大语言模型,以得到所述卡证样本图像的描述文本。
作为第三方面所述装置的一种可选实施方式,所述训练模块具体用于将所述样本对输入所述开集目标检测器,得到预测目标;基于所述预测目标的检测框和所述检测目标的检测框,确定第一损失函数;基于所述预测目标的类别和所述检测目标的类别标签,确定第二损失函数;基于所述第一损失函数和所述第二损失函数,更新所述开集目标检测器的参数。
第四方面,提供了一种卡证检测装置,包括:
第三数据获取模块,配置为获取待检测的卡证图像;
第四数据获取模块,配置为获取用户输入的检测目标描述文本;
处理模块,配置为将所述卡证图像和所述检测目标描述文本输入卡证检测模型,得到所述卡证检测模型输出的检测目标;所述卡证检测模型是采用所述的卡证检测模型的训练方法训练得到的。
第五方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的卡证检测模型的训练方法,或者,实现所述的卡证检测方法。
第六方面,提供了一种电子设备,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行所述的卡证检测模型的训练方法的具体步骤,或者,执行所述的卡证检测方法的具体步骤。
本说明书的一个或多个实施例所提供的卡证检测模型的训练方法,该方法基于卡证模板生成多任务的训练集,在训练集上训练基于图文多模的开集目标检测器,从而使得训练完成的卡证检测模型能够灵活应用于多种不同的检测任务,从而节省了模型训练成本,提高了模型部署效率。
本说明书的一个或多个实施例所提供的卡证检测模型的训练装置、卡证检测方法以及卡证检测装置同样具有上述有益效果。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示例性地显示了本说明书一个或多个实施例提供的一种卡证检测模型的训练方法的流程示意图。
图2示例性地显示了本说明书一个或多个实施例提供的一种开集目标检测模型的结构示意图。
图3示例性地显示了本说明书一个或多个实施例提供的卡证检测模型的训练装置的结构示意图。
图4示例性地显示了本说明书一个或多个实施例提供的样本图像生成模块的结构示意图。
图5示例性地显示了本说明书一个或多个实施例提供的一种卡证检测方法的流程示意图。
图6示例性地显示了本说明书一个或多个实施例提供的一种卡证检测装置的结构示意图。
图7示例性地显示了本说明书一个或多个实施例提供的电子设备的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
下面将结合说明书附图和具体的实施例来对本说明书实施例所述的一种卡证检测模型的训练方法、卡证检测方法及装置进行进一步地详细说明,但是该详细说明不构成对本说明书实施例的限制。
在一些实施例中,提供一种卡证检测模型的训练方法,请参考图1,该训练方法包括步骤S100-S108。
S100:基于检测任务,选择至少一个卡证模板。
上述的检测任务可以是一个或者多个,在训练时,可以单独训练某个检测任务,也可以将多个检测任务合在一起训练。
相应的,卡证模板是根据检测任务确定的,若只训练某个检测任务,则只需要选择该检测任务对应的卡证模板,若将多个检测任务合在一起训练,则需要为每个检测任务选择对应的卡证模板。不同的检测任务对应的卡证模板可以相同也可以不同。
上述的卡证模板用于描述卡证样本图像中的卡证因子的类型及位置。比如,卡证因子可以是文字或者图片。这里的文字可以是内容不变的文字,即该类型的每一张卡证上都会有相同的文字,例如上、下标题信息。这里的文字也可以是内容变化的文字,即不同的卡证上,这部分文字内容是不同的,比如个人信息、MRZ(身份证件中的机读码)等。这里的图片可以是内容不变的图片,即该类型的每一张卡证上都会有相同的图片,比如LOGO、国企、标识符、芯片、底纹等。这里的图片可以是内容变化的图片,即不同的卡证上,这部分图片内容是不同的,例如人脸、指纹、签名、印章、二维码等。
每一个卡证模板中,卡证因子的类型、数量和位置都是根据检测任务确定的,本实施例对此不做限制。例如,在证件人脸检测任务中,卡证因子可以选择不同的人脸图像。在证件标志检测任务中,卡证因子可以选择证件上的标志性图像,比如标识图像、LOGO图像、印章图像等。在定位任务中,卡证因子可以选择可以用于定位的证件元素图像,比如芯片图像、二维码图像、印章图像、签名图像、上标题图像、下标题图像等。在指纹识别任务中,卡证因子可以选择不同的指纹图像。
S102:基于卡证模板,生成卡证样本图像。
需要说明的是,在生成的卡证样本图像中,需要包含检测任务的检测目标。
在一些实施方式中,可以预先构建卡证因子库,卡证因子库中包含卡证模板所需的各种卡证因子。在基于卡证模板生成卡证样本图像时,可以从卡证因子库中随机选择卡证模板需要的卡证因子,并将选取的卡证因子布局在卡证模板规定的位置,以得到卡证样本图像。
为了使基于卡证模板生成的大量卡证样本图像能够更逼近真实卡证图像,可以对卡证样本图像进行真实性评估,根据真实性评估结果,选择真实性更高部分卡证样本图像作为训练样本。
具体来说,可以对卡证样本图像进行真实性评估,得到评估分数。若评估分数大于预设的分数阈值,则保留卡证样本图像;若评估分数小于等于分数阈值,则删除卡证样本图像。
上述对卡证样本图像进行真实性评估,可以采用预训练的分类器来实现。这里的分类器可以预先在包含大量真实卡证图像和伪造卡证图像的训练集上训练,以确保该分类器能够以较大的概率成功识别出伪造图像。
在基于上述预训练的分类器对卡证样本图像进行真实性评估时,将卡证样本图像输入预训练的分类器,分类器的输出是该卡证样本图像在两种类别(一个类别表示真实卡证图像,另一个类别表示伪造卡证图像)上的分布概率,这个分布概率可以作为输入的卡证样本图像的评价分数。例如,一个卡证样本图像在真实卡证图像类别上的分布概率是X%,则可以将该卡证样本图像的评估分数确定为X分。若输入的卡证样本图像在真实卡证图像类别上的分布概率大于预设的概率阈值,比如概率阈值可以取值为80%,则可以确定该卡证样本图像是逼真的,此时可以保留该卡证样本图像作为训练样本。而若输入的卡证样本图像在真实卡证图像类别上的分布概率小于等于预设的概率阈值,则可以确定该卡证样本图像不够逼真,此时可以删除该卡证样本图像。
S104:确定检测目标的检测框和类别标签。
卡证样本图像中的检测目标是由卡证因子构成的,而卡证因子是预先收集的图像,且卡证因子具有类别标签,比如上、下标题、个人信息、LOGO、国企、标识符、芯片、底纹、人脸、指纹、签名、印章、二维码等。卡证因子在卡证模板中的布局位置框即为该卡证因子的检测框,也就是检测目标的检测框。
S106:获取卡证样本图像的描述文本。
需要说明的是,上述描述文本用于描述该卡证样本图像中的检测目标。描述文本是根据检测任务确定的,也就是说,对于卡证样本图像中的同一个卡证元素,可以根据检测任务的不同而设置不同的描述文本。例如,对于印章图像,在证件标志检测任务中,可以描述为印章,而在定位任务,可以描述为圆形标志物。
在一些实施方式中,可以采用预训练的大语言模型(LLM)来生成卡证样本图像的描述文本。可以将检测任务的描述文本作为训练样本,将卡证样本图像中检测目标的描述文本作为标签,在大量的训练样本上训练LLM,使得训练好的LLM能够基于输入的检测任务的描述文本生成卡证样本图像的描述文本。
S108:将卡证样本图像和卡证样本图像的描述文本作为样本对,训练开集目标检测器,直至获得目标卡证检测模型。
请参考图2,图2示意性地示出了上述开集目标检测模型的一种结构图。上述开集目标检测模型采用Grounding DINO实现,该模型能够通过多阶段跨模态融合输入的卡证样本图像的图像特征和卡证样本图像的描述文本的文本特征,从而从图像特征中学习到更多与文本特征相关的信息。
如图2所示,开集目标检测模型包括图像编码器、文本编码器、特征增强模块、语言引导查询选择模块和跨模态解码器。
图像编码器用于提取输入的卡证样本图像的图像特征。
文本编码器用于提取输入的卡证样本图像的描述文本的文本特征。
特征增强模块用于对图像特征和文本特征进行模态特征融合。
语言引导查询选择模块用于从图像特征中选择与文本特征对应的跨模态提示信息(query)。
跨模态解码器从跨模态提示信息中提取需要的特征,并更新的跨模态提示信息(query)。
更新后的跨模态提示信息(query)用于提取检测目标的检测框及检测目标的类别。
图2所示的开集目标检测模型,可以采用以下方式进行训练,具体包括:
将的卡证样本图像及其描述文本输入开集目标检测器,得到预测目标;
基于预测目标的检测框和检测目标的检测框,确定第一损失函数;
基于预测目标的类别和检测目标的类别标签,确定第二损失函数;
基于第一损失函数和第二损失函数,更新开集目标检测器的参数。
在上述的训练过程中,第一损失函数用于检测框的回归,第二损失函数用于对预测目标是否与预测出的类别匹配进行约束。
在一些更具体的实施方式中,可以采用L1损失和GIOU损失来构建第一损失函数。可以采用对比损失函数来构建第二损失函数。
由上述方案可知,本实施例所提供的卡证检测模型的训练方法,能够基于卡证模板生成多任务的训练集,在训练集上训练基于图文多模的开集目标检测器,从而使得训练完成的卡证检测模型能够实现检测一切任务,达到只训练一个模型即可完成多任务检测的目的。该卡证检测模型能够在目标检测任务上起到较好效果的同时,还能节省训练成本,易于部署和实现。
在一些实施例中,还提供了一种模型训练装置。请参考图3,图3示例性的显示了一种卡证检测模型的训练装置,可以用于实现该卡证检测模型的训练方法。需要说明的是,本申请的一个或多个实施例所述的卡证检测模型的训练方法,可以依赖图3所示的模型训练装置实现,但不限于该模型训练装置。
如图3所示,该卡证检测模型的训练装置包括:
样本图像生成模块301,配置为基于检测任务,选择至少一个卡证模板以生成卡证样本图像。此处的卡证样本图像中需要包括检测任务的检测目标以及检测目标的检测框和类别标签。
样本文本生成模块302,配置为获取卡证样本图像的描述文本。此处的卡证样本图像的描述文本用于描述该卡证样本图像中的检测目标。
训练模块303,配置为将卡证样本图像和卡证样本图像的描述文本作为样本对,训练开集目标检测器,直至获得目标卡证检测模型。
对于样本图像生成模块301,上述的检测任务可以是一个或者多个,在训练时,可以单独训练某个检测任务,也可以将多个检测任务合在一起训练。
相应的,卡证模板是根据检测任务确定的,若只训练某个检测任务,则只需要选择该检测任务对应的卡证模板,若将多个检测任务合在一起训练,则需要为每个检测任务选择对应的卡证模板。不同的检测任务对应的卡证模板可以相同也可以不同。
上述的卡证模板用于描述卡证样本图像中的卡证因子的类型及位置。比如,卡证因子可以是文字或者图片。这里的文字可以是内容不变的文字,即该类型的每一张卡证上都会有相同的文字,例如上、下标题信息。这里的文字也可以是内容变化的文字,即不同的卡证上,这部分文字内容是不同的,比如个人信息、MRZ(身份证件中的机读码)等。这里的图片可以是内容不变的图片,即该类型的每一张卡证上都会有相同的图片,比如LOGO、国企、标识符、芯片、底纹等。这里的图片可以是内容变化的图片,即不同的卡证上,这部分图片内容是不同的,例如人脸、指纹、签名、印章、二维码等。
每一个卡证模板中,卡证因子的类型、数量和位置都是根据检测任务确定的,本实施例对此不做限制。
在一些实施方式中,可以预先构建卡证因子库,卡证因子库中包含卡证模板所需的各种卡证因子。在基于卡证模板生成卡证样本图像时,可以从卡证因子库中随机选择卡证模板需要的卡证因子,并将选取的卡证因子布局在卡证模板规定的位置,以得到卡证样本图像。
为了使基于卡证模板生成的大量卡证样本图像能够更逼近真实卡证图像,可以对卡证样本图像进行真实性评估,根据真实性评估结果,选择真实性更高的卡证样本图像作为训练样本。
具体来说,可以采用筛选模块来筛选真实性更高的卡证样本图像作为训练样本。筛选模块用于对样本图像生成模块生成的卡证样本图像进行真实性评估,得到评估分数;若评估分数大于预设的分数阈值,则保留卡证样本图像;若评估分数小于等于分数阈值,则删除卡证样本图像。
筛选模块具体可以采用预训练的分类器来实现。这里的分类器可以预先在包含大量真实卡证图像和伪造卡证图像的训练集上训练,以确保该分类器能够以较大的概率成功识别出伪造图像。
在基于上述预训练的分类器对卡证样本图像进行真实性评估时,将卡证样本图像输入预训练的分类器,分类器的输出是该卡证样本图像在两种类别(一个类别表示真实卡证图像,另一个类别表示伪造卡证图像)上的分布概率,这个分布概率可以作为输入的卡证样本图像的评价分数。例如,一个卡证样本图像在真实卡证图像类别上的分布概率是X%,则可以将该卡证样本图像的评估分数确定为X分。若输入的卡证样本图像在真实卡证图像类别上的分布概率大于预设的概率阈值,比如概率阈值可以取值为80%,则可以确定该卡证样本图像是逼真的,此时可以保留该卡证样本图像作为训练样本。而若输入的卡证样本图像在真实卡证图像类别上的分布概率小于等于预设的概率阈值,则可以确定该卡证样本图像不够逼真,此时可以删除该卡证样本图像。
在上述的卡证样本图像中,检测目标是由卡证因子构成的,而卡证因子是预先收集的图像,且卡证因子具有类别标签,比如上、下标题、个人信息、LOGO、国企、标识符、芯片、底纹、人脸、指纹、签名、印章、二维码等。卡证因子在卡证模板中的布局位置框即为该卡证因子的检测框,也就是检测目标的检测框。
请参考图4,在一些实施方式中,样本图像生成模块301具体可以包括:
存储模块401,配置为存储预先构建的卡证模板。
第一数据获取模块402,配置为基于检测任务,从存储模块401中选择至少一个卡证模板。
第二数据获取模块403,配置为从卡证因子库中获取卡证模板规定的卡证因子。
生成模块404,配置为将卡证因子布局在卡证模板规定的位置,以得到卡证样本图像。
对于样本文本生成模块302,其具体用于将检测任务的描述文本输入预训练的大语言模型,以得到卡证样本图像的描述文本。
上述的描述文本是根据检测任务确定的,也就是说,对于卡证样本图像中的同一个卡证元素,可以根据检测任务的不同而设置不同的描述文本。例如,对于印章图像,在证件标志检测任务中,可以描述为印章,而在定位任务,可以描述为圆形标志物。
上述的预训练的大语言模型(LLM)可以采用以下方式训练:将检测任务的描述文本作为训练样本,将卡证样本图像中检测目标的描述文本作为标签,在大量的训练样本上训练LLM,使得训练好的LLM能够基于输入的检测任务的描述文本生成卡证样本图像的描述文本。
对于训练模块303,其具体用于将样本对输入开集目标检测器,得到预测目标;基于预测目标的检测框和检测目标的检测框,确定第一损失函数;基于预测目标的类别和检测目标的类别标签,确定第二损失函数;基于第一损失函数和第二损失函数,更新开集目标检测器的参数。
在一些实施方式中,上述的开集目标检测器可以采用图2所示的Grounding DINO模型实现。训练模块303可以采用以下方式对开集目标检测器进行训练,具体包括:
将的卡证样本图像及其描述文本输入开集目标检测器,得到预测目标;
基于预测目标的检测框和检测目标的检测框,确定第一损失函数;
基于预测目标的类别和检测目标的类别标签,确定第二损失函数;
基于第一损失函数和第二损失函数,更新开集目标检测器的参数。
在上述的训练过程中,第一损失函数用于检测框的回归,第二损失函数用于对预测目标是否与预测出的类别匹配进行约束。
在一些更具体的实施方式中,可以采用L1损失和GIOU损失来构建第一损失函数。可以采用对比损失函数来构建第二损失函数。
在实际操作中,样本图像生成模块301、样本文本生成模块302和训练模块303均可以通过软件实现,或者可以通过硬件实现。示例性的,接下来以样本图像生成模块301为例,介绍样本图像生成模块301的实现方法。类似的,样本文本生成模块302和训练模块303的实现方式可以参考样本图像生成模块301的实现方式。
模块作为软件功能单元的一种举例,样本图像生成模块301可以包括运行在计算实例上的代码。其中,计算实例可以包括物理主机(计算设备)、虚拟机、容器中的至少一种。进一步地,上述计算实例可以是一台或者多台。例如,样本图像生成模块301可以包括运行在多个主机/虚拟机/容器上的代码。用于运行该代码的多个主机/虚拟机/容器可以分布在相同的区域(region)中,也可以分布在不同的region中。进一步地,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的可用区(availability zone,AZ)中,也可以分布在不同的AZ中,每个AZ包括一个数据中心或多个地理位置相近的数据中心。其中,通常一个region可以包括多个AZ。
同样,用于运行该代码的多个主机/虚拟机/容器可以分布在同一个虚拟私有云(virtual private cloud,VPC)中,也可以分布在多个VPC中。其中,通常一个VPC设置在一个region内,同一region内两个VPC之间,以及不同region的VPC之间跨区通信需在每个VPC内设置通信网关,经通信网关实现VPC之间的互连。
模块作为硬件功能单元的一种举例,样本图像生成模块301可以包括至少一个计算设备,如服务器等。或者,样本图像生成模块301也可以是利用专用集成电路(application-specific integrated circuit,ASIC)实现、或可编程逻辑器件(programmable logic device,PLD)实现的设备等。其中,上述PLD可以是复杂程序逻辑器件(complex programmable logical device,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合实现。
样本图像生成模块301包括的多个计算设备可以分布在相同的region中,也可以分布在不同的region中。样本图像生成模块301包括的多个计算设备可以分布在相同的AZ中,也可以分布在不同的AZ中。同样,样本图像生成模块301包括的多个计算设备可以分布在同一个VPC中,也可以分布在多个VPC中。其中,多个计算设备可以是服务器、ASIC、PLD、CPLD、FPGA和GAL等计算设备的任意组合。
在其他实施例中,样本图像生成模块301可以用于执行上述卡证检测模型的训练方法中的任意步骤,样本文本生成模块302可以用于执行上述卡证检测模型的训练方法中的任意步骤,训练模块303可以用于执行卡证检测模型的训练方法中的任意步骤。
样本图像生成模块301、样本文本生成模块302和训练模块303负责实现的步骤可根据需要指定,通过样本图像生成模块301、样本文本生成模块302和训练模块303分别实现上述卡证检测模型的训练方法中不同的步骤来实现该卡证检测模型的训练装置的全部功能。
本实现方式中,该卡证检测模型的训练装置也可以应用于电脑、服务器等计算设备中,或者应用于包括至少一个计算设备的计算设备集群中,以实现模型训练功能。
在一些实施例中,还提供一种卡证检测方法,请参考图5,该训练方法包括步骤S500-S504。
S500:获取待检测的卡证图像。
S502:获取用户输入的检测目标描述文本。需要说明的是,此处的检测目标可以是一个,也可以是多个。对于同一个检测目标,其描述文本可以相同,也可以不同。
S504:将卡证图像和检测目标描述文本输入卡证检测模型,得到卡证检测模型输出的检测目标。
需要说明的是,图5所述的卡证检测方法中,所述的卡证检测模型是采用上述的卡证检测模型的训练方法训练得到的。
请参考图6,与上述卡证检测方法对应的,在一些实施例中,还提供了一种卡证检测装置,可以用于实现该卡证检测方法。需要说明的是,本申请的一个或多个实施例所述的卡证检测方法,可以依赖图6所示的卡证检测装置实现,但不限于该卡证检测装置。
如图6所示,该卡证检测装置包括:
第三数据获取模块601,配置为获取待检测的卡证图像。
第四数据获取模块602,配置为获取用户输入的检测目标描述文本。
处理模块603,配置为将卡证图像和检测目标描述文本输入卡证检测模型,得到卡证检测模型输出的检测目标。
在实际操作中,第三数据获取模块601、第四数据获取模块602和处理模块603均可以通过软件实现,或者可以通过硬件实现。示例性的,接下来以第三数据获取模块601为例,介绍第三数据获取模块601的实现方法。类似的,第四数据获取模块602和处理模块603的实现方式可以参考第三数据获取模块601的实现方式。
模块作为软件功能单元的一种举例,第三数据获取模块601可以包括运行在计算实例上的代码。其中,计算实例可以包括物理主机(计算设备)、虚拟机、容器中的至少一种。进一步地,上述计算实例可以是一台或者多台。例如,第三数据获取模块601可以包括运行在多个主机/虚拟机/容器上的代码。用于运行该代码的多个主机/虚拟机/容器可以分布在相同的区域(region)中,也可以分布在不同的region中。进一步地,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的可用区(availability zone,AZ)中,也可以分布在不同的AZ中,每个AZ包括一个数据中心或多个地理位置相近的数据中心。其中,通常一个region可以包括多个AZ。
同样,用于运行该代码的多个主机/虚拟机/容器可以分布在同一个虚拟私有云(virtual private cloud,VPC)中,也可以分布在多个VPC中。其中,通常一个VPC设置在一个region内,同一region内两个VPC之间,以及不同region的VPC之间跨区通信需在每个VPC内设置通信网关,经通信网关实现VPC之间的互连。
模块作为硬件功能单元的一种举例,第三数据获取模块601可以包括至少一个计算设备,如服务器等。或者,第三数据获取模块601也可以是利用专用集成电路(application-specific integrated circuit,ASIC)实现、或可编程逻辑器件(programmable logic device,PLD)实现的设备等。其中,上述PLD可以是复杂程序逻辑器件(complex programmable logical device,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合实现。
第三数据获取模块601包括的多个计算设备可以分布在相同的region中,也可以分布在不同的region中。第三数据获取模块601包括的多个计算设备可以分布在相同的AZ中,也可以分布在不同的AZ中。同样,第三数据获取模块601包括的多个计算设备可以分布在同一个VPC中,也可以分布在多个VPC中。其中,多个计算设备可以是服务器、ASIC、PLD、CPLD、FPGA和GAL等计算设备的任意组合。
在其他实施例中,第三数据获取模块601可以用于执行上述卡证检测方法中的任意步骤,第四数据获取模块602可以用于执行上述卡证检测方法中的任意步骤,处理模块603可以用于执行卡证检测方法中的任意步骤。
第三数据获取模块601、第四数据获取模块602和处理模块603负责实现的步骤可根据需要指定,通过第三数据获取模块601、第四数据获取模块602和处理模块603分别实现上述卡证检测方法中不同的步骤来实现该卡证检测装置的全部功能。
本实现方式中,该卡证检测装置也可以应用于电脑、服务器等计算设备中,或者应用于包括至少一个计算设备的计算设备集群中,以实现模型训练功能。
在一些实施例中,还提供了一种电子设备。请参考图7,该电子设备包括:总线701、处理器702、存储器703和通信接口704。处理器702、存储器703和通信接口704之间通过总线701通信。该电子设备可以是服务器或终端设备。应理解,本申请不限定电子设备中的处理器、存储器的个数。
总线701可以是外设部件互连标准(peripheral component interconnect,PCI)总线,或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。总线501可包括在电子设备各个部件(例如,处理器702、存储器703和通信接口704)之间传送信息的通路。
处理器702可以包括处理器CPU、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。
存储器703可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器503还可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器,机械硬盘(hard diskdrive,HDD)或固态硬盘(solid state drive,SSD)。
存储器703中存储有可执行的程序代码,处理器702执行该可执行的程序代码以分别实现前述样本图像生成模块301、样本文本生成模块302和训练模块303的功能,即实现前述的卡证检测模型的训练装置的功能,从而实现前述的卡证检测模型的训练方法。或者,处理器702执行该可执行的程序代码以分别实现前述第三数据获取模块601、第四数据获取模块602和处理模块603的功能,即实现前述的卡证检测装置的功能,从而实现前述的卡证检测方法。也即,存储器703上存有用于执行卡证检测模型的训练方法的指令,或者,存有用于执行卡证检测方法的指令。
通信接口704使用例如但不限于网络接口卡、收发器一类的收发模块,来实现电子设备与其他设备或通信网络之间的通信。
在一些实施例中,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,当计算机程序在电子设备上运行时,使得电子设备执行上述卡证检测模型的训练方法,或者,执行上述卡证检测方法。
计算机可读存储介质可以是电子设备能够存储的任何可用介质或者是包含一个或多个可用介质的数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。该计算机可读存储介质包括指令,指令指示电子设备执行模型训练方法。
可以理解的是,本说明书实施例示意的结构并不构成对本说明书实施例的系统的具体限定。在说明书的另一些实施例中,上述系统可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
需要注意的是,以上列举的仅为本发明的具体实施例,显然本发明不限于以上实施例,随之有着许多的类似变化。本领域的技术人员如果从本发明公开的内容直接导出或联想到的所有变形,均应属于本发明的保护范围。
Claims (16)
1.一种卡证检测模型的训练方法,包括:
基于检测任务,选择至少一个卡证模板;
基于所述卡证模板,生成卡证样本图像,所述卡证样本图像中包括所述检测任务的检测目标;
确定所述检测目标的检测框和类别标签;
获取所述卡证样本图像的描述文本,所述卡证样本图像的描述文本用于描述所述卡证样本图像中的检测目标;
将所述卡证样本图像和所述卡证样本图像的描述文本作为样本对,训练开集目标检测器,直至获得目标卡证检测模型。
2.如权利要求1所述的方法,所述卡证模板用于描述所述卡证样本图像中的卡证因子的类型及位置;基于所述卡证模板,生成卡证样本图像,具体包括:
从卡证因子库中获取所述卡证模板规定的卡证因子,并将所述卡证因子布局在所述卡证模板规定的位置,以得到所述卡证样本图像。
3.如权利要求1所述的方法,在生成所述卡证样本图像之后,还包括:
对所述卡证样本图像进行真实性评估,得到评估分数;
若所述评估分数大于预设的分数阈值,则保留所述卡证样本图像;
若所述评估分数小于等于所述分数阈值,则删除所述卡证样本图像。
4.如权利要求3所述的方法,对所述卡证样本图像进行真实性评估,得到评估分数,具体包括:
将所述卡证样本图像输入预训练的分类器,所述分类器用于识别真实卡证图像和伪造卡证图像;
基于所述分类器的分类结果,确定所述评估分数。
5.如权利要求1所述的方法,获取所述卡证样本图像的描述文本,具体包括:
将所述检测任务的描述文本输入预训练的大语言模型,以得到所述卡证样本图像的描述文本。
6.如权利要求1所述的方法,将所述卡证样本图像和所述卡证样本图像的描述文本作为样本对,训练开集目标检测器,具体包括:
将所述样本对输入所述开集目标检测器,得到预测目标;
基于所述预测目标的检测框和所述检测目标的检测框,确定第一损失函数;
基于所述预测目标的类别和所述检测目标的类别标签,确定第二损失函数;
基于所述第一损失函数和所述第二损失函数,更新所述开集目标检测器的参数。
7.一种卡证检测方法,包括:
获取待检测的卡证图像;
获取用户输入的检测目标描述文本;
将所述卡证图像和所述检测目标描述文本输入卡证检测模型,得到所述卡证检测模型输出的检测目标;所述卡证检测模型是采用如权利要求1至6任意一项所述的方法训练得到的。
8.一种卡证检测模型的训练装置,包括:
样本图像生成模块,配置为基于检测任务,选择至少一个卡证模板以生成卡证样本图像,所述卡证样本图像中包括所述检测任务的检测目标,以及所述检测目标的检测框和类别标签;
样本文本生成模块,配置为获取所述卡证样本图像的描述文本,所述卡证样本图像的描述文本用于描述所述卡证样本图像中的检测目标;
训练模块,配置为将所述卡证样本图像和所述卡证样本图像的描述文本作为样本对,训练开集目标检测器,直至获得目标卡证检测模型。
9.如权利要求8所述的装置,所述样本图像生成模块具体包括:
存储模块,配置为存储预先构建的卡证模板;
第一数据获取模块,配置为基于所述检测任务,从所述存储模块选择至少一个所述卡证模板;
第二数据获取模块,配置为从卡证因子库中获取所述卡证模板规定的卡证因子;
生成模块,配置为将所述卡证因子布局在所述卡证模板规定的位置,以得到所述卡证样本图像。
10.如权利要求8所述的装置,还包括:
筛选模块,配置为对所述样本图像生成模块生成的所述卡证样本图像进行真实性评估,得到评估分数;若所述评估分数大于预设的分数阈值,则保留所述卡证样本图像;若所述评估分数小于等于所述分数阈值,则删除所述卡证样本图像。
11.如权利要求10所述的装置,所述筛选模块具体用于将所述卡证样本图像输入预训练的分类器,所述分类器用于识别真实卡证图像和伪造卡证图像;基于所述分类器的分类结果,确定所述评估分数。
12.如权利要求8所述的装置,所述样本文本生成模块具体用于将所述检测任务的描述文本输入预训练的大语言模型,以得到所述卡证样本图像的描述文本。
13.如权利要求8所述的装置,所述训练模块具体用于将所述样本对输入所述开集目标检测器,得到预测目标;基于所述预测目标的检测框和所述检测目标的检测框,确定第一损失函数;基于所述预测目标的类别和所述检测目标的类别标签,确定第二损失函数;基于所述第一损失函数和所述第二损失函数,更新所述开集目标检测器的参数。
14.一种卡证检测装置,包括:
第三数据获取模块,配置为获取待检测的卡证图像;
第四数据获取模块,配置为获取用户输入的检测目标描述文本;
处理模块,配置为将所述卡证图像和所述检测目标描述文本输入卡证检测模型,得到所述卡证检测模型输出的检测目标;所述卡证检测模型是采用如权利要求1至6任意一项所述的方法训练得到的。
15.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的方法,或者,实现如权利要求7所述的方法。
16.一种电子设备,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如权利要求1至6中任一项所述的方法的具体步骤,或者,执行如权利要求7所述的方法的具体步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410075949.1A CN117994604A (zh) | 2024-01-18 | 2024-01-18 | 卡证检测模型的训练方法、卡证检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410075949.1A CN117994604A (zh) | 2024-01-18 | 2024-01-18 | 卡证检测模型的训练方法、卡证检测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117994604A true CN117994604A (zh) | 2024-05-07 |
Family
ID=90890579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410075949.1A Pending CN117994604A (zh) | 2024-01-18 | 2024-01-18 | 卡证检测模型的训练方法、卡证检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117994604A (zh) |
-
2024
- 2024-01-18 CN CN202410075949.1A patent/CN117994604A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3869385B1 (en) | Method for extracting structural data from image, apparatus and device | |
US11188789B2 (en) | Detecting poisoning attacks on neural networks by activation clustering | |
US10685347B1 (en) | Activating a transaction card | |
CN112541443B (zh) | 发票信息抽取方法、装置、计算机设备及存储介质 | |
CN111932363A (zh) | 授权书的识别审核方法、装置、设备及系统 | |
CN113034421A (zh) | 一种图像检测方法、装置及存储介质 | |
CN113704614A (zh) | 基于用户画像的页面生成方法、装置、设备及介质 | |
CN112749606A (zh) | 一种文本定位方法和装置 | |
CN111985323A (zh) | 基于深度卷积神经网络的人脸识别方法及系统 | |
CN110647895B (zh) | 一种基于登录框图像的钓鱼页面识别方法及相关设备 | |
US11182635B2 (en) | Terminal apparatus, character recognition system, and character recognition method | |
CN115035347A (zh) | 图片识别方法、装置及电子设备 | |
CN109087439B (zh) | 票据校验方法、终端设备、存储介质及电子设备 | |
CN112569591B (zh) | 一种数据处理方法、装置、设备及可读存储介质 | |
CN113360737A (zh) | 页面内容采集方法、装置、电子设备和可读介质 | |
CN108268778A (zh) | 数据处理方法、装置及存储介质 | |
CN111931148A (zh) | 图像处理方法、装置和电子设备 | |
CN117994604A (zh) | 卡证检测模型的训练方法、卡证检测方法及装置 | |
US11776287B2 (en) | Document segmentation for optical character recognition | |
CN114821062A (zh) | 基于图像分割的商品识别方法及装置 | |
US11574456B2 (en) | Processing irregularly arranged characters | |
CN114332599A (zh) | 图像识别方法、装置、计算机设备、存储介质和产品 | |
CN113762031A (zh) | 一种图像识别方法、装置、设备及存储介质 | |
US11645372B2 (en) | Multifactor handwritten signature verification | |
CN111898761B (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 |