GA/T 626.2-2006 活体指纹图像采集、拼接应用程序接口规范 第2部分:图像拼接应用程序接口规范

GA/T 626.2-2006 The application program interface(API)standard for live fingerprint scaning and image mosaicing—Part 2:The API for live fingerprint image mosaicing

行业标准-公共安全 中文简体 废止 已被新标准代替,建议下载标准 GA/T 626.2-2010 | 页数:12页 | 格式:PDF

基本信息

标准号
GA/T 626.2-2006
相关服务
标准类型
行业标准-公共安全
标准状态
废止
中国标准分类号(CCS)
国际标准分类号(ICS)
发布日期
2006-07-18
实施日期
2006-08-01
发布单位/组织
中华人民共和国公安部
归口单位
公安部计算机与信息处理标准化技术委员会
适用范围
本部分规定了活体指纹图像拼接应用程序接口(API)规范。
本部分适用于活体指纹图像的拼接。

文前页预览

研制信息

起草单位:
公安部刑事侦查局
起草人:
杨振刚、王瑛玮、许春光、张志华
出版信息:
页数:12页 | 字数:15 千字 | 开本: 大16开

内容描述

ICS35.240.99

A90

中华人民共和国公共安全行业标准

GA/T626.2一2006

活体指纹图像采集、拼接

应用程序接口规范

第2部分:图像拼接应用程序接口规范

TheaPPlicationProrgaminterafce(API)standardofrlive

flngerPrintscaningandimagemosaicing-

PartZ:TheAPlofrlivefingerPrintimagem朋alclng

2006一07一18发布2006一08一01实施

中华人民共和国公安部发布

GA/T6262一2006

前言

GA/T626一2o06活《体指纹图像采集、拼接应用程序接口规范》分为两个部分:

—第1部分:采集设备应用程序接口规范;

—第2部分:图像拼接应用程序接口规范。

本部分为GA/T662的第2部分。

本部分由公安部刑事侦查局提出。

本部分由公安部计算机与信息处理标准化技术委员会归口。

本部分负责起草单位:公安部刑事侦查局。

本部分参加起草单位:北京市刑事科学技术研究所、北京东方金指科技有限公司、北京海鑫科金信

息技术有限公司。

本部分主要起草人:杨振刚、王瑛玮、许春光、张志华。

本部分委托公安部刑事侦查局负责解释。

GA/T626.2一2006

活体指纹图像采集、拼接

应用程序接口规范

第2部分:图像拼接应用程序接口规范

范围

本部分规定了活体指纹图像拼接应用程序接口(API)规范。

本部分适用于活体指纹图像的拼接。

2规范性引用文件

下列文件中的条款通过GA/T662的本部分的引用而成为本部分的条款。凡是注日期的引用文

件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成

协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本

部分。

GB2312信息交换用汉字编码字符集基本集

GB18O3。信息技术信息交换用汉字编码字符集基本集的扩充

GA425.4指纹自动识别系统基础技术规范第4部分:指纹自动识别系统产品代码编制规则

3木语和定义

下列术语和定义适用于本部分。

31

指纹图像拼接ringerprintima罗妙aicing

将采集设备返回的一系列单帧指纹图像拼接成一幅完整的活体指纹图像。

4接口模型

本接口与采集设备(或者指纹采集仪)、图像采集接口、应用程序的关系如图1所示。黑色方框的内

容代表本接口。

应用程序

圈像拼接接口

圈橄采集接口

活体指纹采集仪

图1

5图像拼接接口

5.1初始化拼接动态库

函数原型:intstdcallMOSAIC_Init();

GA/T626.2一2006

参数:无。

返回值:调用成功,返回1。

<。返回错误代码。调用MOSACI_GetErrlnf。函数获取错误信息。错误

代码值符合5.91的要求。以下所有函数关于错误代码及错误信息的描述

与此类似。

说明:拼接系统初始化函数,为拼接接口规范中需要第一个被调用的函数。只需要

调用一次。但是允许重复调用,其结果与多次调用相同

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);

参数:nitnRollMode采集方式:。一平面采集;1一左右滚动采集;2一上下滚动

采集;3一左右滚动和上下滚动采集。输人参数。

