CN115100694A - 一种基于自监督神经网络的指纹快速检索方法 - Google Patents

一种基于自监督神经网络的指纹快速检索方法 Download PDF

Info

Publication number
CN115100694A
CN115100694A CN202210688307.XA CN202210688307A CN115100694A CN 115100694 A CN115100694 A CN 115100694A CN 202210688307 A CN202210688307 A CN 202210688307A CN 115100694 A CN115100694 A CN 115100694A
Authority
CN
China
Prior art keywords
fingerprint
picture
model
feature extractor
self
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
Application number
CN202210688307.XA
Other languages
English (en)
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.)
Inner Mongolia University of Technology
Original Assignee
Inner Mongolia University of Technology
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 Inner Mongolia University of Technology filed Critical Inner Mongolia University of Technology
Priority to CN202210688307.XA priority Critical patent/CN115100694A/zh
Publication of CN115100694A publication Critical patent/CN115100694A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1347Preprocessing; Feature extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1365Matching; Classification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Collating Specific Patterns (AREA)

Abstract

一种基于自监督神经网络的指纹快速检索方法,构建指纹特征提取器模型并进行预训练;模型主体采用线性投射层加Transformer编码器的结构;将预训练过的指纹特征提取器模型迁移到指纹图片上,用自监督学习的方式再次训练;构建指纹图片重构器模型,然后与自监督学习得到的指纹特征提取器模型连接,利用指纹重构任务使指纹特征提取器模型对指纹特征的抽取能力进一步提升;用指纹图片重构任务训练得到的指纹特征提取器模型对指纹库中的指纹图片逐一进行特征提取,建立指纹索引库;用查询指纹在指纹索引库检索得到候选指纹序列。本发明可在大规模指纹检索中直接利用原始指纹图片进行自动特征提取,并可提高指纹检索的精度和效率。

Description

