指纹识别指导_第1页
指纹识别指导_第2页
指纹识别指导_第3页
指纹识别指导_第4页
指纹识别指导_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、指纹开发包函数说明Polymath USB Fingerprint SDK Version 3.1 Polymath Technology Development Co., Ltd 宝利铭科技发展有限公司地址:厦门软件园二期57号902单元 电话:592-5310833、5310273传真:592-5310259网址:电邮:managerDocument version 1.0 Copyright 2007 Polymath Corporation. All right reserved.一、概述本开发包以动态连接库(DLL)的方式提供,SDK光盘配备以下项目: Dll 库文件。您的应用程序必

2、须把这些库文件包含在应用程序目录中。 Driver USB指纹采集仪驱动文件。 Samples 演示代码,包括 VC+,VB。在您运行演示程序之前,请务必先连接好USB指纹仪及安装其驱动程序。本演示涉及到文件操作,请将程序从光盘中拷贝到硬盘上再运行。以下将以VC+ 函数声明方式说明方法,关于VB的函数具体声明应用请参考VB Sample程序,关于其他编程语言请依据具体程序语言如何调用动态连接库进行应用。二、函数说明 2.1 错误码表常量值说明RUN_SUCCESS0成功ERR_FAILED_INIT1初始化失败ERR_FAILED_CALLDB2数据库操作失败ERR_MISTAKE_PARAM

3、3参数错误ERR_FAILED_FUNCTION4方法执行失败ERR_OVERFLOW_MEMORY5内存溢出ERR_OVERFLOW_TIME6超时ERR_VERIFICATION_FAILED7验证失败ERR_UNKOWN_ERROR8未知错误ERR_ABSENCE_DEVICE9没有设备 2.2 常量值表 常量值说明DEVTYPE_7621641762164设备类型MAX_FP_WIDTH512指纹图象宽度MAX_FP_HEIGHT512指纹图象高度DEF_EXT_MINSIZE1024指纹特征值大小DEF_REG_MINSIZE1024指纹特征值大小2.3 结构 typedef str

4、uct tagFPMINDBINFO DWORDfmdIndex; / 用户ID DWORDfmdValid; / 指纹是否有效,有效值为1 BYTEfmdDataDEF_REG_MINSIZE; / 登记的指纹特征值 FPMINDBINFO , FAR *LPFPMINDBINFO, *PFPMINDBINFO;指纹特征值库结构。此结构为 FPMIndentify 方法所用。2.4 函数说明2.4.1 DWORD FPMInit(DWORD deviceType)功能:初始化设备参数:deviceType 设备类型,取值 1(或用常量 DEVTYPE_762164) 返回:成功返回 0 (R

5、UN_SUCCESS)备注:应用程序启动后必须先调用此方法才能进行后续方法使用。2.4.2 DWORD FPMExit()功能:关闭设备参数:无 返回:成功返回 0 (RUN_SUCCESS)备注:应用程序退出之前必须先调用此方法关闭设备。2.4.3 DWORD FPMGetBrightness(BYTE* val)功能:获得亮度值参数:val 亮度的返回值,值范围 0 255返回:成功返回 0 (RUN_SUCCESS)备注:2.4.4 DWORD FPMGetContrast(BYTE* val)功能:获得对比度值参数:val 对比度的返回值,值范围 0 255返回:成功返回 0 (RUN

6、_SUCCESS)备注:2.4.5 DWORD FPMSetBrightness(BYTE val)功能:设置亮度参数:val 亮度值,值范围 0 255返回:成功返回 0 (RUN_SUCCESS)备注:亮度值建议设置在180 255,推荐255 。2.4.6 DWORD FPMSetContrast(BYTE val)功能:设置对比度参数:val 对比值,值范围 0 255返回:成功返回 0 (RUN_SUCCESS)备注:对比度值建议设置在 200 以上,推荐255 。2.4.7 DWORD FPMGetLiveImage(BYTE *imgBuff, DWORD time, HWND

7、dispWnd, DWORD quality)功能:采集指纹图象参数:imgBuff 返回指纹图象的缓冲区,大小为 512 * 512 字节; time 采集超时时间,单位秒,建议 5 10 。 dispWnd 要显示指纹图象的window句柄,一般使用图片框,也可Panel等。 quality 指纹图象质量要求,取值 0 255,建议50 75 ,推荐 65 或 70 。 取值太低将会使采集的图象不完整便返回,不足以提取有效的指纹特征。取值太高(超过80)将无法采集到确切的指纹图象。返回:成功返回 0 (RUN_SUCCESS)备注:提取指纹特征值之前,必须先采集指纹图象。2.4.8 DWO

