a&s专业的自动化&安全生态服务平台
公众号
安全自动化

安全自动化

安防知识网

安防知识网

手机站
手机站

手机站

大安防供需平台
大安防供需平台

大安防供需平台

资讯频道横幅A1
首页 > 资讯 > 正文

关于提高指纹识别速度的探讨

随着指纹识别技术的发展,指纹识别的应用将越来越广范,不论是公安部门刑侦,银行金库门禁,军事枪支管理等,还是一般公司的考勤门禁,乃至一些酒店、百货公司的会员卡等,指纹识别的应用大有取代曾一度盛行的ID、IC卡和网络上、电脑上、银行取款机上琳琅满目的密码验证之势, 于是使用指纹识别的用户越来越多,这就对指纹识别的速度提出了新的要求,如何提高指纹速度呢?
资讯频道文章B

    随着指纹识别技术的发展,指纹识别的应用将越来越广范,不论是公安部门刑侦,银行金库门禁,军事枪支管理等,还是一般公司的考勤门禁,乃至一些酒店、百货公司的会员卡等,指纹识别的应用大有取代曾一度盛行的ID、IC卡和网络上、电脑上、银行取款机上琳琅满目的密码验证之势, 于是使用指纹识别的用户越来越多,这就对指纹识别的速度提出了新的要求,如何提高指纹速度呢?

    如何提高指纹速度呢?这是一个备受关注的问题。以下先概述一下指纹识别的基本原理等,再提出几点个人假想以探讨。


基本原理
    指纹识别技术是通过取像设备读取指纹图像,然后用计算机识别软件提取指纹的特征数据,最后通过匹配识别算法得到识别结果,以确定指纹所有人身份的生物特征识别技术。

    指纹识别技术主要涉及指纹图像采集、指纹图像处理、特征提取、保存数据、特征值的比对与匹配等过程。首先,通过指纹读取设备读取到人体指纹的图像,并对原始图像进行初步的处理,使之更清晰。然后,指纹辨识算法建立指纹的数字表示--特征数据,这是一种单方向的转换,可以从指纹转换成特征数据但不能从特征数据转换成为指纹,而且两枚不同的指纹不会产生相同的特征数据。特征文件存储从指纹上找到被称为"细节点"(minutiae)的数据点,也就是那些指纹纹路的分叉点或末梢点。这些数据通常称为模板,至今仍然没有一种模板的标准,也没有一种公布的抽象算法,而是各个厂商自行其是。最后,通过计算机把两个指纹的模板进行比较,计算出它们的相似程度,得到两个指纹的匹配结果。


技术特点
    相对于其它生物特征鉴定技术,自动指纹识别是一种更为理想的身份确认技术。原因如下:
? 每个人的指纹是独一无二;
? 每个人的指纹是相当固定的,很难发生变化;
? 便于获取指纹样本,易于开发识别系统,实用性强;
? 可以利用多个指纹构成多重口令,提高系统的安全性,又不增加系统的设计负担;
?系统对指纹模板库的存储量较小,便于实现异地确认,支持计算机的网络功能。

    从以上的分析可以看到,用自动指纹识别相对于其它方法不仅具有许多独到的信息安全角度的优点,更重要的是还具有很高的实用性、可行性。


算法概述
分类算法
    正如人们在平时把指纹分成簸箕,斗等类型,在自动指纹识别的研究中,指纹被分成五大类型:拱类、左环类、右环类、尖拱类、旋涡类(也就是"斗")。指纹分类的主要目的是方便大容量指纹库的管理,并减小搜索空间,加速指纹匹配过程。指纹分类是基于指纹脊或谷的整体流向以及指纹的核心点。很多研究者试图解决指纹分类问题,但至今分类算法的误识率仍较高。如何提高指纹分类的准确率在自动指纹识别研究中是一个较关键的问题。[nextpage]

    指纹分类一般包括图像预处理(包括图像分割与图像增强)、方向提取、校准、特征变换(包括K-L变换和权重变换)、分类判决等五个步骤,其中,图像预处理包括两个步骤--图像分割与图像增强;图像分割步骤中,分割器读输入的指纹图,剪切该指纹图,在基本不损失有用的指纹信息的基础上产生一个比原图像小的指纹图片。这样可减少以后各步骤中所要处理的数据量; 图像增强该步骤用以增强分割后的指纹图,提高图像质量;特征提取将灰度指纹图转换成黑白图像,然后生成方向数组。此数组是分类系统使用的基本特征;指纹分类器:输出分类结果。


