GA/T 1012-2019 居民身份证指纹采集和比对技术规范
GA/T 1012-2019 Technical specifications for fingerprint acquisition and comparison of resident identity card
基本信息
本标准适用于居民身份证的指纹采集和比对。
发布历史
-
2012年10月
-
2019年06月
研制信息
- 起草单位:
- 公安部第一研究所、公安部治安管理局、公安部安全与警用电子产品质量检测中心、北京中盾安全技术开发公司
- 起草人:
- 刘琳、尹德森、张旭东、朱克勤、田青、丁增喜、张莹、祁卫炜、姜文瀚、张鹏、欧阳晖、李镇、周家福、郑征
- 出版信息:
- 页数:20页 | 字数:30 千字 | 开本: 大16开
内容描述
ICS35.240.15
A90
GA
中华人民共和国公共安全行业标准
GA/T1012—20XX
代替GA1012-2012
居民身份证指纹采集和比对技术规范
Technicalspecificationsforfingerprintacquisitionandcomparisonof
ResidentIdentityCard
点击此处添加与国际标准一致性程度的标识
(报批稿)
XXXX-XX-XX发布XXXX-XX-XX实施
中华人民共和国公安部发布
GA/T1012—20XX
居民身份证指纹采集和比对技术规范
1范围
本标准规定了居民身份证指纹采集和比对的要求、指纹算法的技术指标和测试方法。
本标准适用于居民身份证的指纹采集和比对。
2规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。
凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
GB/T13000信息技术通用多八位编码字符集(UCS)
GA/T449居民身份证术语
GA/T625-2010活体指纹图像采集技术规范
GA773-2008指纹自动识别系统术语
GA774.1-2008指纹特征规范第1部分:指纹方向
GA774.3-2008指纹特征规范第3部分:指纹中心点标注方法
GA774.5-2008指纹特征规范第5部分:指纹细节特征点标注方法
GA/T893-2010安防生物特征识别应用术语
GA/T894.3-2010安防指纹识别应用系统第3部分:指纹图像质量
GA/T894.6-2010安防指纹识别应用系统第6部分:指纹识别算法评测方法
GA/T1011-2012居民身份证指纹采集器通用技术要求
ISO/IEC19794-4信息技术生物测量数据交换格式第4部分:指纹图像数据(Information
technology–Biometricdatainterchangeformats–Part4:Fingerimagedata)
IAFIS-IC-0110(V3.1)小波标量量化(WSQ)灰度指纹图像压缩规范(WSQGRAY-SCALEFINGERPRINT
IMAGECOMPRESSIONSPECIFICATION)
3术语和定义
GA/T449、GA/T625-2010、GA773-2008、GA/T893-2010、GA/T894.3-2010、GA/T894.6
-2010界定的以及下列术语和定义适用于本文件。
3.1
注册enrolment
公民登记指纹信息时,采集手指指纹图像,提取其特征并存储的过程。
3.2
注册成功enrolmentsuccess
公民登记指纹信息时,能够采集其手指的指纹图像,图像质量符合特征提取要求。
1
GA/T1012—20XX
3.3
注册失败enrolmentfailure
公民登记指纹信息时,能够采集其手指的指纹图像,图像质量不符合特征提取要求。
3.4
未注册un-enrolled
公民登记指纹信息时,因手指残疾等生理原因无法采集其手指的指纹图像。
3.5
测试库testdatabase
与被测试的指纹识别应用系统使用人群分布相当,用于对指纹识别算法进行性能评测的指纹图像或
特征文件集合。
[GA/T894.6-2010,定义3.2]
4指纹的采集要求
4.1指纹数据
4.1.1指纹图像数据
4.1.1.1指纹原始图像数据
应由符合GA/T1011-2012规定的指纹采集器生成,单枚指纹原始图像数据长度应为92160字节,
宽应等于256像素点,高应等于360像素点。
4.1.1.2指纹压缩图像数据
应由指纹原始图像数据压缩生成,压缩方法应符合IAFIS-IC-0110(V3.1)的规定,指纹压缩图像数
据文件结构见附录A,单枚指纹压缩图像数据长度不大于20480字节。
4.1.1.3指纹复现图像数据
应由指纹压缩图像数据复现生成,复现方法应符合IAFIS-IC-0110(V3.1)的规定。
4.1.2指纹特征数据
描述指纹特征的数据,文件结构见附录A,单枚指纹特征数据长度为512字节。
4.2采集方式
采集方式如下:
a)单枚指纹平面活体采集;
b)指纹方向应符合GA774.1-2008的规定;
c)采集完成后,应清除指纹原始图像数据和指纹复现图像数据。
4.3采集数量
每人采集两枚指纹。
4.4采集指位顺序
2
GA/T1012—20XX
采集指位顺序如下:
a)先右手后左手,各注册一枚指纹;
b)指位按拇指、食指、中指、环指、小指顺序;
c)右手拇指注册失败时,应注册右手其他指位;
d)左手拇指注册失败时,应注册左手其他指位;
e)右手手指均注册失败时,应注册左手其他指位;
f)左手手指均注册失败时,应注册右手其他指位。
4.5采集质量要求
采集质量要求如下:
a)同一枚手指采集三幅指纹原始图像数据,其质量值均应大于预设的质量值;
b)对指纹原始图像数据进行特征提取,生成指纹特征数据,交叉比对后获得三个相似度值,计算
其平均值,该平均值应大于预设的相似度值;
c)对质量值最高的指纹原始图像数据进行压缩并复现,将指纹复现图像数据与对应的指纹特征数
据进行比对,获得相似度值,该值应大于预设的相似度值。
4.6采集结果
按4.4和4.5的规定,将采集的两枚指纹依次标识为指纹1和指纹2,采集结果包括以下情形:
a)指纹1注册成功,指纹2注册成功;
b)指纹1注册成功,指纹2注册失败;
c)指纹1注册成功,指纹2未注册;
d)指纹1注册失败,指纹2注册失败;
e)指纹1注册失败,指纹2未注册;
f)指纹1未注册,指纹2未注册。
注册成功手指生成指纹特征数据和指纹压缩图像数据。
注册失败手指生成指纹特征数据,取图像质量值最高的指纹原始图像数据生成指纹压缩图像数据。
未注册手指生成指纹特征数据,无指纹压缩图像数据。
5指纹的比对要求
5.1比对方式
使用居民身份证阅读器,读取居民身份证芯片内存储的指纹特征数据,获取注册结果和指位代码,
根据注册结果,比对方式分为:
a)注册结果为“注册成功”时,根据指位代码,按4.2的规定,采集持证人对应指位的指纹原始图
像数据,将其与指纹特征数据进行比对。比对完成后,应清除指纹原始图像数据;
b)注册结果为“注册失败”或“未注册”时,不进行指纹比对。
5.2比对结果
比对结果分为比对成功和比对失败。比对相似度值不小于预设的相似度值为比对成功,否则为比对
失败。
3
GA/T1012—20XX
6指纹算法的技术指标和测试方法
6.1技术指标
6.1.1注册失败率
应不大于5%。
6.1.2等错误率
应不大于0.1%。
6.1.3错误接受率和错误拒绝率
错误拒绝率为0.5%时,错误接受率应不大于0.05%。
6.1.4响应时间
应不大于0.5s。
6.2测试方法
6.2.1测试库建库准则
采集方式:应符合4.2的规定。
采集设备:应符合GA/T1011-2012的规定,类型不少于两种。
图像参数:应符合4.1.1.1的规定。
图像格式:BMP或符合ISO/IEC19794-4规定的其他文件格式。
人数规模:不少于1000人,每人采集不少于两枚手指,右手和左手各不少于一枚手指,每枚手指
采集指纹图像数不少于三幅。
性别分布:男性占51%、女性占49%。
年龄分布:15岁以下占17%、15岁~59岁占70%、60岁及以上占13%。
产业分布:第一产业占38%、第二产业占28%、第三产业占34%。
6.2.2应用程序接口函数
应用程序接口函数说明见附录B。
6.2.3测试环境
应符合GA/T894.6—2010中第5章的规定。
6.2.4测试过程
应符合GA/T894.6—2010中第7章的规定。
4
GA/T1012—20XX
A
A
附录A
(规范性附录)
指纹数据结构
A.1指纹特征数据
A.1.1指纹中心点
指纹中心点标注方法应符合GA774.3-2008的要求。
指纹中心点数据由两部分构成:
a)横坐标:x,有效值为0~255;
b)纵坐标:y,有效值为0~359。
每个指纹中心点数据用3个字节表示,见图A.1。第1个字节,存放指纹中心点横坐标(x)的全部8
位值;第2个字节,存放指纹中心点纵坐标(y)的低8位值;第3个字节,第1位存放指纹中心点纵坐标
(y)的最高位,其余位备用,备用位设置为1。
指纹中心点数据以3个字节为单位顺次排列。
a)第1字节b)第2字节
c)第3字节
图A.1指纹中心点数据表示方法
A.1.2指纹细节特征点
指纹细节特征点标注方法应符合GA774.5-2008的要求。
指纹细节特征点数据由三部分构成:
a)横坐标:x,有效值为0~255;
b)纵坐标:y,有效值为0~359;
c)方向:d,有效值为0~359。
每个指纹细节特征点用4个字节表示,见图A.2。第1个字节,存放指纹细节特征点横坐标(x)的全
部8位值;第2个字节,存放指纹细节特征点纵坐标(y)的低8位值;第3个字节,存放指纹细节特征点
方向(d)的低8位值;第4个字节,第1位存放指纹细节特征点纵坐标(y)的最高位,第2位存放指纹细
节特征点方向(d)的最高位,其余位备用,备用位设置为1。
指纹细节特征点数据以4个字节为单位顺次排列。
5
GA/T1012—20XX
a)第1字节b)第2字节
c)第3字节d)第4字节
图A.2指纹细节特征点数据表示方法
A.2指纹特征坐标系
指纹特征坐标系参照GA775-2008,见图A.3。以指纹图像的左上角为坐标原点(0,0),X轴坐标
值从左到右增加,Y轴坐标值从上至下增加,X、Y值以像素为单位,X大于等于0且小于256,Y大于等于0
且小于360。矢量角度以度为单位,用非负整数表示,与X轴平行并随X增大的方向为0°,逆时针转动时
角度增加,角度范围为0°~359°。
图A.3指纹特征坐标系
A.3指位代码
指位代码参照GA777.1-2010,采用两位数字字符,转换为1个字节的十六进制数值后存放,见表
A.1。
6
GA/T1012—20XX
表A.1指位代码表
代码指位名称转换后的数值
11右手拇指0BH
12右手食指0CH
13右手中指0DH
14右手环指0EH
15右手小指0FH
16左手拇指10H
17左手食指11H
18左手中指12H
19左手环指13H
20左手小指14H
97右手不确定指位61H
98左手不确定指位62H
99其他不确定指位63H
A.4指纹特征数据文件结构
指纹特征数据文件结构见表A.2,示例见表A.3。
7
GA/T1012—20XX
表A.2指纹特征数据文件结构
序号字段相对位置长度(字节)说明
1字段111文件头类型,记录字符“C”(43H)
2字段221指纹算法版本号
3字段331指纹采集器代码
4字段441指纹算法开发者代码
注册结果代码,01H表示“注册成功”,02H表示“注册
5字段551
失败”,03H表示“未注册”,09H表示“未知”
6字段661指位代码
指纹质量值,以00H~64H来表示,值01H表示最低质量,
7字段771
值64H表示最高质量,值00H表示“未知”
8字段88~1912保留项
指纹细节特征点数量。“注册失败”和“未注册”指纹设
9字段9201
置为00H
10字段1021~222指纹特征数据长度,以字节为单位
11字段1123~319指纹中心点数据
12字段1232~511480指纹细节特征点数据
13字段135121校验位,验位值采用CRC-8生成
8
GA/T1012—20XX
表A.3指纹特征数据文件结构示例
序号字段相对位置值(十六进制)说明
1字段1143“C”表示指纹特征数据
2字段2203指纹算法版本号为3
3字段3311指纹采集器代码为17
4字段440A指纹算法开发者代码为10
5字段5501“注册成功”
6字段6610左手拇指
7字段7750指纹质量值为80
FFFFFFFFFFFFFF
8字段88~19保留项
FFFFFFFFFF
9字段92033指纹细节特征点数量为51
10字段1021~2200D5指纹特征数据长度为213个字节
11字段1123~31······指纹中心点数据
12字段1232~511······指纹细节特征点数据
13字段135126DCRC校验位
A.5指纹压缩图像数据文件结构
指纹压缩图像数据文件结构见表A.4,示例见表A.5。
9
GA/T1012—20XX
表A.4指纹压缩图像数据文件结构
序号字段相对位置长度(字节)说明
1字段111文件头类型,记录字符“Y”(59H)
2字段221指纹算法版本号
3字段331指纹采集器代码
4字段441指纹算法开发者代码
注册结果代码,01H表示“注册成功”,02H表示“注册
5字段551
失败”,03H表示“未注册”,09H表示“未知”
6字段661指位代码
7字段77~2014保留项
8字段821~222指纹压缩图像数据长度,以字节为单位
9字段923~X指纹压缩图像数据
10字段10Y1校验位,验位值采用CRC-8生成。Y=23+X
表A.5指纹压缩图像数据文件结构示例
序号字段相对位置值(十六进制)说明
1字段1159“Y”表示指纹压缩图像数据
2字段2203指纹算法版本号为3
3字段3311指纹采集器代码为17
4字段440A指纹算法开发者代码为10
5字段5501“注册成功”
6字段6610左手拇指
FFFFFFFFFFFFFF
7字段77~20保留项
FFFFFFFFFFFFFF
8字段821~224F01压缩图像数据长度为20225个字节
9字段923~20247······指纹压缩图像数据
10字段1020248D6CRC校验位
10
GA/T1012—20XX
BB
附录B
(规范性附录)
应用程序接口函数说明
B.1文件格式
B.1.1文件生成
接口函数采用Windows动态链接库(DLL)形式发布。支持的操作系统应包括WindowsXP或兼容系统。
接口函数应在动态链接库中输出,支持多线程。程序编译为32位版本。
B.1.2文件名称
动态链接库文件名称为:ID_Fpr.dll。
B.2接口函数
接口函数见表B.1。
接口函数说明中指纹图像数据不包括指纹压缩图像数据。
表B.1接口函数
编号名称说明
1FP_GetVersion版本信息获取
2FP_Begin初始化操作
3FP_FeatureExtract指纹图像特征提取
4FP_FeatureMatch指纹特征数据比对
5FP_ImageMatch指纹图像数据与指纹特征数据比对
6FP_Compress指纹图像数据压缩
7FP_Decompress指纹图像数据复现
8FP_GetQualityScore指纹图像质量值获取
9FP_GenFeatureFromEmpty1生成“注册失败”指纹特征数据
10FP_GenFeatureFromEmpty2生成“未注册”指纹特征数据
11FP_End结束操作
11
GA/T1012—20XX
B.3函数说明
B.3.1版本信息获取
函数原型:int__stdcallFP_GetVersion(unsignedcharcode[4])。
参数:unsignedcharcode[4]版本信息格式为XXYY,XX为开发者代码,YY为版本号。例如
“1201”,则code的填写方式为:code[0]=‘1’,code[1]=‘2’,code[3]=‘0’,code[4]=
‘1’。输出参数。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:获取版本信息。
B.3.2初始化操作
函数原型:int__stdcallFP_Begin()。
参数:无。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:初始化操作。
B.3.3指纹图像特征提取
函数原型:int__stdcallFP_FeatureExtract(unsignedcharcScannerType,unsignedchar
cFingerCode,unsignedchar*pFingerImgBuf,unsignedchar*pFeatureData)。
参数:unsignedcharcScannerType指纹采集器代码。输入参数。
unsignedcharcFingerCode指位代码。输入参数。
unsignedchar*pFingerImgBuf指纹图像数据指针,指纹图像为RAW格式。输入参数。
unsignedchar*pFeatureData指纹特征数据指针,存储生成的指纹特征数据,由调
用者分配内存空间,指纹特征数据文件结构应符合附录A要求。输出参数。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:对指纹图像数据进行特征提取,生成指纹特征数据。
B.3.4指纹特征数据比对
函数原型:int__stdcallFP_FeatureMatch(unsignedchar*pFeatureData1,unsignedchar
*pFeatureData2,float*pfSimilarity)。
参数:unsignedchar*pFeatureData1指纹特征数据指针1。输入参数。
unsignedchar*pFeatureData2指纹特征数据指针2。输入参数。
float*pfSimilarity相似度,取值范围为0.00~1.00,值0.00表示不匹配,值1.00
表示完全匹配。输出参数。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:对两个指纹特征数据进行比对,得到相似度值。
B.3.5指纹图像数据与指纹特征数据比对
函数原型:int__stdcallFP_ImageMatch(unsignedchar*pFingerImgBuf,unsignedchar*
pFeatureData,float*pfSimilarity)。
参数:unsignedchar*pFingerImgBuf指纹图像数据指针,指纹图像为RAW格式。输入参数。
unsignedchar*pFeatureData指纹特征数据指针。输入参数。
12
GA/T1012—20XX
float*pfSimilarity相似度,取值范围为0.00~1.00,值0.00表示不匹配,值1.00
表示完全匹配。输出参数。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:对指纹图像数据与指纹特征数据进行比对,得到相似度值。
B.3.6指纹图像数据压缩
函数原型:int__stdcallFP_Compress(unsignedcharcScannerType,unsignedchar
cEnrolResult,unsignedcharcFingerCode,unsignedchar*pFingerImgBuf,int
nCompressRatio,unsignedchar*pCompressedImgBuf,unsignedchar
strBuf[256])。
参数:unsignedcharcScannerType指纹采集器代码。输入参数。
unsignedcharcEnrolResult注册结果代码。输入参数。
unsignedcharcFingerCode指位代码。输入参数。
unsignedchar*pFingerImgBuf指纹图像数据指针,指纹图像为RAW格式。输入参数。
intnCompressRatio指纹图像数据压缩倍数。输入参数。
unsignedchar*pCompressedImgBuf指纹压缩图像数据指针,调用者在调用此函数
前,应当分配不小于20480字节的内存,指纹压缩图像数据文件结构应符合附录A要求。
输出参数。
unsignedcharstrBuf[256]错误信息,如果压缩图像发生错误,并且返回值为-9的情
况下,strBuf填写错误信息。错误信息为以数值0结尾的字符串,采用GB/T13000中规定
的字符。输出参数。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:对指纹图像数据进行压缩。
B.3.7指纹图像数据复现
函数原型:int__stdcallFP_Decompress(unsignedchar*pCompressedImgBuf,unsignedchar
*pFingerImgBuf,unsignedcharstrBuf[256])。
参数:unsignedchar*pCompressedImgBuf指纹压缩图像数据指针,压缩图像数据长度不大
于20480字节。输入参数。
unsignedchar*pFingerImgBuf指纹复现图像数据指针,指纹图像为RAW格式,调用
者在调用此函数前,应当分配92160字节的内存。输出参数。
unsignedcharstrBuf[256]错误信息,如果压缩图像发生错误,并且返回值为-9的情
况下,strBuf填写错误信息。错误信息为以数值0结尾的字符串,采用GB/T13000中规定
的字符。输出参数。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:对指纹原始图像数据进行复现。
B.3.8指纹图像质量值获取
函数原型:int__stdcallFP_GetQualityScore(unsignedchar*pFingerImgBuf,unsignedchar
*pnScore)。
参数:unsignedchar*pFingerImgBuf指纹图像数据指针,指纹图像为RAW格式。输入参数。
unsignedchar*pnScore指纹图像质量值指针,指纹图像质量值取值范围为00H~
64H,值01H表示最低质量,值64H表示最高质量,值00H表示未知。
13
GA/T1012—20XX
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:获取指纹图像的质量值。
B.3.9生成“注册失败”指纹特征数据
函数原型:int__stdcallFP_GenFeatureFromEmpty1(unsignedcharcScannerType,unsigned
charcFingerCode,unsignedchar*pFeatureData)。
参数:unsignedcharcScannerType指纹采集器代码。输入参数。
unsignedcharcFingerCode指位代码。输入参数。
unsignedchar*pFeatureData指纹特征数据指针,存储生成的指纹特征数据,由调
用者分配内存空间,指纹特征数据文件结构应符合附录A要求。输出参数。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:本函数针对“注册失败”手指的情况,生成“注册失败”指纹特征数据。其中,字段5设
置为02H;字段9、字段10均设置为00H。
B.3.10生成“未注册”指纹特征数据
函数原型:int__stdcallFP_GenFeatureFromEmpty2(unsignedcharcFingerCode,unsigned
char*pFeatureData)。
参数:unsignedcharcFingerCode指位代码。输入参数。
unsignedchar*pFeatureData指纹特征数据指针,存储生成的指纹特征数据,由调
用者分配内存空间,指纹特征数据文件结构应符合附录A要求。输出参数。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:本函数针对“未注册”手指的情况,生成“未注册”指纹特征数据。其中,字段5设置为
03H;字段6设置为61H、62H或63H;字段7、字段9、字段10均设置为00H。
B.3.11结束操作
函数原型:int__stdcallFP_End()。
参数:无。
返回值:调用成功,返回1;否则返回错误代码,错误代码值应符合B.4的要求。
说明:结束操作。
B.4错误代码
错误代码见表B.2。
表B.2错误代码表
错误代码说明
-1参数错误
-2内存分配失败,没有分配到足够的内存
-3功能未实现
-9其他错误
14
推荐标准
- GB/T 32939-2016 文化馆服务标准 2016-08-29
- GB/T 32935-2016 全球热带气旋等级 2016-08-29
- GB/T 32933-2016 留学服务术语 2016-08-29
- GB/T 32934-2016 全球热带气旋中文名称 2016-08-29
- GB/T 32941.1-2016 实景演出服务规范 第1部分:导则 2016-08-29
- GB/T 32937-2016 爆炸和火灾危险场所防雷装置检测技术规范 2016-08-29
- GB/T 32936-2016 爆炸危险场所雷击风险评价方法 2016-08-29
- GB/T 32941.2-2016 实景演出服务规范 第2部分:演出管理 2016-08-29
- GB/T 32932-2016 留学中介服务规范 2016-08-29
- GB/T 32940-2016 乡镇综合文化站服务标准 2016-08-29