gpt4 book ai didi

c# - ZKTeco 合并 3 指纹 C# 与 ZKFingerSDK

转载 作者:行者123 更新时间:2023-11-30 12:19:31 25 4
gpt4 key购买 nike

我一直在开发一个小型应用程序,以便在扫描 3 次后获取指纹。我使用了 ZKFingerSDK,在尝试获取套准指纹时,它会将图像恢复为黑色。我使用的是ZK9500设备

if (RegisterCount >= REGISTER_FINGER_COUNT && !bIdentify)
{

RegisterCount = 0;
ret = GenerateRegisteredFingerPrint(); // <--- GENERATE FINGERPRINT TEMPLATE


if (zkfp.ZKFP_ERR_OK == ret)
{

ret = AddTemplateToMemory(); // <--- LOAD TEMPLATE TO MEMORY
if (zkfp.ZKFP_ERR_OK == ret) // <--- ENROLL SUCCESSFULL
{
string fingerPrintTemplate = string.Empty;
zkfp.Blob2Base64String(newRegTmp, cbCapTmp, ref fingerPrintTemplate);
newRegTmp = zkfp.Base64String2Blob(fingerPrintTemplate);

Bitmap bmp2;
MemoryStream ms2 = new MemoryStream();

BitmapFormat.GetBitmap(newRegTmp, mfpWidth, mfpHeight, ref ms2);
bmp2 = new Bitmap(ms2);
this.pictureBox1.Image = bmp2;


Console.WriteLine("finger print" + fingerPrintTemplate);
textRes.AppendText("merged " + fingerPrintTemplate + "\n");
}
}
}

最佳答案

我假设 ret = AddTemplateToMemory();将模板加载到 newRegTmp 中。

zkfp.Blob2Base64String(newRegTmp, cbCapTmp, ref fingerPrintTemplate);从这一行我了解到您在 newRegTmp 处拥有指纹的原始数据,并且您正在将 cbCapTmp 的大小提取到 fingerPrintTemplate 中。

在这种情况下,您不应该在下一行中使用 newRegTmp newRegTmp =zkfp.Base64String2Blob(fingerPrintTemplate); ,它会用 Base64 字符串覆盖实际数据。您可以使用 Base64 字符串在带有 img 标签的网页上显示图像。但是要将原始数据转换为图像,您需要将实际数据传递给 GetBitMap。

如果以上建议不奏效,请分享AddTemplateToMemory的实现

关于c# - ZKTeco 合并 3 指纹 C# 与 ZKFingerSDK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57390931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com