指纹模块R305输出解码

时间:2016-10-18 12:40:22

标签: c# bitmap matching fingerprint

我的硬件配件正在传递一系列十六进制代码作为R305指纹传感器的输出。输出本质上是一个16 x 16十六进制数组,我将其转换为256字节数组。

我在谷歌和其他地方搜索过高低,但没有获得有关这些数据代表什么的任何信息。硬件/物联网人告诉我它是一个8位灰度图像,包含指纹的BMP。

我试图通过SourceAFIS作为输入运行它,它拒绝这作为模板数据,我从256位数组生成的BMP被拒绝为“源图像太小”。

我想知道256 Hex Code输出代表什么? R305的样本输出发送到我的代码

EF, 1, FF, FF, FF, FF, 2, 0, 82, 3, 1, 5F, 25, 0, 0, FE, 
3E, FC, 2, F8, 2, F0, 0, F0, 0, F0, 0, E0, 0, E0, 0, E0, 
0, E0, 0, E0, 0, E0, 0, E0, 0, E0, 0, E0, 0, E0, 0, E0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 64, 11, E4, FE, 6C, A0, A6, BE, 25, 23, 67, DE, 3C, AA, D1, 
3E, 71, AF, 67, 9E, 3B, 3F, E7, 9E, 3D, B, 50, 7F, 58, 34, 51, 
7F, 27, BB, A6, FF, 24, 41, D0, 5F, 59, 8, 63, 94, 5C, B, A5, 
9C, 33, 39, 67, BC, 73, 13, E4, 75, 74, 10, 4C, 7A, 2B, 1B, CF, 
32, 38, B1, D1, 3A, 36, BC, 11, 1A, 2F, BB, EF, 1, FF, FF, FF, 
FF, 2, 0, 82, 33, 8E, 27, 7B, 6C, C, 4E, 18, 35, 11, 10, 72, 
32, 12, E6, F2, 38, 1E, 8E, F8, 3C, 35, 51, 78, 28, 1E, 66, D3, 
33, A2, E6, 99, 40, 35, E7, F9, 6E, 8D, E2, F6, 2C, 34, D1, 70, 
34, 16, E6, 34, 3B, 96, CF, 8E, 40, 25, 26, B4, 32, 2F, A7, D4, 
36, 24, 8F, F2, 28, 36, 91, CD, 26, 2E, EB, 50, 26, 31, 14, B1, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

我从Hex到Byte Array的转换过程


    var templateData = File.ReadAllText(filename);
    var data = templateData.Split(new[] { ',' },StringSplitOptions.RemoveEmptyEntries);
    byte[] tmplData = new byte[data.Length];
    for (int i = 0; i 

过去两天以来我一直在挠头。任何指针都赞赏。

1 个答案:

答案 0 :(得分:0)

它是十六进制格式的256字节指纹模板。你可以使用python PIL库。

 From PIL import Image

 im=Image.frombytes('L',(16,16),data)

 im.show()