APP下载

基于Canny算子的指静脉图像特征提取算法研究

2021-06-18李竹林钱梦杭

关键词:算子特征提取阈值

李竹林,钱梦杭,白 明

(延安大学 数学与计算机科学学院,陕西 延安 716000)

在当今这个智能信息化时代,各行各业都发生了翻天覆地的变化,出现了许许多多智能化产物,每个人的信息都存放在云端,开启了人们的便利出行、便利支付等日常活动,因此身份识别与信息安全就成为至关重要的社会问题。

指纹识别、人脸识别、指静脉识别是当前最为常见的生物识别技术。随着万能指纹、人脸照片被盗、人脸信息隐私、指纹缺失等其他生物识别技术问题的出现,指静脉识别技术因具有高安全性、高精确性、高便捷性、不可复制以及非接触等优点成为相关学者的研究焦点且发展迅速[1,2]。指静脉识别属于第二代生物识别技术,医学证明[3,4]:指静脉是生物固有的,不受皮肤表面的清洁度、粗糙度、干湿度甚至伤痕的影响;指静脉是唯一的,即使是具有相同DNA的同卵双胞胎的指静脉形态也是不同的;指静脉识别是真正的活体识别技术,从非活体手指上不能采集到静脉图像特征。随着全球经济的发展,手指静脉身份识别技术的应用前景会越来越好。

1 指静脉识别技术的发展

1983年柯达公司的Joseph Rice发明了手背静脉特征识别技术,并在1987年获得世界范围内指静脉识别技术的第一个专利。1992年日本北海道的Shimizu提出,可以将人体手内血管红外成像作为身份识别依据,1997年,韩国BK System公司发布亚洲第一个手背静脉识别的商用产品BK-100[1]。2000年,Kono等人在日本日立公司的资助下,首先研制出用于人员识别的手指静脉近红外识别系统[5]。截至2007年3月,在日本国内已经有超过1万家单位正在使用手指静脉识别系统,日本80%以上的ATM取款机搭载了手指静脉身份验证系统[6]。我国对手静脉技术的研究与韩国、日本相比要晚一些,从2003年开始有一些重点高校和研究所对手静脉技术进行研究与开发,早期对指静脉技术研究比较突出的有清华大学、北京大学、山东大学、中国解放军国防科学技术大学、哈尔滨工程大学、中国民航大学、中国船舶重工集团七一零研究所等[1]。文献涉及中国作者主要有余成波、汤露、杨金锋、尹义龙、杨公平等[2]。由于造价昂贵、模块体积不理想等原因,指静脉识别系统在中国推广应用比较缓慢。然而,内蒙古自治区在2015年高考中使用了燕南国创科技(北京)有限公司的产品,从此国内指静脉行业变得热闹非凡[7]。

2 指静脉图像采集

指静脉识别技术是依靠比对手指静脉图像特征来实现的,因此首要任务就是采集指静脉图像。指静脉位于人的皮肤下且被肌肉组织包围,在自然光照下是无法直接获取静脉图像的。但是,由于指静脉的血液中包含大量的血红蛋白,对近红外光具有吸收效应,因此在波长为700 nm~1000 nm的近红外线照射时,可以通过图像采集装置拍摄到呈现出纹理的静脉图像[4]。指静脉图像获取方法主要有两种:一是透射成像法,二是反射成像法。其中前者已成为主流方式。采集简单、便捷,但由于身份识别认证的准确率要求高,所以对手指的摆放姿势要求几近苛刻。采集时手指要放中间,避免弯曲、晃动、旋转、翘指等,且要尽量避免可见光强的地方采集。采集仪及采集到的图像分别如图1(a)、图1(b)所示。

图1 采集到的指静脉图像

3 指静脉图像特征提取

3.1 图像预处理

由于采集设备、手指摆放位置以及采集环境等因素的影响,采集到的图像可能存在噪声大、对比度低、模糊不清、位置不正等现象,导致静脉图像特征提取受到影响,因此通常需要做预处理,如图像增强、图像校正等。常用的预处理方法有高通增强滤波、高斯滤波、边缘锐化、垂直水平矫正以及灰度尺寸归一化等[4]。对图1(b)实施预处理后得到如图1(c)的结果。

3.2 截取ROI区域

由于受指甲盖和第三节指关节的影响,手指前端的图像比较模糊,见图1(b)。一般情况下选取手指的第二关节和第三关节之间的区域作为目标区域,即ROI(region of interest)区域。为了截取图像的ROI区域,首先用Canny边缘提取算子提取图像的边缘轮廓,然后根据文献[8]中食指的测量数据最终确定ROI区域所在的位置。

3.2.1 Canny算子

Canny算子通常采用双阈值方法提取边缘,具有既能抗噪又能保持弱边缘的优点。因为如果阈值取得大,大概只有一半大于这个阈值的边缘信号做出响应,即提取的边缘是断裂的。如果降低阈值,提取的边缘经常包含虚假边缘。

Canny算子的具体步骤如下:

Step1:首先用二维高斯滤波模板对图像进行滤波以消除噪声;

Step2:用导数算子(比如Sobel算子)找到图像灰度沿水平和垂直两个方向的偏导数,并求出梯度的大小和方向;

Step3:在四个方向上(水平、竖直、45°方向,135°方向)用非极大值抑值确定局部最大值,非最大值置“0”;

Step4:使用累计直方图计算两个阈值。凡是大于高阈值的一定是边缘;凡是小于低阈值的一定不是边缘。如果检测结果大于低阈值又小于高阈值,且这个像素的邻接像素中有超过高阈值的边缘像素,则认为是边缘,否则不是边缘。

图2(a)是用Canny算子对图1(c)提取的边缘轮廓图,其中双阈值分别取T1=0.01,T2=0.1。

