【问题标题】:DigitalPersona Java SDK- Comparing featureset and templateDigitalPersona Java SDK - 比较功能集和模板
【发布时间】:2012-11-02 16:38:37
【问题描述】:

我使用 digitalpersona one touch for windows java edition,我使用小程序捕获了指纹模板,小程序序列化模板然后将其从字节数组转换为十六进制字符串以将其显示在隐藏的文本框中并发送到服务器端并存储在mysql中。 我的代码可以检索模板,并将其转换回数组,但我不知道如何反序列化并再次创建模板:

   Connection con = null;  
try {
    Class.forName("com.mysql.jdbc.Driver");
     con = DriverManager.getConnection("jdbc:mysql://localhost:3306/biodb", "root", "1234");
    PreparedStatement st;
    st = con.prepareStatement("select template from login where username = ? ");
    st.setString(1, username);

    ResultSet result = st.executeQuery();

    if (result.next()) { //.next() returns true if there is a next row returned by the query.

        String dbTemplate = result.getString("template");
          byte[] data = new byte[1];
            data = hexStringToByteArray(dbTemplate);
           DPFPTemplate t = DPFPGlobal.getTemplateFactory().createTemplate();
            t.deserialize(data);

【问题讨论】:

    标签: java fingerprint


    【解决方案1】:

    您必须创建一个匹配器来比较 featureSet 和 tmeplate,如下所示:

    DPFPVerification matcher = DPFPGlobal.getVerificationFactory().createVerification();
    DPFPTemplate template = DPFPGlobal.getTemplateFactory().createTemplate();
    template.deserialize(byteArray);
    DPFPVerificationResult result = matcher.verify(featureSet, template);
    

    【讨论】:

    • 是的,谢谢,但就像你调用 getTemplateFactory 我应该为 featureSet 写什么?因为,我的 featureSet 也需要反序列化。但我似乎无法做到这一点。因为我不知道要调用什么方法。你能指导我吗?
    • 应该是这样的:`sample.deserialize(FtSetbyteArray); DPFPFeatureSet featureSet = extractFeatures(sample, DPFPDataPurpose.DATA_PURPOSE_VERIFICATION);`
    猜你喜欢
    • 2020-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-05
    • 1970-01-01
    相关资源
    最近更新 更多