基于SRN-UNet的低质量虹膜分割算法

2022-03-24 08:52田会娟翟佳豪柳建新刘嘉伟邓琳琳
光子学报 2022年2期
关键词:低质量虹膜卷积

田会娟,翟佳豪,柳建新,刘嘉伟,邓琳琳

(1 天津工业大学电气与电子工程学院天津市光电检测技术与系统重点实验室,天津300387)

(2 大功率半导体照明应用系统教育部工程研究中心,天津300387)

(3 天津成科传动机电技术股份有限公司,300384)

虹膜纹理以其独特稳定、非接触和防伪的特点在国防和安全领域发挥着重要作用[1-3]。一个完整的虹膜识别系统通常包括:1)通过成像设备获得虹膜图像;2)通过虹膜分割算法定位虹膜区域;3)通过特征提取算法提取虹膜特征;4)将提取的虹膜特征用于虹膜识别。其中虹膜分割在虹膜识别系统中具有重要意义,算法的准确性和鲁棒性直接影响后续的虹膜提取、验证和识别[4]。理想条件下的虹膜图像清晰、无遮挡,当前多数的虹膜分割算法可以准确地分割虹膜区域。然而,在虹膜图像像素低、光照不均匀、睫毛或眼睑遮挡、镜面反射等非理想条件下,设计鲁棒性强的虹膜分割算法来精确分割虹膜区域仍然是一项具有挑战性的任务。

近年来,随着深度学习技术的发展,特别是卷积神经网络(Convolutional Neural Network,CNN)[5]在图像分类、分割、识别等方面的广泛应用,研究人员开始尝试将深度学习用于图像分割。2015年,LONG J 等[6]在CNN 的基础上提出全卷积神经网络(Fully Convolutional Network,FCN)来进行语义级别的图像分割,随后各种语义分割网络纷纷出现。当前经常使用且性能较好的语义分割网络有U-Net[7],SegNet[8],PSPNet[9]以及Deeplabv3[10]等,其中U-Net 网络被广泛用于医学图像分割领域。JALILIAN E 等[11]最早将深度学习方法应用在虹膜分割领域,他们提出了三种基于FCNs 的虹膜分割网络结构,并将其命名为全卷积编解码网络(FCEDNs),实验结果表明FCEDNs 优于传统算法。ZHOU W 等[12]对U-Net 原网络进行改进,提出了适用于异质虹膜分割的神经网络模型PI-Unet,在CASIA-v4 和UBIRIS.v2 虹膜数据库上的Miou 分别达到97.50%和95.95%。ZHANG W 等[13]将U-Net 与空洞卷积结合,提出FD-Unet 用于虹膜分割,在CASIAIris-intervel 和UBIRIS.v2 上的F1socre 分别达到了97.36% 和94.81%。YANG Y 等[14]提出了一种结合FCN 和扩张卷积分割虹膜的网络模型,并在CASIA-iris-interval-v4.0、UBIRIS.v2 和IITD Delhi 数据集上进行了训练和测试,准确率分别为98.6%、98.4%和95.7%。ARSALAN M 等[15]在SegNet-basic 的基础上提出的IrisDenseNet,用5 个密集块代替原编码器的VGG16,以更好的信息梯度流检测出准确的虹膜边界。

基于深度学习的虹膜分割算法在分割成像质量高、虹膜特征清晰、虹膜区域位于图像中间位置的高质量虹膜图像时均具有各自的优势,但在非限制的条件下算法的性能会受到一定影响,尤其是在分割普通摄像头下采集到的图像像素低、模糊、尺度不一、睫毛遮挡、反射光斑等低质量虹膜图像时精度不高。针对上述问题,本文提出了一种基于SRN-UNet的低质量虹膜分割算法。该算法对U-Net 的编码器模块进行了改进,编码器模块根据ResNet50[16]进行设计,引入ResNext[17]模块替代ResNet 模块,并在该模块后级联SENet模块[18],通过压缩、激励以及权重的重新分配,从特征通道相关性的角度出发构建网络模型,选择性地强调重要特征并抑制非重要特征,从特征通道之间的全局信息关系方面进一步提升虹膜分割的准确率。

1 算法原理

1.1 SRN-UNet 框架

