• 指纹识别认证


    首先截取一段百度关于指纹的定义:

    FRR与FAR

    FRR(False Rejection Rate)和FAR(False Acceptance Rate)是用来评估指纹识别算法性能的两个主要参数。FRR和FAR有时被用来评价一个指纹识别系统的性能,其实这并不贴切。指纹识别系统的性能除了受指纹算法的影响外,指纹采集设备的性能对FRR和FAR的影响也是不能忽视的。
    FRR通俗叫法是拒真率的意思,标准称谓是FNMR(False Non-Match Rate 不匹配率)。可以通俗的理解为“把应该相互匹配成功的指纹当成不能匹配的指纹”的概率。对指纹算法的性能测量是在给定指纹库的情况下进行测量的。用于测量的指纹库一般由FVC(国际指纹识别算法大赛)组织者给定。FVC在作指纹识别算法性能测试时,并无外界指纹输入,是使用标准的指纹图像库来测试的。所以FNMR是在没有连接指纹采集设备的情况下得出的测试值。本节的其它参数也都是在这一前提下得出的。
    假定指纹库中有100个不同ID的手指,每个手指注册有3枚指纹,则该指纹库中共有300枚指纹。假定P1表示手指1的ID,则其三次注册的指纹用P1-F1,P1-F2,P1-F3来表示。FNMR是指把指纹库中的同一个手指的3枚指纹两两比较,即P1-F1与P1-F2匹配,P1-F1与P1-F3匹配,P1-F2与P1-F3匹配,P1-F2与P1-F1匹配,P1-F3与P1-F1匹配,P1-F3与P1-F2匹配,共有6种匹配方式。把所有100个手指在其内部均作6种匹配,共6x100=600次匹配。理论情况下,600次匹配均能正确匹配,匹配的成功率为100%。实际上因为同一手指的3枚指纹图像不可能完全一样,所以有一个匹配相似度问题。假定我们把匹配成功的相似度设为>90%,就是说当相似度大于90%时,表示匹配成功。然后我们从600次匹配中,找出多少次相似度在90%以上的,这个数值就表示匹配成功的次数,假定为570次。600次中其余的表示没有匹配成功的次数,为600-570=30次。则匹配失败率,就是30/600=5%。
    对于指纹识别算法来讲,在指纹库确定的情况下,其匹配失败率FNMR是一定的。当指纹库发生变化,其FNMR也会有变化。所以国际上是以FVC公布的指纹库为统一的测试库,在该测试库中测试出来的FNMR结果作为衡量指纹算法性能的标准参考。
    FAR一般称为认假率,其标准称谓是FMR(False Match Rate 错误匹配率)。FMR是用来评估指纹识别算法性能的最重要参数。可以通俗的理解为“把不应该匹配的指纹当成匹配的指纹”的概率。
    同样以前段中的指纹库为例。把库中的每个指纹,与除自己之外的其它所有指纹进行匹配,匹配的总次数,即300×(300-1)=89700次。理论情况下,匹配成功次数为6x100=600次,匹配失败次数应为89700-600=89100次。假定由于指纹算法性能的原因,把本应该匹配失败的判为匹配成功,若假定这种错误次数为100次。则错误接受率FAR为100/89100=0.11%。匹配失败次数是因判定相似的条件严格程度而变化的。当匹配成功的筛选条件,即门限值提高时,FAR会降低。
    FAR也与指纹库相关。在FVC大赛中,有4个指纹库用于测试,并取平均值。其中有一个指纹库是人工生成的,以排除采集设备不同导致的指纹图像质量不同对算法效能的影响。
    在同一个指纹库中,对同一个算法来讲,需要设定一个阈值,作为判定相似的标准。当相似度大于这个阈值时,表示匹配成功,否则表示匹配失败。FNMR是随阈值增大而增大的,即判定相似的门槛值越高,则真的指纹判定为假的机率越大。反之,FMR是随阈值增大而减小的,即随着判定相似度的门槛值越高,把假的指纹判定为真的概率会越小。FAR与FRR成反比。根据2004年FVC大赛测试结果,一般当FMR是1/1000量级时,FNMR是5/100左右。也就是100个手指的指纹库中,进行1000次匹配,有可能发生一次匹配错误,即认错。进行100次匹配,有可能出现5次匹配失败,即不认。

    EER

    EER(Equal Error Rate)是相等错误率的意思。这个参数一般在普通场合不大使用。EER主要用于评价指纹算法整体效能的指标。也就是把FAR、FRR两个参数统一为一个参数,来衡量指纹算法的整体性能。FAR和FRR是同一个算法系统的两个参数,把它放在同一个坐标中,如图30所示。FAR是随阈值增大而减小的,FRR是随阈值增大而增大的。因此它们一定有交点。这个点是在某个阈值下的FAR与FRR等值的点。习惯上用这一点的值来衡量算法的综合性能。对于一个更优的指纹算法,希望在相同阈值情况下,FAR和FRR都越小越好。
    把FAR和FRR曲线都向下平移。同时相交点ERR也向下平移。EER值越小的时候,表示算法的整体性能越高。
    由于当FRR与FAR相交时对应的阈值都很小,也就是说此时的相似度阈值连30%都不到。实际使用中的阈值至少设在80%以上,故EER值并不被用在大众化场合来描述指纹算法的性能,只是在竞赛排名中使用。
    FRR实际上也是系统易用性的重要指标。由于FRR和FAR是相互矛盾的,这就使得在应用系统的设计中,要权衡易用性和安全性。一个有效的办法是比对两个或更多的指纹,从而在不损失易用性的同时,极大地提高了系统安全性。
     
     
     
    好吧,那么问题来了。。
     
    论文中作者提到的方法显示匹配次数不一样,计算总数不一样,该以哪个标准为真实的呢?
    其次,得到的FAR和FRR明明为一个数值,可是却说画曲线的时候,根据阈值的变化,FRR和FAR会有不同的变化,那么这个阈值要怎么变化呢?
  • 相关阅读:
    使用Lua编写Wireshark插件解析KCP UDP包,解析视频RTP包
    开源自己用python封装的一个Windows GUI(UI Automation)自动化工具,支持MFC,Windows Forms,WPF,Metro,Qt
    2019 WebRtc AudioMixer混音流程
    记录一次定位视频通话 音视频卡顿的原因分析过程。
    C++标准库里自带的数值类型和字符串互相转换函数
    C++ raw string literal
    使用multiprocessing解决PyMuPDF不支持多线程加载导致的界面卡死无响应问题,及一个PyQt5实现的简易PDF阅读器例子
    使用ctypes调用系统C API函数需要注意的问题,函数参数中有指针或结构体的情况下最好不要修改argtypes
    使用python uiautomation从钉钉网页版提取公司所有联系人信息
    使用python UIAutomation从QQ2017(v8.9)群界面获取所有群成员详细资料,
  • 原文地址:https://www.cnblogs.com/natalie/p/5636326.html
Copyright © 2020-2023  润新知