指纹传感器和Blackfin处理器增强了生物识别设备的设计

article/2025/7/1 12:26:37

生物识别与安全

在当今世界,对有效安全实施和有效实施的需求日益明显。必须确定个人身份以允许或禁止访问安全区域,或使他们能够使用计算机,个人数字助理(PDA)或移动电话。生物特征签名或生物特征用于通过测量某些独特的身体和行为特征来识别个人。实际上,所有生物识别技术都是使用传感器来实现的,以从个人那里获取原始的生物识别数据。特征提取,处理获取的数据以开发代表生物特征的特征集;模式匹配,将提取的功能集与数据库中存储的模板进行比较;和决策,从而验证或拒绝用户声明的身份。

指纹感应器

长期以来,指纹是最广泛接受的生物特征识别符之一,它是唯一且永久的。它们的图像由多个曲线段组成,包括被称为山脊的高区域和被称为山谷的低区域。细节(脊流模式中的局部不连续性)用作区分特征。指纹传感器“读取”手指表面,然后通过模数转换器(ADC)将模拟读数转换为数字形式。指纹传感器可大致分为光学,超声或固态-包括电容,RF,热和压电设备。

由于手指最外面的干燥,死皮细胞具有较低的电导率,因此RF传感器会从皮肤的湿润和导电的边界区域获取指纹数据,在该区域中,活细胞开始变成角质化皮肤。该活动的表面下层是指纹图案的来源,很少受到手指表面的损坏或磨损的影响。

所述AuthenTec的®的TruePrint® ®传感器采用埋在硅芯片和刚刚在皮肤表面下的导电层内的导电层之间的小的RF信号。RF场测量手指下面的活表皮层的脊和谷的电位轮廓。通过从皮肤上没有受伤或污染的部位获取数据,与仅读取皮肤表面的光学或电容技术相比,该传感器可产生更准确,可重复的指纹样本。

热电材料基于温度差产生电压。当手指与变暖的传感器表面接触时,距离传感器表面较近的指纹凸脊所保持的温度要高于距离传感器表面较远的凹谷。爱特梅尔® AT77C104B的FingerChip ®使用这种类型的热成像的传感器捕获的指纹。线性传感器,它在单个CMOS IC中结合了检测和数据转换电路。通过将手指扫过感应区域来捕获指纹图像。初次接触时会产生图像,但是由于达到热平衡后很快消失,因此必须使用扫描方法来获取稳定的指纹图像。

如图2所示,当手指垂直扫过传感器窗口时,传感器将捕获指纹图像,如图2所示。手指扫动技术可确保传感器表面保持清洁。与基于触摸的传感器不同,一旦移开手指,潜指纹就不会保留。该传感器不需要外部热,光或无线电源。片上温度稳定功能可识别手指与传感器之间的温度差,并增加该差以实现更高的图像对比度。这里的讨论将集中在基于这种热传感器的指纹识别系统上。

 

表征指纹传感器的主要参数包括分辨率面积动态范围像素数分辨率以每英寸的点(或像素)(dpi)为单位。更高的分辨率可以更好地定义峰谷之间的距离,并更好地隔离细节点,这在指纹匹配中起着主要作用,因为大多数算法都依靠细节的重合来确定两个指纹印记是否属于同一手指。更大的感测范围通常,指纹可以提供更独特的指纹,但是将手指扫过较小的传感器,并快速获取和处理数据,可以使小型,低成本的传感器获得与较大,更昂贵的传感器相当的清晰度。动态范围或深度表示用于编码每个像素强度的位数。的像素的数目在特定的帧指纹图像中能够从分辨率和区域导出。

AT77C104B传感器在0.4 mm×11.6 mm的区域上具有500 dpi的分辨率,总共提供8像素×232像素,即每帧1856像素。每个像素用4位编码,标识16个灰度等级。图3显示了传感器的框图,其中包括阵列,模数转换器,片上振荡器,控制和状态寄存器,导航和点击单元,以及用于慢速快速运行的单独接口操作模式。慢速模式(最高可运行200 kHz)用于编程,控制和配置传感器。快速模式可以在高达16 MHz的频率下运行,用于数据采集。片上加热器会增加手指与传感器之间的温差。为了限制电流消耗,看门狗定时器会在指定的时间长度后停止加热模块。

操作方式