返回值:成功返回修改前的采集方式设置值。

<0返回错误代码。

说明:选择拼接方式。应支持方式0、1、2。方式3为选择性支持。

5.9初始化拼接过程

函数原型:int_stdcallMOSAIC_Start(unsignedchar关pFingerBuf,intnwidth,int

nHeight);

参数unsigned。har,pFingerBuf,指向拼接数据内存块,在外部分配,其大小为

nwidth沐nHeight。输人参数/输出参数。

nitnwdiht拼接后的图像宽度,应该与采集图像的宽度相同。输人参数

nitnHeihgt拼接后的图像高度,应该与采集图像的高度相同。输人参数

返回值:调用成功,返回1。

<。返回错误代码。

说明初始化图像拼接。调用者程序与拼接过程共享拼接结果数据内存,这样当调

用者调用MOSACI_DoMosai。函数完成一帧图像的拼接后,可以实时刷新屏

幕显示,给用户展示实时拼接的过程,起到一个计算机与用户之间的互动作

用。直到调用MOSAIc_stop,pFingerBuf的内容都不应被外部程序修改。

5.10拼接过程

函数原型int_stdcallMOSAIC--DoMosaic(unsignedchar釜pDataBuf,intnwidth,int

nHeight);

参数unsigned。har,pDataBuf指向采集数据的内存块,其大小为nWldth又

nHeight。输人参数。

nitnw记ht采集图像的宽度,应该与拼接后的图像宽度相同。输人参数。

nitnHeihgt采集图像的高度,应该与拼接后的图像高度相同输人参数。

返回值调用成功,返回1,若返回。,则表示pDataBuf含有的数据非指纹,此次拼接无

效,拼接数据还保持上一帧图像的拼接结果。若返回。,应停止拼接,认为拼接

结束。

<0返回错误代码。

说明进行图像拼接。函数参数中的长度、宽度应与调用MOsAcI一tsrat时候的长

度、宽度相同,否则出错。函数返回之后pDataBuf指向的数据可以被释放。

5.11结束拼接

函数原型:int_stdcallMOSAI几Stop();

参数:无

返回值:调用成功,返回1。

<。返回错误代码

说明:结束拼接。可以释放分配的内存等后续操作。

5.21判断图像质t

函数原型int_stdcallMOSAIC_ImageQuality(unsignedchar登pDataBuf,intnwidth,

GA/T626.2一2006

intnHeight);

参数:uns履gnedchar赞pDataBuf指向存放采集数据的内存块。输人参数。

nitnwdiht图像的宽度。输人参数。

intnHeight图像的高度。输人参数

返回值:调用成功,返回图像质量,质量在01,1。。】之间,其中数值越大质量越好

<0返回错误代码。

说明判断图像质量。从图像学的角度去判断,例如对比度、亮度、灰度分布是否满

足一定要求。具体准则由具体实现确定。

513判断指纹质t

函数原型:int_stdcallMOsAIC_FingerQuality(unsignedchar登pDataBuf,int

nwidth,intnHeight);

参数unsignedcharp‘DataBuf指向存放采集数据的内存块,为一个指纹。

输人参数。

intnWldth图像的宽度。输人参数。

ntinHelhgt图像的高度。输人参数。

返回值:调用成功,返回指纹的质量,质量在0[,1。。】之间,越大越好。

<0返回错误代码。

说明判断指纹质量。例如对于斗型纹来说,应当同时具备上中心、下中心、左三

角、右三角才算质量比较好。具体准则由具体实现确定。

5卜14对图像进行增强

函数原型:int_stdcallMOSAIC_lmageEnhance(unsignedchar‘psrclmg,intnwidth,

intnHeight,unsignedchar赞pTargetlmg);

参数:uns馆nedhcra,prsclmg指向存放指纹数据的内存块,需要增强的数据。

输人参数。

intnwidth图像的宽度。输入参数。

intnHeight图像的高度。输人参数。

unsignedchar’pTargetlrng增强后的指纹数据。由调用者分配内存,大小

为nwidthXnHeight。输出参数。

返回值:若成功返回1。

<0返回错误代码。

否则返回错误代码。

说明:图像增强。图像增强以不损坏图像质量为前提。

5.15判断图像是否为指纹

函数原型:int_stdcallMOSAIC--IsFinger(unsignedchar*pDataBuf,intnwidth,int

nHeight);

参数:un、lgnedcharp‘DataBuf指向存放采集数据的内存块,为一个指纹。输

人参数

,ntnwdti卜图像的宽度。输人参数。

而nHeight图像的高度。输人参数

返回值:若是指纹返回1,不是返回。。

<。返回错误代码。

说明:判断图像是否为指纹。当循环检测到指纹存在的情况下,可以启动拼接。

GA/T626.2一2006

5.61取得拼接接口错误信息

函数原型:intstdcallMOsAIC_GetErrorlnfo(intnErrorNo,charpszErrorlnfo2〔56〕)

参数:。harPszErrrolnf。2〔56]用来存放错误信息的内存块,错误信息的长度不