8、RD FPMGetMinutiae(BYTE *imgBuff, BYTE *min)功能:从指纹图象中提取指纹特征值参数:imgBuff 指纹图象的缓冲区(通过FPMGetLiveImage返回的imgBuff); min 指纹特征值,大小为 1024 字节 。返回:成功返回 0 (RUN_SUCCESS)备注:提取指纹特征值,以便进行指纹注册、比对。2.4.9 DWORD FPMMatchForRegister(BYTE *min1, BYTE *min2, BYTE *min3, BYTE *regMin,DWORD secuLevel)功能:注册指纹参数:min1 第一次采集的指纹特征

9、值(通过FPMGetMinutiae获得); min2 第二次采集的指纹特征值; min3 第三次采集的指纹特征值; regMin 输出的注册成功的指纹特征值,大小为 1024 字节; secuLevel 安全等级,取值 1 9 ,推荐 3 。返回:成功返回 0 (RUN_SUCCESS)备注:注册登记指纹时,每枚手指要采集3次,经过3次采集后的min,调用此方法进行注册验证,如 果3次采集的指纹不匹配,则登记失败,如能匹配,则登记成功,将把最终的特征值返回在regMin中,大小是1024。请保存该regMin到文件或数据库中,或其他您自定义的存储方式,以备以后进行指纹比对。存储时,务必将该特

10、征值与用户ID号绑定在一起,例如如以文件方式保存,则可用用户ID做文件名。存储在数据库中时,可以将指纹特征值转换为文本形式。每次指纹采集时,请先移开手指,再按下,这样有利于采集到同一枚指纹更多的特征面。2.4.10 DWORD FPMVerification(BYTE *inMin, BYTE *regMin, DWORD secuLevel)功能:验证指纹 参数:inMin 要验证的指纹特征值; regMin 已登记的指纹特征值; secuLevel 安全等级,推荐值 3 。 返回:成功返回 0 (RUN_SUCCESS)备注:该方法也称 1:1 比对方式。 先根据用户ID,提取用户已登记的

11、指纹特征值 regMin;调用 FPMGetLiveImage 和 FPMGetMinutiae 获得当前要比对的用户的指纹特征值 inMin;然后使用该方法进行比对,如返回成功,则说明当前用户就是该ID的用户。1:1比对方式快捷、安全度高,但不能自动识别出用户,需要用户输入ID,类似于传统的密码验证方式,由用户ID获取密码段,与当前的输入密码进行比对以确定用户是否正确。2.4.11 DWORD FPMIdentify(BYTE *inMin, BYTE *regMinArray, DWORD regMinCount, DWORD *matchedIndex, DWORD secuLevel)

12、功能:识别指纹 参数:inMin 要识别的指纹特征值; regMinArray 已登记的指纹特征值库,FPMINDBINFO结构数组(参见2.3); regMinCount 指纹特征值库中的指纹特征值总数。 matchedIndex 匹配到的用户编号(fmdIndex)。 secuLevel 安全等级,推荐值 3 。 返回:成功返回 0 (RUN_SUCCESS)备注:该方法也称 1:N 比对方式。程序应先将所有指纹特征值(包括用户ID)组织到FPMINDBINFO结构数组中,将当前要比对的用户的指纹特征值 inMin使用该方法进行比对,如返回成功,则在matchedIndex中返回用户ID。

