DSP上的指纹识别模块的实现
发布时间:2007/8/28 0:00:00 访问次数:554
摘要:介绍了用硬件实现的独立指纹识别系统。讨论了指纹识别的算法概述、设计方法及其在DSP板上的实现。
关键词:指纹识别 特征匹配 DSP
随着指纹识别技术的不断发展和成熟,高度的精确性使其已应用到身份认证的各个领域。与其他生物统计学特征相比,指纹特征更容易提取、更可信,且特征尺寸也很小。这些特点使指纹识别系统在有限资源平台上实现并维持一定性能(FAR、FRR及匹配时间等)成为可能。
本文讨论了指纹识别系统的设计和实现方法。介绍运用细节的脊线形状特征作为本算法的基础;基于这种思想,建立了指纹识别算法流程。该算法很容易在任何平台上实现。笔者选择了高效的DSP平台,设计了一个专业的用来单独实现指纹模块的DSP板。最后,讨论了这种指纹识别系统的现状和未来的发展。
1 细节脊线的形状特征
指纹图像上各种各样的线条被称为脊线,脊线之间的空白称为谷。指纹的细节特征是指纹识别的依据,最常用的细节特征是脊线的端点和分叉点。图1显示了端点和分叉两个细节特征。端点就是脊线的终点,分叉表示一条脊线从一条路径在Y型结合点变为两条路径。细节比较运用细节类、坐标(x,y)以及方向作为比较的特征。
一种运用细节脊线形状特征进行指纹识别的新思想。细节脊线形状是指脊线与作为指纹图像相关特征的细节进行关联后所得的形状。当一个细节在被提取和记录时,可以得到其关联脊线分割后的迹线点。这些细节和迹线点能够描述脊线,特别是其对应的细节位置。这种新方法是基于迹线点的相对距离来描述脊线的形状。这种描述方法更为精确,因为这种相对距离不会因指纹在获取中的位移和旋转而改变。这也是该方法相对其他特征点求取方法的优势。
如图2所示,细节和其轨迹点能够用来描述脊线,特别是连接到具体的细节位置。脊线上轨迹点的采样间隔被设定为一固定值D,如果5个点被采样作为1个细节点和4个轨迹点,用3个相对参数d1、d2、d3对脊线形状进行描述。
对于固定的采样间隔D,为了增加精确度,使用内插法定义正确的轨迹点位置。因而,指纹图像的重要数据(脊线形状数据)能通过一种独立于位移和旋转的简单途径获得。每一个参数能够以6bit的数据表示。因此一个有25个细节脊线形状的指纹图形能够以6×3×25位=56.25字节存储。
2 识别流程
指纹识别系统如图3所示,可以分为存储和匹配两部分。记录的目的是提取指纹特征(模板)。在比较处理过程中,将输入的指纹图像特征与模板进行匹配,通过比较决定匹配结果。
图4显示了该指纹识系统的算法处理过程,主要过程包括:
·图像处理——获得高质量的二值图像;
·纹路细化——获得细化后的二值图像;
·细节提取——提取端点和交叉点形状;
·细节比较——比较模板和输入图像的细节。
图像处理的目的是把输入的灰度图像转化为高质量的二值图像。指纹图像是一种噪声较大的图像,因此需要图像增强减少这些噪音,并增强脊线。
第一步,使用高通滤波器和低通滤波器预滤波进行平滑处理。通过第一次二值化处理,过滤后的灰度图像转化为二值图像。第一次二值化处理后,每个二值图像块的方向被提取,并且最大方向被计算出来。然后,过滤后的灰度图像沿着已经查明的方向通过方向滤波器进行平滑处理。最终的二值图像通过对最后的灰度图像进行第二次二值化处理后得到。
经过图像预处理,指纹二值图像被细化以便脊线图案成为一个像素宽的连接线段。图5中a、b、c分别为原始输入灰度指纹图像,以及细化前和细化后的二值图像。
详细的细节是从细化后的二值图像中提取的。详细的分支被发现后,就从分叉点或终点开始描绘轨迹。包括细节点的至多五个点被作为完好的细节标准提取。然后,通过这些点,细节的形状数据被计算出来。这种形状数据作为特征数据和细节类型以及它们的位置都被记录下来。
两个指纹的匹配指数是基于细节形状的相似程度、细节的类型和它们的位置计算出来的。位移和旋转作为评估两个指纹匹配指数的考虑因素。
DSP上的指纹识别模块的实现
--------------------------------------------------------------------------------
摘要:介绍
摘要:介绍了用硬件实现的独立指纹识别系统。讨论了指纹识别的算法概述、设计方法及其在DSP板上的实现。
关键词:指纹识别 特征匹配 DSP
随着指纹识别技术的不断发展和成熟,高度的精确性使其已应用到身份认证的各个领域。与其他生物统计学特征相比,指纹特征更容易提取、更可信,且特征尺寸也很小。这些特点使指纹识别系统在有限资源平台上实现并维持一定性能(FAR、FRR及匹配时间等)成为可能。
本文讨论了指纹识别系统的设计和实现方法。介绍运用细节的脊线形状特征作为本算法的基础;基于这种思想,建立了指纹识别算法流程。该算法很容易在任何平台上实现。笔者选择了高效的DSP平台,设计了一个专业的用来单独实现指纹模块的DSP板。最后,讨论了这种指纹识别系统的现状和未来的发展。
1 细节脊线的形状特征
指纹图像上各种各样的线条被称为脊线,脊线之间的空白称为谷。指纹的细节特征是指纹识别的依据,最常用的细节特征是脊线的端点和分叉点。图1显示了端点和分叉两个细节特征。端点就是脊线的终点,分叉表示一条脊线从一条路径在Y型结合点变为两条路径。细节比较运用细节类、坐标(x,y)以及方向作为比较的特征。
一种运用细节脊线形状特征进行指纹识别的新思想。细节脊线形状是指脊线与作为指纹图像相关特征的细节进行关联后所得的形状。当一个细节在被提取和记录时,可以得到其关联脊线分割后的迹线点。这些细节和迹线点能够描述脊线,特别是其对应的细节位置。这种新方法是基于迹线点的相对距离来描述脊线的形状。这种描述方法更为精确,因为这种相对距离不会因指纹在获取中的位移和旋转而改变。这也是该方法相对其他特征点求取方法的优势。
如图2所示,细节和其轨迹点能够用来描述脊线,特别是连接到具体的细节位置。脊线上轨迹点的采样间隔被设定为一固定值D,如果5个点被采样作为1个细节点和4个轨迹点,用3个相对参数d1、d2、d3对脊线形状进行描述。
对于固定的采样间隔D,为了增加精确度,使用内插法定义正确的轨迹点位置。因而,指纹图像的重要数据(脊线形状数据)能通过一种独立于位移和旋转的简单途径获得。每一个参数能够以6bit的数据表示。因此一个有25个细节脊线形状的指纹图形能够以6×3×25位=56.25字节存储。
2 识别流程
指纹识别系统如图3所示,可以分为存储和匹配两部分。记录的目的是提取指纹特征(模板)。在比较处理过程中,将输入的指纹图像特征与模板进行匹配,通过比较决定匹配结果。
图4显示了该指纹识系统的算法处理过程,主要过程包括:
·图像处理——获得高质量的二值图像;
·纹路细化——获得细化后的二值图像;
·细节提取——提取端点和交叉点形状;
·细节比较——比较模板和输入图像的细节。
图像处理的目的是把输入的灰度图像转化为高质量的二值图像。指纹图像是一种噪声较大的图像,因此需要图像增强减少这些噪音,并增强脊线。
第一步,使用高通滤波器和低通滤波器预滤波进行平滑处理。通过第一次二值化处理,过滤后的灰度图像转化为二值图像。第一次二值化处理后,每个二值图像块的方向被提取,并且最大方向被计算出来。然后,过滤后的灰度图像沿着已经查明的方向通过方向滤波器进行平滑处理。最终的二值图像通过对最后的灰度图像进行第二次二值化处理后得到。
经过图像预处理,指纹二值图像被细化以便脊线图案成为一个像素宽的连接线段。图5中a、b、c分别为原始输入灰度指纹图像,以及细化前和细化后的二值图像。
详细的细节是从细化后的二值图像中提取的。详细的分支被发现后,就从分叉点或终点开始描绘轨迹。包括细节点的至多五个点被作为完好的细节标准提取。然后,通过这些点,细节的形状数据被计算出来。这种形状数据作为特征数据和细节类型以及它们的位置都被记录下来。
两个指纹的匹配指数是基于细节形状的相似程度、细节的类型和它们的位置计算出来的。位移和旋转作为评估两个指纹匹配指数的考虑因素。
DSP上的指纹识别模块的实现
--------------------------------------------------------------------------------
摘要:介绍