我打算使用生物识别输入验证我的应用程序的用户输入。我在网上做了一些研究,并提出了以下生物识别输入选项:
其中我觉得指纹是最合适的选择。但问题是指纹设备的API会因其硬件而异。所以我可能认为我需要对多个设备API进行编码,我认为这些API并不友好。
我打算用C#编写程序。有没有办法解决这个问题。因为我是新手,所以我很无能为力。攻击这个问题的方法是什么,项目范围有多大,我的方法应该是什么。
答案 0 :(得分:8)
问题并非指纹识别器所独有,它将适用于列表中的所有其他选项以及许多其他外围设备。实际上,标准API是例外。
所以你必须寻找为此出售图书馆或自己编写图书馆的人(COM和/或Interop)。滚动你自己通常不会是小型或简单的项目。
您的程序将包含受支持设备的列表,不包括其他设备。
答案 1 :(得分:6)
对于指纹读取器 看这篇文章: http://www.codeproject.com/Articles/97590/A-Framework-in-C-for-Fingerprint-Verification
答案 2 :(得分:5)
我的一位同事的任务是为我们共同工作的公司建立一个基于生物识别的员工时钟系统。我们,IT,选择指纹作为生物识别源。他研究并使用了Bayometric - Griaule Fingerprint SDK的这个库以及一些廉价的MS打印读者。从他向我展示并在当时谈到的内容,确实让我相信这个.net库有一个很好的API并且很容易使用。
现在,大约5年后,生物识别系统仍在使用。
答案 3 :(得分:2)
我在生物识别领域工作,我使用C#来处理很多指纹。出于这个原因,我的公司不得不开发一个指纹设备抽象库。请注意,所有指纹扫描仪只需要一次呼叫:getImage
。知道了这一点,我的公司编写了一个库,用于初始化和设置每个设备,创建一个通用的包装器,分配一个唯一的ID,并将其放入一个可以枚举的大列表中。
然后从C#方面你所要做的就是“选择”一个设备(你只需要一个唯一的ID,也许是制造商),然后使用它。返回的图像数据必须提前确定,以便您知道每次都会得到什么
这种方法的主要问题是,如今许多设备都有各种噱头(例如可编程闪光灯),通过抽象设备,您失去了访问这些特殊能力的能力。此外,一些设备实际上返回多个数据通道(例如,各种光谱),你必须丢弃除一个通道之外的所有通道,以便应用程序可以保持与设备无关,这是一个艰难的决定。
最后记住这一点:如果你进行细节提取,不幸的是你使用的设备会影响检测到的细节。某些设备针对某些算法进行了“调整”,因此尽管具有完美的指纹图像,但使用设备A注册并与设备B匹配可能根本不起作用。
答案 4 :(得分:1)
这里有一个类似的问题:finger print reader for .net windows forms / WPF or silverlight client
检查答案中的链接