⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fps200.rar.txt

📁 FPS200yigyong ji xianguan chxe
💻 TXT
📖 第 1 页 / 共 2 页
字号:
指纹特征匹配采用允许框来实现弹性,允许框是一个在特征点周围的框,如图26.5所示。


 


算法描述如下:

(1)将特征点坐标转换为极坐标;

(2)在模板指纹和输入指纹中找两个类型相同的点分别作为参考点;

(3)将模板和极坐标中输入点作为符号串,按极角递增的顺序连接每个点;

(4)如果对于模板特征点,输入的特征点在相应的允许框内,则匹配指数加1;

(5)重复(2)、(3)、(4)步,直到每个可能都被测试;

(6)对于一个指纹图,如果匹配指数大于定值T,则认为匹配成功,否则失败。

3硬件电路设计

3.1指纹硬件电路

指纹采集芯片采用美国Veridicom先进的电容式指纹传感器芯片FPS200,FPS200内部的控制电路如图26-6所示。



FPS200电容式指纹传感器在1.28cm×1.50cm的表面集成了256×300个电容器,外表而是绝缘层,当用户的手指放在上面时,由皮肤来组成电容阵列的另一面。电容器的电容由于导体间的距离而降低,即脊(近的)和谷(远的)相对于另一极之间的距离。通过读取充放电之后的电容差值来获取指纹图像。FPS200提供有与8位微处理器相连的接口,并且内置8位高速A/D转换器,可直接输出8位灰度图像。传感器采用标准CMOS技术,获取的图像大小为256×300,分辨率为500DPI。

FPS200传感器的每一列都有两个采样一保持电路,一个用来存储放电前电容两端的电压,另一个用来存储放电后电容两端的电压。两个采样一保持电路的差值可以度量电容的变化。首先指定行高阶地址寄存器(RAH)和行低阶地址寄存器(RAL)中的数据以指定待读取的行,再指定列地址寄存器(CAL)从而启动行捕获,等待一段时间(行捕获时间)后,连续读取控制寄存器(CTRLA),获得某一点的指纹采样值。读完会自动触发下一次A/D转换,读完一行后再写入RAH,RAL以读取下一行,直至最后一个像素。

在参数设置方面,其中PGC是放人倍数,通过它不能消除汗渍(模糊);DCR和DTR的组合大小和背景色及双指纹现象有关。

·  DCR:越小DTR要越大,DTR可变范围越大(可变范围是指图像不太黑,同时没    有双指纹)。

· PGC:越大DTR可调范围变小,PGC:太小使整个图像将变成灰色,很难区分指纹    和背景。

   · DCR:越大将有效抑制汗渍(模糊)。但是DCR达到最大时背景为灰色,虽然指纹没有模糊,但用减小PGC来看,此时整个图像为灰色。而PGC很大时调整范围小,    图像不是很好。

3.2电路原理图

设计指纹采集模块时由于考虑到指纹芯片价格昂贵,万一设计存在错误将会造成很大的浪费,同时也考虑到以后在制作产品时指纹采集模块安装方便,所以将指纹模块单独设计成一块电路板连接在扩展板上面。

FPS200接口电路如图26-7所示。



FPS200和ARM CPU接线(布线要求)建议如下:

    (1)为了减少干扰,ARM输出到FPS、ARM的RD/WR输出到FPS,这些数据线段中间不能再接其他线,即其他器件的数据线和RD线不能和FPS共用。
(2)这些线周围0.5cm左右不能有敷铜或者其他导线。这样来减少数据线和地之间的电容。

(3)其中的数据线应并排走,长度相等。这些线应尽量短,导线较粗。

(4)驱动输入引脚和地之间接一个30pF的电容。尽量贴近管脚。

(5)FSET引脚和指纹自动探测有关。FSET引脚的干扰将触发指纹采集,所以“FSET引脚”和“接在FSET引脚上的电阻”之间的引线要尽量短,并且引线和周围引线之间有较大距离。

4  软件设计

4.1指纹识别驱动

FPS200芯片的功能是采集指纹,它的工作方式是,用户把手指放到采集板上之后,采集板产生一个硬件中断通知ARM,此时用户程序可以通过读取中断标准位的方式得到该响应,然后用户程序通过ioctl发出控制指令读取指纹数据,如图26-8所示。



 硬件上的FPS200指纹采集芯片,这个设备在Linux下没有提供相应的驱动程序,所以需要自己编写。为了能够使用FPS200驱动,还需要在/dev目录下面创建一个设备文件。创建方法如下:

#cd/arm/armroot/dev
#mknod fps200 c 240  0

上面的命令表示,在dev目录下面创建了一个名字为FPS200的字符设备,该设备的主设备号是240,次设备号是0。

在编写驱动时,考虑到FPS200采集指纹时需要调整参数,所以在设计时将调整参数的接口也提供给用户的程序。为了比较出哪一组参数所采集的指纹图片最好,所以可以采用自动调整参数的方法,把每一个参数下的指纹图片自动保存,最后筛选出一个效果最好的参数作为最终参数。

4.2指纹处理程序设计

关于指纹处理过程:由一个光电检测信号来确认是否有手指按下,如果有手指按下,则此时直接读指纹芯片的缓冲区,将读到的指纹图像数据在SDRAM中进行打包;然后发送到服务器,由服务器将接收到的指纹图像进行处理和辨识;接着向终端返回认证结果,由终端进行相应的显示和控制。
系统的简单工作流程如图26-9所示。




 FPS200详细程序如下:
 








5 实例总结

本章介绍了RM开发平台上的一个应用,即指纹识别系统。指纹识别算法需要大量的运算,从PC上运行的结果来看,放到ARM硬件平台上运行速度较慢,因此可以在系统硬件上增加一块DSP数字处理芯片作为专门的指纹处理模块。

在指纹识别系统的设计时应注意如下几个问题。

·在对指纹图像进行增强处理时,对提取指纹边框有效区域的提取范围太大,将不能    够把图像上的噪声完全去除。

·对图像计算方向图时,得到的方向不够准确,将使不太清楚的指纹得到的方向图出    现混乱。

·对图像进行二值化的函数执行时间比较长,在PC上需要大约10s的时间。 


·比对特征点的算法如果存在逻辑错误,则特征点大于100的指纹将无法进行比较。
 
  
阅读全文(105) | 回复(0) | 引用通告(0) | 编辑 
  
 

标签:ARM 嵌入式 指纹识别 
上一篇:UART异步串行接口模块设计
下一篇:外国人心目中的十大中国名牌
发表评论:大名:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -