gpt4 book ai didi

android - 使用相机的指纹扫描仪

转载 作者:IT王子 更新时间:2023-10-28 23:56:23 25 4
gpt4 key购买 nike

使用或不使用相机的指纹扫描仪,它的可能性和成功率?,我遇到了一个名为 FingerJetFX 的开源 SDK它也为 android 提供了可行性。

FingerJetFX OSE 指纹特征提取器独立于平台,可以构建for,对 make 文件进行适当的更改,并在有或没有的环境中运行操作系统,包括

  • Linux
  • 安卓
  • window
  • Windows CE
  • 各种实时操作系统

但我不确定指纹扫描仪是否可行,我下载了SDK并挖掘但没有运气,甚至没有找到任何集成SDK的步骤,所以很少有以下列出的问题:

我正在寻找建议和指导:

  1. Fingerprint scanner can be possible in android using camera or without camera?
  2. With the help of FingerJetFX can I achieve my goal?
  3. If 2nd answer is yes, then can someone provide me any sort of steps to integrate SDK in android?

您的建议很重要。

最佳答案

基于 Android 摄像头的解决方案:

作为对这个确切问题进行了大量研究的人,我可以告诉您,使用任何当前 Android 设备上的库存相机很难获得适合模板(特征提取)的图像。主要的衰弱问题是在手指的脊和谷之间实现显着对比。商业光学指纹扫描仪(您试图模仿)通常通过棱镜中的受抑全内反射来实现必要的对比度。

FTIR in Biometrics

在这种情况下,来自与棱镜接触的脊部的光会传输到 CMOS 传感器,而来自谷部的光则不会。您根本无法从 Android 相机可靠地获得相同类型的结果,但这并不意味着您无法在理想条件下获得可用的东西。

我使用商用光学指纹扫描仪 (Futronics FS80) 拍摄左侧图像,使用普通相机 (15MP Cannon DSLR) 拍摄右侧图像。在裁剪、反转(以匹配其他扫描仪的约定)、对比等相机图像之后,我们得到了以下结果。

enter image description here

相机图像的低对比度很明显。

enter image description here

但该软件能够准确地确定脊流。

enter image description here

我们最终找到了相当数量的匹配细节(用红色圆圈标记。)

这是坏消息。对指尖进行这些类型的近距离拍摄是很困难的。我使用带闪光灯的数码单反相机来达到这些效果。此外,大多数指纹匹配算法都不是尺度不变的。因此,如果在随后的“扫描”中手​​指距离相机较远,则可能与原始手指不匹配。

我用于可视化的软件包是优秀的 BSD 许可 SourceAFIS .尽管目前仅移植到 C# 和 Java(有限),但也没有企业“开源版本”/“付费版本”恶作剧。

非基于相机的解决方案:

对于拥有支持“USB 主机模式”的硬件的极少数设备,您可以 write a custom driver将指纹扫描仪与 Android 集成。老实说,对于我所做的这两个模型来说,这是一个巨大的痛苦。我通过使用 wireshark 完成了它在扫描仪和具有工作驱动程序的 linux 机器之间嗅探 USB 数据包,然后根据嗅探命令编写 Android 驱动程序。

交叉编译 FingerJetFX

一旦您制定了图像采集解决方案(两种潜在的解决方案都有其缺点),您就可以开始担心在 Android 上运行 FingerJetFX。首先,您将使用他们的 SDK 编写一个自包含的 C++ 程序,该程序获取图像并将其转换为模板。之后你真的有两个选择。

  1. 将其编译为库并使用 JNI 与其交互。
  2. 将其编译为可执行文件,并让您的 Android 程序将其作为子进程调用。

对于任何一个,您都需要 NDK .我从来没有使用过 JNI,所以我会遵从 the wisdomothers关于我们如何最好的。我总是倾向于选择路线#2。对于这个应用程序,我认为它是合适的,因为你只是真正调用 native 代码来做一件事,模板你的图像。一旦你的 native 程序运行并交叉编译,你可以use the answer to this question将其与您的 android 应用程序打包并从您的 Android 代码中调用它。

关于android - 使用相机的指纹扫描仪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14191929/

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