基于Linux的考勤系统的设计与实现

2017-10-21 13:15王震峡孙琦
电脑知识与技术 2017年18期
关键词:嵌入式系统指纹识别

王震峡 孙琦

摘要:随着互联网技术和嵌入式技术的快速发展,各部门的考勤系统也随着有了新的转变,传统的考勤方法如打卡、人工签到和人工统计等方法,不但浪费时间和人力,还存在容易被忘记、被代替等缺点,使得公司的管理一度出现混乱,因此,管理人员将视线放到了生物识别技术的领域。近年来,生物识别技术发展地非常迅速,指纹识别技术凭借着唯一性高、永久性高、易采集等特点,成为其中应用最广泛的一员。基于Linux的考勤系统具有专用型强、可靠性高、体积小和成本低等特点,因此,将指纹识别技术与嵌入式系统结合起来实现了基于Linux的考勤系统,方便管理人员管理员工的出勤和年终考核等情况。

关键词:考勤系统;Linux;嵌入式系统;指纹识别

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)18-0081-02

传统的考勤方法由于存在容易被忘记、被代替等缺点,让公司的管理人员无法真正了解到员工的出勤状况,有很多时候,尤其是在年终考核的时候,会存在很多不公平的因素,影响到了其他员工的工作状态和工作的积极性,不利于公司的长期稳定发展。正因为传统的考勤方法存在诸多缺陷,所以急需一种能够唯一识别身份、成本比较低并且操作简单的考勤方法。

经过多年的科学研究,科学家已经确定每个人的指纹都是不一样的,在母体当中就已经形成,而且只要手指不被伤害,那么每个人的指纹一生都不会有所改变。正因为指纹具有这样独一无二的特征,所以用指纹来进行身份识别(即公司考勤)是十分方便可靠的,并且不会存在别人替签到的情形。嵌入式系统定义为,以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。由于嵌入式系统的具有专用性强、体积小、可移植性高、可靠性高等优点,指纹又具有唯一性和终身不会改变等特性,本文主要采用了指纹识别技术和嵌入式技术相结合来实现基于Linux的考勤系统,让公司的考勤管理变得更加透明、方便和快捷。

1整体考勤系统的设计与实现

1.1考勤系统算法的设计与实现

本文在研究了指纹识别技术算法的基础之上进行了改进,让相关算法能够更好的来完成每个员工的指纹识别并存储到相应的存储位置,以供管理人员的统计和管理。

新员工到公司的第一天就是先采集指纹信息,用于以后的上班签到,本考勤系统采用的算法和指纹识别模块要求员工第一次采集时对同一枚指纹需要采集3次,也可以同时采集两枚以上的指纹;然后将采集到的指纹存入指紋库,第一次采集之后就可以进行考勤了。该考勤系统的算法首先对员工录入的指纹进行图像预处理,图像预处理包括员工指纹图像的均衡化(增大指纹灰度图像的对比度)、归一化(让图像的灰度更加接近期望值,即更加清晰标准)、分割(减少由于油污等原因造成的噪声)、增强(进一步减少噪声)、二值化(将指纹图形仅用0和255这两个值表示,会减少存储空间,加快处理速度)和细化(将指纹图像的变成宽度只有一个像素的图像,让整个指纹图像的结构更加清晰);其次对员工的指纹信息进行特征提取,最后与指纹库中已经存在的指纹的指纹特征进行匹配,给出对应的匹配结果。

1.2考勤系统硬件的设计与实现

基于Linux的考勤系统的硬件部分的设计以Linux为操作系统的嵌入式平台,选取了基于ARM7的S3C2410开发板,并结合FPS200指纹识别模块,最终构成了基于Linux的考勤系统。

该考勤系统的硬件设计部分主要包括:目标板(S3C2410开发板)与PC机的通信以及指纹识别模块FPS200与目标板之间的通信等。指纹识别模块UP-FingerPrint(指纹传感器为FPC1011)通过168Pin扩展插槽与S3C2410进行通信;LCD液晶显示器用来显示用户界面,实现友好的人机交互界面;S3C2410开发板通过串口与超级终端相连接,S3C2410与PC机之间的通信是通过网口进行的。该考勤系统的人机交互界面采用的是LCD液晶显示器来显示相应的操作信息和一些提示等信息,具体使用的是QT提供的图形用户界面编辑工具QT/Embedded进行设计和实现的,旨在让员工体会到更加直观、美观和简单的操作流程,让本考勤系统使用更加广泛和方便。该系统的总体硬件设计如图1所示。

