全新 SOTA backbone | 2024年了,再见ViT系列Backbone,实数难得,不知道效果如何?
共 48098字,需浏览 97分钟
·
2024-04-20 10:05
点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达
在构建用于精确匹配的深度固定长度表示时,确定指纹上的密集特征点,特别是在像素 Level 上,具有重大意义。
为了探索指纹匹配的可解释性,作者提出了一种多阶段可解释的指纹匹配网络,名为通过视觉 Transformer 进行指纹匹配的可解释固定长度表示(IFViT),该网络由两个主要模块组成。
第一个模块是一个可解释的密集配准模块,它建立一个基于视觉 Transformer (VIT)的孪生网络来捕捉长距离依赖关系和指纹对中的全局上下文。它为指纹对齐提供了可解释的密集像素级特征点对应关系,并增强了后续匹配阶段的可解释性。
第二个模块考虑了已对齐指纹对的局部和全局表示,以实现可解释的固定长度表示提取和匹配。它采用在第一个模块中训练的ViTs,并增加一个全连接层,并重新训练它们以同时产生具有区分性的固定长度表示和可解释的密集像素级特征点对应关系。在多个公开可用的指纹数据库上的大量实验结果表明,所提出的框架不仅在密集配准和匹配方面表现出色,而且显著提高了基于深度固定长度表示的指纹匹配的可解释性。
I Introduction
指纹是一种不可变且独特的生物特征,广泛应用于各种场景中的人体认证,包括法医、银行识别和物理访问控制。
作为认证的关键部分,指纹匹配旨在将输入的指纹图案与数据库中存储的图案进行比较,以确定它们是否属于同一手指。细节点(如脊端和分叉)通常被认为是完成匹配过程的可靠特征。然而,当指纹质量因干燥或湿润等条件而降低时,提取细节点可能具有挑战性。
相反,基于深度学习的方法能够提取具有判别力的固定长度指纹表征,并被认为是有望解决传统基于细节点的匹配方法局限性的替代方案。尽管取得了重大进展,但在基于深度学习的指纹匹配中提高可解释性仍然处于初级阶段。
机器学习方法由于其强大的推理能力,在众多领域取得了巨大成功,其中可解释人工智能(XAI)目前是关键关注点之一。XAI旨在提高人工智能系统成果的可理解性和透明度,以促进可靠的真实世界数据驱动应用。了解机器学习决策背后的根本原因至关重要,特别是对于黑盒深度学习模型。
对于指纹匹配,准确地在像素 Level 确定用于匹配的特征点有可能显著提高可解释性。尽管传统的基于细节点的匹配方法可以在输入指纹对之间建立细节点的像素级对应关系,但进行指纹成对比较在计算上密集,并且随检测到的细节点数量而变化,特别是在加密领域。为了克服这一挑战,学习固定长度的指纹表征已经成为一个有前景的解决方案。然而,直接揭示给定指纹对内特征点的像素级对应关系仍然具有挑战性。
最近,深度学习模型被探索用于为给定的指纹对建立对应关系。Cao等人引入了基于自编码器的模型进行细节点检测,并通过计算潜在指纹和参考指纹之间的相似性来建立细节点对应关系。
为了减轻非线性皮肤变形的负面影响,提出了指纹密集配准技术来测量两个指纹之间的像素级位移。然而,这些模型主要作为后续任务(如指纹匹配或镶嵌)的基础,因此不能直接根据模型的输出(如固定长度表征)提供匹配结果中特征点的可解释像素级对应关系。
Grosz等人设计了AFRNet来提取用于指纹索引的判别指纹表征,使低确定性情况下局部固定长度指纹表征之间的对应关系可视化并进行细化。然而,AFRNet的卷积神经网络分支由于局部关注限制了可获得对应关系的数量。此外,AFRNet产生的对应关系是基于块的而不是像素级的,并且是通过计算密集的暴力算法导出的。鉴于这些考虑,迫切需要开发一种可靠的方法,能够同时学习固定长度表征并提供特征点的可解释密集像素级对应关系,特别是在指纹的低纹理区域。
现有的用于提取固定长度指纹表征的架构主要基于卷积神经网络(CNNs),并常常结合领域知识(例如细节信息)以提高匹配性能。
除了CNNs,视觉 Transformer (ViT)的应用也最近出现,作为一种有效的解决方案,这是由于它在各种计算机视觉任务中与CNN相比具有优越性能。与关注局部区域的CNN不同,ViT利用自注意力机制关注输入图像的各个部分,使它能捕获长距离依赖和全局上下文。这类特性对于提取与长距离纹理信息相关的特征特别有用,例如指纹的脊和谷。
据作者所知,目前还没有基于深度学习的指纹匹配方法能够同时为给定的指纹对直接产生可解释的密集像素级特征点对应和具有区分性的固定长度表征。与之前的研究主要旨在提高识别性能不同,作者更多地关注在保持合理识别性能的同时提高指纹匹配的可解释性。受到ViT全局注意力机制的启发,作者提出了一个多阶段的指纹匹配网络,名为通过视觉 Transformer 进行指纹匹配的可解释固定长度表征(IFViT),以学习可解释的固定长度表征来捕获指纹不同部分之间的长距离关系。图2展示了IFViT的整个架构。它由两个模块组成,分别是一个可解释的指纹密集配准模块和一个可解释的固定长度表征提取与匹配模块。
与之前由CNN实现的指纹密集配准方法相比,本研究是首次利用具有全局注意力机制的ViT来生成特征点的密集像素级对应。在图1中展示的具有挑战性的例子中,基于作者提出的方法,即使是低质量和跨传感器指纹对,也能生成大量特征点的对应。此外,作者还开发了一个基于ViT的连体网络作为指纹匹配的主要 Backbone 网络,同时考虑指纹的局部和全局表征来学习固定长度表征,并在匹配结果中提供可解释的特征点像素级对应。
作者在几个公开的指纹数据集上评估了作者提出的模型,并与之前的基于深度学习的指纹识别方法进行了比较。实验结果表明,在配准和匹配性能方面,它都是有效的。此外,所提方法还能在配准和匹配结果中提供可解释的密集像素级特征点对应,这是之前在学习指纹固定长度表征的工作中所缺失的独特特性。作者的贡献总结如下:
作者引入了一个基于ViT的可解释多阶段深度学习框架,用于指纹匹配。它不仅可以学习判别性的固定长度表示,还可以在匹配结果中提供给定指纹对上特征点的可解释密集像素级对应关系。 作者提出了一种基于可解释性连体网络通过ViT的指纹密集配准模块,它可以为指纹对中的特征点提供可解释的密集像素级对应关系,即使是对于低纹理区域。这些学习到的对应关系可以进一步用于有效的指纹对齐,并在指纹匹配阶段提高可解释性。 作者提出了一种基于可解释性连体网络的固定长度表示提取与匹配模块,通过ViT实现。它结合了指纹的局部和全局表示,以弥补各自的语义不足。在有限数量的手指上训练模型时,该匹配性能已经在各种公共数据库上进行评估,并且与基于深度学习的最先进的指纹识别方法相当。
II Related Work
Fixed-Length Representations of Fingerprints
许多研究探讨了在指纹识别中学习深度固定长度指纹表征的可行性。基于CNN的方法是首先被广泛采用的方法。作为开创性工作,Cao等人设计了一个基于Inception V3的方法,用于提取固定长度表征并进行指纹索引和匹配。为了提高识别性能,进一步在深度网络中引入了领域知识,例如细节信息。其中一个代表性工作是DeepPrint,其性能与最先进的手指细节匹配器相比具有竞争力。固定长度表征的学习也考虑到了非接触式和接触式指纹匹配。与上述基于分类的方法不同,也使用了相似性度量学习来学习固定长度表征。Lin等人开发了一个基于暹罗CNN的框架,用于精确匹配非接触式和基于接触的指纹图像。
近年来,将ViT应用于学习固定长度指纹表征的应用也引起了关注。Grosz等人首次提出使用ViT提取固定长度指纹表征,并证明ViT在指纹识别中的独立性能与基于CNN的模型相媲美。Tandon等人提出了一种基于全局表征(即完整的指纹图像)和局部表征(即细节信息)的卷积ViT网络,以补充指纹识别中的语义信息。
然而,上述大多数方法在指纹匹配过程中遇到了可解释性的限制。难点在于这些学习的固定长度表征缺乏确定用于匹配的指纹对特征点的能力。它们缺乏与基于细节的匹配方法相同的可解释性水平,因为后者可以在匹配结果中直观地提供像素级的细节对应关系。
指纹匹配的可解释性
在近年来处理与计算机视觉相关的任务时,建立具有可接受可解释性的深度学习模型已成为众多研究的重要任务。作为识别个人的另一种流行的生物识别技术,面部识别受到了广泛关注,导致对面部匹配和索引的可解释深度学习模型进行了大量研究。相比之下,关于可解释指纹识别技术的研究几乎没有。基于深度学习模型的可解释指纹识别方法同样重要,值得更多关注。
基于细节点的指纹匹配方法在过去的几十年里占据了主导地位。这不仅仅是因为它在匹配中的可靠性能,还因为其卓越的可解释性。首先提取由其原点(即 和 坐标)和角度表示的细节点,然后可以在输入的指纹对中建立并可视化细节点的对应关系。与细节点匹配类似,Cao等人引入了虚拟细节点的概念,使用深度学习模型对指纹图像上的有向点进行采样,以确保潜在指纹区域内有足够的关键点,并提供可解释的对应关系。
Gu等人提出了一种从粗到细的匹配方案,考虑使用无向采样点作为关键点,以在给定的潜在指纹对上产生可解释的对应关系。然而,识别出的关键点(例如细节点或虚拟细节点)可用于获取用于指纹匹配的平均相似性,但它们缺乏由深度模型提取的固定长度表示的好处。执行指纹成对比较在计算上要求较高,这随检测到的关键点数量的变化而变化。另一方面,Cui等人还定义了指纹密集配准任务,用于在具有非线性皮肤扭曲的两指纹之间获得像素级的位移度量。学习到的对应关系有助于提高后续匹配性能,同时提供特征点的像素级可解释对应关系。
尽管上述研究能够提供特征点的像素级可解释对应关系,但它们在匹配过程中没有与学习固定长度的指纹表示相集成,这限制了降低计算复杂性和在其他下游任务(例如加密)中的应用性。此外,这些研究中使用的卷积神经网络(CNN)具有有限的感受野,不利于在大范围全局上下文中寻找特征点的对应关系。Grosz等人设计了一个名为AFRNet的网络,用于在学习判别性固定长度指纹表示的索引任务中获得局部固定长度指纹表示之间的对应关系,这可以用于在低确定性情况下细化全局表示。然而,与之前的研究类似,AFRNet的CNN分支限制了可实现的对应关系数量,限制了其可解释性。
另一方面,对应关系是基于块的而不是像素级的,并且不是神经网络的直接输出。它们是使用蛮力算法获得的,这需要大量的计算资源,使得过程耗时。
还考虑使用预测输出的梯度来识别输入图像的部分,这些部分对指纹匹配结果产生最大影响。Chowdhury等人使用指纹块训练了多尺度膨胀型孪生CNN,并使用Grad-CAM 展示了细节点对指纹匹配的重要性。然而,它只能揭示在推理阶段CNN关注的一般区域,但不能建立更详细的像素级对应关系。
与先前的研究相比,作者提出了IFViT用于指纹匹配,它具有出色的匹配性能和可解释性。
它结合了深度模型提取的固定长度表示的优势和匹配结果中特征点的可解释的像素级对应关系。基于ViT的模型被建立来获得可解释的密集像素级匹配。这些匹配可用于有效的指纹对齐,并提高后续匹配过程的可解释性,使得用于基于固定长度表示的指纹匹配的特征点可以被可视化。
III Interpretable Fixed-Length Representation for Fingerprint Matching
在本节中,作者提供了对所提出的IFViT的详细描述。首先,作者提供了IFViT的高级概述和直觉,然后讨论了基于ViT的模块在可解释指纹密集配准中的实现机制,接着是ViT-based模块在提取和匹配可解释指纹固定长度表示方面的工作机制。
Overview
所提出的IFViT架构如图2所示。它包含两个主要模块,一个是可解释的密集配准模块,另一个是可解释的固定长度表示提取和匹配模块。IFViT使用包含数百万指纹图像的大型数据集进行训练,这些数据集跨越几个基准数据集,包括平面、掌纹和滚动指纹。
给定输入指纹对 和 ,采用特定的CNN,ResNet-18 [35],提取局部特征 和 。然后采用ViT从 和 中学习位置和上下文相关特征,接着使用可微匹配层产生给定指纹对的局部特征点的密集像素对应关系。随后基于这些对应关系进行对齐,以获得相对于另一个输入 的配准指纹图像 。配准后的指纹对接着通过FingerNet 进行指纹增强,FingerNet是一个最先进的细节提取器,包括方向估计、分割、Gabor增强和细节提取,以获得增强的指纹对 和 。为了充分利用输入指纹对的综合局部和全局表示,作者确定相应的感兴趣区域(ROIs),包括原始指纹图像中的 和 ,以及配准增强指纹图像中的重叠区域 和 。随后,这些ROIs传递到在可解释的密集配准模块中训练的ViT,但用新的全连接层进行微调,以同时获得特征点的可解释密集像素对应关系和有辨识力的固定长度指纹表示。计算学习到的局部和全局固定长度表示的相似性,并将它们结合起来得出最终的匹配得分。
Interpretable Dense Registration
密集指纹配准旨在建立两个指纹之间的特征点在全像素 Level 上的对应关系,这两个指纹可能受到非线性皮肤变形或位移的影响[38]。这些学习到的对应关系随后可用于拟合空间变换模型,以对齐指纹,这是大多数指纹识别系统中的一个基本组成部分[3]。由于配准质量可能极大地影响后续指纹匹配过程的性能,这促使作者开发一个健壮的密集配准模型。作者特别考虑了ViT(视觉 Transformer )的特性,因其能捕捉全局上下文。
给定一对指纹图像 和 ,首先作者使用卷积神经网络(CNN)学习平移等变的局部特征,这也有助于将输入长度减少到ViT模块,以确保可管理的计算成本。在本研究中,选择了ResNet-18作为主干网络。从CNN获得特征图 之后,构建了一个ViT模型来提取既与位置相关又与上下文相关的局部特征。具体来说,ViT首先基于特征图 中的 个 Patch 进行线性投影,然后将它们转换为以下所示的1D标记 。
其中 表示线性投影。位置嵌入 也被添加到标记中,以提供位置信息。随后,标记被传递到由 个 Transformer 层组成的编码器中。作为编码器中的关键部分,注意力层以三种不同的向量接收标记: Query ( )、键( )和值( )。来自不同输入的向量随后被整合成三个不同的矩阵,即 、 和 。 Query 根据从 (对应每个值 )和键向量 的点积计算出的注意力权重,从值 中检索信息。该过程表示为:
除了自注意力层之外,受[32, 39]启发的跨注意力层也被引入到作者的ViT模型中,以实现指纹对之间的跨图像通信,类似于人类在匹配图像时来回看的方式。在自注意力层方面,输入特征 和 是相同的( 或 )。然而,对于跨注意力层, 和 要么是( 和 ),要么是( 和 )。在 Transformer 中,自注意力层和跨注意力层交替出现 次。通过编码器层后,表示为 和 的转换特征被获取。
在给定指纹对的特征点识别密集像素级的对应关系方面,采用了使用双重softmax算子的可微匹配层[36]。首先,作者通过计算它们的相关性来比较 中每个像素与 中所有像素的特征相似性,如下所示:
其中,相关矩阵 表示 与 之间每个坐标的相关值。 是一个归一化因子,用于防止点积操作产生大数值。
随后,作者使用softmax操作对 进行归一化,得到匹配置信度矩阵 ,如方程(4)所示。基于softmax方法的应用不仅使得能够进行端到端训练过程,还提供了像素级的准确性。
在 中选择候选匹配项,如果对应的置信分数高于给定阈值 。作者使用相互最近邻(MNN)标准进一步过滤掉异常匹配,并获得最终的选定匹配 :
损失函数。对于可解释的密集配准模块,训练产生密集像素匹配的ViT的损失函数是负对数似然损失,该损失是基于匹配置信度矩阵 计算的。为加速训练的收敛,采用了LoFTR[32]中用于特征匹配的预训练ViT模型。考虑到没有可用的公开指纹数据库提供指纹对匹配的 GT 标签,作者构建了几个噪声模型来模拟实际指纹图像中出现的不同类型的噪声和损坏,以提高模型在低质量或低纹理指纹图像中识别特征点对应关系的能力。
在这种情况下,不使用FingerNet增强的指纹图像,而是仅依赖于原始指纹图像及其相应的损坏图像来训练模型。由于原始和合成损坏指纹图像之间每个像素位置的关系可以直接获得,作者能够为置信度矩阵确定 GT 标签 。本研究中模拟了三种类型的噪声,包括传感器噪声、干燥和过度压力,如图3所示。
传感器噪声可以通过Perlin噪声[40]来近似,而干燥和过度压力可以通过分别执行膨胀和侵蚀操作来模拟。为确保旋转不变性,所有损坏的指纹图像都随机旋转 60度。这个旋转参数是基于关于用户在将手指定位在阅读器平板上时可能旋转的最大程度的专业知识确定的[3]。此外,为最小化错误匹配,也为伪指纹对的配准创建了 GT 标签。在训练阶段,基于 中格网的负对数似然损失密集配准的损失函数 被最小化:
损失函数 的计算公式为:
Interpretable Fixed-length Representation Extraction and Matching
在给定指纹对进行密集配准后,作者建立了作者方法的第二个关键组成部分,即可解释的固定长度表示提取与匹配模块。在这个模块中,作者结合了指纹的局部和全局表示来提高匹配性能。它还可以在匹配结果中提供类似先前可解释的密集配准模型的特征点可解释的密集像素级对应关系。
指纹对齐。认识到对齐的结果将显著影响后续匹配模块的性能,作者将 在五个角度(-60度,-30度,0度,30度,60度)进行旋转,以确定对齐的最佳匹配 。随后,作者使用RANSAC算法计算单应性矩阵 ,并将获得的 直接应用于 以生成对齐后的 。与最近被广泛用于指纹对齐的空间变换网络(STN)相比,例如在[3, 6]中,作者提出的基于ViT的可解释密集配准模块用于指纹对齐,可以为给定的指纹对提供特征点的密集像素级对应关系,这有助于理解确定指纹对齐成功或失败的标准。
获取局部和全局表示。尽管全局固定长度的指纹表示已被证明对指纹识别有效[3, 41, 42],但它可能会错误地产生不同身份之间某些全局相似脊线流结构的较高相似性,从而导致错误的匹配[19]。另一方面,局部表示,例如指纹 Patch ,也可能面临匹配失败,这主要是因为像扭曲和干燥等因素可能会对有效的指纹信息产生负面影响,特别是对于细节点[19]。图4展示了一个仅考虑局部或全局表示时容易导致匹配失败的情况。因此,应该考虑两者的结合来弥补各自在语义上的不足。
在本研究中,作者将从增强指纹的重叠区域提取的全局表示与从原始指纹相应感兴趣区域(ROI)获得的局部表示进行融合。选择原始指纹的ROI作为局部表示的动机是,作者观察到使用FingerNet进行增强时存在一定程度的预测误差。FingerNet在增强指纹的全局脊线流结构方面表现良好,但容易在低质量局部区域引入类似马赛克的 Patch 状伪影。这可能会导致一些关键信息的丢失。
具体来说,作者引入了Sobel算子来计算指纹图像强度的水平( )和垂直( )方向的梯度,然后根据公式(7)计算每个像素的梯度大小 。使用25x25 Kernel 大小的盒式滤波器来获得梯度大小的积分。进一步经验性地确定阈值 ,其等于获得的梯度积分最大值的15%,用于分割一般的指纹区域。作者对分割后的区域进行轮廓检测并执行连通组件分析,得到 和 的有效指纹区域相应 Mask 。
取 Mask 的交集后,分别应用于 和 ,生成有效的重叠指纹区域 和 (即全局表示)。从指纹对中提取重叠区域的流程图如图5所示。尽管FingerNet也可以直接输出指纹的 Mask ,但生成的 Mask 常常包括指纹周围的无关背景,如图5中的 和 所示。为了使模型只关注有效的指纹信息,此步骤不考虑由FingerNet生成的 Mask 。此外,作者从原始指纹的重叠区域提取ROIs(90x90)作为局部表示。
学习可解释的固定长度表示。
对于可解释的固定长度表示提取和匹配模块,作者提出了两个基于ViT的共享权重的连体网络 ,它学习输入指纹对的相似度度量并输出匹配分数。具体来说,输入包括重叠指纹 和 (即全局信息)以及从原始指纹图像提取的相应ROIs 和 (即局部信息)。
作者利用在指纹匹配模块中预先训练的可解释密集配准模块生成指纹对的伪标签,以学习特征点的对应关系。作者将之前训练的基于ViT的连体模型作为主干网络,并结合一个新的全连接层,然后用标记的指纹对重新训练。因此,它提供了匹配结果中特征点 的可解释密集像素对应关系,以及256维固定长度表示 和 。
损失函数。在这个模块中,再次使用密集配准损失 来从ViT的输出中学习指纹对的密集像素级特征点对应关系。选择如公式(8)所示的余弦嵌入损失 来训练模型,将特征点的确定对应关系转化为256维的辨别性固定长度表示。
为了分别最小化和最大化学习到的类内和类间表示的距离,作者在方程(9)中进一步引入了ArcFace损失 ,通过分类任务优化网络,构成了方程(10)中显示的总损失 。
其中 代表了余弦嵌入损失 的 GT 情况,而 分别是ArcFace损失 的真实类别标签。 是训练样本的总数,而 是类别数。 表示学习到的表示( 或 )与对应标签 的权重向量之间的余弦角度。
至于 ,它计算学习到的表示( 或 )与除了 之外的所有类别的权重向量之间的余弦角度。此外,本研究中 和 的边缘 均设为0.4,缩放因子 设为64。 中的 , 和 经验性地分别设置为0.5,0.1和1,以平衡匹配性能和可解释性。
与引入领域知识(即细节信息)[3, 4, 6]不同,作者希望从IFViT学习到的固定长度表示能够利用与指纹对中特征点的密集像素级对应关系相关的先验信息,以处理从低质量指纹中学习细节信息具有挑战性的情况。
匹配得分计算。为了评估,可以提取输入指纹对的学习到的固定长度全局表示( , )和固定长度局部表示( , )。基于( , )和( , )的匹配得分 和 ,按照方程(11)计算,并将其归一化到范围[-1, 1]。最终的总匹配得分 通过对方程(12)中所示的个体得分( 和 )的加权融合获得,其中权重 和 由线性回归学习确定。
IV Experiments
在本节中,作者首先介绍本研究中使用的几个公开指纹数据集以及详细的实验设置。然后作者对所提出的IFViT中的可解释密集配准模块和可解释固定长度表示提取与匹配模块的性能进行评估。
Datasets
密集配准模块。关于可解释的密集配准模块的训练,作者使用了FVC2002(DB1、DB2和DB3)[43],NIST SD301a(A、B、C、E、J、K、M和N)[44],NIST SD302a(A、B、C、D、E、F、U、V、L和M)的一个子集[45]以及MOLF(DB1和DB2)的一个子集[46]。这些数据集中的指纹图像总数为25,090张,应用之前提出的三个噪声模型后,总共可以获得100,360张训练图像。它们被组合形成100K指纹对(75K用于真实对,25K用于冒名对)用于训练。
匹配模块。在可解释的固定长度表示提取和匹配模块方面,作者采用了FVC2002(DB1、DB2和DB3)[43],NIST SD301a(A、B、C、E、J、K、M和N)[44],NIST SD302a(A、B、C、D、E、F、U、V、L和M)的一个子集[45],MOLF(DB1和DB2)的一个子集[46]以及最近发布的名为PrintsGAN [47]的合成指纹数据集作为训练数据集,并在FVC2004(DB1、DB2和DB3)[48],NIST SD4 [49],NIST SD302a(最后200个手指)和MOLF(最后200个手指)的剩余测试分区上评估模型。NIST SD302a和MOLF中用于训练和测试集的手指之间没有重叠。此外,为了平衡模型性能和计算需求,作者在创建冒名指纹对时只使用不同手指的第一印象;否则,训练数据集的大小可能甚至会达到100M。此外,在PrintsGAN中,只有2,500个手指被选为作者训练集的一部分,主要用于模型预训练。总的来说,作者的聚合训练数据集包含3.6M对(7.2M张图像)。
表1提供了所有数据库及其在本研究中的使用详情。
Implementation Details
在本研究中,基于Pytorch实现了IFViT中的可解释密集配准模块和可解释固定长度表示提取与匹配模块,并在四块NVIDIA GeForce RTX 3090 GPU上独立进行训练。
在可解释密集配准模块方面,总共使用了20万指纹图像(10万指纹图像对)进行训练。输入图像被调整至128 x 128大小以加速收敛过程。该模块经过100个周期的训练,学习率为 。对于可解释固定长度表示提取与匹配模块,作者首先使用PrintsGAN生成的670万合成图像进行预训练,学习率为 。然后,使用57.5万真实指纹图像在这个模块上进行70个周期的微调,学习率为 。这两个模块都使用Adam优化器进行优化,权重衰减为 ,批量大小为128。
Performance of Fingerprint Dense Registration
由于真实指纹对中特征点的像素级对应关系缺乏 GT 标签,因此直接通过对应点位置评估指纹密集配准算法的性能具有挑战性。相反,作者使用配准算法产生的特征点对应关系来执行对齐,并根据原始指纹对中的对齐增强指纹对( 和 )及其相应ROI( 和 )的相似性来评估对齐性能。值得注意的是,由于对齐失败的风险,作者不会从增强指纹对( 和 )中选择重叠区域进行相似性评估,这可能导致重叠区域极度有限。可能导致相似性计算基于无效的背景区域,最终导致不合理的相似性结果。
作者选择互信息(MI)这一在过去几十年中广泛用于图像配准的度量标准[50, 51],来衡量对齐指纹对之间的相似性。来自同一手指的指纹对中观察到的MI值越高,表明配准算法的性能越好。在本研究中,作者将所提出模块的对齐性能与两种方法进行了比较:一种是在指纹匹配中最近用于配准的流行开源算法——尺度不变特征变换(SIFT)[33],以及一种在许多指纹识别任务中广泛采用的对齐模块——空间变换网络(STN)[3, 6, 17]。由于它们在指纹基准数据集上的表现处于领先水平,作者引入了DeepPrint和AFRNet[3, 17]中训练的STN。
作者在表2中报告了基于不同方法的MI值。作者可以观察到:
-
所提出的IFViT中可解释的密集配准模块的准确性优于其他方法,具有更好的对齐性能,这在大多数数据集上原始指纹对的ROI和对齐增强指纹对(来自同一手指)的最高MI值中得到了证明。
-
对齐增强指纹对的MI值通常高于原始指纹对ROI的MI值。这主要归因于MI值受到许多因素的影响,例如原始指纹对的质量差异,以及不同传感器引起的指纹外观变化。然而,经过FingerNet增强后,所有增强的指纹图像都遵循统一的质量标准,减少了它们的不一致性。在这种情况下,后者的MI值更能精确地指示指纹对齐性能。
-
与未对齐指纹对的MI值相比,使用SIFT算法对齐的指纹对的MI值显著下降。这是由于SIFT倾向于生成错误特征点的对应关系,进而导致对齐过程中错误的仿射变换,损害了原始指纹图像的结构完整性,如图6(b)所示。
-
AFRNet和DeepPrint中的STN显示出相当水平的对齐性能。值得注意的是,AFRNet中的STN在FVC2004 DB1和NIST SD302a的原始指纹对的ROI上具有更高的MI值。然而,对于增强指纹对,它的MI值略低于所提出的密集配准模块。
此外,由于这些模型中的STN仅能执行旋转和平移,它们无法实现对跨传感器指纹对的像素级对齐,如图6(c)(d)所示。
作者进一步探讨了基于训练出的提出模型,不同指纹对齐方法对匹配性能的影响,并在表3中报告了它们的等错误率(EER)。
结果表明,指纹对齐的质量显著影响模型的匹配性能。当考虑所提出的密集配准模块建立的像素级特征点对应关系时,对齐的指纹在原始指纹对的ROI和对齐增强指纹对提取的重叠区域中显示出最低的EER,涵盖不同数据集。与其他方法相比,作者的方法更鲁棒,即使是跨传感器指纹对,也能在它们之间建立大量的精确特征点对应关系,如图6(a)所示。
Performance of Fingerprint Matching
作者对比了所提出的IFViT与指纹识别领域两个近期知名工作DeepPrint和AFRNet的匹配性能。除了DeepPrint网络中的细节点由FingerNet生成作为创建细节图的替代方法外,所采用的模型结构尽可能与它们研究报告中的一致。
从表4中报告的EER和图7中显示的完整接收者操作特性(ROC)可以看出,所提出的IFViT在六个基准数据库上优于其他两种方法,实现了最低的EER。这种差异的原因是,当训练集中从不同方式(例如滚动、平面和拍打)收集的指纹数量不平衡时,作者观察到DeepPrint和AFRNet的性能下降。
在有限数量的手指背景下,开发的IFViT可以考虑原始指纹对的ROI和增强指纹对的重叠区域,以减少指纹图像之间的差异,从而提高模型的泛化能力。特别是对于来自MOLF和NIST SD302a的跨传感器指纹,预测它们对DeepPrint和AFRNet都提出了挑战。但对于IFViT,通过整合密集配准模块进行像素级的精确对齐,并在匹配模块中结合局部和全局表示,可以显著降低EER。
Interpretability
除了图6展示的指纹对齐的可解释性之外,作者还进一步研究了所提出匹配模块的可解释性。基于AFRNet [17]的实施方案,作者通过计算指纹对中特征点的对应关系来评估AFRNet的可解释性。此外,对DeepPrint [3]的CNN输出也执行了类似操作,以便与作者的方法在原始指纹图像上的表现进行比较。
如图8所示,在匹配同一身份的指纹对时,所提出的IFViT中的匹配模块可以提供更合理和优越的可解释性。DeepPrint只能聚焦于局部区域并建立有限的对应关系。由于AFRNet采用了能够在全局范围内捕捉长距离依赖关系的自注意力机制,类似于所提出的IFViT,它可以在全局背景下提供更多的对应关系,但根据匹配结果提供合理的对应关系却具有挑战性。
图9进一步说明了在匹配过程中IFViT融合局部和全局表示的可解释性。它可以计算给定指纹对的匹配分数,同时在整个匹配结果中建立可解释的密集像素级特征点对应关系,包括从原始指纹提取的ROI( 和 )以及增强指纹的重叠区域( 和 )。这有助于理解深度学习模型在指纹匹配过程中做出决策的原因。在图9提供的例子中,与真实指纹对相比,冒名顶替的指纹对在预测时建立了较少的特征点对应关系,且绝大多数是错误的。
为了进一步观察固定长度表示基于匹配中可能使用的指纹特征点,作者提供了高置信度水平下学习到的对应关系示例。图10(a)展示了通过IFViT可以识别出不同 Level 的指纹特征点在学习到的密集对应关系周围。这些特征从全局 Level 的特征(第1级)如环,到由脊端和分叉组成的局部 Level 特征(第2级),直至非常细微 Level 的特征(第3级),如毛孔。这意味着尽管作者没有将领域知识明确地整合到模型中,但模型在一定程度上可以自行推理。此外,作者还发现,当指纹图像的分辨率降低时,如毛孔无法清晰区分,或者匹配区域受限的情况下,在学习到的密集对应关系中明显倾向于强调细节信息,如图10(b)所示。这与作者的理解是一致的,即细节信息是指纹匹配算法中采用的最重要特征之一。
IFViT不是依靠如Grad-CAM或Saliency Map [6, 33]等技术来识别输入指纹对中为预测做出贡献的一般区域,这些技术依赖于梯度计算,而是可以提供像素级的优越可解释性。它允许详细检查用于并转换为固定长度表示进行匹配的具体指纹特征点,为成功和失败的指纹匹配案例的黑色 Box 深度学习模型的决策过程提供洞见。
Ablation Study
为了证明每个组成部分(即指纹对齐、局部表示和全局表示)的融合是有道理的,作者通过逐个将每个模块引入到匹配流程中进行消融研究。如表5所示的结果表明,随着每个组件的增加,匹配性能得到了提升。这突显了所提出对齐模块在提高指纹匹配性能方面的重要性,尤其是在涉及有限重叠区域的指纹对的情况下。此外,局部表示和全局表示的结合可以弥补各自存在的语义信息不足,从而实现更高的识别率。
Computational Efficiency
提出的IFViT推理时间主要涉及三个阶段:通过FingerNet进行指纹增强、注册与对齐以及匹配。在配备Intel(R) Xeon(R) Gold 6133 CPU @ 2.50GHz和NVIDIA GeForce RTX 3090 GPU的平台上,对给定的指纹对进行推理大约需要463ms(增强阶段116ms,注册与对齐阶段187ms,匹配阶段160ms)。
为了进一步提高计算效率,IFViT中用于局部特征提取的深度卷积神经网络(即ResNet-18)可以替换为其他更浅的网络。同时,FingerNet也可以用计算复杂度更低的其他指纹增强技术来替代。作者不考虑对它们的优化,因为这超出了本研究的范围。
V Conclusion
在本文中,作者提出了一种名为IFViT的新型多阶段可解释指纹匹配网络,通过视觉 Transformer 实现。这是首次尝试利用ViT来实现指纹密集配准。所提出的可解释指纹配准模块能够生成特征点的密集像素级对应关系,并对输入的指纹对进行精确对齐。
在有限数量的手指上训练模型时,可解释的固定长度表示提取与匹配模块,在多个数据集上实现了更低的EER和更高的识别准确度,同时展示了卓越的可解释性。在未来的工作中,作者计划进一步优化现有框架,并探索其在更具挑战性的场景中的应用性,例如非接触式指纹和潜在指纹,以提高匹配过程中的可解释性。
参考
[1].IFViT: Interpretable Fixed-Length Representation for Fingerprint Matching via Vision Transformer.
下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。
下载2:Python视觉实战项目52讲 在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。
下载3:OpenCV实战项目20讲 在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。
交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~