3.2.2 食指数据特征

根据文献[8]的对手指测量数据结果,可知食指的第三节长的平均值为男24.746 mm、女22.747 mm,第二节长的平均值为男22.204 mm、女21.176 mm。同理,可以测量出食指的第三关节指宽的平均宽度为男8.241 mm、女7.134 mm。由此计算出第二节指宽与第二节指长的比值为男0.371、女0.336,第二节指宽与第三节指长的比值为男0.333、女0.313。

3.2.3 ROI区域的截取

图2 ROI区域截取图

3.3 静脉特征提取

指静脉图像特征的实质就是静脉纹路特征,提取的方法有很多种。其中有文献是根据静脉横截面呈谷型特点,设计方向模板进行卷积运算提取的[9,10];有文献用OTSU算法、Gabor滤波算法或自适应的多阈值提取方法[4,11,12];近年来,有文献用卷积神经网络的方法提取[13,14]。一般地,提取到的边缘信息中都存在伪信息和边缘信息不连续的问题。因此这项工作通常分为边缘特征提取、伪边缘剔除、边缘修复三个过程。为了解决上述问题,本文用了性能较好的Canny算子提取边缘特征,然后剔除伪边缘并对断裂部分进行修复,效果较好。

3.3.1 边缘特征提取

采用3.2节中Canny算子的步骤提取边缘时,标准差的取值越小,边缘上的毛刺越多,因此本算法中,将其取1。当两个阈值分别为0.01和0.3时图1(c)的结果为图3(a)。

图3 提取的静脉特征

3.3.2 伪边缘剔除

边缘信息具有较强的相关性,可以利用像素邻域的强度和方向来判断是否为边缘点。某像素点(x,y)梯度值的定义见(1)式,梯度的幅值大小和方向见(2)式:

(1)

(2)

伪边缘剔除方法:如果一个像素与其八邻域像素满足下列条件,则该像素就是边缘上的点。

条件1:该点的边缘幅值大于在这条边缘的法线方向上的两相邻像素的边缘幅值。

条件2:两相邻像素的边缘方向与其中心像素的方向之差均不大于方向角度阈值(一般不大于30°)。

条件3:中心像素的边缘幅值应超过一个设定的门限。

除此之处,根据边缘像素所处的位置,去除由ROI区域窗口形成的水平和垂直边缘。

3.3.3 边缘修复

有噪声影响时,提取的边缘像素常常是孤立或分小段连续的,为了准确地提取边缘轮廓线上的特征点,有必要将边缘像素连接起来。连接准则:灰度的相似性与距离的连贯性。

(1)灰度值相近性。边缘像素连接的基础是它们之间有一定的相似性。该相似性体现在两个方面:大小和方向。如果边缘点(x1,y1)和(x2,y2)的梯度幅值和方向分别需要满足以下两个条件,见(3)式,则这两个像素点的相关性较强,认为是相邻边缘点。

||G1|-|G2||≤G0,||θ1|-|θ2||≤θ0,

(3)

其中,G0和θ0分别为梯度幅度阈值和方向角度阈值。

(2)距离的连贯性。像素点(x2,y2)可以和像素点(x1,y1)连接另一必要条件是点(x2,y2)在点(x1,y1)的邻域内。记两点连线和水平线的夹角为θ,两点间的距离记为d,如图4(a)。例如,采用5×5的模板,见图4(b)所示,以点(x1,y1)为中心像素,由于模板是方形的,在各个方向上,点(x2,y2)和点(x1,y1)的最大距离不同。在不影响精度的情况下,将圆心角12等分,如图4(b)所示,计算方法分为两类,当θ和d同时满足以下两个条件之一时,认为两像素点可以连接。

图4 距离计算示意图

其中α=0°、90°、180°以及270°。特别地,当θ取值小于0°时,α=360°。

用该方法对图3(a)进行伪边缘剔除、不连续边缘修复后的效果见图3(b)。

3.3.4 边缘信息再处理

为了得到更好的边缘特征,对修复后的边缘图进一步做膨胀和细化处理。膨胀会使得边缘上的像素向外扩张,目的使边缘上有裂缝的地方桥接起来。膨胀可定义为(4)式[15]:

(4)

其中,f为图像集合,b为结构元素,x为平移量。当设置长度为10、角度为90°的线性结构时,膨胀结果如图3(c)所示。

本文对膨胀结果再用二值图像的形态学操作的细化函数bwmorph(img,operation,n)进行处理,其中的operation操作选取了细化(thin),n为迭代次数,直到边缘轮廓线的宽度大部分满足1个像素为止。细化结果如图3(d)所示。

从实验结果可以看出,本文算法的处理结果良好,它清晰完整,而且算法简单、易实现。

4 结语

低对比度手指静脉图像的特征提取,无论对指静脉识别系统还是对指静脉识别研究均影响较大,有重要的意义。本文提出了一种简单、易实现的指静脉图像的特征提取方法。针对ROI区域提取和静脉纹路特征提取设置了不同的Canny算子双阈值。针对提取到的边缘存在伪边缘信息和边缘信息不连续问题,利用了灰度相关性和距离相关性进行了问题的解决,实验结果证明了算法的有效性。但是由于指静脉识别的准确率要求特别高,因此还需要进一步研究如何提高本文算法的精度问题。

猜你喜欢

算子特征提取阈值
改进的软硬阈值法及其在地震数据降噪中的研究
有界线性算子及其函数的(R)性质
土石坝坝体失稳破坏降水阈值的确定方法
基于小波变换阈值去噪算法的改进
改进小波阈值对热泵电机振动信号的去噪研究
Domestication or Foreignization:A Cultural Choice
空间目标的ISAR成像及轮廓特征提取
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于特征提取的绘本阅读机器人设计方案
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究