基于SRN-UNet 虹膜分割算法模型如图1所示。本文所提SRN-UNet 网络基于U-Net 进行改进,主要由预处理、编码器、解码器和跳层拼接四部分构成[19]。预处理可将输入图像的通道数加深为64。编码器包括Res-block 模块和下采样层,每个Res-block 模块分别由3、4、6、3 个SE-ResNext 模块串联构成。SE-ResNext 模块由ResNext 模块级联SENet 模块组成,其中ResNext 模块可在不增加网络参数的情况下提升网络性能;SENet 模块通过压缩、激励以及权重的重新分配,从特征通道相关性的角度出发构建网络模型,对于低质量虹膜图像,该模块可在一定程度上激励有用的特征,抑制无用的特征,提升虹膜分割精度。在每一个Res-block 模块后都添加一个大小为2×2,步长为2 的最大池化层进行下采样,目的是增大深层特征感受野,确保特征描述具有一定的全局性。解码器由卷积块和上采样层构成,和U-Net 不同的是,本文去掉了解码部分的一个3×3 卷积层,减少了计算量和参数量,简化了模型。上采样层是一个大小为2×2,步长为2 的反卷积层,上采样操作后会造成一部分虹膜信息损失,所以将上采样之后的特征图与对应的具有相同分辨率的编码器特征图进行跳层拼接。最后通过1×1 的全连接层以及Softmax 激活函数对虹膜与背景图像进行分类,输出虹膜分割结果。

图1 SRN-UNet 整体网络结构Fig.1 Overall network structure of SRN-UNet

1.2 SE-ResNext 模块

为了更准确地完成虹膜图像分割任务,本文提出了ResNext 级联SENet 的SE-ResNext 网络结构作为SRN-UNet 网络编码阶段的基本模块,图2 为SE-ResNext 模块的网络结构。首先通过模块中的分组卷积操作提取x的特征并进行合并,得到通道为32 的特征图。其次通过采用全局平均池化函数来完成压缩操作,以获得1×1×C的实数列。然后对1×1×C的实数列进行两级全连接(Full Connection,FC),对通道重新加权校准,捕获通道之间的相互依赖性从而获得比例因子。最后把通过激活函数Sigmoid 的输出作为一个缩放尺度乘到原输入的各个通道上,完成对特征的重新标定。

图2 SE-ResNext 模块网络结构Fig.2 Network structure of SE-ResNext module

1.3 ResNext 模块

ResNext[17]结构最早应用于图像分类领域,是在ResNet 基础上进行的优化。与ResNet 相比,ResNext提出了分组卷积的策略,将残差学习由单路径卷积扩展成多路径分组卷积,多路径分组卷积遵循分割、转换、合并范式,输入数据会被分别送入数量为分支基数(Cardinality)的多路径中,各路径独立进行卷积计算,并将结果以通道为基准进行连接,其特点是网络结构简单、参数少、准确率高、便于移植。图3 列出了ResNet 和ResNext 的基本单元,其中Path 表示分组数。

图3 ResNet 和ResNext 的基本单元Fig.3 The basic unit of ResNet and ResNext

ResNext 网络的具体计算公式如式(1)所示。其中x表示输入特征,Ti(x)可以为任意函数,在此处表示三个卷积层的堆叠,C为网络输入宽度。

1.4 SENet 模块

在使用ResNext 网络进行特征提取时,一些通道上的无效信息可能会被保留,影响虹膜分割准确率的提升。针对此问题,本文引入SENet[18],对于低质量虹膜图像,可以使模型聚焦于具有更多有效特征信息的通道,提升虹膜分割的精度。SENet网络结构如图4所示。

图4 SENet 网络结构Fig.4 Network structure of SENet

图4 中,左侧为H’×W’×C’的特征图,经过一系列卷积操作Ftr之后,得到H×W×C大小的特征图。为得到输入特征图各通道的权重,SENet将进行压缩(Squeeze)和激励(Excitation)两步操作。首先进行全局平均池化(Golbal Average Pooling,GAP),对每个特征通道在空间维度H×W上进行压缩(Squeeze),其计算公式为

式中,Z代表压缩操作生成的权重。

然后执行激励操作(Excitation),对1×1×C的输入通过两个全连接层结合ReLU 函数建立各通道之间的相关性。为减少参数量、提高泛化能力,第一个全连接层将参数降维r倍,本文中r取16,再经过一个全连接层得到原来的维度C。激励操作的计算过程可表示为