一种基于自监督神经网络的指纹快速检索方法
技术领域
本发明属于生物特征识别技术领域,涉及图像处理和指纹检索,特别涉及一种基于自监督神经网络的指纹快速检索方法。
背景技术
指纹是目前生物特征识别技术领域中应用较为广泛的一种生物特征。由于指纹具有唯一性和不变性等优良特性,使得自动指纹识别系统在身份鉴别领域得到了广泛的应用。但随着自动指纹识别技术应用的领域越来越广,覆盖的人口越来越多,指纹数据库的规模也在不断扩大,有些指纹数据库的容量甚至达到亿级别,随之而来的挑战就是,从数亿个指纹中找出与查询指纹相似度较高的指纹,即大规模指纹图片的检索问题。以警用系统的指纹系统为例,如果每个公民都要在其数据库中登记存储指纹,则数据量动辄以亿计算,如此巨大的指纹数量必然导致指纹检索的速度降低。因此,针对大规模指纹数据库设计一款高效且精准的指纹检索算法对身份鉴别领域具有重要的意义。
传统的指纹图片检索方法都是基于人工设计的特征提取算法,对指纹图片进行特征提取,然后再利用该特征来进行指纹的检索和比对。比较常用的人工设计的指纹特征是“细节点”特征。细节点一般采用三元存储格式:(x,y,θ),x为细节点的横坐标,y为细节点的纵坐标,θ为细节点处纹线的方向。这种人工设计的特征会因为设计者的先验知识等主观因素而有所局限性,从而忽视部分指纹特征,而这些被忽视掉的特征很可能是会对指纹检索起帮助作用的特征。
发明内容
为了克服上述现有技术的缺点,本发明的目的在于提供一种基于自监督神经网络的指纹快速检索方法,以期在大规模指纹检索中直接利用原始指纹图片进行自动特征提取,并提高指纹检索的精度和效率。
为了实现上述目的,本发明采用的技术方案是:
一种基于自监督神经网络的指纹快速检索方法,包括如下步骤:
步骤1,构建指纹特征提取器模型,然后对其在ImageNet数据集上进行预训练;所述指纹特征提取器模型的主体采用线性投射层加Transformer编码器的结构,将Transformer编码器第一个位置的输出作为全连接层分类器的输入;预训练时,将ImageNet数据集中的每一张图片切割成图像块,当作时间序列输入至线性投射层,然后根据全连接层分类器的输出类别与图片的真实类别计算损失,更新模型参数;
步骤2,将步骤1中预训练过的指纹特征提取器模型迁移到指纹图片上,用自监督学习的方式在指纹图片上进行再次训练,训练时同样将数据集中的每一张指纹图片切割成图像块,当作时间序列输入至线性投射层;
步骤3,构建指纹图片重构器模型,然后与步骤2中自监督学习得到的指纹特征提取器模型相连接,利用指纹重构任务使指纹特征提取器模型对指纹特征的抽取能力进一步提升;
步骤4,用步骤3中指纹图片重构任务所训练得到的指纹特征提取器模型,对指纹库中的指纹图片逐一进行特征提取,用提取的特征向量建立指纹索引库;
步骤5,用查询指纹在步骤4中建立的指纹索引库进行快速检索,得到候选指纹序列。
优选地,所述步骤1中,预训练时,收集整理ImageNet上带有类别标签的图片数据集;将ImageNet中的每一张图片切割为n张16×16像素的图像块,按照从上到下和从左到右的顺序排序,将这n个图像块以序列形式输入线性投射层,输出n个token向量;在这n个token之前加入特殊字符<cls>的token,将共计n+1个token输入至Transformer解码器;将Transformer在<cls>位置的输出作为全连接层分类器的输入,该输入代表了整个图片的语义表达。
优选地,所述步骤2中,自监督学习有两个任务:
a、从切割好的指纹图片中随机选择一个图像块,对该图像块进行随机旋转,并记录旋转的角度,然后让指纹特征提取器模型预测该图像块的旋转角度;
b、从切割好的指纹图片中随机选择一个图像块,并将该图像块遮盖,然后让指纹特征提取器模型根据指纹图片的其他区域去预测生成该图像块;
优选地,根据自监督学习的任务a,对指纹图片进行处理,随机选中指纹图片中的一个窗口区域并将其随机旋转一定角度,生成旋转角度的标签;将得到的每个指纹图片切割为n张16×16像素图像块;将这n个图像块按照从上到下和从左到右的顺序排序,将排序后的n个图像块序列输入线性投射层,输出n个token向量;在这n个token之前加入特殊字符<rot>的token代表旋转角度,将共计n+1个token输入Transformer解码器;将Transformer的输出中<rot>位置对应的输出角度与生成的旋转角度的标签计算损失,然后反向传播更新参数;
根据自监督学习的任务b,对指纹图片进行处理,将每个原始指纹图片切割为n张16×16像素图像块;将这n个图像块按照从上到下和从左到右的顺序排序,将排序后的n个图像块序列输入线性投射层,输出n个token向量;在这n个token之前加入特殊字符<cov>的token代表当前任务已经切换为了旋转预测,从这n个token中随机选出一个用<mask>字符代替,并将该位置的图像块作为标签,然后将共计n+1个token输入Transformer解码器;将Transformer的输出中<mask>位置对应的输出与得到的标签计算损失,然后反向传播更新参数。
优选地,所述步骤3中,指纹重构任务是将指纹图片切割为图像块,当作时间序列输入至指纹特征提取器模型中,根据指纹特征提取器模型所提取的特征向量,指纹图片重构器模型会输出一个图像,计算该图像与原始指纹图片的结构相似性SSIM,判断其相似性,然后更新模型参数。
优选地,所述指纹图片重构器模型采用全连接层,所述指纹特征提取器模型的第一个token对应的输出与指纹图片重构器模型连接;所述指纹重构任务,是将每个原始指纹图片切割为n张16×16像素图像块,然后输入到指纹特征提取器模型中,将提取的图片语义表达作为特征向量,输入到指纹图片重构器模型中,输出一张指纹图片;将输出的该指纹图片与原始图片计算结构相似性指数SSIM,根据SSIM更新指纹特征提取器模型和指纹图片重构器模型的参数,让指纹图片重构器模型的输出越来越逼近原始指纹图片。
优选地,所述结构相似性SSIM计算公式如下:
Figure BDA0003700591260000041
其中μx是x的平均值,μy是y的平均值,
Figure BDA0003700591260000042
是x的方差,
Figure BDA0003700591260000043
是y的方差,σxy是x和y的协方差,c1=(k1L)2,c2=(k2L)2是用来维持稳定的常数,L是像素值的动态范围,k1=0.01,k2=0.03,结构相似性SSIM的范围为-1到1,当两张图片一摸一样时,SSIM的值等于1,x和y分别代表两个要进行相似性比较的图片。
优选地,所述步骤4,指纹库中的每个指纹对应一个不固定长度的细节点列表,将整个指纹库中每个指纹图片输入指纹特征提取器,并将指纹特征提取器第一个token位置的输出作为该指纹的特征向量,以该指纹的特征向量作为key,该指纹对应的细节点列表作为value,离线构建指纹索引库;每个指纹提取的特征向量的维数为n,将n维特征向量与n维度空间中坐标原点O={0,0,…,0}计算欧式距离d,然后按从小到大排序,得到指纹索引库S,d、key和value共同组成指纹索引库S中的一个元素,从而在检索阶段能够根据距离的大小快速剔除一部分指纹。
优选地,所述步骤5,通过计算查询指纹的n维特征向量与n维度空间中坐标原点的欧式距离进行第一次筛选,再通过计算查询指纹的n维特征向量与其他指纹的的n维特征向量之间的欧式距离,根据阈值U最终筛选出候选指纹序列。
优选地,所述步骤5,利用指纹索引库快速检索出候选指纹序列,步骤如下:
(1)当输入查询指纹时,将该查询指纹输入到指纹特征提取器模型中,得到该指纹的特征向量A={a1,a2,…,an};
(2)计算特征向量A与原点O的距离为d,定义U为阈值,令R1=d-U,R2=d+U;
(3)根据R1和R2对指纹索引库S进行筛选,具体做法为:剔除掉S中d小于R1,再剔除S中d大于R2的指纹;
(4)然后用该特征向量A与指纹索引库S中剩余的指纹特征向量逐一计算欧式距离,如果该距离小于阈值U,则将该指纹放入候选序列,否则比较下一个指纹。
与现有技术相比,本发明的有益效果是:
第一,与传统人工设计指纹特征不同,本发明利用神经网络以自监督学习的方式,自动学习提取指纹特征。针对指纹图片的特点设计了两种自监督学习任务:a.预测指纹图片部分区域的旋转角度;b.预测遮盖的指纹图形区域。
第二,利用提取的指纹特征向量对指纹图片进行重构这一策略,提高模型对指纹特征提取的准确性。
第三,利用神经网络提取的指纹特征向量,设计了一种指纹索引库的存储形式,利用该指纹索引可进行快速指纹检索。
第四,设计了一种全新的指纹检索策略,利用n维空间中指纹特征与原点的距离对指纹进行第一次筛选,然后利用查询指纹与剩余指纹的距离进行第二次筛选,这两次筛选策略大大降低了指纹检索所需要的时间。
附图说明
图1是本发明的流程图。
图2是自监督任务a的原理图。
图3是自监督任务b的原理图。
图4是指纹图片重构任务原理图。
图5是指纹索引库的存储结构图。
图6是指纹二维特征向量的检索原理图。
具体实施方式
下面结合附图和实施例详细说明本发明的实施方式。
本发明为一种基于自监督神经网络的指纹快速检索方法,在该方法中,主要有两个神经网络模型。第一个模型用于提取指纹图片的特征向量,称为指纹特征提取器模型,所提取的特征向量作为后续指纹检索的索引。第二个模型的作用是根据指纹特征提取器模型所得的特征向量来重构指纹图片,称为指纹图片重构器模型,其目的是提高指纹特征提取器对指纹图片特征的表达能力。两个模型联合训练后,指纹特征提取器模型对指纹的特征抽取能力达到最佳,然后根据抽取的指纹特征向量,以离线方式为指纹数据库建立索引,以便输入查询指纹时能够快速找到与其相似的候选指纹序列,然后用于逐一仔细比对。从而实现大规模指纹的快速且精准检索。
如图1所示,本发明主要包括如下步骤:
步骤1,指纹特征提取器模型的构建与训练。
本发明中指纹特征提取器模型的主体采用线性投射层加Transformer编码器的结构,预训练时,在Transformer编码器后接一个全连接层的分类器,将Transformer编码器第一个位置的输出作为全连接层分类器的输入。预训练数据集采用ImageNet数据集。预训练时,将ImageNet数据集中的每一张图片切割成若干图像块,当作时间序列输入至线性投射层,然后根据全连接层分类器的输出类别与图片的真实类别计算损失,更新模型参数。
更具体地,预训练时:
1)、先收集整理ImageNet中带有类别标签的图片数据集。
2)、针对Transformer编码器只能处理序列数据的特点,将ImageNet中的每一张图片切割为n张16×16像素的图像块,按照从上到下和从左到右的顺序排序,将这n个图像块以序列形式输入线性投射层,输出n个token向量。
3)、在这n个token之前加入特殊字符<cls>的token,将共计n+1个token输入至Transformer解码器。
4)、将Transformer在<cls>位置的输出作为全连接层分类器的输入,该输入代表了整个图片的语义表达。
5)、将指纹特征提取器模型在ImageNet数据集上进行预训练,让该模型能够初步对图片的特征进行表征。
步骤2,模型迁移。
将步骤1预训练过的指纹特征提取器模型迁移到指纹图片上,用自监督学习的方式在指纹图片上进行再次训练,同样,在训练时将数据集中的每一张指纹图片切割成图像块,当作时间序列输入至线性投射层。
示例地,本步骤的自监督学习有两个任务:
a、参考图2,从切割好的指纹图片中随机选择一个图像块,具体地,随机选择一个长和宽都为h个像素的窗口,该窗口覆盖的图片区域即为一个图像块。对该图像块进行随机旋转,并记录旋转的角度,然后让指纹特征提取器模型预测该图像块的旋转角度.
b、参考图3,从切割好的指纹图片中随机选择一个图像块,并将该图像块遮盖,然后让指纹特征提取器模型根据指纹图片的其他区域去预测生成该图像块。
更具体地,根据自监督学习的任务a对指纹图片进行处理的过程是:
1)、随机选中指纹图片中的一个窗口区域并将其随机旋转一定角度,生成旋转角度的标签。
2)、将得到的每个指纹图片切割为n张16×16像素图像块。
3)、将这n个图像块按照从上到下和从左到右的顺序排序,将排序后的n个图像块序列输入线性投射层,输出n个token向量。
4)、在这n个token之前加入特殊字符<rot>的token代表旋转角度,将共计n+1个token输入Transformer解码器。
5)、将Transformer的输出中<rot>位置对应的输出角度与生成的旋转角度的标签计算损失,然后反向传播更新参数。
根据自监督学习的任务b对指纹图片进行处理的过程是:
1)、将每个原始指纹图片切割为n张16×16像素图像块。
2)、将这n个图像块按照从上到下和从左到右的顺序排序,将排序后的n个图像块序列输入线性投射层,输出n个token向量。
3)、在这n个token之前加入特殊字符<cov>的token代表当前任务已经切换为了旋转预测,从这n个token中随机选出一个用<mask>字符代替,并将该位置的图像块作为标签,然后将共计n+1个token输入Transformer解码器。
4)、将Transformer的输出中<mask>位置对应的输出与得到的标签计算损失,然后反向传播更新参数。
步骤3,指纹图片重构器模型的构建及其与指纹特征提取器模型的关联。
本发明中,指纹图片重构器模型的结构为全连接层,指纹图片重构如图4所示,将指纹图片重构器模型与步骤2中自监督学习得到的指纹特征提取器模型相连接。具体是将步骤2得到的指纹特征提取器模型的第一个token对应的输出与指纹图片重构器模型连接。由此,可利用指纹重构任务使指纹特征提取器模型对指纹特征的抽取能力进一步提升。
本步骤的指纹重构任务,是将指纹图片切割为图像块,当作时间序列输入至指纹特征提取器模型中,根据指纹特征提取器模型所提取的特征向量,指纹图片重构器模型会输出一个图像,计算该图像与原始指纹图片的结构相似性SSIM,判断其相似性,然后更新模型参数。
更加具体地,本步骤的指纹重构任务中:
1)、将每个原始指纹图片切割为n张16×16像素图像块,然后像步骤2中一样输入到指纹特征提取器模型中,将提取的图片语义表达作为特征向量,输入到指纹图片重构器模型中,输出一张指纹图片。
2)、将输出的该指纹图片与原始图片计算结构相似性指数SSIM,根据SSIM更新指纹特征提取器模型和指纹图片重构器模型的参数,让指纹图片重构器模型的输出越来越逼近原始指纹图片。
示例地,给定两个图像,其结构相似性SSIM计算公式如下:
Figure BDA0003700591260000091
其中μx是x的平均值,μy是y的平均值,
Figure BDA0003700591260000092
是x的方差,
Figure BDA0003700591260000093
是y的方差,σxy是x和y的协方差,c1=(k1L)2,c2=(k2L)2是用来维持稳定的常数,L是像素值的动态范围,k1=0.01,k2=0.03,结构相似性SSIM的范围为-1到1,当两张图片一摸一样时,SSIM的值等于1,x和y分别代表两个要进行相似性比较的图片。
步骤4,指纹索引库的离线建立。
本发明中,用步骤3中指纹图片重构任务所训练得到的指纹特征提取器模型,对指纹库中的指纹图片逐一进行特征提取,用提取的特征向量即可离线建立指纹索引库。
进一步地,提取的特征向量维度为n,将n维的特征向量与n维度空间中坐标原点的欧式距离对指纹进行从小到大排序,从而在检索阶段可以根据距离的大小快速剔除一部分指纹。
更具体地,其过程可描述如下:
1)、指纹库中的每个指纹图片都已经用传统方法提取了细节点特征,每个指纹对应一个不固定长度的细节点列表。
2)、将整个指纹库中的每个指纹图片输入指纹特征提取器,并将指纹特征提取器第一个token位置的输出作为该指纹的特征向量。
3)、以该指纹的特征向量作为key,该指纹对应的细节点列表作为value,离线构建指纹索引库。
4)、每个指纹提取的特征向量的维数为n,将n维特征向量与n维度空间中坐标原点O={0,0,…,0}计算欧式距离d,然后按从小到大排序,得到指纹索引库S,d、key和value共同组成指纹索引库S中的一个元素,从而在检索阶段能够根据距离的大小快速剔除一部分指纹。指纹索引库S的存储结构如图5所示。n维空间的欧式距离计算公式如下:
Figure BDA0003700591260000101
其中xi与yi分别代表n维空间中两点在第i维上的长度。
步骤5,用查询指纹在步骤4中建立的指纹索引库进行快速检索,即可得到候选指纹序列。
进一步地,通过计算查询指纹的n维特征向量与n维度空间中坐标原点的欧式距离进行第一次筛选,再通过计算查询指纹的n维特征向量与其他指纹的的n维特征向量之间的欧式距离,根据阈值U最终筛选出候选指纹序列。
更具体地,利用指纹索引库快速检索出候选指纹序列,步骤如下:
1)、当输入查询指纹时,将该查询指纹输入到指纹特征提取器模型中,得到该指纹的特征向量A={a1,a2,…,an};
2)、计算特征向量A与原点O的距离为d,定义U为阈值,令R1=d-U,R2=d+U;
3)、根据R1和R2对指纹索引库S进行筛选,具体做法为:剔除掉S中d小于R1,再剔除S中d大于R2的指纹;
4)、然后用该特征向量A与指纹索引库S中剩余的指纹特征向量逐一计算欧式距离,如果该距离小于阈值U,则将该指纹放入候选序列,否则比较下一个指纹。
5)、阈值U是一个超参数,需要实验调整大小。该筛选过程的物理意义是,根据指纹的n维特征向量,将每个指纹映射到n维空间中,R1与R2为该n维空间中的两个n维球体的半径。利用U计算R1与R2,能够先将指纹索引库S中的大部分不太相似的指纹剔除掉。然后,以A={a1,a2,…,an}为球心,U为半径做出一个小的n维球体,将n维球体外的指纹剔除,n维球体内的指纹则进入指纹候选序列。将该筛选过程从n维度降低为2维后的示意图如图6所示。图6中,小三角形代表索引库中的所有指纹,小圆圈代表查询指纹,通过R1与R2可以快速将指纹库中的大部分不相关指纹剔除掉在剩余的指纹中,利用U再筛选出最终的候选指纹。

