// 很遗憾,文章分类里没有算法这一类。我的这篇以及后续文章,只能暂且算到综合类里了。
关于香港理工大学掌纹公开库(v2)的预处理
摘要
香港理工大学掌纹公开库(v2)[1]是掌纹识别领域里广泛使用的基准数据库。本文针对该数据库提出一种简单有效的预处理方法,通过二值化、边界跟踪和关键点定位等步骤,确定手掌的中心区域并裁剪出大小为128×128的ROI图像。
1 引言
掌纹图像预处理是掌纹识别方法研究前必须经历的一步。然而,由于“技术含量不高”及其它一些原因,很少有资料给出详细的预处理步骤及参数。这种状况无疑会对掌纹识别方法的研究带来不利影响。一方面,这会导致掌纹识别研究的门槛提高,使大家把宝贵时间和精力浪费到“毫无意义”的预处理上。另一方面,预处理的效果直接影响到识别方法的精度,进而影响识别方法之间比较的公平性。因此,有必要给出一种简单有效的预处理方法,以便集中研究人员的主要精力进行识别方法的研究。
香港理工大学的掌纹公开库(v2)[1]作为一个基准数据库,目前广泛应用于低分辨率掌纹识别方法的评测。从掌纹图像中裁剪出大小为128×128的中心区域图像,已作为一种标准的预处理结果应用于很多研究中[2~7]。对于该数据库的预处理,仅有文献[6]及[7]给出了大致步骤,但并没有每步中的具体参数,实现起来十分困难。
针对香港理工大学的掌纹公开库(v2),本文给出一种简单有效的预处理方法,不仅包括详细的步骤,还包括各步骤中的参数取值,力求达到最大限度的可重复性。
2 预处理方法
预处理的目标是提取掌纹图像的中心区域。对于同一手掌的不同图像,我们希望得到更加稳定一致的中心区域子图。然而,掌纹采集过程中不可避免地会产生平移和旋转,尤其是对于不同阶段采集的掌纹图像。因此,确定稳定可靠的关键点作为参考点并建立相应的坐标系是预处理所要解决的根本问题。本文的预处理方法主要包括二值化、边界跟踪和关键点定位等步骤,如图1所示。
图1.预处理的各个步骤。(a) 原始图像,(b)图像裁剪,(c)高斯平滑,(d)阈值化,(e)参考点检测,(f)边界跟踪和关键点定位,(g)建立坐标系,(h)旋转并提取中心区域。
2.1 从原图中裁剪
对于香港理工大学的公开库,由于目标关键点只可能出现在整个掌纹图像的左边,因此可以将左边图像裁剪出来供后续处理,这样可以减少预处理所需的时间。针对该库使用的掌纹采集设备,我们从原大小为384×284的图像中裁剪出左侧40~200列,得到宽为160像素的子图像,如图1(b)所示。
2.2 高斯平滑
阈值化之前需要对图像进行高斯滤波以去除噪声。我们采用大小为15×15,方差为2的高斯滤波器。为了去除边界效应,滤波前我们将图像四周宽为7个像素的部分置为黑色背景。
2.3 阈值化
我们采用灰度值为20的固定阈值对图像进行阈值化操作,以区分手掌区域和背景区域。由于图像中只存在一个手掌,其余部分为背景,因此可以通过不断的区域填充,最终保留两个面积最大的区域。其中平均灰度值较高的为手掌区域,另一个即为背景区域,如图1(d)所示。
2.4 参考点定位
在精确的定位关键点之前,我们首先找出关键点所在的大致区域,这样可以简化后续的关键点定位。我们通过检测外部参考点和内部参考点来完成两个关键点的粗定位。其中图像上部的关键点位于Out_top和In_top限定的范围内,图像下部的关键点位于Out_bottom和In_bottom限定的范围内。
a)外部参考点定位
我们将手掌区域的左上角和左下角作为外部参考点,它们可以通过从左到右逐行扫描的方法得到。
b)内部参考点定位
我们将中指和无名指形成的缝隙的左上角和左下角作为内部参考点,如图1(e)所示,它们可以通过缝隙宽度的突变来定位。从图2中我们可以看到,从左到右考查图像的每一列时,缝隙的宽度在图像左边迅速降低,到达中指和无名指形成的缝隙后缓慢变化。因此,我们可以用较为宽松的阈值(设为100像素)来确定缝隙宽度的突变位置,即内部参考点的位置。
图2.内部参考点定位示意图。(a) 缝隙的宽度,(b)缝隙宽度的变化以及阈值的选取。
2.5 边界跟踪和关键点定位
我们采用基于边沿的边界跟踪算法[8]来得到手掌区域的边界,而参考点范围内边界上最右侧的点就是候选的关键点,如图1(f)和图3所示。若仅存在一个最右侧点,则该点即为关键点。若该列存在多个点,就将它们纵坐标的平均值作为关键点的纵坐标。
图3.基于像素的和基于边沿的边界跟踪算法的比较。每个小格表示图像中的一个像素。白色区域表示目标,灰色区域表示背景。图中的箭头表示边界跟踪的步骤。(a)基于像素的边界跟踪。箭头穿过的像素表示目标的边界。(b)基于边沿的边界跟踪。邻接箭头的像素表示目标的边界(在图中用黑点标出)。
2.6 建立坐标系和中心区域提取
我们以两个关键点的中点为圆心,以过两个关键点的直线为y轴建立坐标系,如图1(g)所示。根据y轴与水平方向的角度,我们可能需要对图像进行旋转(双线性插值)。随后裁剪得到大小为128×128的手掌中心区域(该区域的左侧距离y轴50像素),如图1(h)所示。
3 实验结果
在香港理工大学的掌纹公开库(v2)上,该预处理方法的成功率为100%。我们将进一步测试各种掌纹识别方法在预处理得到的ROI图像上的识别精度,并陆续给出其测试结果。
参考文献
[1] PolyU Palmprint database,http://www.comp.polyu.edu.hk/~biometrics/
[2] Xiangqian Wu, Kuanquan Wang, David Zhang. “Fisherpalm based palmprint recognition”,Pattern Recognition Letters, vol. 24, no. 15, pp. 2829-2838, 2003.
[3] Xin Pan, Qiu-qi Ruan. “A modified preprocessing method for palmprint recognition”,Proceedings of the 8th International Conference on Signal Processing, vol. 2, 2006.
[4] Junying Gan, Dangpei Zhou. “A novel method for palmprint recognition based on wavelet transform”,Proceedings of the 8th International Conference on Signal Processing, vol. 3, 2006.
[5] Zhenan Sun, Tieniu Tan, Yunhong Wang, S.Z. Li. “Ordinal palmprint representation for personal identification”,Proceedings of IEEE conference on Computer Vision and Pattern Recognition, vol. 1, pp. 279-284, 2005.
[6] D. Zhang, W.K. Kong, J. You, M. Wong. “On-line palmprint identification”,IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 25, no. 9, pp. 1041-1050, 2003.
[7] Feng Yue, Wangmeng Zuo, David Zhang, Kuanquan Wang. “Orientation selection using modified FCM for competitive coding-based palmprint recognition”,Pattern Recognition, vol. 42, no. 11, 2841-2849, 2009.
[8] T. Pavlidis. Algorithms for graphics and image processing. Computer Science Press, 1982.