式中,δ表示ReLU 函数,σ表示Sigmoid 函数,Sc表示生成的通道注意力权重。

最后,将权重Sc加入到原始的特征通道中,其计算公式为

式中,⊗代表逐元素相乘,代表经过SENet 处理输出的特征图。

2 实验结果及分析

2.1 数据集和数据增强

本文选用的数据集由两部分组成。第一部分为近红外虹膜图像,来源于中国科学院自动化所虹膜数据库(CASIA iris image database,CASIA-Iris)[20]。分别从CASIA-Iris 的子数据库CASIA-IrisV2,CASIAIrisV3 以及CASIA-IrisV4 中各选取900 张虹膜图像,每张虹膜图像的尺寸为640 pixel×480 pixel。第二部分为低质量虹膜图像,通过笔记本电脑前置摄像头采集并裁剪出5 名成员在复杂光照环境下不同姿态各100 张低质量虹膜图像。共计选用虹膜图像3 200 张,数据集中部分样本如图5所示。

图5 数据集样本展示Fig.5 Data set sample display

将数据集按照9∶1 的比例划分为训练集和测试集,采用labelme 软件对样本标签进行标定,部分数据集及标注如图6所示。

图6 部分数据集及对应标注Fig.6 Part of the data set and corresponding annotations

为了增强模型的泛化能力,减少过拟合现象,以不发生图像形变为前提对虹膜图像进行亮度增强、噪声扰动、随机缩放,将训练集扩充为原来的4 倍。最后将输入网络训练前的虹膜图像统一裁剪成320 pixel×320 pixel 的固定大小。

2.2 训练细节

在图像分割任务中,常采用的损失函数为交叉熵损失函数(Cross Entropy Loss)。为了解决图像正负类别不均衡的问题,本文结合两种损失函数Dice Loss[21]和Focal Loss[22]训练SRN-UNet 网络,其损失函数为

式中,c表示某个特定的类别,TPp(c)、FNp(c)、FPp(c)分别为类别的真阳性率、假阴性率、假阳性率,pn(c)是像素n为c类的预测概率;gn(c)是像素n为c类的真实情况;C为总类别数;N为总像素数量;α和β分别为假阴性和假阳性的惩罚权重,均设置为0.5;λ为Dice Loss 和Focal Loss 之间的权重,设置为0.5。

本文实验环境基于深度学习框架Keras 结合Python 编程语言进行搭建。计算机配置如下:处理器为Intel Corei7-6 800 K;GPU 为NVIDIA GeForce GTX 1080Ti,11 GB 内存;系统内存32 GB。采用Adam 算法优化损失函数,初始学习率设为0.001,批量大小为16,训练迭代次数为100。训练时,若10 次迭代后loss仍不下降,则停止训练,防止模型过拟合。

2.3 评价指标

为了评估本文所提算法的分割效果,从主观评价和客观评价两方面对实验结果进行了对比与分析。主观评价主要从视觉效果上比较图像的整体分割及微弱边缘的分割情况。客观评价采用图像分割中常用的平均交并比(Miou)、F1 分数(F1 score)、精确率(Precision)作为评价指标,计算公式分别为

2.4 实验结果

2.4.1 不同损失函数对比分析

本文研究了损失函数对虹膜分割网络性能的影响。针对图像分割中常用的交叉熵损失函数与本文选用的Dice Loss+ Focal Loss 混合损失函数进行了对比实验,实验结果如表1所示。可以看出,本文选用的混合损失函数分割效果优于交叉熵损失函数。其原因在于虹膜在图像上面积占比较小,采用交叉熵损失函数训练网络,易受背景区域影响,难以学习虹膜特征,使训练效果降低。混合损失函数可在网络反向传播过程中对难以学习的样本进行稳定且有针对的优化,通过Focal Loss 降低了易分类样本的权重,使模型更好地关注难分类样本,保留复杂的边界细节;通过Dice Loss 解决像素类别不平衡问题,在一定程度上缓解Focal Loss 带来的噪声,提升模型的分割精度。

表1 不同损失函数分割性能对比Table 1 Comparison of segmentation performance of different loss functions

2.4.2 网络运行时间对比