压缩算法
    在大容量的指纹库中,为了节省存储空间必须对指纹图进行压缩存储,使用时再进行解压缩。指纹压缩与一般的图像压缩既有相同的特点又有其本身的特性。相同之处在于指纹压缩一般也要经过图像变换、量化和编码的过程。解压缩则需经过解码、量化解码和图像反变换的过程。

    与一般的图像相比,指纹图像有自己的特点。指纹图像的内容比较单一,通常由交替出现的宽度大致相同的脊和谷组成。其中的脊末梢和分支点等特征在压缩过程中必须能够很好地保持,否则解压缩后无法恢复的这些关键特征信息将对指纹的分类和识别造成不良的影响。 如果使用常用的静态图像压缩标准JPEG进行压缩,由于其使用8*8的DCT对图像进行变换,在高压缩比的条件下会产生明显的方块效应,这对指纹图像中关键特征的保持是极为不利的。因此,指纹图像的压缩要采用一些有针对性的算法。

    目前普遍使用的指纹压缩算法是由FBI提出的WSQ算法,它可以算是指纹研究领域一种通用的标准。这是一种基于自适应的标量量化和小波分解的压缩算法,在有失真的条件下压缩比不高,约为18:1。

增强算法
    一个专业的指纹识别依赖于对脊线结构、细节点信息的辨识。然而在实践中,由于手指本身的因素和采集条件的影响,采集到的指纹图像会不同程度地受到各种噪声地干扰,因此在进行分类和细节匹配之前一般要对采集到的指纹图像做增强处理。 对于一个自动指纹识别系统来说,图像增强算法的优劣很大程度决定了系统性能的好坏。

    Lin. Hong等人采取的是Gabor滤波器来实现图像的增强;G.T.Candela使用二维FFT变换滤波法。这些方法主要是针对离线采集的指纹图像比较合适,对计算机的性能要求比较高。而对于CMOS传感器来说,指纹图像质量比较差,对比度小,指纹重叠区域小,而且处理的是活体实时采集的指纹图像,这就需要一些更有效,速度更快的指纹图像增强算法。

匹配算法
     指纹匹配是指纹识别系统的核心步骤,也是一个重要的研究课题,人们在这方面作了很多工作。算法共同的缺点是时间复杂度高,准确度不高,不适宜于在线的快速指纹识别。指纹细节匹配算法也有待于深入研究。指纹匹配系统从获得指纹图到获得匹配结果将经过以下几个处理步骤。其中各部分功能如下:

?图像预处理:分为图像分割与图像增强两部分。其功能同分类系统。
? 细节提取:提取脊线上的末梢点及分叉点,用于今后的细节匹配。
?细节匹配:用上一步获得的细节点去匹配数据库中的模板,给出匹配结果。[nextpage]

识别算法提速方法概述

    分类法:分类法就是以上的分类算法。在注册指纹时,根据指纹的特征进行详细分类,然后按照类别分开存储,如PEFIS的 PIS2000 版,把指纹数据分为101类,每类指纹分存于相应编号的库文件中,在匹配时,也同样判断待匹配指纹的分类,然后打开相应的库文件进行匹配运算。这样可在一定程度上减少被匹配指纹特征数据量。例如101类中,每类有指纹50枚,共5050枚,匹配时,一枚待匹配指纹在分类后只需与相应类中的50枚已登记指纹进行匹配就行了,而非同时与5050枚指纹做匹配运算,所以提高速度;

     减少可旋转度:可旋转度是指登记指纹时手指按于指纹仪的角度与要匹配时手指按于指纹仪的角度差。有些匹配算法可允许360度旋转,则手指可以任意方向按于指纹仪上取象(如 U.ARE.U 算法),但这种算法除非有快速准确的指纹定位算法,否则将以大量的旋转试比对做为代价,使得匹配变慢。一些公司的算法则尽可能减少可旋转度,如PEFIS 公司的,可旋转度大概为45度,但45度的可旋转范围也已经能满足人们的需要了;

    减少特征点:特征点则以上匹配算法中所提到的细节。在一个指纹中可被提取的特征点往往很多,提取的越多匹配运算的误认率也可越小,但由于取特征点多,则要处理的数据量会更多,影响速度。所以根据不同的应用选择较适当的最大特征点数也是提高算法运算速度的一种方法;

    分段多线程法:分段多线程法则把已登记的指纹数据均等的分段或定额分段后,每段分别由一个线程完成,可多线程同时执行匹配运算,当其中一线程中找到匹配的指纹后,即通知其它线程停止。如已登记指纹为 1000 枚,分为 10 段,则每段为100 枚,匹配运算时,每条线程最多只需完成待匹配指纹与 100 枚登记指纹的匹配运算。但这种做法依赖于计算机性能;

    多机协助法:多机协助法与上述 分段多线程法 基本同理,就是把几部机器联网,登记指纹时,待登记者可在联网的任一机中登记,但最好使每部机中登记的指纹数相同;验证时,待验证者可在联网的任一机中验证,取得待验证者指纹后,由软件把该指纹发布到每一相联的机中匹配,若其中一机找到匹配的指纹即发回找到的相应信息,收到找到匹配指纹的信息后即向其它机发出停止匹配运算指令;若每部机都发回没找到的信息,则待验证的指纹未登记。但这方案需要多机联网,成本较高。

