教育招生考试中指纹识别身份认证系统的设计和实现

减小字体 增大字体 作者:徐 飞  来源:www.zhonghualunwen.com  发布时间:2009-08-16 14:46:19

关键词:指纹识别技术;考试管理

摘要:针对现今各类教育考试中替考等作弊问题,提出将指纹识别技术应用到考试管理上,利用考生的指纹特征值来判别其真实身份,设计出基于指纹采集与校验的考试管理系统体系结构,并解决在研究的过程中所遇到的关键问题,最后对整个系统进行了实验研究,验证了该系统的可行性。

1 引言
  
  在如今各类教育考试中,随着高科技手段的发展,身份伪造的技术也愈加先进,替考也越来越成为考生作弊的一种常用手段。鉴别考生身份的真实性,也成为了当前考试管理工作一大难点。目前,大多数地区对各类考试的考生的的管理还较落后,大多采用塑料卡片或纸片上印上考生姓名、照片等信息,由人工比对确定是否准予进入指定考场,其优点是直接成本低,但也具有容易伪造、复制等不可克服的缺点。本系统通过指纹识别技术,在考生报名时采集指纹特征存入数据库,在考生进入考场时校验考生的指纹特征,从而达到鉴别考生身份的真实性。
  
  2 指纹识别技术介绍
  
  指纹识别技术是生物识别技术的一种,生物识别技术是通过人体的生物特征包括指纹、声音、脸孔、视网膜、掌纹、骨架等等来进行身份验证的一种解决方案。它是通过获取这些生物特征,并将之转换为数字信息,存储于计算机中,利用可靠的匹配算法来完成验证与识别个人身份的过程。
  指纹识别技术主要涉及四个功能:读取指纹图象、提取特征、保存数据和比对。在一开始,通过指纹读取设备读取到人体指纹的图象,取到指纹图象之后,要对原始图象进行初步的处理,使之更清晰。 接下来,指纹辨识软件建立指纹的数字表示——特征数据,一种单方向的转换,可以从指纹转换成特征数据但不能从特征数据转换成为指纹,而两枚不同的指纹不会产生相同的特征数据。软件从指纹上找到被称为“节点”的数据点,也就是那些指纹纹路的分叉、终止或打圈处的坐标位置,这些点同时具有七种以上的唯一性特征。因为通常手指上平均具有70个节点,所以这种方法会产生大约490个数据。有的算法把节点和方向信息组合产生了更多的数据,这些方向信息表明了各个节点之间的关系,也有的算法还处理整幅指纹图像。总之,这些数据,通常称为模板,保存为1K大小的记录。最后,通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们的相似程度,最终得到两个指纹的匹配结果。
  
  3 系统设计
  
  通过对需求的分析,本系统大致可以分为四个模块,系统管理子模块、采集子模块、校验子模块和统计打印子模块。系统的结果如图1所示。
  系统管理子模块主要包含了用户管理、权限管理、数据备份和数据恢复等功能。
  采集子模块主要包含了考生信息采集和考生指纹采集功能。考生信息采集方式为考生填涂报名信息卡,通过OMR设备采集至数据库。指纹采集主要在考生报名后通过指纹采集设备,根据考生的报名信息准确的将考生左、右手食指的指纹特征采集至数据库。指纹采集流程图如图2所示。
  校验子模块包含了考生信息查询和考生指纹校验功能。考生信息查询功能实现了可以对考生报名信息和指纹采集信息进行查询。考生指纹校验是在考生进入考场前,通过指纹采集设备,实现了和报名时采集的考生指纹特征进行比对校验。指纹校验流程图如图3所示。
  统计打印子模块包含了考生准考证打印和考生报名信息统计功能。
  
  4 系统实现
  
  通过对系统的软件需求、软件规模和要求实现的功能分析,考虑到系统构架要灵活实用,单机版、网络版完全兼容, 便于短时间密集采集数据, 要降低系统实施的复杂性和使用者的劳动强度。且由于经费投入的问题系统要有较低的硬件要求, 整个系统采用Client/Server( 客户/服务器) 工作模式, 以Mysql3.23.53 为后台数据库,Delphi7为前端开发工具。而前、后台连接的中间件为BDE 与Mysql 专用数据接口。
  4.1 关键问题和解决方案
  指纹识别和校验最主要的问题是拒真率和认假率,拒真率(False Reject Rate,简称FRR):其含义是对于正式使用者的排他率。认假率(False Accept Rate,简称FAR):其含义是对于非正式使用者的认证率。本系统采用某公司先进产品,其拒真率<0.02%,认假率<0.0003%。拒真率(FRR) 其它性能指标为:分辨率500dpi,指纹扫描时间0.1 s,指纹接受角度±30°,工作方式1:1 和1:N,传感器有效面积18.2mm×12.8mm,通信接口USB。本系统通过该产品提供的SDK包,调用其DLL文件实现对考生的指纹的采集和校验。
  4.2 指纹采集程序实现
  首先定义函数function Tformzwcj.Calibrate(Image: Integer): Boolean;
  begin
  if YA202.TestImageQuality(Image) = 2 {Y_SENSOR_NEED_CALIBRATION} then begin
  Inc(__CalibrateCount);
  if __CalibrateCount = 3 then
  begin
  Msg1('设备校验中 ...', clBlack);
  YA202.CalibrateSensor
  end;
  if __CalibrateCount = 15 then __CalibrateCount := 0;

[1] [2] [3]  下一页

Tags:

作者:徐 飞
  • 好的评价 如果您觉得此文章好,就请您
      0%(0)
  • 差的评价 如果您觉得此文章差,就请您
      0%(0)

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论