该传感器实现六种操作模式:

  • 睡眠模式:一种非常低功耗的模式,其中禁用内部时钟并初始化寄存器。
  • 待机模式:一种低功耗模式,等待主机采取措施。慢速串行端口接口(SSPI)和控制模块被激活;振荡器保持活动状态。
  • 单击模式:等待手指放在传感器上。SSPI和控制模块保持活动状态。将激活本地振荡器,单击阵列和单击块。
  • 导航模式:计算手指越过传感器时的x和y移动。SSPI和控制块仍处于激活状态;本地振荡器,导航阵列和导航块也被激活。
  • 采集模式:将切片发送到主机以进行指纹重建和识别。SSPI和控制块仍处于激活状态;快速串行端口接口模块(FSPI)和采集阵列被激活。当需要看门狗定时器时,将激活本地振荡器。
  • 测试模式:此模式保留用于工厂测试。

接口指纹感应到Blackfin ®处理器的串行外设接口

选择Blackfin ADSP-BF533低成本,高性能处理器是因为它结合了快速信号处理器和强大的微控制器的功能。它的4线全双工同步串行外设接口(SPI)具有两个数据引脚(MOSI和MISO),一个器件选择引脚(/ SPISS)和一个选通时钟引脚(SCK)。请参见图4。SPI支持模式,模式和多主环境。SPI兼容外设还支持可编程的波特率和时钟相位/极性。

 

 

该接口本质上是一个移位寄存器,可与其他SPI器件串行发送和接收数据位(以SCK速率一次发送一位)。移位寄存器可以同时发送和接收串行数据。SCK同步两个串行数据引脚上的数据移位和采样。

可以将SPI端口配置为主机(生成SCK和/ SPISS信号)或从机(从外部接收SCK和从机选择信号)。当SPI端口配置为主设备时,它驱动MOSI引脚上的数据并接收MISO引脚上的数据。它驱动SPI从设备的从选择信号,并提供串行位时钟(SCK)。Blackfin处理器的SPI通过使用时钟极性(CPOL)和时钟相位(CPHA)位提供的组合来支持四种功能模式。有关Blackfin SPI端口的详细信息,请参阅《ADSP-BF533 Blackfin处理器硬件参考手册》。

硬体介面

ADSP-BF533处理器的SPI端口和AT77C104B之间的无缝硬件接口,如图5所示,不需要任何外部胶合逻辑。传感器的从选择信号/ SSS和/ FSS通过可编程标志引脚PF1和PF2驱动。一个标志应配置为输出,并在另一个标志配置为输出之前将其驱动为高电平(这些标志不应同时配置为输出,因为Blackfin处理器默认将其驱动为低电平会切换传感器芯片以进行扫描测试模式)。通过/ IRQ引脚产生的传感器中断由输入PF4读取。复位RST由PF3驱动。复位是高电平有效信号,因此该线上使用了下拉电阻。

 

 

应用程序软件

应用代码使用VisualDSP ++ ®开发工具的Image Viewer插件执行诸如控制传感器,获取指纹数据以及重新排列数据以显示接收到的指纹图像之类的任务。

当传感器检测到咔嗒声(即表示存在手指的信号)时,它将产生中断。Blackfin处理器接收到该中断,并在下降沿产生一个中断。STATUS寄存器指示引起中断的事件。此过程用于导航,读取错误和其他中断。完整应用程序的简化流程图如图6所示。

 

 

数据采集

在采集模式下启用传感器加热。看门狗定时器也被启用,以确保加热保持受控。因此,当请求加热时,传感器被加热“ n ”秒。

然后设置DMA参数以进行数据采集。可变大小的DMA弹性描述符被加载到DMA参数寄存器中。寄存器的顺序基本上是固定的,但是描述符的长度是完全可编程的。2D阵列用于配置DMA参数。一维数组是单独的描述符。由于描述符必须在第一个数据到达之前发送40个虚假时钟周期以初始化芯片流水线,因此第一个描述符即虚拟对象用于接收前五个字节。因此,第一个同步序列在40个时钟周期后出现。然后,数据在每个时钟周期到达所有后续阵列读数。

传感器以的形式发送数据。每个帧的开始都由虚拟列标记,该列包含一个同步字。从左上角到右下角逐列读取像素阵列。

数据重排

必须重新排列数据以显示获取的指纹图像。重新排列的数据将被存储,并可以使用VisualDSP ++ Image Viewer实用程序进行查看。所获取的图像和设置如图7所示。执行以下功能:

  • 半字节交换:传感器以半字节交换格式发送数据。例程将整个帧交换为奇偶像素。
  • 4位到8位转换:每个传感器像素为4位宽,但是Image Viewer会显示最小宽度为8像素的图像。四位零填充将每个像素转换为8位。
  • 电平调整:接收到的数据中的每个像素的强度为0到15,但显示范围为0到255。每个像素的电平转换产生良好的显示效果。
  • 阵列转置:来自传感器的数据按列发送,但是二维DMA按行接收数据,因此必须进行转置以便连续显示帧。3维数组用于连续显示帧。

 

 

