基于非下采样Contourlet变换和MB_LBP直方图的掌纹检测*
2014-09-07戴桂平林洪彬
戴桂平,林洪彬
(1.苏州市职业大学电子信息工程学院,江苏 苏州 215104;2.燕山大学电气工程学院,河北 秦皇岛 066004)
基于非下采样Contourlet变换和MB_LBP直方图的掌纹检测*
戴桂平1*,林洪彬2
(1.苏州市职业大学电子信息工程学院,江苏 苏州 215104;2.燕山大学电气工程学院,河北 秦皇岛 066004)
结合NSCT分解的多尺度、多方向性、各向异性、平移不变性以及MB_LBP算法的局部特征提取、旋转灰度不变性等优势,提出一种基于非下采样Contourlet变换NSCT(Nonsubsampled Contourlet Transform)和多块分区局部二进制模式MB_LBP(Multi-Block Local Binary Patterns)相结合的掌纹检测方法。该方法首先采用NSCT算法对预处理过的掌纹图像进行多尺度、多方向稀疏分解;其次,利用MB3-LBP8,2算子分别提取低频子图及各高频子图分块子区域的MB_LBP直方图特征向量并级联;最后,采用AdaBoost算法测试(NSCT+MB_LBP)的检测性能。仿真结果表明,与(Contourlet+MB_LBP)、(2D-EMD+ICAⅡ)、(Contourlet+NMF)以及单独的MB_LBP相比,该方法能更有效地提取掌纹特征,检测率更高。
掌纹检测;特征提取;非下采样Contourlet变换(NSCT);多块分区局部二进制模式(MB_LBP);AdaBoost分类
与其他生物特征检测(比如指纹、虹膜等)相比,掌纹检测具有易采集、检测率高、开放性好等优点,近年来受到了广泛关注,具有广阔的应用前景[1]。目前,掌纹检测若按照掌纹图像特征不同大致可分为基于全局特征分析和局部特征分析两类。其中,基于全局特征提取方法有线性判别分析(LDA)、主成份分析(PCA)、独立分量分析(ICA)等[2]。该类方法虽然能从全局的角度对掌纹进行描述,但易受光照和姿态的影响;而基于局部特征分析的方法,譬如局部二进制模式算子LBP(Local Binary Pattern)不仅能更精细地捕捉图像的邻域纹理特征,而且具有极强的灰度单调和旋转不变性,可以克服掌纹图像采集中由于掌纹位置和方向不同造成的图像旋转移位和光照不均问题[3],但正是这种特征的局部化特点,使其易受噪声的影响而不够稳定,缺乏对整体信息的粗粒度把握,因而本文采用多块分区局部二进制模式MB-LBP(Multi-Block Local Binary Patterns)算子来进行改进。
然而,由于不同方向和尺度的掌纹主线和乳突纹等特征包含了更多掌纹分类的信息,直接应用LBP算子,并不能获得很好的检测效果。研究表明,人类视觉感知系统的视觉皮层善于接收的是以带通性、局域性和方向性为特征的信息[4-5],因此有效的掌纹特征提取方法应具备多尺度性、多方向性和局域性。常用的多尺度分析方法主要包括二维离散小波变换(2D-DWT)、Bandelet、Wedgelet、Shearlet、Curvelet、Contourlet以及非采样Contourlet变换NSCT(Nonsubsampled Contourlet Transform)等。其中,2D-DWT能实现图像的多尺度分解,但其方向数有限,不能充分地挖掘掌纹图像中多方向、边缘等细节信息[6];Bandelet、Wedgelet、Shearlet、Curvelet等算法复杂且对图像光照及位置比较敏感;Contourlet变换具有多尺度、局部性、临界抽样、方向性、各向异性等5大特点[7-8],其中各向异性使得该变换能更稀疏地表达图像中重要而复杂的几何特征,从而子带矩阵中的能量更集中于纹理部分,因此对光照和干扰等不敏感,但缺乏平移不变性;而NSCT变换由于取消了下采样操作,因而还具有良好的平移不变性,能克服掌纹图像采集中由于掌纹位置和方向不同造成的图像平移和旋转问题,而这特性恰恰是其他多尺度、多方向分析工具所不具备的。
综上所述,为了充分发挥NSCT变换的多方向、多尺度、各向异性、平移不变性以及LBP算子局部特征提取、旋转灰度不变性等优势,本文提出基于NSCT和MB_LBP直方图的AdaBoost掌纹检测算法。
1 非下采样Contourlet变换(NSCT)
NSCT是一种不进行下采样的Contourlet变换,由非下采样塔式NSP(Nonsubsampled Pyramid)和非下采样方向滤波器组NSDFB(Nonsubsampled Directional Filter Banks)构成,其中,NSP用于提供多尺度分析,NSDFB用于提供多方向分解[9]。由于没有包含下采样环节,所以该变换具有平移不变性,图1给出了两层NSCT分解原理图。
图1 两层NSCT分解结构示意图
1.1 非下采样塔式分解(NSP)
NSCT采用NSP来进行多尺度分析,而NSP是通过利用双通道非采样二维滤波器组来实现类似拉普拉斯金字塔式的子带分解,由于在金字塔式分解过程中没有下采样环节,避免了图像因采样而导致的像素间的错位,从而满足了平移不变性。
1.2 非下采样方向滤波器组(NSDFB)
NSCT采用NSDFB来实现各尺度上的多方向分解,而NSDFB是由精密采样的双通道扇形滤波器组和重采样构成,如图1(b)所示,通过NSDFB把二维频域划分为若干个方向楔形频域,不但具有较强的方向选择性,也避免了频域中的重叠和遗漏。
图2 基本LBP8,2算子流程
2 基于NSCT的MB_LBP直方图特征提取
2.1 Uniform模式的LBP与MB_LBP
LBP算子是一种灰度范围内的纹理度量,由Ojala等在1996年提出[4]。式(1)为该算子的数学描述,其中,Ic为c像素点(xc,yc)的灰度值,以Ic为中心在半径为R的领域内均匀抽取p个采样点Ij(j=0,1,2…,p-1),将点集{Ij}的灰度值逐一与中心像素Ic做比较,大于则为1;反之则为0,然后按照一定的顺序读出此二值序列并进行编码即为中心像素点c的LBP模式或值,u(·)定义如式(2)所示,图2是求取基本LBP8,2算子的流程图。
(1)
(2)
显然,只要各像素位置不变,LBP算子对线性的灰度变化具有较好的鲁棒性,可以减少掌纹图像采集中由于光照不均造成的影响,因而可利用LBP算子提取NSCT分解后的掌纹低频及各尺度各方向高频子图的统计直方图特征,但基本LBPP,R算子可产生2p类二值模式,导致直方图维数过大,为了降低图像纹理特征的维数且消除图像旋转产生的影响,本文使用经过改进的“统一模式”(Uniform Pattern)下的LBP算子,即当循环二进制数从0到1或从1到0最多有两次跳变时(如00000001、11000111等),此LBP称为Uniform模式类,共有p(p-1)+2类,其余的2p-[p(p-1)+2]类则归为混合模式类,从而LBP模式种类由2p变为p(p-1)+3,极大地降低了直方图特征维数。
然而,Uniform模式下的LBP算子是通过比较邻域点像素与中心点像素的灰度值来实现二值化,该算法易受噪声的影响,具有不稳定性,针对此不足,本文提出采用MB_LBP算子进行改进,该算子流程图如图3所示,是在LBP算法基础上将一个像素点扩展到包含多个像素的矩形区域,以矩形区域灰度值的平均值作为阈值,传统LBP算子像素点之间的灰度比较被像素块区域的平均灰度的比较所代替,从而不但降低了噪声的干扰,而且相比单个像素点逐一比较而言,计算量大大减少,提高了后续掌纹检测的速度,用MBS_LBP表示像素块大小为S×S的LBP算子。
图3 MB_LBP算子流程
图4(a)为叠加高斯噪声的Elaine图像,利用MBS_LBP(S=1,2,3)算子分别提取其MB_LBP图谱,如图4(b)~图4(d)所示,其中图4(b)像素块S=1,即为不分块的基本LBP算子。对比图4(b)与图4(c)、图4(d)可知,由于MB1_LBP没有划分矩形区域,采用的仍是像素点的灰度比较,噪声影响较大,图像的边缘及细节特征较模糊,而图4(c)、图4(d)中S=2、3,采用矩形区域灰度值的平均值进行比较,噪声在一定程度上相互抵消,图像中的细节及纹理特征更清晰,且随着像素块大小S的增加,MB_LBP图谱的纹理增粗并且趋于稳定,说明较大的像素块有助于把握图像中的粗粒度信息。
图4 经MBS_LBP滤波后的Elaine图像
2.2 分块子区域统计MB_LBP直方图
虽然Uniform模式下的MB_LBP算子具有灰度单调、旋转不变性以及极强的局部描述特性,但整幅MB_LBP图谱的直方图序列缺失了掌纹图像的微观结构信息,检测率较低,为了增加图像的微观结构信息,可以将整幅掌纹图像划分为多个分块子区域R0,R1,…,RJ,分别统计各分块子区域Ri的MB_LBP直方图Hi,并以先行后列的顺序将J个子区域Ri对应的直方图Hi级联,则级联后的总直方图向量即为整幅掌纹图像的MB_LBP直方图特征矢量,其提取过程示意图如图5所示。Uniform模式下MB_LBPP,R算子,其分块子区域Ri的MB_LBP直方图Hi为:
图5 掌纹图像分块子区域MB_LBP直方图提取示意图
Hi=[h0,h1,…,hq-1]
(3)
(4)
其中,φ(·)定义为:
(5)
式(4)中,q为Uniform模式下MB_LBPP,R二值模式的种类,q=p(p-1)+3;m为其中一个MB_LBPP,R模式。
3 AdaBoost分类检测
AdaBoost是一种将弱分类器组合构成强分类器的学习算法,它通过动态调节各子学习机权值来对基本算法的训练错误率进行自动适应,由于其独有的对学习机性能的自适应性和对过学习现象的免疫性,近年来引起了广泛的关注。具体的两类分类算法见文献[10-11]。
本文利用提取的掌纹NSCT分解后的各尺度、各方向高频子图的MB_LBP直方图级联向量作为分类特征,即训练集中的xi;属于同一个人的掌纹图像,令yi=1,否则yi=-1,每次迭代结束时,根据当前分类器的分类效果对样本的权值进行更新:升高错误分类样本的权值,降低正确分类样本的权值,最后将多个弱分类器通过加权求和方式组合构成强分类器。
图7 掌纹NSCT两层分解
4 实验结果与分析
4.1 方法流程
为了验证基于NSCT的MB_LBP直方图特征对掌纹检测的有效性,本实验采用香港理工大学提供的PolyU掌纹图像数据库进行分析,该掌纹库中有100人,每人6张,共计600幅掌纹图像,选取每人前3张(共计300张)构成掌纹训练集、每人后3张(共计300张)构成掌纹测试集,其中每幅图片的大小为384×284像素。首先,采用图像预处理的方法进行定位分割,提取大小为128×128像素的ROI区域[2],譬如得到如图5所示的一幅掌纹;其次,采用如图6所示的方法流程测试(NSCT+MB_LBP+AdaBoost)算法的掌纹检测性能,仿真实验采用MATLAB7.1软件,计算机硬件采用Intel(R)Core(TM)2 Duo CPU,2.10 GHz,2.00 GB内存,Windows 7操作系统。
图6 实验方法流程
4.2 NSCT分解
利用NSCT算法对以上掌纹训练集及测试集中的每幅图像进行多尺度、多方向稀疏分解,得到低频及各尺度多方向高频子图集,其中图5所示掌纹的NSCT分解如图7(a)~图7(g)所示,分解尺度为2,非下采样拉普拉斯金字塔滤波器(NSP)选择‘maxflat’型,并选择‘dmaxflat7’非下采样方向滤波器组(NSDFB)对每个尺度上的带通输出进行多方向分解,各层分解方向数矩阵nlevels设定为[1,2],即各2、4个方向。
图7(a)为NSCT分解的低频子带,描述了掌纹中3大主线、皱褶、乳突纹等基本结构、变化趋势等方位信息;图7(b)、图7(c)为第1层水平及垂直方向分解子图,包含了大量用于检测的掌纹细节纹理特征;图7(d)~图7(g)为NSCT分解第2层4个方向的高频子带,表征了掌纹图像中更精细尺度的细节模式结构。由此可知,NSCT分解不仅能够提取掌纹在任意尺度、任意方向的细节纹理特征,而且其独特的各向异性以及平移不变性使得子带矩阵中的能量更集中于纹理部分,减小了图像采集中噪声、光照以及掌纹平移带来的影响。
4.3 分块子区域MB_LBP直方图特征提取
按照图6所示的实验方法流程,NSCT分解后须利用MBS_LBPP,R算子分别提取低频及各高频子图的分块子区域的Uniform模式直方图,其中,分块的大小对检测率有较大影响,分块过大,无法体现掌纹的细节形位信息;分块过小,特征维数过高,计算量过大易产生“过学习”或“过训练”且对噪声比较敏感,因此只有分块适当,才能获得较好的检测率,通过试探法可知,当进行4×5分区时,检测率最高,因此图6的实验方法流程中最佳分块子区域采取4×5。
其次,利用MBS_LBP算子提取分区直方图时,像素块S的大小也很关键,2.1节图4的仿真结果表明,像素块S越大,图像中的细节及纹理特征越清晰,且MB_LBP图谱越趋于稳定,因此本实验中MB-LBP像素块的大小取值为3×3。进而,分块子区域MB_LBP直方图特征提取流程如下:
图8 低频与高频子图MB3-LBP8,2直方图级联后的总特征矢量
(1)对NSCT分解后的低频子带,按照图5①所示的方法进行4×5分区,对每一分区按照图5②的思路,采用Uniform模式下的MB3-LBP8,2算子分别提取各自的统计直方图,每个直方图均有8(8-1)+3=59个二值模式,再将20个LBP统计直方图向量级联,形成低频子带的直方图特征总向量,如图5③所示,维数为1(20×59);
(2)对NSCT分解后的各尺度各方向的高频子图分别进行4×5分区,对每一分区采用MB3-LBP8,2算子提取直方图,再将20个LBP直方图级联,形成每个高频子图的直方图特征向量;
(3)将低频子带与高频子图的MB3-LBP8,2直方图向量级联,构成整幅掌纹的MB3-LBP8,2直方图特征矢量,如图8所示,维数为1(7×20×59),其中图7为6张高频子图与1张低频子图。
4.4 AdaBoost检测结果与分析
为了测试(NSCT+MB_LBP+AdaBoost)算法的掌纹检测性能,设计如下实验策略:首先,选取PolyU掌纹图像数据库中100人的每人前(或后)3张掌纹构成掌纹训练(或测试)集(300张);其次,利用NSCT算法对训练(或测试)集中的每幅掌纹进行2层分解,参数设置与4.2节相同,得到低频子带及2尺度6方向的高频子图集;再次,利用MB3-LBP8,2算子分别提取训练(或测试)集中300幅掌纹的低频及各尺度各方向高频子图的直方图特征并级联(见4.3节),存储在histLBPs_tr(ts)的对应列中,从而构成掌纹训练(或测试)集的8 260×300维MB_LBP直方图总特征矩阵;最后,利用AdaBoost算法对输入的掌纹训练集及测试集特征矩阵histLBPs_tr(ts)以及掌纹类别标记向量palmprintLabel_tr(ts)进行检测,检测中结合KNN(K-Nearest Neighbor)最临近规则分类算法计算每次迭代的错误检测率,并对样本的权值不断更新,迭代完成后计算最终的错误检测率,本实验中迭代次数M~[5:5:50],计算出每次的正确检测率并画图,仿真结果如图9中“o”所示。
图9 不同算法检测率比较(掌纹训练样本数为3)
为了验证(NSCT+MB_LBP)掌纹检测算法的优越性,选取(NSCT+LBP)、(Gabor+MB_LBP)、(2D-DWT+MB_LBP)以及单独的MB_LBP算法进行比较,其中MB_LBP均采取MB3-LBP8,2算子。各种算法的掌纹检测率如图9所示,其中“○”代表(NSCT+MB_LBP);“□”代表(NSCT+LBP);“▽”代表(Gabor+MB_LBP);“☆”代表(2D-DWT+MB_LBP);“*”代表MB_LBP。
由图中可知,(NSCT+MB_LBP)算法检测率最高,位于[0.98,0.999]之间;(NSCT+LBP)算法次之,位于[0.96,0.985]之间,这是由于MB_LBP采用的是像素块区域的平均灰度进行比较的,其图谱的纹理更粗并更稳定,因而提取的掌纹特征更精细、准确;而(Gabor+MB_LBP)(▽)及(2D-DWT+MB_LBP)(☆)检测率较低,这是由于相比NSCT而言,Gabor变换小波参数调整比较复杂,而2D-DWT方向数有限;5种算法中MB_LBP算法由于没有采用多尺度多方向分解,其提取的掌纹特征是基于全局的,图像的微观结构信息缺失导致检测率最低,位于[0.915,0.955]之间。
图10 不同算法检测率比较(掌纹训练样本数为2)
为了进一步测试(NSCT+MB_LBP+AdaBoost)算法的掌纹检测性能,在上述仿真实验的基础上,通过采取不同的掌纹训练样本数重新进行实验,各算法的参数设置维持不变,从每类中(共6幅掌纹)随机抽取n幅(n=2或4)图像作为训练集,余下的作为测试集,重复实验10次,并取均值作为最终的检测率,在迭代次数M~[5:5:50]下各算法检测率测试结果如图10和图11所示,可明显看出,训练样本数越多,算法的检测性能越好,但同时算法耗时也将会增加,且在训练样本数相同情况下,(NSCT+MB_LBP)算法的检测率始终保持最高,(NSCT+LBP)算法次之,验证了MB_LBP在提取掌纹特征方面的优越性;(Gabor+MB_LBP)及(2D-DWT+MB_LBP)检测率略低,表明了在图像多尺度分解中NSCT算法优于Gabor及2D-DWT。
图11 不同算法检测率比较(掌纹训练样本数为4)
为了进一步评价(NSCT+MB_LBP)算法的优越性,选取(Contourlet+MB_LBP)、(2-D EMD+ICAⅡ)[12]、(Contourlet+NMF)[7]作为对比算法。其中Contourlet选择‘9-7’型拉普拉斯金字塔滤波器(LP)以及‘pkva’型方向滤波器组(DFB)对掌纹进行2尺度4方向分解;(2-D EMD+ICAⅡ)中2-D EMD分解层数为5;NMF(非负矩阵分解)的维度设为100,各算法的检测率测试结果如表1所示。可明显看出,(NSCT+MB_LBP)检测率最高,(Contourlet+MB_LBP)与(2-D EMD+ICAⅡ)次之,且检测率相当,而(Contourlet+NMF)检测率最低,从而进一步验证了NSCT在图像多尺度分解以及MB_LBP在提取掌纹局部微观特征方面的优越性。
表1 各类掌纹特征提取算法检测率比较
5 结论
本文提出将NSCT分解与MB_LBP直方图相结合的掌纹检测方法。先利用NSCT对掌纹图像进行多尺度分解;再利用MB3-LBP8,2算子分别提取低频子图及各高频子图分块子区域的MB_LBP直方图特征,并级联后作为整幅掌纹图像的直方图特征矢量;最后,在PolyU掌纹图像库上,利用AdaBoost分类算法通过改变迭代次数来对比本文算法与(NSCT+LBP)、(Contourlet+MB_LBP)、(2D-DWT+MB_LBP)、(2-D EMD+ICAⅡ)、(Contourlet+NMF)以及单独的MB_LBP算法的检测性能,仿真结果表明,鉴于NSCT的多尺度、多方向、各向异性、平移不变性以及MB_LBP的灰度旋转不变性,本文提出的(NSCT+MB_LBP+AdaBoost)算法检测率更高,从而为身份鉴别、保护信息安全的人体生物特征检测技术提供一种更为有效的方法及新思路。
[1] 岳峰,左旺孟,张大鹏. 掌纹检测算法综述[J]. 自动化学报,2010,36(3):353-356.
[2]向伟,文久富. 基于Gabor小波和PCA的掌纹检测方法比较研究[J]. 西南民族大学学报,2010,36(3):450-453.
[3]Meiru Mu,Qiuqi Ruan and Song Guo. Shift and Gray Scale Invariant Features For Palm-print Identification Using Complex Directional Wavelet and Local Binary Pattern. Neurocomputing,Vol. 74,No. 17(2011),pp. 3351-3360.
[4]王茜,肖国强,吴松,林宽. 基于LBP直方图的复杂光照下的人脸检测[J]. 计算机工程与应用,2012,48(15):181-186.
[5]范玮琦,谷宗辉. 全手掌纹5类主线特征选择方法研究[J]. 仪器仪表学报,2012,33(4):942-947.
[6]赵敏,朱明. 基于DTCWT和LBP的低分辨率人脸检测[J]. 计算机工程,2012,38(22):179-182.
[7]刘洋,李燕华,潘新. 基于Contourlet变换和NMF的掌纹检测算法[J]. 计算机工程,2012,38(13):175-177.
[8]蔡念,张海员,张楠. 基于Contourlet的改进双线性插值图像超分辨率算法[J]. 传感技术学报,2011,24(1):59-64.
[9].吴一全,纪守新,占必超. 基于无下采样Contourlet变换和独立分量分析的红外弱小目标检测[J]. 光学学报,2011,31(5):1-7.
[10]Xiangde Zhang,Qingsong Tang,Hua Jin and so on. Eye Location Based on Adaboost and Random Forests. Journal of Software,Vol. 7,No. 10(2012),pp. 2365-2371.
[11]杨晓元,胡志鹏,魏立线. 分级结构Adaboost算法在无线传感器网络入侵检测中的应用研究[J]. 传感技术学报,2012,25(8):1159-1165.
[12]戴桂平,尚丽. 应用二维EMD和独立分量分析的掌纹检测[J]. 计算机工程与应用,2011,47(19):182-185.
戴桂平(1982-),女,汉族,江苏泰兴人,苏州市职业大学电子信息工程学院副教授、硕士,主要从事图像处理、模式检测与人工智能等方面的研究,目前发表论文14余篇,其中2篇EI收录,6篇CSCD收录,以第一发明人申请软件著作权4项、实用新型专利3项,并均已授权,参与国家以及省部级以上项目3项,luaiping_0127@163.com。
PalmPrintDetectionBasedonNonsubsampledContourletTransformandMB_LBPHistogramAlgorithm*
DAIGuiping1,LINHongbin2
(1.Institute of Electronic Information Engineering,Suzhou Vocational University,Suzhou Jiangsu 215104,China;2.Institute of Electrical Engineering,Yan Shan University,Qinhuangdao Hebei 066004,China)
A novel method based on NSCT(Nonsubsampled Contourlet Transform)and MB_LBP(Multi-Block Local Binary Patterns)was proposed to solve palm print detection. The multi-scale,multi-direction,anisotropy,shift invariance of NSCT and local texture property,rotation invariance and gray invariance of MB_LBP were utilized to extract the palm print features. Firstly,the preprocessed palm print image was decomposed by NSCT;and then MB3-LBP8,2was used to respectively extract MB_LBP histogram eigenvectors of each block region of low and high frequency sub-bands;Finally,the detection performance of the integrated method(NSCT+MB_LBP)was tested on the Hong Kong Polytechnic University palm print database through AdaBoost sorting algorithms. Experimental results show that the proposed method not only extracts the palm print features effectively and accurately,but also achieves higher detection rate in comparison with(Contourlet+MB_LBP),(2D-EMD+ICAⅡ),(Contourlet+NMF)and the single MB_LBP.
palm print detection;feature extraction;nonsubsampled contourlet transform;multi-block local binary patterns;AdaBoost sorting algorithms
项目来源:国家自然科学基金项目(60970058);河北省自然科学基金项目(E2012203002);苏州市科技计划项目(SGZ2013135);苏州市职业大学青年基金项目(2013SZDQ02)
2013-12-10修改日期:2014-09-16
10.3969/j.issn.1004-1699.2014.10.016
TP391.41
:A
:1004-1699(2014)10-1387-07