Claims (10)

1.一种基于自监督神经网络的指纹快速检索方法,其特征在于,包括如下步骤:
步骤1,构建指纹特征提取器模型,然后对其在ImageNet数据集上进行预训练;所述指纹特征提取器模型的主体采用线性投射层加Transformer编码器的结构,将Transformer编码器第一个位置的输出作为全连接层分类器的输入;预训练时,将ImageNet数据集中的每一张图片切割成图像块,当作时间序列输入至线性投射层,然后根据全连接层分类器的输出类别与图片的真实类别计算损失,更新模型参数;
步骤2,将步骤1中预训练过的指纹特征提取器模型迁移到指纹图片上,用自监督学习的方式在指纹图片上进行再次训练,训练时同样将数据集中的每一张指纹图片切割成图像块,当作时间序列输入至线性投射层;
步骤3,构建指纹图片重构器模型,然后与步骤2中自监督学习得到的指纹特征提取器模型相连接,利用指纹重构任务使指纹特征提取器模型对指纹特征的抽取能力进一步提升;
步骤4,用步骤3中指纹图片重构任务所训练得到的指纹特征提取器模型,对指纹库中的指纹图片逐一进行特征提取,用提取的特征向量建立指纹索引库;
步骤5,用查询指纹在步骤4中建立的指纹索引库进行快速检索,得到候选指纹序列。
2.根据权利要求1所述基于自监督神经网络的指纹快速检索方法,其特征在于,所述步骤1中,预训练时,收集整理ImageNet上带有类别标签的图片数据集;将ImageNet中的每一张图片切割为n张16×16像素的图像块,按照从上到下和从左到右的顺序排序,将这n个图像块以序列形式输入线性投射层,输出n个token向量;在这n个token之前加入特殊字符<cls>的token,将共计n+1个token输入至Transformer解码器;将Transformer在<cls>位置的输出作为全连接层分类器的输入,该输入代表了整个图片的语义表达。
3.根据权利要求1所述基于自监督神经网络的指纹快速检索方法,其特征在于,所述步骤2中,自监督学习有两个任务:
a、从切割好的指纹图片中随机选择一个图像块,对该图像块进行随机旋转,并记录旋转的角度,然后让指纹特征提取器模型预测该图像块的旋转角度;
b、从切割好的指纹图片中随机选择一个图像块,并将该图像块遮盖,然后让指纹特征提取器模型根据指纹图片的其他区域去预测生成该图像块。
4.根据权利要求3所述基于自监督神经网络的指纹快速检索方法,其特征在于,根据自监督学习的任务a,对指纹图片进行处理,随机选中指纹图片中的一个窗口区域并将其随机旋转一定角度,生成旋转角度的标签;将得到的每个指纹图片切割为n张16×16像素图像块;将这n个图像块按照从上到下和从左到右的顺序排序,将排序后的n个图像块序列输入线性投射层,输出n个token向量;在这n个token之前加入特殊字符<rot>的token代表旋转角度,将共计n+1个token输入Transformer解码器;将Transformer的输出中<rot>位置对应的输出角度与生成的旋转角度的标签计算损失,然后反向传播更新参数;
根据自监督学习的任务b,对指纹图片进行处理,将每个原始指纹图片切割为n张16×16像素图像块;将这n个图像块按照从上到下和从左到右的顺序排序,将排序后的n个图像块序列输入线性投射层,输出n个token向量;在这n个token之前加入特殊字符<cov>的token代表当前任务已经切换为了旋转预测,从这n个token中随机选出一个用<mask>字符代替,并将该位置的图像块作为标签,然后将共计n+1个token输入Transformer解码器;将Transformer的输出中<mask>位置对应的输出与得到的标签计算损失,然后反向传播更新参数。
5.根据权利要求1所述基于自监督神经网络的指纹快速检索方法,其特征在于,所述步骤3中,指纹重构任务是将指纹图片切割为图像块,当作时间序列输入至指纹特征提取器模型中,根据指纹特征提取器模型所提取的特征向量,指纹图片重构器模型会输出一个图像,计算该图像与原始指纹图片的结构相似性SSIM,判断其相似性,然后更新模型参数。
6.根据权利要求1所述基于自监督神经网络的指纹快速检索方法,其特征在于,所述指纹图片重构器模型采用全连接层,所述指纹特征提取器模型的第一个token对应的输出与指纹图片重构器模型连接;所述指纹重构任务,是将每个原始指纹图片切割为n张16×16像素图像块,然后输入到指纹特征提取器模型中,将提取的图片语义表达作为特征向量,输入到指纹图片重构器模型中,输出一张指纹图片;将输出的该指纹图片与原始图片计算结构相似性指数SSIM,根据SSIM更新指纹特征提取器模型和指纹图片重构器模型的参数,让指纹图片重构器模型的输出越来越逼近原始指纹图片。
7.根据权利要求6所述基于自监督神经网络的指纹快速检索方法,其特征在于,所述结构相似性SSIM计算公式如下:
Figure FDA0003700591250000031
其中μx是x的平均值,μy是y的平均值,
Figure FDA0003700591250000032
是x的方差,
Figure FDA0003700591250000033
是y的方差,σxy是x和y的协方差,c1=(k1L)2,c2=(k2L)2是用来维持稳定的常数,L是像素值的动态范围,k1=0.01,k2=0.03,结构相似性SSIM的范围为-1到1,当两张图片一摸一样时,SSIM的值等于1,x和y分别代表两个要进行相似性比较的图片。
8.根据权利要求1所述基于自监督神经网络的指纹快速检索方法,其特征在于,所述步骤4,指纹库中的每个指纹对应一个不固定长度的细节点列表,将整个指纹库中每个指纹图片输入指纹特征提取器,并将指纹特征提取器第一个token位置的输出作为该指纹的特征向量,以该指纹的特征向量作为key,该指纹对应的细节点列表作为value,离线构建指纹索引库;每个指纹提取的特征向量的维数为n,将n维特征向量与n维度空间中坐标原点O={0,0,…,0}计算欧式距离d,然后按从小到大排序,得到指纹索引库S,d、key和value共同组成指纹索引库S中的一个元素,从而在检索阶段能够根据距离的大小快速剔除一部分指纹。
9.根据权利要求1所述基于自监督神经网络的指纹快速检索方法,其特征在于,所述步骤5,通过计算查询指纹的n维特征向量与n维度空间中坐标原点的欧式距离进行第一次筛选,再通过计算查询指纹的n维特征向量与其他指纹的的n维特征向量之间的欧式距离,根据阈值U最终筛选出候选指纹序列。
10.根据权利要求1所述基于自监督神经网络的指纹快速检索方法,其特征在于,所述步骤5,利用指纹索引库快速检索出候选指纹序列,步骤如下:
(1)当输入查询指纹时,将该查询指纹输入到指纹特征提取器模型中,得到该指纹的特征向量A={a1,a2,…,an};
(2)计算特征向量A与原点O的距离为d,定义U为阈值,令R1=d-U,R2=d+U;
(3)根据R1和R2对指纹索引库S进行筛选,具体做法为:剔除掉S中d小于R1,再剔除S中d大于R2的指纹;
(4)然后用该特征向量A与指纹索引库S中剩余的指纹特征向量逐一计算欧式距离,如果该距离小于阈值U,则将该指纹放入候选序列,否则比较下一个指纹。
CN202210688307.XA 2022-06-17 2022-06-17 一种基于自监督神经网络的指纹快速检索方法 Pending CN115100694A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210688307.XA CN115100694A (zh) 2022-06-17 2022-06-17 一种基于自监督神经网络的指纹快速检索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210688307.XA CN115100694A (zh) 2022-06-17 2022-06-17 一种基于自监督神经网络的指纹快速检索方法