13、1:N比对方式也可以考虑使用1:1方式代替,即使用1:1方式逐一验证用户。建议使用1:1方式代替1:N。2.4.12 DWORD FPMSaveLiveImageAsBMP(BYTE *imgBuff, LPCSTR filename)功能:保存指纹图象为BMP文件参数:imgBuff 指纹图象的缓冲区(通过FPMGetLiveImage返回的imgBuff); filename 要保存的文件位置与名称。返回:成功返回 0 (RUN_SUCCESS)备注: 2.4.13 DWORD FPMSaveLiveImageAsJPG(BYTE *imgBuff, LPCSTR filename)功能:

14、保存指纹图象为JPG文件参数:imgBuff 指纹图象的缓冲区(通过FPMGetLiveImage返回的imgBuff); filename 要保存的文件位置与名称。返回:成功返回 0 (RUN_SUCCESS)备注:以下部分为使用内置指纹数据库的相关方法2.4.14 DWORD FPMSetDBPath(LPCSTR dbPath)功能:设置指纹数据库存储位置参数:dbPath 要存储数据库的路径;返回:成功返回 0 (RUN_SUCCESS)备注:要使用内置指纹数据库的其他相关方法,必须先调用此方法。2.4.15 DWORD FPMSetDataToDB(DWORD id, BYTE *r

15、egMin)功能:将登记的指纹特征值添加到内置数据库参数:id 用户编号; regMin 登记的指纹特征值;返回:成功返回 0 (RUN_SUCCESS)备注:如果数据库中已存在与该指纹特征值匹配的指纹,将返回失败。数据库中不允许出现串指的情况。此种情况下一般要求用户换用另外的手指登记。2.4.16 DWORD FPMGetDataFromDB(DWORD id, BYTE *regMin)功能:从内置数据库中提取指纹特征值参数:id 要提取指纹特征值的用户编号; regMin 返回的指纹特征值;返回:成功返回 0 (RUN_SUCCESS)备注: 2.4.17 DWORD FPMDelete

16、DataInDB(DWORD id)功能:从内置数据库中删除指纹特征值数据参数:id 要删除的用户编号;返回:成功返回 0 (RUN_SUCCESS)备注: 2.4.18 DWORD FPMClearDB()功能:清空数据库 参数:返回:成功返回 0 (RUN_SUCCESS)备注:2.4.19 DWORD FPMDBVerification(DWORD id, BYTE *inMin, DWORD secuLevel)功能:在内置数据库中验证指纹参数:id 要验证的用户编号; inMin 要验证的用户的指纹特征值; secuLevel 比对安全等级,建议 3 。返回:成功返回 0 (RUN_

17、SUCCESS)备注:2.4.20 DWORD FPMDBIdentify(DWORD *id, BYTE *inMin, DWORD secuLevel)功能:从内置数据库中识别指纹参数:id 返回匹配的用户编号; inMin 要识别的用户指纹特征值; secuLevel 比对安全等级,建议 3 。返回:成功返回 0 (RUN_SUCCESS)备注:该方法免除了用户自己组织指纹特征值数组,是比较方便的应用方式。三、通用指纹处理流程3.1 初始化及关闭流程应用前初始化设备 FPMInit如果使用内置数据库方式,则需设置数据库路径 FPMSetDBPath结束程序时关闭设备 FPMExit3.2 登记指纹流程输入用户ID* 采集3次采集指纹图象 FPMGetLiveImage提取指纹特征值 FPMGetMinutiae保存用户ID和注册的指纹特征值( 如果采用内置数据库方式,用FPMSetDataToDB )注册指纹 FPMMatchForRegister 保存用户ID和注册的指纹特征值,既可以使用用户自定义的存储方式(如保存到二进制文件或用户自定义的数据库),也可以使用本开发包提供的内置数据库存储方法(参见2.4.14 2.4.20 部分)。3.2 1:1比对方式流程输入用户

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论