我正在Android Java应用程序中使用SourcesAFIS Fingerprint来比较用户的指纹,并且存在以下问题:我的应用程序花费太长时间才能将用户的指纹字节转换为FingerprintTemplate,即使有时应用程序已关闭。令我感到不幸的是,我需要在一个循环中创建这个FingerprintTemplate对象,以获取从数据库返回的生物特征信息,这最终会使速度进一步放慢。
代码段
//Returns database biometries and assigns list
listBiometria = conSql.selecionarBiometria();
FingerprintTemplate candidate = new FingerprintTemplate();
candidate.dpi(500);
candidate.create(img);
for(Biometry biometry : listBiometria)
{
FingerprintTemplate probe = new FingerprintTemplate()
.dpi(500)
.create(biometry.getBiometria());
score = new FingerprintMatcher()
.index(probe)
.match(candidate);
}
[如果万一有人遇到类似问题,我找到了SourcesAFIS的创建者的github,并在那里问了这个问题,并得到了以下答案:Android功能提取器的性能确实很差。改进是可能的。同时,建议使用具有可靠浮点性能的最新设备。
无论如何,您不应该在这样的图像上循环播放。图像获取后执行特征提取,然后像教程中所述缓存模板。