Publications (1)

Publication Number Publication Date
CN115100694A true CN115100694A (zh) 2022-09-23

Family

ID=83291407

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210688307.XA Pending CN115100694A (zh) 2022-06-17 2022-06-17 一种基于自监督神经网络的指纹快速检索方法

Country Status (1)

Country Link
CN (1) CN115100694A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115830652A (zh) * 2023-01-11 2023-03-21 山西清众科技股份有限公司 一种深度掌纹识别装置及方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115830652A (zh) * 2023-01-11 2023-03-21 山西清众科技股份有限公司 一种深度掌纹识别装置及方法

Similar Documents

Publication Publication Date Title
CN107122809B (zh) 基于图像自编码的神经网络特征学习方法
CN111709311B (zh) 一种基于多尺度卷积特征融合的行人重识别方法
CN111414461B (zh) 一种融合知识库与用户建模的智能问答方法及系统
CN109993100B (zh) 基于深层特征聚类的人脸表情识别的实现方法
CN109063649B (zh) 基于孪生行人对齐残差网络的行人重识别方法
CN112633382B (zh) 一种基于互近邻的少样本图像分类方法及系统
CN109740679B (zh) 一种基于卷积神经网络和朴素贝叶斯的目标识别方法
CN107169117B (zh) 一种基于自动编码器和dtw的手绘图人体运动检索方法
CN106951551B (zh) 联合gist特征的多重索引图像检索方法
CN109829414B (zh) 一种基于标签不确定性和人体组件模型的行人再识别方法
CN110516533B (zh) 一种基于深度度量的行人再辨识方法
CN110188827B (zh) 一种基于卷积神经网络和递归自动编码器模型的场景识别方法
CN110598022B (zh) 一种基于鲁棒深度哈希网络的图像检索系统与方法
CN112036511B (zh) 基于注意力机制图卷积神经网络的图像检索方法
CN112347284A (zh) 一种组合商标图像检索方法
CN109871379B (zh) 一种基于数据块学习的在线哈希最近邻查询方法
CN108763295A (zh) 一种基于深度学习的视频近似拷贝检索算法
CN114067385A (zh) 基于度量学习的跨模态人脸检索哈希方法
CN115035418A (zh) 一种基于改进DeepLabV3+网络的遥感图像语义分割方法及系统
CN112084895B (zh) 一种基于深度学习的行人重识别方法
CN111161244A (zh) 基于FCN+FC-WXGBoost的工业产品表面缺陷检测方法
CN113920472A (zh) 一种基于注意力机制的无监督目标重识别方法及系统
Tereikovskyi et al. The method of semantic image segmentation using neural networks
CN115131558A (zh) 一种少样本环境下的语义分割方法
CN116152554A (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