将Griuale指纹模板转换为Digital Persona

时间:2017-03-11 02:01:36

标签: fingerprint digital-persona-sdk

我使用Griaule SDK将指纹模板存储在SQL Server数据库中,现在我需要迁移到Digital Persona SDK但是当我尝试读取模板时它会引发错误,当然我认为它们都有不同的格式。我的问题是如何将我的模板从Griaule读取或转换为Digital Persona。

1 个答案:

答案 0 :(得分:0)

你说得对,你需要使用标准格式作为ISO或ANSI。

要将Griaule转换为ISO或ANSI,请参阅: http://www.griaulebiometrics.com/en-us/manual/fingerprint-sdk/programming-reference-guide/fingerprint-sdk-dll-reference-guide/extraction-functions/grcovertemplate

这样的东西(取决于Griaule SDK和语言):

int result;
// set current buffer size for the extract template
_newTpt->_size = GR_MAX_SIZE_TEMPLATE;
result = GrConvertTemplate((char*)_oldTpt, (char*)_newTpt->_tpt, &_newTpt->_size, GR_DEFAULT_CONTEXT, GR_FORMAT_ANSI);

// if error, set template size to 0
if (result < 0){
    // Result < 0 => conversion problem
    _newTpt->_size = 0;
}

模板Griaule格式可在此处获取:http://www.griaulebiometrics.com/en-us/manual/fingerprint-sdk/programming-reference-guide/return-codes-and-constants/template-format

必须将此ISO或ANSI模板转换为数字角色格式后:

Fmd fmd = UareUGlobal.GetImporter().ImportFmd(
                    byteArray, Fid.Format.ANSI_381_2004,
                    Format.DP_REG_FEATURES);