该考勤系统的指纹识别模块的存储容量比较大,足够一般的公司考勤使用,如果还需要更大容量的存储,还可以通过SD卡进行扩展。该考勤系统可以在1秒以内与指纹库中的已经存在的指纹特征进行指纹比对,速度非常快,比较耐用,而且识别结果的准确性非常高。该模块还支持1:1(用于验证某位特定用户的身份身份)和1:N(用于企业考勤识别身份)两种比对模式,可以跟多种指纹传感器芯片匹配,开发者还可以随时编写应用程序,大大降低了开发成本。在日常生活中,指纹识别模块已经被广泛使用,如门禁系统、指纹保险柜和指纹遥控器等,可适用于大部分公司。

本考勤系统的指纹识别模块的传感器的结构采是线形传感器,该传感器的体积比较小,携带方便,但是如果录入指纹速度过快会对识别结果造成影响,所以就需要要求员工操作的时候要注意录人的速度,适用性不强,而且浪费时间。针对于这种情况,在设计的时候采用了3次输入的方法对指纹进行采集,这样最终的指纹特征能够更加明显,更加有利于指纹信息的匹配,提高了指纹的匹配率。

1.3考勤系统软件的设计与实现

本考勤系统的软件设计主要包括:用户注册、用户匹配和删除指纹3部分。用户注册主要是在员工第一次报到时要录入指纹信息,并将录入的指纹信息进行特征提取,然后保存在指纹识别模块的存储区当中,用作后续的用户匹配的信息库;用户匹配也叫做指纹匹配,就是将录入的指纹特征与指纹库中存储的指纹特征进行匹配,然后输出对应的匹配结果,如果是本人的指纹,那么就会相应的给出反馈信息,如果不是本人或者是不存在的指纹,那么就会提示重新输入指纹;删除指纹包括删除指定员工指纹信息与删除所有指纹信息两个功能,如果有哪位员工离职,那么管理人员就可以删除这位员工对应的指纹信息,这样一方面有利于管理,另一方面节省了指纹模块的存储空间,而且如果删除成功则在LCD液晶显示器上显示成功,否则显示失败,让管理人员可以很直观地看到结果。

2系统测试

为了测试本考勤系统的整体功能以及稳定性,本考勤系统共采集了1000枚学生的指纹作为测试依据,共匹配了200次,其中,正确匹配的次数为998次,错误的次数为2次,由计算可得,正确率为99.8%,错误率为0.2%,可见准确率非常高。经过分析,由于指纹识别模块的传感器是线形的,虽然在算法方面已经采取了措施,但由于录入指纹的速度过快还是对指纹识别的结果造成了影响。在测试的过程中,整个考勤系统运行稳定,用户交互界面美观大方,总体来看,该系统的实用性还是得到了肯定。

3总结

本考勤系统将嵌入式Linux操作系统和自动指纹识别算法结合起来,从分析管理人员的考勤需求到最后的设计与实现,本人不但阅读了大量文献,还结合了之前的研究成果,最终设计并实现了基于Linux的考勤系统。该系统能够很好地解决传统考勤方法存在的弊端,让企业考勤变得更加透明、方便和简单。

由于本考勤系统采用的传感器是线形传感器,它的体积比常用的面形传感器的面积小得多,不但可以适用于普通的企业定点安装式考勤,还能够用于智能手机、平板电脑等体积较小的便携式嵌入式产品中,使产品的携带变得更加方便和轻快。当然,针对线形传感器的缺点,本考勤系统采用了三次输入指纹的方法来解决这个问题,在一定程度上提高了指纹的匹配率。

猜你喜欢
嵌入式系统指纹识别
基于单片机指纹识别电子寄存柜设计
指纹识别技术综述
嵌入式系统课程“中断、异常与事件”教学实践及启示
面向实践创新人才培养的嵌入式系统教学研究
基于大容量指纹识别的实时身份认证系统
基于线阵CCD的指纹识别实验