假设与探讨
     生物识别技术的应用普遍存在一个相同的问题,就是识别速度的提高。不管是身体特征的指纹、掌型、眼睛(视网膜和虹膜)、人体气味、脸型、皮肤毛孔、手腕/手的血管纹理和DNA等,还是行为特点的签名、语音、行走的步态、击打键盘的力度等,目前的识别速度都还不是很理想,所以研究这方面技术的人们都在想办法提速。但可能是由于技术发展的历史因素吧,有以下几点,随着计算机的飞速发展,是不是可以做一些革命呢?
[nextpage]


主要算法由其它硬件实现
    举个例子:用PCI桥的(或USB设置)。系统初始化时,把原已登记的指纹数据都写入该PCI桥的RAM中;登记指纹时,把取得的指纹特征数据同时写入硬盘和PCI桥的RAM;验证时,把待匹配指纹特征数据发至PCI桥做匹配运算,然后再把结果返回给正在运行的软件。这种做法的优点是相对减少电脑CPU的负担,容易维护产品版权等;缺点是:
?PCI桥中的RAM的容量有限,可能限制可登记指纹数。
?当指纹数多时,每次初始化时,登记的指纹数据要从硬盘拷贝到PCI桥的RAM,较为费时(特别是USB设置时)。
?硬件设备升级没有计算机发展快。今天计算机的主频已是 2G 以上可用的指纹识别卡可能还是计算机386时代时用的,硬件的落后必然影响性能。难道能在PCI卡(或USB设备)中处理器运行的处理就不可改为以电脑CPU来处理吗?

只有1:1方式
    什么是1:1 ?1:1技术整个过程可概括为:“你是你自称的这个人吗?”。1:1技术是一个验证过程,是通过把一个现场采集到的指纹与一个已经登记的指纹进行一对一的比对,来确认身份的过程。

    只有1:1方式是指某种识别算法在指纹匹配时,不管指纹库中有多少枚指纹,都得一枚取出来比对后再取一枚的做法。若库中有1000枚已登记的指纹,要在其中找出待匹配指纹的ID,则要进行1:1的比对次数将是1至1000次中的数,也就是没有一点优化的做法。能不能对整批已登记的指纹数据进行分类甚至索引查找呢?

指纹数据库以简单的文件型数据表
    几乎每一个指纹识别开发包中都有获取特征数据的函数,有些有提供保存指纹数据的数据库,有些没有,没有的一般匹配运算时也只有1:1方式;而创建指纹数据库的,往往也只是简单的文件,主要用于存储指纹数据,而非如 SQL 等数据库能对数据进行优化查询处理。提个不专业的设想,获取指纹特征数据时可不可以模式化,获取的指纹特征数据可不可以字段化,能否把已登记的指纹数据做成一个表,每个指纹是一条记录,每个分类或特定方位的特征点是特定的字段值。匹配时,待匹配指纹也以同样方法获取该指纹的特征记录,然后执行数据库结构化查询,发挥数据库高速查询的优势,这样是不是可以让指纹识别速度有个大的飞跃呢?

参与评论
回复:
0/300
文明上网理性发言,评论区仅供其表达个人看法,并不表明a&s观点。
0
关于我们

a&s是国际知名展览公司——德国法兰克福展览集团旗下专业的自动化&安全生态服务平台,为智慧安防、智慧生活、智能交通、智能建筑、IT通讯&网络等从业者提供市场分析、技术资讯、方案评估、行业预测等,为读者搭建专业的行业交流平台。

免责声明:本站所使用的字体和图片文字等素材部分来源于互联网共享平台。如使用任何字体和图片文字有冒犯其版权所有方的,皆为无意。如您是字体厂商、图片文字厂商等版权方,且不允许本站使用您的字体和图片文字等素材,请联系我们,本站核实后将立即删除!任何版权方从未通知联系本站管理者停止使用,并索要赔偿或上诉法院的,均视为新型网络碰瓷及敲诈勒索,将不予任何的法律和经济赔偿!敬请谅解!
© 2020 Messe Frankfurt (Shenzhen) Co., Ltd, All rights reserved.
法兰克福展览(深圳)有限公司版权所有 粤ICP备12072668号 粤公网安备 44030402000264号
用户
反馈