1、概述
指纹特征提取是指纹自动识别的关键。以往关于卷纹/拍纹指纹的研究由于脊纹图案的噪声和复杂的背景噪声而导致潜纹指纹的研究失败。FingerNet提出了一种结合领域知识和深度学习表示能力设计深度卷积网络的新方法。在方向估计、分割、增强和细节提取等方面,将几种典型的卷/拍指纹传统处理方法转化为卷积方式,整合为一个统一的平面网络。
其基本思想是建立一个特定的指纹网络,将传统手工方法(领域知识)的精髓与深度学习的表示能力相结合。我们首先将一些传统的方法转换为卷积核,并将其集成为一个浅层次网络。这个网络很浅,并且有固定的权重。图展示了归一化、方向估计、分割、Gabor增强和细节提取的完整过程。
2、详细的网络描述:
3、输出
其有4中产物:
1、分割图 2、方向场图 3、增强图 4、细节点
(1)细节点分数图
细节点分数图表示在像素点
(
x
,
y
)
\left(x,y\right)
(x,y)处有细节点特征的可能性。对指纹图像进行分块,每
8
×
8
8\times8
8×8为一个基本单位,因此细节点分数图的尺寸为
m
8
×
n
8
\frac{m}{8}\times\frac{n}{8}
8m×8n。在本文中输入为
512
×
512
×
3
512\times512\times3
512×512×3的张量,因此得到的细节点分数图尺寸为
64
×
64
×
1
64\times64\times1
64×64×1。每个像素点的值范围为
[
0
1
]
[0\ 1]
[0 1],表示在该
8
×
8
8\times8
8×8像素块细节点的可能性大小。设定阈值
δ
\delta
δ,当概率大于阈值时,该点被认为是候选细节点,阈值
δ
\delta
δ在本文中设为0.5。
(2)X坐标概率图、Y坐标概率图
X坐标概率图和Y坐标概率图的大小为
64
×
64
×
8
64\times64\times8
64×64×8。在进行标签的制作时X坐标图也是同样大小。在得到X坐标概率图和Y坐标概率图后,寻找每个通道的最大值索引作为X坐标图和Y坐标图的在
64
×
64
64\times64
64×64上对应点的值。如式,其中
x
t
r
u
e
x_{true}
xtrue为最终的细节点横坐标,
y
t
r
u
e
y_{true}
ytrue为最终的细节点纵坐标,
X
s
c
o
r
e
X_{score}
Xscore为X坐标概率图,
Y
s
c
o
r
e
Y_{score}
Yscore为Y坐标概率图,argmax表示取通道最大值索引,
(
x
,
y
)
\left(x,y\right)
(x,y)为细节点分数图中大于阈值\delta的坐标。
x
t
r
u
e
=
x
×
8
+
a
r
g
m
a
x
(
X
s
c
o
r
e
)
(
x
,
y
)
x_{true}=x\times8+argmax\left(X_{score}\right)\left(x,y\right)
xtrue=x×8+argmax(Xscore)(x,y)
y
t
r
u
e
=
y
×
8
+
a
r
g
m
a
x
(
Y
s
c
o
r
e
)
(
x
,
y
)
y_{true}=y\times8+argmax\left(Y_{score}\right)\left(x,y\right)
ytrue=y×8+argmax(Yscore)(x,y)
(3)细节点方向图
一般的基于细节点匹配的方法使用细节点的3种信息,即x坐标、y坐标、细节点方向,因此细节点的方向对于指纹图像的匹配也是相当重要的。细节点方向图最终得到的是大小为
64
×
64
×
180
64\times64\times180
64×64×180的张量,与X坐标概率图和Y坐标概率图的处理方法类似,取通道最大索引值作为当前
8
×
8
8\times8
8×8方向块的方向,方向范围在
[
0
180
]
[0\ 180]
[0 180]之间。
(4)分割图
分割图同细节点分数图。
4、输入
尽量使用 512 × 512 512 \times 512 512×512的指纹灰度图像,500dpi。
5、样本和标签
1)样本即使用
512
×
512
512 \times 512
512×512的指纹灰度图像。
2) 标签方案:
标签依照网络输出结果的形式进行标签制作。
- 弱方向标签:弱方向标签是由匹配的滚动/拍指纹生成的。匹配的配对来自相同的手指,具有相同的脊结构。对齐的滚动/拍拍指纹定位字段是对相应的潜在指纹的很好的估计。我们使用细节来对齐指纹对和普通的指纹网,以获得滚动/拍指纹方向字段。
- 弱分割标签:弱分割标签是由特征点凸壳生成的。用扩张平滑的细节凸壳作为弱分割标签。
- 强特征点标签:手动标记的minutiae list转换而来的mnt文件
6、损耗
3种类型的损耗:
- 交叉熵损失定义为: L = − 1 R O I ∑ R O I ∑ i = 1 N ( ε + g i l o g ( s i ) + ε − ( 1 − g i ) l o g ( 1 − s i ) ) L=-\frac{1}{ROI}\sum_{ROI}\sum_{i=1}^{N}\left(\varepsilon^+g_ilog\left(s_i\right)+\varepsilon^-\left(1-g_i\right)log\left(1-s_i\right)\right) L=−ROI1ROI∑i=1∑N(ε+gilog(si)+ε−(1−gi)log(1−si))
- 方向一致性是一个强域先验知识,因此我们将其转化为一个损失函数进行约束: d ˉ = { d ˉ ( x , y ) } x , y , ∣ d ˉ ∣ = { ∣ d ˉ ( x , y ) ∣ } x , y \bar{d}=\{\bar{d}(x, y)\}_{x, y},|\bar{d}|=\{|\bar{d}(x, y)|\}_{x, y} dˉ={dˉ(x,y)}x,y,∣dˉ∣={∣dˉ(x,y)∣}x,y C o h = d ˉ ∗ J 3 ∣ d ˉ ∣ ∗ J 3 C o h=\frac{\bar{d} * J_{3}}{|\bar{d}| * J_{3}} Coh=∣dˉ∣∗J3dˉ∗J3 L o d p i = ∣ R O I ∣ ∑ R O I C o h − 1 L_{o d p i}=\frac{|R O I|}{\sum_{R O I} C o h}-1 Lodpi=∑ROICoh∣ROI∣−1
- 为了使分割更平滑,噪声更小,离群值更小,我们简单地尝试抑制边缘响应。它可以被计算为: L s s m i = 1 ∣ I ∣ ∑ I ∣ M s s ∗ K l a p ∣ L_{s s m i}=\frac{1}{|I|} \sum_{I}\left|M_{s s} * K_{l a p}\right| Lssmi=∣I∣1I∑∣Mss∗Klap∣其中 M s s M_{s s} Mss为分割分数图, K l a p K_{l a p} Klap为拉普拉斯边缘检测核, I I I为总图像区域。
7、性能表现
tips: https://github.com/felixTY/FingerNet
论文下载:https://download.csdn.net/download/xuhe93/12364377