能操作265个字符。输出参数。

nFrrorNo错误代码(<)0。输人参数。

返回值:若是合法的错误代号,则返回1,同时pzsEoInof中为错误的信息。若nErrorN。

为非法的错误代号,则返回一1,同时设置pzsErrrolnof为非法错误代号错误。

说明:取得拼接接口错误信息。pzsErrorlnf。信息编码字符采用GB2312中的规定,

GB2312中没有规定的字符,采用GB18O3。中的规定的字符为。信息为以数

值0结尾的字符串。

5卜71取得接口的版本

函数原型:int_stdcallMOSAIC_GetVersion();

参数:无。

返回值:取得接口规范的版本。当前的版本为1.00,返回值为100若以后扩展接口,

则需要修改此版本号。

<0返回错误代码。

说明:不需要调用MOSAIC--Init就可以调用此函数。

说明:取得拼接接口版本。

5.81获得拼接接口的说明

函数原型:intstdcallMOSAIC-GetDesc(。harpszDesc[102选〕);

参数:PszDesc。存放接口的说明信息。输出参数。

返回值:返回1。

说明:获得拼接接口的说明,且可以在一开始就调用。PszDe、信息编码字符采用

GB2312中的规定的字符,GB2312中没有规定的字符,采用GB18O3o中的规

定的字符。信息为以数值。结尾的字符串。

591图像拼接接口错误代码

图像拼接接口错误代码见表1。

其中错误代码从一1到一01。为系统保留错误代码,用户可以自行定义的错误代码范围为一011到

一2。。。其他错误号码保留。

表1圈像拼接接口错误代码

错误代码说明

一1参数错误。给定函效的参数有错误

一2内存分配失败。役有分配到足够的内存

一3功能未实现。调用函数的功能没有实现

一4保留

一5保留

一6非法的错误号

一7没有授权

一8拼接未初始化

5.20拼接示例

结合采集函数来示例:

LIVESCAN_Init();

GA/T626.2一2006

MOSAIC_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(】VECSAN_1川0

2.初始化拼接(MOS^ICes】n.t)

选择通道

1.准备采集一祯圈像(Ll班sCAN_BeglncPat峨)

2.采集一帧圈像(LIVESCAN少eFtPR日脚Data)

3.结束采集一帧图像(LIV毛SC八NEndCa口tl‘e)

否,继续采集

图像为指纹?

初始化拼接过程(MoSAIC_Start)

1.准各采集一帧圈像(LlEvscANesB卿幻Caplure)

2.采集一帧图像(Ll丫ES决〔NesCFctpRawD吻)

3.结束采集一帧圈像(uvEscANesE”dc喇ure)

进行拼接(MOsAIC_DoMOasl)c否。器擎籍接

M()SAICDOMO皿c()<=07

结束拼接一枚指纹(MosAlc一otp》

缝续拼接其他手指?

释放采集设备(LIVESCAN工loes)

6文件格式

61文件的生成

图像拼接应用程序接口采用WINDOWS动态库发布。接口函数应在动态库中输出。

62文件名称格式

图像拼接接口文件名称格式为:GAMCXXYY.dll。

其中,XXYY为产品代码,XX为单位代码,YY为版本代码。引用标准:GA425.4。

定制服务

    推荐标准