资源描述:
《指纹识别系统设计报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、程序设计实习报告设计名称:指纹识别系统程序设计姓名:WYP班级:软件08T指导老师:XXX设计学时:6周设计时间:2010年"月15日至2010年12月26日目录课程实习准备工作2程序实习项目及目的2一、项目2二、目的2程序设计内容2一、目标2二、功能3三、功能实现的基本思路3指纹识别系统的代码实现4结论11致谢12>课程实习准备工作1、确定课程设计题目,明确设计内容。2、根据课程设计内容,查找有关编程资料。3、根据设计内容的编程特点,准备实验环境和开发工具、文档书写工具。>程序实习项目及目的一.项目课题为:《指纹识
2、别系统》二、目的当代社会,身份鉴别越来越重要,传统的身份鉴别方法(如身份证、信用卡、口令、密码等)可能会丢失、被盗或忘记。同时,传统的身份鉴别手段与用户并不惟一绑定,一旦他人获得,将拥有和失主同样的权力。而指纹特征是人所固有的生理特征,具有惟一性和终生不变性的特点。因此指纹认证在身份认证和身份识别中成为重要的手段。>程序设计內容一、目标本指纹识别系统主要是对用户指纹进行提取将采集的指纹模板数据写入数据库,将实时采集的指纹图像作为指纹样板和数据库中的指纹模板逐一对,从而确认指纹样板身份。二、功能指纹识别系统是一个典型的
3、模式识别系统,包括指纹图像获取、处理、特征提取和比对等模块。指纹图像获取:通过专门的指纹采集仪可以采集活体指纹图像。目前,指纹采集仪主要有活体光学式、电容式和压感式。对于分辨率和采集面积等技术指标,公安行业已经形成了国际和国内标准,但其他还缺少统一标准。根据采集指纹面积大体可以分为滚动捺印指纹和平面捺印指纹,公安行业普遍采用滚动捺印指纹。另外,也可以通过扫描仪、数字相机等获取指纹图像。指纹图像压缩:大容量的指纹数据库必须经过压缩后存储,以减少存储空间。指纹图像处理:包括指纹区域检测、图像质量判断、方向图和频率估计、图
4、像增强、指纹图像细化等。本系统主要功能包括指纹采集、指纹识别、人员认证、人员登记。三.功能实现的基本思路(1)模块化设计模块化是面向对象编程中的一个特征。把特定应用设计为一个模块,并从属性和方法两方面设计成为一个类模块。把类模块设置在不同的名字空间就可以用这类相同的类对应不同的应用。即使添加一个同样的类也不会影响不同名字空间的其他同类成员。(2)可扩充设计面向对象编程从本质上支持可扩充性。在不影响或极少影响已有代码的情况下,添加加一种功能。它的好处是新加代码无需大量发动已有代码。(3)封装设计由于功能被封装在类中,且
5、类是作为一个独立实体而存在的,因此只要提供该类库,用户就可在无需知道该方法类详细实现的细节情况下,调用该功能,以达到重用代码的目的。>指纹识别系统的代码实现一、主要窗体的布局设计二、主窗体功能的代码实现voidLiveMatch::OnButtonCreate()〃创建指纹数据库{CFileDialogdlg(TRUE,”txf',”.txt“,OFN_HIDEREADONLYOFN_OVERWRITEPROMPT,HText(*.txt)
6、*.TXT
7、「);if(dlg.DoModal()!=IDOK)return
8、;DatabasePath=dlg.GetPathName();FPA_CreateDatabase(DatabasePath,IndexList,&ListSize);}voidLiveMatch::OnButtonSave()〃保存指纹数据库{//TODO:AddyourcontrolnotificationhandlercodehereFPA_SaveDatabase(DatabasePath,IndexList,ListSize);}voidLiveMatch::OnButtonLoad()〃导入指纹数据库{
9、CFileDialogdlg(TRUE,”txt“,”.txt”,OFN_HIDEREADONLYOFN_OVERWRITEPROMPT,nText(*.txt)
10、*.TXT
11、r,);if(dlg.DoModal()!=IDOK)return;DatabasePath=dlg.GetPathName();FPA_LoadDatabase(DatabasePath,IndexList,&ListSize);CStringmsg;msg.Format("NumberofRecord:%d",ListSize);AfxMe
12、ssageBox(msg);}voidLiveMatch::OnButtonAdd()〃保存指纹数据库{//TODO:AddyourcontrolnotificationhandlercodehereCStringFolderName=DatabasePath;intt=FolderName.ReverseFind('W');FolderNam