指纹识别技术主要涉及四个功能:读取指纹图象、提取特征、保存数据和比对。
一开始,通过指纹读取设备读取到人体指纹的图象,取到指纹图象之后,要对原始图象进行初步的处理,使之更清晰。
指纹辨识软件建立指纹的数字表示——特征数据,一种单方向的转换,可以从指纹转换成特征数据但不能从特征数据转换成为指纹,而两枚不同的指纹不会产生相同的特征数据。软件从指纹上找到被称为“节点”(minutiae)的数据点,也就是那些指纹纹路的分叉、终止或打圈处的坐标位置,这些点同时具有七种以上的唯一性特征。因为通常手指上平均具有70个节点,所以这种方法会产生大约490个数据。
有的算法把节点和方向信息组合产生了更多的数据,这些方向信息表明了各个节点之间的关系,也有的算法还处理整幅指纹图像。总之,这些数据,通常称为模板,保存为1K大小的记录。无论它们是怎样组成的,至今仍然没有一种模板的标准,也没有一种公布的抽象算法,而是各个厂商自行其是。
最后,通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们的相似程度,最终得到两个指纹的匹配结果。
一. 取得指纹图象
1.取象设备原理
取像设备分成两类:光学、硅晶体传感器和其他。
光学取像设备有最悠久的历史,可以追溯到20世纪70年代。依据的是光的全反射原理(FTIR)。光线照到压有指纹的玻璃表面,反射光线由CCD去获得,反射光的数量依赖于压在玻璃表面指纹的脊和谷的深度和皮肤与玻璃间的油脂。光线经玻璃设到谷后反射到CCD,而设到脊后则不反射到CCD(确切的是脊上的液体反光的)。
由于最近光学设备的革新,极大地降低了设备的体积。最近90年代中期,传感器可以装在6x3x6英寸的盒子里,在不久的将来更小的设备是3x1x1英寸。这些进展取决于多种光学技术的发展而不是FTIR的发展。例如:纤维光被用来捕捉指纹图象。纤维光束垂直射到指纹的表面,他照亮指纹并探测反射光。另一个方案是把含有一微型三棱镜矩阵的表面安装在弹性的平面上,当手指压在此表面上时,由于脊和谷的压力不同而改变了微型三棱镜的表面,这些变化通过三棱镜光的反射而反映出来。
应用晶体传感器是最近在市场上才出现的,尽管它在传奇文学作品中已经出现近20年。这些含有微型晶体的平面通过多种技术来绘制指纹图象。电容传感器通过电子度量被设计来捕捉指纹。电容设备能结合大约100,000导体金属阵列的传感器,其外面是绝缘的表面,当用户的手指放在上面时,皮肤组成了电容阵列的另一面。电容器的电容值由于金属间的距离而变化,这里指的是脊(近的)和谷(远的)之间的距离。压感式表面的顶层是具有弹性的压感介质材料,他们依照指纹的外表地形(凹凸)转化为相应的电子信号。温度感应传感器被设计为感应压在设备上的脊和远离设备的谷温度的不同。超声波扫描被认为是指纹取像技术中非常好的一类。很象光学扫描的激光,超声波扫描指纹的表面。紧接着,接收设备获取了其反射信号,测量他的范围,得到脊的深度。不象光学扫描,积累在皮肤上的脏物和油脂对超音速获得的图象影响不大,所以这样的图象是实际脊地形(凹凸)的真实反映。
由于巨大的指纹辨别市场,如果想指纹识别在商业上的巨大成功,三个因素中的两个因素是非常重要的,它们是低价格和紧凑的体积(另外一个是上面谈到的识别率)。90年代初到后期,取像设备的价格已经剧烈的下降,制造商最近又承诺,在最近几年后,又要进行大幅度降价。至于体积,上面已经提到光学传感器的体积从6x3x3英寸降到3x1x1英寸。应用晶体的传感器的体积差不多是这样或者更小。在晶片上,集成电路的技术越来越高(如:数字化电路把指纹信号转化为数字信号强度),系统体积将越来越小,晶体传感器的体积接近与手指大小所需要的体积,其长宽大约是1x1英寸高不到1英寸。在晶体传感器之前,一些没有用到的机能是局部调整、软件控制、自动获取控制(AGC)技术。对于大多数光学设备,只能通过人工调整来改变图象的质量。然而,晶体传感器提供自动调节象素,行以及局部范围的敏感程度,从而提高图象的质量。AGC在不同的环境下结合反馈的信息产生高质量的图象。例如,一个不清晰(对比度差)的图象,如干燥的指纹,能够被感觉并增强灵敏度,在捕捉的瞬间产生清晰的图象(对比度好);由于提供了局部调整的能力,图象不清晰(对比度差)的区域也能够被检测到(如:手指压得较轻的地方)并在捕捉的瞬间为这些象素提高灵敏度。
光学扫描也有自己的优势。其中之一在较大的模型可以做较大指纹取像区域。而制造较大的应用晶体传感器的指纹取像区域是非常昂贵的,所以应用晶体传感器的指纹取像区域小于1平方英寸,而光学扫描的指纹取像区域等于或大于1平方英寸。然而这个对于较小的光学扫描设备并不是优势。较小的光学扫描也是较小指纹取像区域,这是因为较大的指纹取像区域需要较长的焦点长度,所以要有较大包装,否则如果较大的取像区域使用较小的包装,则光学扫描设备会受到图象边缘线形扭曲的影响。
晶体传感器技术最重要的弱点在于,它们容易受到静电的影响,这使得晶体传感器有时会取不到图象,甚至会被损坏,另外,它们并不象玻璃一样耐磨损,从而影响了使用寿命。
总之,各种技术都具有它们各自的优势,也有各自的缺点。我们在下面给出三种主要技术的比较。
比较项目
光学全反射技术
硅晶体电容传感技术
超声波扫描
体积
大
小
中
耐 用 性
非常耐用
容易损坏
一般
成像能力
干手指差,但汗多的和稍脏的手指成像模糊
干手指好,但汗多的和稍脏的手指不能成像
非常好
耗电
较多
较少
较多
成 本
低
低
很高
图象增强
2. 图象增强
刚获得的图象有很多噪音。这主要由于平时的工作和环境引起的,比如,手指被弄脏,手指有刀伤、疤、痕、干燥、湿润或撕破等。图象增强是减弱噪音,增强脊和谷的对比度。想得到比较干净清晰的图象并不是容易的事情。为这个目标而为处理指纹图象所涉及的操作是设计一个适合、匹配的滤镜和恰当的阀值。
指纹还有一些其他的有用的信息。比如:类似于脊的“多余的部分”,即使一些特别的脊不连续,但仍可认为是脊的一部分,从而决定他的走向。我们可以利用这些“多余的信息”。
有很多图象增强的方法。大多数是通过过滤图象与脊局部方向相匹配。图象首先分成几个小区域(窗口),并在每个区域上计算出脊的局部方向来决定方向图。可以由空间域处理,或经过快速2维傅立叶变换后的频域处理来得到每个小窗口上的局部方向。
设计合适的,相匹配的滤镜,使之实用于图象上所有的象素(空间场是其中的一个)。依据每个象素处脊的局部走向,滤镜应增强在同一方向脊的走向,并且在同一位置,减弱任何不同于脊的方向。后者含有横跨脊的噪音,所以其垂直于脊的局部方向上的那些不正确的“桥”会被滤镜过滤掉。所以,合适的、匹配的滤镜可以恰到好处地确定脊局部走向的自身的方向,它应该增强或匹配脊而不是噪音。
图象增强,噪音减弱后,我们准备开始选取一些脊。虽然,在原始灰阶图象中,其强度是不同的而按一定的梯度分布,但它们真实的信息被简单化为二元:脊及其相对的背景。二元操作使一个灰阶图象变成二元图象,图象在强度层次上从原始的256色(8-bits)降为2色(1-bits)。图象二元化后,随后的处理就会比较容易。
二元化的困难在于,并不是所有的指纹图象有相同的阀值,所以一般不采取从单纯的强度入手,而且单一的图象的对照物是变化的,比如,手在中心地带按的比较紧。因此一个叫“局部自适应的阀值(locally adaptive thresholding)”的方法被用来决定局部图象强度的阀值。
在节点提取之前的最后一道工序是“细化(thinning)”。细化是将脊的宽度降为单个象素的宽度。一个好的细化方法是保持原有脊的连续性,降低由于人为因素所造成的影响。人为因素主要是毛刺,带有非常短的分支而被误认为是分叉。认识到合法的和不合法的节点后,在特征提取阶段排除这些节点。