指纹重建与识别

如果指尖以合理的速率扫过传感器窗口,则连续帧之间的重叠使得可以使用Atmel提供的软件来重建整个指纹的图像。重建后的图像通常为25 mm×14 mm或500像素×280像素,由于分辨率提高,分辨率为8位。因此,每个图像需要140 kB的存储空间。使用标准的图像处理技术可以从中得出更大或更小的图像。一旦将框架连接起来以获得完整的指纹图像,识别算法便可以将样本与模板匹配。

信任但要验证

指纹处理具有三个主要功能:注册搜索验证登记从传感器获取指纹图像并将其保存在SRAM中。图像经过处理,增强和压缩以创建指纹模板。各种过滤器会清理图像并将其转换为数学表示,从而无法窃取模板并直接重新创建指纹图像。

搜索将原始候选图像与以前注册的模板列表进行比较。通过一系列筛选过程,该算法将模板列表缩小到可管理的大小。将那些幸存下来的模板与候选对象进行比较,并提供验证分数。超过预设阈值的分数表示肯定识别。

验证通过实时的闭环模式匹配算法将原始候选图像与先前注册的模板进行比较,从而验证用户的身份。返回分数,指示候选者和模板的相似性以生成是/否匹配决定。

结论

Blackfin处理器和AT77C104B FingerChip传感器相结合,可提供简单而强大的指纹识别,通过允许或禁止访问建筑物中的敏感区域或便携式计算机中的敏感数据来增强安全性。

参考文献

  1. Blackfin处理器
  2. VisualDSP ++
  3. ADSP-BF53x / ADSP-BF56x Blackfin处理器硬件编程参考。模拟设备。2007年。
  4. ADSP-BF531 / ADSP-BF532 / ADSP-BF533 Blackfin嵌入式处理器数据表
  5. AT77C104B数据表,“ FingerChip热指纹扫描传感器”。爱特梅尔公司。
  6. “ AuthenTec加快了与Blackfin指纹匹配的速度。” Blackfin客户案例研究。2004年12月。
  7. Atmel指纹传感器AT77C104B与Blackfin处理器的接口。工程师对工程师说明EE-325。2007年8月。
  8. Kreitzer,Kelvin和Alan Kasten。“新的指纹子系统将生物识别技术推向大众市场。” 嵌入式计算设计。2007年。
  9. Maltoni,David,Dario Maio,Anil K.Jain和Salil Prabhakar。指纹识别手册。2003年6月。

http://chatgpt.dhexx.cn/article/1syg8n0G.shtml

相关文章

js学到什么程度学框架_如何学到什么

js学到什么程度学框架 Set a target, learn just enough to hit it, teach someone, repeat. 设定目标,学习足以达到目标的目标,教某人,然后重复。 JavaScript’s my craft. JavaScript是我的技能。 Despite my young career, no other ski…

java开发简单解释器,实现一个简单的解释器(5)

你如何处理和了解像创建解释器或编译器这样复杂的事情?在开始时,一切看上去都像是一团乱七八糟的纱线,你需要解开缠结才能得到完美的球。 到达那里的方法是将它解开一个线,一次解开一个结。不过有时候,你可能会觉得自己…

【“笨办法”学Python】43.基本的面向对象分析和设计——自顶向下、自底向上

43.基本的面向对象分析和设计 文章目录 前言一、解决问题的方法——流程1、自顶向下(top down)2、自底向上 二、代码示例三、运行Python程序总结 前言 使用Python,尤其是通过面向对象编程(OOP)方式构建一些东西的流程。 一、解决问题的方法——流程 所谓按照流程就是…

5大代码规则,守护程序猿世界的爱与和平!

全文共2878字,预计学习时长9分钟 图源:Unsplash 编码规则是程序编码所要遵循的规则,要注意代码的正确性、稳定性、可读性。 而对于这些条条框框,一些不拘小节的程序猿们往往并不在意,这导致常常会发生一些意想不到的问题和状况,让大家苦恼不已。 现在,小芯整理了一份…

【AI产品】认猫、认花、认车、认吃,请认准识别全能王

欢迎来到《AI产品》专栏,本专栏面向所有热爱人工智能技术的朋友、同学。在本专栏中,会多多分享给大家不同种类的且新奇有趣的AI产品,对产品中的核心技术进行深度剖析。文章底部会推荐相关核心技术学习资料,全部原创! 请…

