李 欣,张 琪,王 蓉
(中国人民公安大学 信息网络安全学院,北京 100038)
数字图像分析与识别课程是高等院校信息技术专业学生的必修课,也是研究生的重要课程,以及相关专业博士研究生入学考试的重要内容。虹膜识别是数字图像分析与识别课程中的重要内容,其理论涉及图像处理、模式识别、计算机视觉等多学科交叉融合的内容[1-2],广泛应用于公安、社保、金融和考勤等领域[3-4]。虹膜识别技术的理论性和实用性都很强,在日常的教学中,仅通过抽象的基本理论讲解,高年级本科生及低年级研究生都很难深入理解和掌握虹膜识别的基本原理及实现流程。因此,本文设计了虹膜识别系统综合实验,通过Matlab GUI设计创建图形用户界面,实现图像读取、虹膜定位、虹膜归一化、特征提取和分类识别等功能,并对中间结果进行可视化显示,有助于学生深入理解与掌握虹膜识别的理论知识和实现过程,能够帮助学生完成从理论到实践的有效转化。
本实验的设计以虹膜识别技术作为理论支撑,旨在通过算法参数的交互以及可视化中间结果,来直观显示算法各种参数的作用和效果,便于学生更好地理解和掌握虹膜识别的原理和实现方法。虹膜识别系统通常具有2种功能操作:一是注册模式,即将用户信息注册到数据库;二是识别模式,即将当前虹膜与数据库中已注册的虹膜进行匹配搜索,判断该用户是否在数据库中,并确定具体的身份信息[5]。本文设计的综合实验包含5个模块:图像读取、虹膜定位、虹膜归一化、特征提取、分类识别,如图1所示,读入图像后,首先定位虹膜的内外边界,把虹膜区域分割出来,然后进行归一化以消除虹膜大小不一的尺度变化影响,之后进行特征提取,通过比对当前特征向量与数据库中已注册的特征向量实现分类识别。
图1 实验流程图
本实验的关键算法包括虹膜定位、虹膜归一化、特征提取和分类识别,理论性较强,比较抽象。为了便于学生理解,本实验设计可交互的图形用户界面。通过可视化虹膜定位结果、设置可调节的归一化参数和滤波器参数,以及可视化提取到的特征图和计算得到的特征比对分数数值,来加深学生对虹膜识别原理的理解。
采集到的虹膜图像通常包含非虹膜区域,例如眼皮、巩膜和瞳孔等,虹膜定位的目的就是将虹膜区域从图像中分割出来[6],拟合虹膜与瞳孔及巩膜交界处的内、外边界,可近似建模为圆形[7-8]。本文通过基于积分微分算子的边缘搜索方法[9]来获取虹膜内外圆的参数,表达式如下:
其中,I(x,y)为输入图像,Gσ(r)为高斯平滑函数,*代表卷积,通过对图像进行高斯平滑滤波来消除噪声的影响。该算子作为一个圆形边缘检测器,来搜索得到曲线径向偏微分的曲线积分值最大时所对应的圆心(x0,y0)和半径r参数。实验中对内外圆进行可视化展示,便于学生直观地看到定位结果。
光照变化会使虹膜产生形变,采集距离变化会使虹膜区域大小不一,不利于精准识别。归一化的目的就是将虹膜的大小调整到固定尺寸,减少虹膜尺寸变化所带来的不利影响[10]。本文采用基于Rubber Sheet模型的线性映射方法[11],通过极坐标的处理方式,将环状的虹膜区域展开得到固定尺寸的矩形[12]。示意图如图2所示。
图2 虹膜归一化示意图
所使用的映射公式如下所示:
其中, (xp(θ),yp(θ))和 (xs(θ) ,ys(θ) )分别为在θ方向上虹膜与瞳孔及巩膜交界处点的坐标,可通过式(1)得到的虹膜内外圆心坐标和半径值计算得到。I(x(r,θ) ,y(r,θ) ) 代表笛卡尔坐标系下的虹膜区域,通过此方法转换到极坐标系I(r,θ),得到固定尺寸的矩形。矩形的尺寸默认为 70×540,长和宽的值作为算法参数可人为调节,学生通过可视化结果可以看到不同尺寸对归一化效果的影响。
虹膜有隐窝、斑点、细丝等丰富的纹理信息[13]。虹膜特征提取是从归一化的虹膜图像中提炼出鲁棒的身份关联信息,并且编码成计算机能够存储和读取的格式[14]。本文使用基于 Gabor相位的方法[9]提取虹膜的局部特征。二维Gabor滤波器的公式可以写为:
其中,σx,σy是高斯函数在x和y方向上的标准差,(μ0,υ0)是中心频率。通过奇 Gabor函数和偶 Gabor函数对归一化的图像进行滤波,如图3所示。之后,对相位信息进行量化编码,得到二值化的特征向量,有利于降低存储空间以及提高特征比对的效率。Gabor滤波器可以在不同的方向和尺度上提取特征,实验中通过调节方向和尺度值可以提取到不同的虹膜局部特征,通过可视化显示,学生可直观地看到提取到的特征,以及滤波器参数变化对虹膜分类识别的影响。
通过比对当前特征向量与数据库中已注册的特征向量,依据比对分数进行分类识别,确定该用户是否在数据库中,并确定具体的身份信息。本文基于汉明距离(Hamming distance)计算特征向量的比对分数[15],计算公式如下:
其中,N为特征向量的维数,A和B为2个特征向量,(XOR)为异或运算符。当iA和Bi的值相同时,结果为0,否则为1。汉明距离的值越小说明2个特征向量越相似,越有可能来自同一个类别。实验中将计算得到的分数进行可视化显示,便于学生更直观地看到分类识别的过程和结果。
图3 Gabor滤波器
本实验基于Matlab设计可交互的图形用户界面,实现图像读取、虹膜定位、虹膜归一化、特征提取和分类识别5个功能模块的虹膜识别系统,如图4所示。首先是眼睛图像的读入和显示模块;然后调用虹膜定位算法,定位虹膜的内外圆,得到圆心和半径参数,可视化定位结果;之后基于Rubber Sheet模型得到固定尺寸的归一化后的虹膜图像,归一化图像的尺寸可人为调节;在此基础上,提取虹膜的Gabor特征,滤波器的方向和尺度参数可调节,通过可视化显示可以直观地看到提取到的特征;最后,将所得到的特征向量与已注册的数据库中的特征向量进行一一比对,基于汉明距离分数判断该用户是否在数据库中,可视化显示汉明距离比对分数的最小值,得到与当前用户最近的类别,并输出具体的类别信息。
图4 实验GUI界面
本次虹膜识别系统综合实验设计将虹膜识别的整个流程都涵盖其中,并且融入了数字图像分析与识别的基本知识,很好地激发了学生的学习和研究热情,使他们能够更好地掌握虹膜识别理论及其应用。
虹膜识别是数字图像分析与识别课程中的重要内容,本文基于Matlab GUI设计了虹膜识别系统的可视化交互界面,让学生能直观、深刻地理解虹膜识别的基本原理和实现方法。综合性设计实验培养了学生的动手能力和综合运用所学知识的能力,激发了学生进一步学习和研究虹膜识别算法的兴趣,可有效提升教学效果。