• 246.77 KB
  • 2022-04-22 13:46:10 发布

GAT626.2-2006活体指纹图像采集、拼接应用程序接口规范第2部分:图像拼接应用程序接口规范.pdf

  • 9页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'ICS35.240.99A90中华人民共和国公共安全行业标准GA/T626.2一2006活体指纹图像采集、拼接应用程序接口规范第2部分:图像拼接应用程序接口规范TheaPPlicationPrograminterface(API)standardforliveflngerPrintscaningandimagemosaicing-PartZ:TheAPlforlivefingerPrintimagem朋alclng2006一07一18发布2006一08一01实施中华人民共和国公安部发布 GA/T6262一2006前言GA/T626一2o06《活体指纹图像采集、拼接应用程序接口规范》分为两个部分:—第1部分:采集设备应用程序接口规范;—第2部分:图像拼接应用程序接口规范。本部分为GA/T626的第2部分。本部分由公安部刑事侦查局提出。本部分由公安部计算机与信息处理标准化技术委员会归口。本部分负责起草单位:公安部刑事侦查局。本部分参加起草单位:北京市刑事科学技术研究所、北京东方金指科技有限公司、北京海鑫科金信息技术有限公司。本部分主要起草人:杨振刚、王瑛玮、许春光、张志华。本部分委托公安部刑事侦查局负责解释。 GA/T626.2一2006活体指纹图像采集、拼接应用程序接口规范第2部分:图像拼接应用程序接口规范范围本部分规定了活体指纹图像拼接应用程序接口(API)规范。本部分适用于活体指纹图像的拼接。2规范性引用文件下列文件中的条款通过GA/T626的本部分的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。GB2312信息交换用汉字编码字符集基本集GB18O3。信息技术信息交换用汉字编码字符集基本集的扩充GA425.4指纹自动识别系统基础技术规范第4部分:指纹自动识别系统产品代码编制规则3木语和定义下列术语和定义适用于本部分。31指纹图像拼接ringerprintima罗妙aicing将采集设备返回的一系列单帧指纹图像拼接成一幅完整的活体指纹图像。4接口模型本接口与采集设备(或者指纹采集仪)、图像采集接口、应用程序的关系如图1所示。黑色方框的内容代表本接口。应用程序圈像拼接接口圈橄采集接口活体指纹采集仪图15图像拼接接口5.1初始化拼接动态库函数原型:intstdcallMOSAIC_Init(); GA/T626.2一2006参数:无。返回值:调用成功,返回1。<。返回错误代码。调用MOSAIC_GetErrlnf。函数获取错误信息。错误代码值符合5.19的要求。以下所有函数关于错误代码及错误信息的描述与此类似。说明:拼接系统初始化函数,为拼接接口规范中需要第一个被调用的函数。只需要调用一次。但是允许重复调用,其结果与多次调用相同5.2释放拼接动态库函数原型:int_stdcallMOSAIC-Close();参数:无。返回值:调用成功,返回1。<。返回错误代码。说明:释放拼接动态库。调用完毕之后,除下列函数之外的其他函数不可以再调用:MOSAIC-GetVersion、MOSAIC_GetDesc、MOSAIC_GetErrlnfo。5.3拼接接口是否提供判断图像为指纹的函数函数原型:int_stdcallMOSAIC_IssupportldentifyFinger();参数:无。返回值:若支持判断图像是否为指纹,则返回1,否则返回。。<。返回错误代码。说明:判断接口规范中是否实现了判断图像是否为指纹的函数。5.4拼接接口是否提供判断图像质t的函数函数原型:int_stdcallMOSAIC_IssupportlmageQuality();参数:无。返回值:若支持判断图像质量则返回1,否则返回。<。返回错误代码。说明:判断接口规范中是否实现了判断图像质量的函数。5.5拼接接口是否提供判断指纹质t的函数函数原型:;nt_stdcallMOSAIC-lsSupportF1ngerQua1ity();参数:无。返回值:若支持判断指纹图像质量,则返回1,否则返回。。<。返回错误代码。说明:判断接口规范中是否实现了判断指纹图像质量的函数。5.6接口是否提供拼接指纹的图像增强功能函数原型:int_stdcallMOSAIC_IssupportlmageEnhance();参数:无。返回值:若支持图像增强功能,则返回1,否则返回。。<0返回错误代码。说明:判断接口规范中是否实现了图像质量增强的函数。5.7判断是否支持滚动采集函数函数原型:stdcallMOSAIC_IssupportRollCap();参数:返回值:不支持滚动采集返回。,只支持左右滚动采集则返回1,只支持上下滚动采集则返回2,若同时支持左右滚动和上下滚动采集则返回3。 GA/T626.2一2006<。返回错误代码。说明:判断接口所支持的图像拼接的方式。5.8选择拼接方式的函数函数原型:intstdcallMOSAIC-SetRollMode(intnRollMode);参数:intnRollMode采集方式:。一平面采集;1一左右滚动采集;2一上下滚动采集;3一左右滚动和上下滚动采集。输人参数。返回值:成功返回修改前的采集方式设置值。<0返回错误代码。说明:选择拼接方式。应支持方式0、1、2。方式3为选择性支持。5.9初始化拼接过程函数原型:int_stdcallMOSAIC_Start(unsignedchar关pFingerBuf,intnwidth,intnHeight);参数unsigned。har,pFingerBuf,指向拼接数据内存块,在外部分配,其大小为nwidth沐nHeight。输人参数/输出参数。intnwidth拼接后的图像宽度,应该与采集图像的宽度相同。输人参数intnHeight拼接后的图像高度,应该与采集图像的高度相同。输人参数返回值:调用成功,返回1。<。返回错误代码。说明初始化图像拼接。调用者程序与拼接过程共享拼接结果数据内存,这样当调用者调用MOSAIC_DoMosai。函数完成一帧图像的拼接后,可以实时刷新屏幕显示,给用户展示实时拼接的过程,起到一个计算机与用户之间的互动作用。直到调用MOSAIc_stop,pFingerBuf的内容都不应被外部程序修改。5.10拼接过程函数原型int_stdcallMOSAIC-DoMosaic(unsignedchar釜pDataBuf,intnwidth,intnHeight);参数unsigned。har,pDataBuf指向采集数据的内存块,其大小为nWldth又nHeight。输人参数。intnw记th采集图像的宽度,应该与拼接后的图像宽度相同。输人参数。intnHeight采集图像的高度,应该与拼接后的图像高度相同输人参数。返回值调用成功,返回1,若返回。,则表示pDataBuf含有的数据非指纹,此次拼接无效,拼接数据还保持上一帧图像的拼接结果。若返回。,应停止拼接,认为拼接结束。<0返回错误代码。说明进行图像拼接。函数参数中的长度、宽度应与调用MOsAIc一start时候的长度、宽度相同,否则出错。函数返回之后pDataBuf指向的数据可以被释放。5.1结束拼接函数原型:int_stdcallMOSAI几Stop();参数:无返回值:调用成功,返回1。<。返回错误代码说明:结束拼接。可以释放分配的内存等后续操作。5.12判断图像质t函数原型int_stdcallMOSAIC_ImageQuality(unsignedchar登pDataBuf,intnwidth, GA/T626.2一2006intnHeight);参数:uns履gnedchar赞pDataBuf指向存放采集数据的内存块。输人参数。intnwidth图像的宽度。输人参数。intnHeight图像的高度。输人参数返回值:调用成功,返回图像质量,质量在10,1。。】之间,其中数值越大质量越好<0返回错误代码。说明判断图像质量。从图像学的角度去判断,例如对比度、亮度、灰度分布是否满足一定要求。具体准则由具体实现确定。513判断指纹质t函数原型:int_stdcallMOsAIC_FingerQuality(unsignedchar登pDataBuf,intnwidth,intnHeight);参数unsignedchar‘pDataBuf指向存放采集数据的内存块,为一个指纹。输人参数。intnWldth图像的宽度。输人参数。intnHelght图像的高度。输人参数。返回值:调用成功,返回指纹的质量,质量在[0,1。。】之间,越大越好。<0返回错误代码。说明判断指纹质量。例如对于斗型纹来说,应当同时具备上中心、下中心、左三角、右三角才算质量比较好。具体准则由具体实现确定。5卜14对图像进行增强函数原型:int_stdcallMOSAIC_lmageEnhance(unsignedchar‘psrclmg,intnwidth,intnHeight,unsignedchar赞pTargetlmg);参数:uns馆nedchar,psrclmg指向存放指纹数据的内存块,需要增强的数据。输人参数。intnwidth图像的宽度。输入参数。intnHeight图像的高度。输人参数。unsignedchar’pTargetlrng增强后的指纹数据。由调用者分配内存,大小为nwidthXnHeight。输出参数。返回值:若成功返回1。<0返回错误代码。否则返回错误代码。说明:图像增强。图像增强以不损坏图像质量为前提。5.15判断图像是否为指纹函数原型:int_stdcallMOSAIC-IsFinger(unsignedchar*pDataBuf,intnwidth,intnHeight);参数:un、lgnedchar‘pDataBuf指向存放采集数据的内存块,为一个指纹。输人参数,ntnwidt卜图像的宽度。输人参数。而nHeight图像的高度。输人参数返回值:若是指纹返回1,不是返回。。<。返回错误代码。说明:判断图像是否为指纹。当循环检测到指纹存在的情况下,可以启动拼接。 GA/T626.2一20065.16取得拼接接口错误信息函数原型:intstdcallMOsAIC_GetErrorlnfo(intnErrorNo,charpszErrorlnfo〔256〕)参数:。harPszErorlnf。〔256]用来存放错误信息的内存块,错误信息的长度不能操作256个字符。输出参数。nFrrorNo错误代码(<0)。输人参数。返回值:若是合法的错误代号,则返回1,同时pszEoInfo中为错误的信息。若nErrorN。为非法的错误代号,则返回一1,同时设置pszErorlnfo为非法错误代号错误。说明:取得拼接接口错误信息。pszErrorlnf。信息编码字符采用GB2312中的规定,GB2312中没有规定的字符,采用GB18O3。中的规定的字符为。信息为以数值0结尾的字符串。5卜17取得接口的版本函数原型:int_stdcallMOSAIC_GetVersion();参数:无。返回值:取得接口规范的版本。当前的版本为1.0,返回值为10若以后扩展接口,则需要修改此版本号。<0返回错误代码。说明:不需要调用MOSAIC-Init就可以调用此函数。说明:取得拼接接口版本。5.18获得拼接接口的说明函数原型:intstdcallMOSAIC-GetDesc(。harpszDesc[102选〕);参数:PszDesc。存放接口的说明信息。输出参数。返回值:返回1。说明:获得拼接接口的说明,且可以在一开始就调用。PszDe、信息编码字符采用GB2312中的规定的字符,GB2312中没有规定的字符,采用GB18O3o中的规定的字符。信息为以数值。结尾的字符串。519图像拼接接口错误代码图像拼接接口错误代码见表1。其中错误代码从一1到一10。为系统保留错误代码,用户可以自行定义的错误代码范围为一101到一2。。。其他错误号码保留。表1圈像拼接接口错误代码错误代码说明一1参数错误。给定函效的参数有错误一2内存分配失败。役有分配到足够的内存一3功能未实现。调用函数的功能没有实现一4保留一5保留一6非法的错误号一7没有授权一8拼接未初始化5.20拼接示例结合采集函数来示例:LIVESCAN_Init(); GA/T626.2一2006MOSAIC_Init()nChannelCount=LIVESCAN_GetChannelCount();if(nChannelCount>1){让用户选择使用那个通道;}//假设使用通道。采集指纹//判断采集窗口是否有指纹进行捺印的过程for(;;){LIVESCAN_BeginCapture(0);LIVESCAN_GetFPRawData(0,pData,nDataBufLen);LIVESCAN_EndCapture(0)//可以使用pData进行拼接。if(MOSAIC_IsFinger(pData,nwidth,nHeight)>0)break;}刀现在可以进行拼接了。pData指针被拼接过程记录,候选采集不能够使用此指针。MOSAIC-Start(pData,nwidth,nHeight)for(;;){1一IVESCAN_BeginCapture(0);LIVESCAN_GetFPRawData(0,pDataTemp,nDataBufLen);1一IVESCAN_EndCapture(0)fret=MOSAIC_DoMosaic(pDataTemp,nwidth,nHeight);if(fret<=0)break;}if(fret==0){刀结束拼接,pData中存储拼接后的指纹图像数据。MOSAIC-Stop();}else{发生了错误,提示用户}MOSAIC_Close();LIVESCAN_Close();//关闭采集设备。图像采集、拼接流程如图2所示 GA/T626.2一2006开始1.初始化采集设各(L】VESCAN_1川02.初始化拼接(MOS^ICes】n.t)选择通道1.准备采集一祯圈像(Ll班sCAN_BeglncaPt峨)2.采集一帧圈像(LIVESCAN少etFPR日脚Data)3.结束采集一帧图像(LIV毛SC八NEndCa口t‘le)否,继续采集图像为指纹?是初始化拼接过程(MoSAIC_Start)是1.准各采集一帧圈像(LlvEscANesB卿幻Caplure)2.采集一帧图像(Ll丫ES〔决NesCctFpRawD吻)3.结束采集一帧圈像(uvEscANesE”dc喇ure)否。器擎籍接进行拼接(MOsAIC_DoMOsalc)M()SAICDOMO皿c()<=07是结束拼接一枚指纹(MosAlc一top》缝续拼接其他手指?释放采集设备(LIVESCAN工lose)6文件格式61文件的生成图像拼接应用程序接口采用WINDOWS动态库发布。接口函数应在动态库中输出。62文件名称格式图像拼接接口文件名称格式为:GAMCXXYY.dll。其中,XXYY为产品代码,XX为单位代码,YY为版本代码。引用标准:GA425.4。'