基于gabor滤波器的掌纹特征提取的方法:掌纹编码palmcode,融合编码fusioncode,竞争编码competitive code
竞争编码:在特征提取中,运用6个不同方向的gabor滤波器围绕在掌纹图像上,然后把处于优势方向的滤波器编码成按位表示,然后对这些相位生成特征码,然后用hamming距离表示匹配度;竞争编码是基于方向的表达方法,求掌纹图像的每个像素,从而把图像从灰度空间映射到方向信息空间,然后进行匹配。
使用角度的索引值来代表特征
Gabor滤波器
利用Gabor滤波器可以获得掌纹线段的方向信息。2DGabor滤波器定义如下:
将gabor函数去掉核分量,对光照影响不敏感
结合小波变换的理论,对gabor函数进行了改造。
利用Gabor滤波器可以获得掌纹线段的方向信息。Gabor滤波器定义如下。
其中:
(x0,y0)表示滤波器中心点;表示径向频率;表示滤波器角度;
根据欧拉公式,Gabor滤波器又可以表示为以下的形式:
直线模型
首先,建立一个线段的模型,这种模型是自上而下的高斯形状,定义如下:
是标准差,也可以看做是直线的宽度;
A是控制直线梯度(对比度)的一个正实数,取决于采集设备;
C是表示亮度,取决于采集设备和采集环境;
3.直线的角度相应
对于一条直线,利用Gabor滤波器在其中点进行滤波,响应如下。
响应函数有以下六条属性:
4. R与A是成比例的;
5. R与C无关,即与亮度无关;
6. 当线段角度与滤波器角度垂直,R为0.
4.竞争编码
算法的目的是对直线进行编码,在这个角度下,各种直线是无差别的,需要与环境与
采集设备无关(与直线强度也无关)。因此,这里不直接使用相应R,而是采用一种
竞争规则来获取直线角度。这种规则被称为“Winner-take-all”。
竞争规则可以定义为:
I是预处理后的图像,是Gabor滤波器的实部。是滤波器角度,其中j={0,1,2,3,4,5}
表示滤波器选取的[0, Pi/6,…Pi]的六个角度。
在检测直线角度信息的时候,需要面临两个问题:
(1)图像中的某一点究竟属于那一条直线;
(2)即使能精确的知道没一点所归属的线段,想要实时的对所有点进行特征分析从而匹配目标十分
困难,因为特征点的数量很不稳定,即使是同一个目标,两次采集时可能有不同的特征点。
为了解决以上的两个问题,在这里,将所有的特征点看做属于同一条直线。因此在可以在同一维度
空间内对特征点编码,提取特征向量,称这种编码方式为“竞争编码”
基于竞争编码的角度匹配
提到匹配,首先要引入一种相似性度量方法。相似性度量,在这里即设计一种两幅图片(两组特征向量)
“距离”的定义,距离越小,两幅图片越相似。本文中,需要度量的是已经进行编码后的特征向量P和Q。在
这里需要说明一点,对预处理后的图片进行竞争编码,图片区域可能仍有部分不属于ROI区域,因此在下
文中需要引入Mask对特征区域进行限定。为待匹配图像的掩膜。两幅编码后的图片距离D(P,Q)的计
算方法如下。
其中G(P(x,y), Q(x,y))表示编码图像对应点之间角度差的绝对值,因为每一个点有0,Pi/6,Pi/3,Pi/2,2Pi/3,Pi。
六个值,分别表示为0~5,因此两特征点之间角度的差的范围在0~3。具体计算方式如下。
可以看到D(P,Q)是一个0~1之间的数,越小,距离越近。
需要说明的一点:这种匹配方式的前提是两幅图片(若属于同一手掌)进行匹配的前提是特征点能在相应位置一一
对应,但这必然是不能保证的。因此实际操作是以模板图像为标准,样本图像分别在基准点水平和竖直[-2,2]的区域
滑动,即25种匹配,取D最小的为最终答案。
用4bit来表示竞争编码,第一位表示掩膜,后三位可以表达0~5。这样,D的计算可以用一个更为有效的方式,如下式。
具体的竞争编码规则如下。