基于嵌入式Linux平台的指纹门禁系统
指纹门禁系统是基于生物特征识别技术的一项高科技安全设施,近年来在国内外得到了广泛的应用,并已成为现代化建筑智能化的标志之一。对于一些核心机密部门,如重要机关、科研实验室、档案馆、民航机场等场所,指纹门禁系统可以提供高效、智能、便捷的授权控制。由于指纹具有携带方便、人人各异、终生不变的特点,因此利用指纹识别作为身份认证的手段,与传统的钥匙、密码相比,大大提高了安全性与可信性。
该系统基于ARM9芯片Samsung S3C2440AL,以Veridicom公司指纹采集芯片FPS200作为硬件平台,以嵌入式Linux为软件平台。在该研究领域中,基于PC平台的识别系统一直是研究的重点,本文实现的基于ARM平台的系统具有轻便,易安装,成本低的优点,具有良好的发展前景。
1 系统硬件设计
S3C2440AL主频为400 MHz,最高为533 MHz;FPS200指纹传感器由256×300个电容传感阵列组成,其分辨率高达500 dpi,工作电压范围为3.3~5 V,传感器内部有8位ADC,并具有2组采样保持电路。整个系统的框图如图1所示。
2 操作系统
由于嵌入式Linux具有内核小、效率高、开放源码、平台工具多等优点,该系统采用嵌入式Linux作为操作系统平台。构建该平台的主要步骤如:
(1)通过JTAG下载U-boot;
(2)配置Linux Kernel并通过串口下载;
(3)开发FPS200驱动并进行动态加载。
3 指纹识别的算法流程
指纹识别系统按识别过程中的主要功能,可划分为指纹图像采集算法、图像预处理算法、特征提取算法、特征匹配算法。
(1)指纹图像采集算法流程如图2所示。
(2)指纹图像预处理算法流程如图3所示。
(3)指纹特征提取算法流程
提取之前首先需要进行伪指纹特征点的去除,然后提取指纹的拓扑数据结构。
(4)指纹特征匹配算法流程如图4所示。
4 指纹分割算法原理
设一幅指纹图像的像素点数为N,其有L个灰度级(0,1,2,…,L-1),灰度级为i的像素点数为ni,那么,对图像直方图归一化,且有概率密度分布:
假设阈值t将图像分成C0和C1两类(即物体和背景),C0和C1分别对应具有灰度级{0,1,2,…,t)和{t+1,t+2,…,L-1}的像素。C0类和C1类的发生概率分别为:
由图5可以看到利用该方法得到的效果图,其分割结果良好。
5 结语
本文以ARM9处理器为平台,系统地实现了一个识别结果良好的嵌入式门禁系统。给出了系统设计的整个算法流程,并重点介绍了图像分割算法,较前人的研究成果,该系统具有平台简单,识别率高,识别快速的优点。但该系统对畸变图像的处理效果并不十分理想,需要在以后的研究中进一步加强。
- 基于DSP CCS 2.2实现指纹识别预处理系统(07-28)
- 基于FPS200传感器和DSP的指纹识别系统(01-12)
- 基于DSP CCS2.2实现指纹识别预处理系统设计(06-10)
- 基于DSP CCS2.2实现指纹识别预处理系统设计方案(06-17)
- 基于DSP的指纹识别系统设计方案(07-03)
- 人脸和指纹身份识别认证系统合二为一的解决方案(05-10)