【杂谈】什么文章可以给有三AI投稿?你能得到什么

我们公众号的风格是做系统性的原创,除了一些资源类的东西,大多数是专栏,大部分是有三本人在写,还有一些是其他的专栏作者,那么现在有哪些专栏可以自由投稿,新手也可以来练练手呢,今天就来汇总一…

听声音做钥匙?!慢放开锁音轨,黑客就能破解常用门锁

作者|牛婉杨 出品|大数据文摘 你熟悉的黑客是不是这样的?比如上个月,黑客造成推特史上最严重的安全事故,马斯克奥巴马等多位大V账号被黑;或者像8月初英特尔的那起数据泄露事故,足足20GB数据被黑…

【AI产品】爱做短视频的你,真的很需要一款配音软件

欢迎来到《AI产品》专栏,本专栏面向所有热爱人工智能技术的朋友、同学。在本专栏中,会多多分享给大家不同种类的且新奇有趣的AI产品,对产品中的核心技术进行深度剖析。文章底部会推荐相关核心技术学习资料,全部原创! 请…

怎样设计宝藏游戏_宝藏! 免费的移动设计资源

怎样设计宝藏游戏 Being a designer usually requires staying in the know of resources that you could use to get better at your craft as well as resources you could use in your work. 成为设计师通常需要了解可以用来提高自己的Craft.io水平的资源以及可以在工作中使…

webaudio_WebAudio Deep Note,第5部分:增益节点

webaudio Previously on "Deep Note via WebAudio": 以前在“通过WebAudio进行深度注释”中: intro 介绍play a sound 播放声音 2.1. boots and cats2.1。 靴子和猫play a sound 播放声音 loop and change pitch循环并改变音高multiple sounds多种声音no…

web audio api_带有Web Audio API的动态声音

web audio api This article is part of a web dev series from Microsoft. Thank you for supporting the partners who make SitePoint possible. 本文是Microsoft的Web开发系列的一部分。 感谢您支持使SitePoint成为可能的合作伙伴。 Before the Web Audio API, HTML5 gave…

Apache Spark【从无到有从有到无】【编程指南】【AS5】结构化流编程指南

目录 1.概观 2.快速示例 3.编程模型 3.1.基本概念 3.2.处理事件时间和延迟数据 3.3.容错语义 4.使用数据集和数据框架的API 4.1.创建streaming DataFrames 和 streaming Datasets 4.1.1.输入源(Input Sources) 4.1.2.流式数据帧/数据集&#x…

王者荣耀scratch版

现在,防沉迷使我每周都玩不了王者了,不对,不是周5,6,7,八点到九点能玩吗,偶不,那时候我正在上课。。。。。。 现在我,正式想你介绍“Scrach版王者荣耀”!&…

编程斐波那契数列_通过斐波那契序列记忆和制表法进行动态编程的简介

编程斐波那契数列 Lately I have been studying algorithms and data structures while trying to prepare for technical interviews. Some of it comes easier than the rest, but I always enjoy a good challenge. I love the whiteboard problems that feel like a puzzle…

javascript编程题_JavaScript中的鼠标滚轮编程

javascript编程题 In this article Ill describe cross-browser techniques for using the mouse wheel (or "scroll wheel") in your JavaScript programming for HTML pages. Ill show example Javascript for option selection and image zooming. 在本文中&…

【AI产品】智能修图时代已来临?「咔嗒」一下,轻松后期

欢迎来到《AI产品》专栏,本专栏面向所有热爱人工智能技术的朋友、同学。在本专栏中,会多多分享给大家不同种类的且新奇有趣的AI产品,对产品中的核心技术进行深度剖析。文章底部会推荐相关核心技术学习资料,全部原创! 请…

在网易咔哒上面制作SCRATCH小程序

小朋友在网易咔嗒上面创作作品。

什么是命令行参数

命令行参数:在启动这个程序的时候可以给这个程序从命令行中传递一些参数 这个- l就叫做命令行参数 int main(int argc ,char* argv[],char* env[])argc :命令行参数的个数 argv :命令行参数的内容 env:环境变量

Python教程:命令行参数处理

sys模块 sys模块代表了Python解释器,主要用于获取和Python解释器相关的信息,其中 sys.argv 可以获取命令行参数 在Python交互式解释器中可以先导入sys模块 import sys,再输入 dir(sys) 查看sys模块所包含的全部程序单元(包括变量…