基于多模式LBP与深度森林的指静脉识别

2018-07-25 12:05刘广东邱晓晖
计算机技术与发展 2018年7期
关键词:直方图神经网络静脉

刘广东,邱晓晖

(南京邮电大学 通信与信息工程学院,江苏 南京 210003)

0 引 言

指静脉识别是近年来兴起的活体生物特征识别技术,其原理是基于人类手指中流动的血液可以吸收720~1 000 nm范围内的红外线,从而得到指静脉的清晰图像。相较于传统的生物识别方法,其自身存在独特的优点:特异性与唯一性。每个人的指静脉图像不同,同一人不同手指的静脉图像也不同,健康成年人的静脉形状不再发生变化;活体特征-指静脉存在于身体内部,被复制或者盗用的机会很小,受生理和环境因素的影响小,克服了皮肤表面异常、皮肤干燥、油污、灰尘等的影响,为指静脉识别提供了理论依据。据公安部某研究所的专家团队论证得出结论:指静脉生物特征技术是目前最为安全、可靠的一种生物识别技术。

近年来,研究者主要对指静脉图像的采集[1-3]与特征提取进行了研究。其中特征提取的研究最早主要集中于静脉网络的分割算法提取出静脉骨架并采用模板匹配的方法进行识别[4],模板匹配利用图像的整体信息但是计算量较大,宋显华引入Hu不变矩法取得了很好的效果[5]。基于静脉网络的分布结构提取端点与分叉点[6]同样受到了研究者的青睐,这类方法利用了静脉网络的局部信息。多尺度几何特征[7]和二值特征[8]能够提取丰富的局部纹理信息,适用于指静脉等纹理描述的生物特征识别。使用空间投影变换等机器学习方法[9-12]获取的指静脉特征,通过训练获得降维后的具有较高描述能力的特征符合图像处理与模式识别技术的潮流,具有自身独特优势。但是针对深度学习进行指静脉识别却鲜有人提出,这是因为深度网络模型的训练需要大量的样本,而目前指静脉的权威数据库难以达到需求。最近,深度森林模型的提取为解决这一问题提供了有效的解决途径。深度森林的提出为解决小样本的数据模型提供了可靠的途径并且有效减少了训练时间,同时文中提出了多模式LBP特征与深度网络相结合的方式,并通过实验进行验证。

1 指静脉识别系统框架

指静脉识别系统主要包括:指静脉图像采集、指静脉图像预处理、指静脉图像特征提取、指静脉图像识别[13]。图像采集设备在整个图像识别系统中占有重要的地位,采集到的指静脉图像的质量直接影响整个识别系统的安全性、可接受性和正确性。指静脉图像的采集主要依据红外成像理论,红外波长在720~1 000 nm的近红外LED光源照射到指静脉表面时,红外光线很容易透射过骨骼和肌肉组织,而手指血管中血红蛋白可以充分吸收该波段的近红外光线。在手指的另一侧CMOS摄像头可以拍摄到手指静脉图像。在图像的预处理阶段,主要是得到清晰有效的指静脉区域,这部分包含的步骤主要是感兴趣区域(ROI)的提取、尺寸归一化、灰度归一化,经过上述处理后就可以得到大小统一且含有充分特征信息的指静脉特征。文中特征提取部分采用多模式的LBP特征,包含基本的LBP特征、统一模式分块直方图特征,同时结合深度森林进行指静脉的识别。

2 LBP特征提取

LBP(local binary pattern,局部二值模式)是一种能够有效地描述图像局部纹理特征的算子。LBP特征具有很强的分类能力、较高的计算效率并且对于单调的灰度变化具有不变性,这些特点使得它在很多图像分类问题中得到了应用并且不断被改进[14]。

整个LBP的编码过程如图1左所示。

图1 多模式LBP算子

用公式概括为:

其中,(xc,yc)为所选邻域中心像素点的坐标;(xi,yi)为邻域像素点坐标;gi为中心像素的灰度值;gc为邻域像素的灰度值。

应用LBP算子的过程类似于滤波过程中的模板操作。逐行扫描图像,对图像中的每一个像素点,以该点的灰度作为阈值,对其周围的3*3模板进行二值化,按照一定的顺序将二值化的结果组成一个8位二进制数,以此二进制数的值(0~255)作为该点的响应。在整个逐行扫描结束后会得到一个LBP响应图像,图1中LBP响应图像的二进制编码为01100111,对应的十进制编码为103。

统一模式LBP:

对于一个局部二进制模式,在将其二进制位串视为循环的情况下,如果其中包含的从0到1或者从1到0的转变不多于两个,则称这个局部二进制模式为统一化模式。统一化LBP模式能够很好地解决基本LBP算子中那些受噪声影响的转变。对于采样点数为P的原始LBP产生的二进制模式为2P种,而等价模式只有P(P-1)+3种,当P=8时,统一模式LBP的二进制模式仅有59种,见图1右。

在整个逐行扫描结束后会得到一个LBP响应图像,这个响应图像的直方图称为LBP统计直方图或LBP直方图,它常常作为后续识别工作的特征,因此也被称为LBP特征。由于LBP直方图大多是针对图像中的各个分区分别计算的,对于一个普通大小的分块区域,标准的LBP算子得到的二进制模式数目较多,而实际的位于该区域中的像素数目却相对较少,这将会得到一个过于稀疏的直方图,从而使直方图失去统计意义。因此应该设法减少一些冗余的LBP模式,同时又保留足够的具有重要描绘能力的模式。统一化模式的提出解决了上述问题,在随后的LBP直方图的计算过程中,只为统一化模式分配单独的直方图收集箱,而所有非统一化模式都被放入一个公用收集箱,这就使LBP的特征数目大大减少。一般来说,保留的统一化模式往往是反映重要信息的那些模式,而非统一化模式中过多的转变往往是由噪声引起的,不具有良好的统计意义[15]。

3 深度森林

近年来,深度学习网络在许多领域取得了巨大的成功,尤其是在计算机视觉和语音识别方面。尽管深度神经网络优势突出,但是仍然存在明显的缺点。首先,深度神经网络需要大量的样本进行训练,这样就无法在小样本训练集上直接使用。同时,尽管在大样本数据集上,许多实际任务由于缺少标记样本(由于样本标记需要耗费大量的资源),使得深度学习网络在这些任务上的表现也不是很好。其次,深度学习网络是非常复杂的模型,训练处理的过程需要具有强大计算能力的设备,除了大公司以外,个人很难真正进入这一领域。更为重要的是,深度神经网络具有非常多的超参数,学习表现严重依赖对这些参数的调节。举例来说,即使一些作者使用卷积神经网络,他们也是根据不同的任务使用不同的学习模型,比如卷积层结构。这使得深度神经网络的训练非常棘手,而且深层神经网络的理论非常困难,因为具有几乎无限构型组合的干扰因素太多。

研究者们普遍认识到,表征学习能力对于深度神经网络至关重要。值得注意的是,为了利用大量的训练数据,深度学习网络需要很大的容纳能力;这也是深度神经网络非常复杂的原因。gcForest是一种新的决策树集合方法,该方法生成了一个深层森林集合,具有级联结构,可以使gcForest进行表征学习。当输入具有高维度时,可以通过多粒度扫描进一步增强其表征学习能力,使gcForest具有上下文或结构感知能力。此外,gcForest可以自适应地确定级联层数,自动设置模型复杂性,使gcForest即使在小规模数据上也能执行良好,用户可以根据可用的计算资源来控制训练成本。gcForest具有比深层神经网络少得多的超参数;更为重要的是,它的性能对于超参数设置具有健壮性,因此在大多数情况下,即使是来自不同域的不同数据,也可以通过使用默认设置获得出色的性能。这不仅使gcForest的训练方便,而且使gcForest的训练时间成本小于深层神经网络。

gcForest采用级联结构,其中级联接收由其前一级别森林处理的特征信息,并将处理结果输出到下一级。每层包含两个随机森林和两个完全随机森林,这是基于多样性的考虑,每个层级都是集合的集合。每个随机森林包含500棵树,完全随机森林是由1 000棵决策树组成,每棵树随机选取一个特征作为分裂树的分裂节点,然后一直生长,直到每个叶节点细分到只有1个类别或者不多于10个样本。类似的,普通随机森林由1 000棵决策树构成,每棵树通过随机选取sqrt(d)(d表示输入特征维度,即特征数)个候选特征,然后通过gini分数筛选分裂节点。所以两种森林的主要区别在于候选特征空间,完全随机森林是在完整的特征空间中随机选取特征来分裂,而普通随机森林是在一个随机特征子空间内通过gini系数来选取分裂节点。注意,每个森林里的树木数量是一个超参数。

图2 类矢量产生的说明

图2是每层森林中特征类矢量的产生过程:给定一个实例,每个森林将计算相关实例落叶的叶节点上不同类别的训练实例的百分比,然后对同一森林中的所有树进行平均,从而产生类分布的估计,其中虚线部分显示实例遍历到叶节点的路径。

为了方便起见,假设输入的样本包含三个类,估计的类分布形成一个类向量,然后将其与原始特征向量连接以输入到下一级级联。例如,假设有三个类,那么四个森林中的每一个将产生三维类向量;因此,下一级级联将获得12(3×4)增强特征。

为了降低过度拟合的风险,每个森林产生的类矢量是通过k-折交叉验证产生的。每个实例将被用作k-1次的训练数据,产生k-1个类向量,然后对其进行平均以产生最终类矢量作为下一级级联的增强特征。获得增强特征后,将对验证集进行整体级联性能评估,如果没有显著的识别率增长,训练程序将终止;因此,gcForest能自动确定级联电平的数量。与模型复杂度固定的大多数深度神经网络相反,gcForest通过适当地终止训练来自适应地决定其模型的复杂性。这使其能适用于不同规模的训练数据,不限于大规模训练数据。

4 实验与分析

实验的数据集来自Sains Malymia大学的指静脉数据集FV_USM,该数据库共由两部分组成,每一部分均包含2 952个样本。这些样本来自123个不同性别、不同年龄阶段的志愿者,每个人分别采集双手的食指和中指的图片各6张,经过预处理后得到统一的像素为100*300的样本。

另一个数据库是由自己制作的采集设备采集得到,实验样本来自35位不同年龄段的人,按照正规的预处理流程制作标准的样本。每个样本的像素为280*120,但是制作好的样本仍有微小的位移偏差,更符合实际情况,以验证算法的鲁棒性。

实验中分别将gcForest算法与其他典型的机器学习算法进行对比,结果见表1和表2。其中,用于训练的样本数量分别选择3个样本和4个样本。decisiontree分类器[16]的最大深度设置为10,节点数目为100。支持向量机分类器[17]使用台湾大学林智实验室开发的LibSVM。FV_USM数据库中C设置为0.031 25,g设置为0.000 488 281 24;自制数据库上C设置为0.125,g设置为0.000 122 007 031 25。logistic regression分类器[18]设置为C=1.0,惩罚因子设置为l2范式。random forest分类器[19]最大深度设置为10,包含1 000棵树。KNN分类器[20]中K的值设置为3。gcForest分类器中每层包含4个森林,其中两个森林为完全随机森林,两个为随机森林,每个森林包含500棵树,增益准则选择最小“gini”值,gcForest自动设置训练级数,当识别率不再有明显增长时停止训练过程。

表1 不同算法在FV_USM上的识别率对比 %

表2 不同算法在自制数据库上的识别率对比 %

从表1与表2可以看出,gcForest相比于其他算法取得了较高的识别率。

提出的基于LBP特征的深度森林框架如图3所示。

图3 基于LBP特征的深度森林框架

将LBP基本响应图像,分块LBP统一模式的直方图特征分别输入到深度森林中,最终的实验结果见表3。

表3 不同LBP特征与深度森林结合 取得的识别率 %

从表3可以看出,相较于LBP响应图像,LBP直方图能够取得更好的识别效果。在两个实验数据库上,基于统一模式LBP分块直方图特征比使用LBP响应图像在识别效果上的提升更加显著,在FV_USM数据库上识别率提高了6.78%,在自制数据库上识别率提高了4.07%。

5 结束语

提出了基于深度森林的指静脉识别方法,并与经典的机器学习识别器在性能上进行比较,结果表明基于深度学习模型改进的深度森林识别器比其他的分类器具有更好的表现,与深度神经网络相比更适用于小规模数据集,具有更少的调节参数,同时能够自适应地优化选取网络层数。同时,将基本LBP响应图像、统一模式LBP分块直方图特征与深度森林结合的方法在提取丰富的指静脉纹理特征的基础上结合深度学习的模型,进一步提高了深度森林的识别效果。相较于深度网络等深度学习模型探索了基于深度学习模型用于图像识别的新领域,实验表明深度森林能够在指静脉图像识别等图像识别领域取得理想的效果。

猜你喜欢
直方图神经网络静脉
静脉曲张术后深静脉内径及功能变化的研究进展
符合差分隐私的流数据统计直方图发布
基于递归模糊神经网络的风电平滑控制策略
防栓八段操 让你远离深静脉血栓
术中持续静脉输注利多卡因的应用进展
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
基于差分隐私的高精度直方图发布方法
神经网络抑制无线通信干扰探究
基于神经网络的中小学生情感分析
基于Q-Learning算法和神经网络的飞艇控制