本文统计了本文算法和U-Net 算法在Batch 尺寸分别为10、20、50 时的网络运行时间,实验结果如表2所示。可以看出,本文算法的运行时间低于U-Net 算法,当Batch 达到50 次时,本文算法运行时间比U-Net缩短了30.95%,有效提高了网络的运行速度。

表2 网络运行所需时间(s)Table 2 Time required for network operation(s)

2.4.3 不同算法性能比较

不同算法的分割结果如图7 和图8所示,图7 为不同算法在测试集中的近红外虹膜图像上的分割结果,图8 为不同算法在测试集中的低质量虹膜图像上的分割结果。其中第1 列为虹膜图像,第2 列为虹膜图像标签,第3 列至第7 列分别为U-Net 算法、SegNet 算法、PSPNet 算法、Deeplabv3 算法以及本文所提算法的分割结果。

图7 不同算法在近红外虹膜图像的预测结果Fig.7 The prediction results of different algorithms for near-infrared iris images

图8 不同算法在低质量虹膜图像上的预测结果Fig.8 The prediction results of different algorithms for low-quality iris images

实验结果显示,由于近红外虹膜图像成像质量高、虹膜轮廓明显,各种算法均取得较好的分割结果,对于数据集中的低质量虹膜图像,U-Net、SegNet、PSPNet 分割效果较差,Deeplabv3 算法出现了不同程度的过分割现象,且边界分割较粗糙,相比之下,本文算法的虹膜分割内外边界更加平滑、分割结果更接近于真实标签。

尽管主观评价简单直接,但其容易受主观因素影响,因此仍需对分割结果进行定量评价,表3 展示了不同虹膜分割算法的定量评价结果,可以看出SRN-UNet 在三项评价指标上的表现均优于其它算法,其在测试集的平均交并比达到了95.19%,F1 分数达到了97.48%,精确率达到了97.82%,与U-Net 原始网络相比分别提高了4.20%、2.27%、5.38%。综上所述,本文提出的SRN-UNet 网络在虹膜分割性能方面有很大的提升,且更加适用于低质量虹膜图像的分割。

表3 不同虹膜分割算法结果对比Table 3 Comparison of different iris segmentation algorithms

2.4.4 各模块对整体模型的影响

为了验证各个模块对整体模型的影响,对U-Net网络、增加ResNext模块的U-Net网络、增加SENet模块的U-Net 网络以及SRN-UNet 网络进行对比实验,实验结果如表4所示。U-Net 作为原始网络,其平均交并比为91.02%,F1 分数为95.20%,精确率为92.51%;分别增加ResNext模块和SENet模块的U-Net网络的3 项评价指标均有不同程度提高;当聚合各个模块后,其平均交并比为95.19%,F1 分数为97.48%,精确率为97.82%,相比于U-Net原始网络,各项指标分别提升了4.17%、2.28%、5.31%。

表4 各个模块对整体模型的影响Table 4 Influence of each module on whole model

3 结论

虹膜分割是虹膜识别系统中一个关键部分,虹膜分割是否准确将直接影响整个虹膜识别系统的性能。为了提高低质量虹膜图像的分割精度,本文提出了一种基于SRN-UNet的虹膜分割算法。该算法采用ResNext 级联SENet 的SE-ResNext 作为编码器的基础模块,对低质量虹膜图像具有更强的特征提取能力。同时对解码器进行了修改,降低了模型的参数量,更加适合模型训练。实验结果表明,所提算法的3 项评价指标均优于其它4 类对比算法,其中平均交并比达到了95.19%,F1 分数达到了97.48%,精确率达到了97.82%,相比于U-Net 算法分别提升了4.20%、2.27%、5.38%。所提算法对低质量虹膜图像具有更高的分割精度,与传统的U-Net 网络相比整体性能较优,分割结果可观,且运行速度高于U-Net。

猜你喜欢
低质量虹膜卷积
基于全卷积神经网络的猪背膘厚快速准确测定
双眼虹膜劈裂症一例
基于图像处理与卷积神经网络的零件识别
低质量实用新型专利申请授权对经济秩序的影响
基于深度卷积网络与空洞卷积融合的人群计数
“刷眼”如何开启孩子回家之门
“刷眼”如何开启孩子回家之门
“刷眼”如何开启孩子回家之门
卷积神经网络概述
低质量的婚姻不如高质量的单身,是真的吗?(一)