Many efforts have been made in recent years to tackle the unconstrained face recognition challenge. For the benchmark of this challenge, the Labeled Faces in the Wild (LFW[2] database has been widely used. However, the standard LFW protocol is very limited:

  1. Only 3,000 genuine and 3,000 impostor matches for classification.
  2. Today a 97% accuracy can be achieved with this benchmark, remaining a very limited room for algorithm development. However, we argue that this accuracy may be too optimistic because the underlying false accept rate (FAR) may still be high (e.g. 3%).
  3. Performance evaluation at low FARs is not statistically sound by the standard protocol due to the limited number of impostor matches.

Thereby we develop a new benchmark protocol to fully exploit all the 13,233 LFW face images for large-scale unconstrained face recognition evaluation. The new benchmark protocol, called BLUFR, contains both verification and open-set identification scenarios, with a focus at low FARs. There are 10 trials of experiments, with each trial containing about 156,915 genuine matching scores and 46,960,863 impostor matching scores on average for performance evaluation.

We provide a benchmark tool here to further advance research in this field. For more information, please read our IJCB paper and the README files in the benchmark tookit.

Download:

The benchmark tookit:BLUFR.zipThe basic feature files: lfw.mat   frgc.matOther available features: HighDimLBP   LE   --Thanks to Dong Chen

Contact:

Shengcai Liao,   scliao@nlpr.ia.ac.cn

National Laboratory of Pattern Recognition, Institute of Automation, Chinese Academy of Sciences.

Results:

Rank Method VR (%) @FAR=0.1% DIR (%) @FAR=1%,Rank=1
1 HighDimLBP + JointBayes [1] 41.66 18.07
2 HighDimLBP + LDA [1] 36.12 14.94
3 HighDimLBP + KISSME [1] 25.35 11.34
4 LE + JointBayes [1] 23.31 11.26
5 HighDimLBP + LMNN [1] 22.68 9.53
6 LE + LDA [1] 18.12 9.38
7 HighDimLBP + ITML [1] 17.32 8.59
8 LE + KISSME [1] 16.12 6.83
9 LBP + JointBayes [1] 14.18 8.82
10 LE + LMNN [1] 13.57 4.66

Notes:

(1) Algorithms are ranked by VR @FAR=0.1%.

(2) Performances are measured in (μ - σ) of 10 trials.

(3) The citations indicate where the results are from.

Download the result files and demo code for performance plot: Results.zip

Please contribute your algorithm's performance so that we can keep a track of the state of the art for large-scale unconstrained face recognition.

References:

[1] Shengcai Liao, Zhen Lei, Dong Yi, Stan Z. Li, "A Benchmark Study of Large-scale Unconstrained Face Recognition." In IAPR/IEEE International Joint Conference on Biometrics, Sep. 29 - Oct. 2, Clearwater, Florida, USA, 2014. [pdf] [slides]

[2] G. B. Huang, M. Ramesh, T. Berg, and E. Learned-Miller. Labeled faces in the wild: A database for studying face recognition in unconstrained environments. Technical Report 07-49, University of Massachusetts, Amherst, October 2007.

https://blog.csdn.net/keyanxiaocaicai/article/details/51005221

现在已知的算法是lfw 有6000对,3000 对正样本,3000 对负样本,利用十重交叉验证的方式来计算识别率。

虽然在现在的lfw 数据集上已经可以达到99% 但是并不能保证在真实的场景下有比较好的性能。

作者提出了一种新的方法,主要是扩展了原来基础上只有6000 对正负样本的计算。

现在作者把lfw 数据集分成一部分训练集,一部分测试集,训练集的样本平均在3400 多张左右,训练集的选取和测试集的选取都基于一些规则(比如要求训练集有1500 个人,其中包含至少437人有2个以上的人脸,因为总共有5749 个人,所以测试集包含其余的(5729-1500)个人,大概是1243 个人有2个以上的人脸,经过测试里面含有2个人以上的人是 1680个,跟paper 里面讲的是吻合的)。

训练集对于我们的作用目前在我看来是用来求主成分分析的W 矩阵,本文要求的时候降维之后为400.

作者把原来的verfication 的任务扩展为 更接近于实际场景的verfication +DIR

verfication 任务是只校验两个人脸是不是一个人。

以第一轮为例:

作者训练部分的样本为:2952  那么相应的测试部分的样本为(13233-2952)=10281

对于测试样本经过pca 之后是降低维度之后的样本,先求norm,(如果不求norm 会对结果有什么影响)

10281 个样本之间两两求相似度.(作者采用的trick是求一个下三角的方式)

这样得到是所有10281 之间样本的相似度。 我们还可以得到这些样本之间那些是一类的,那些不是一类的

我们可以得到不是一个人的总的个数和他们的计算分值。(10281*10281-10281)/2 所有对的个数

其中负样本对的个数为:52612506  正样本对的个数为:231834

我们把这些负样本的score 从大往小排,根据:

thresholds(~isZeroFAR & ~isOneFAR) = impScore( falseAlarms(~isZeroFAR & ~isOneFAR) );

这样我们得到每个falseAlarms 点处的阈值:

FAR  false accept ratio (是将其他人看做你的概率)

计算方法是:非同人分数>T/非同人比较次数

我的理解为:因为负样本为52612506 个,如果FAR 为0.0001 那么允许错分的样本数目为 52612506*0.0001=5261.2506个,那么由于负样本的score 是从上往下排的,所以只允许上面得分高的被错分掉,

那么阈值要设置为0.8293

那么我们可以计算 VR 就是正样本里面score>0.8293 的值, 与全部正样本的比值。

对DIR 我现在的理解为:

DIR 是把测试集分成三部分:一部分是gallay set G(only one image per subject was selected),由于测试集包含1242 个人, 那么除了gallay 以外的其他的人脸组成PG, 其他的人脸组成PN, 平均下来,PG 大概有4350 张图片,PN 有3249 个人的4357 张图片。(互斥的关系)

以第五轮为例: PG 有4417 个, PN 有4053 个样本

FAR 的选取方式跟VR 的方式是一样的。阈值的选取方式。

对于PN 里面的样本,都是负样本,那么我们在每一行找一个与gallay 里面的图片相似度最高的得到一个列向量。

把这些元素降序排列,

对于face verification 这个任务,我们采用ROC 曲线来刻画。

对于DIR 这个任务,采用CMC 曲线来刻画


Benchmark of Large-scale Unconstrained Face Recognition-blufr 算法的理解的更多相关文章

  1. face recognition[翻译][深度学习理解人脸]

    本文译自<Deep learning for understanding faces: Machines may be just as good, or better, than humans& ...

  2. 大规模视觉识别挑战赛ILSVRC2015各团队结果和方法 Large Scale Visual Recognition Challenge 2015

    Large Scale Visual Recognition Challenge 2015 (ILSVRC2015) Legend: Yellow background = winner in thi ...

  3. Computer Vision_33_SIFT:Improving Bag-of-Features for Large Scale Image Search——2010

    此部分是计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面.对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献.有一些刚刚出版的 ...

  4. 论文笔记之:Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation

    Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation Google  2016.10.06 官方 ...

  5. 快速高分辨率图像的立体匹配方法Effective large scale stereo matching

    <Effective large scale stereo matching> In this paper we propose a novel approach to binocular ...

  6. Introducing DataFrames in Apache Spark for Large Scale Data Science(中英双语)

    文章标题 Introducing DataFrames in Apache Spark for Large Scale Data Science 一个用于大规模数据科学的API——DataFrame ...

  7. Lessons learned developing a practical large scale machine learning system

    原文:http://googleresearch.blogspot.jp/2010/04/lessons-learned-developing-practical.html Lessons learn ...

  8. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 17—Large Scale Machine Learning 大规模机器学习

    Lecture17 Large Scale Machine Learning大规模机器学习 17.1 大型数据集的学习 Learning With Large Datasets 如果有一个低方差的模型 ...

  9. [C12] 大规模机器学习(Large Scale Machine Learning)

    大规模机器学习(Large Scale Machine Learning) 大型数据集的学习(Learning With Large Datasets) 如果你回顾一下最近5年或10年的机器学习历史. ...

随机推荐

  1. 快速高效学习Java编程在线资源Top 20(转载)

    想要加强你的编程能力吗?想要提升你的 Java 编程技巧和效率吗? 不用担心.本文将会提供快速高效学习 Java 编程的 50 多个网站资源: 开始探索吧: 1.MKyong:许多开发者在这里可以找到 ...

  2. 牛客练习赛48 D 小w的基站网络

    链接:https://ac.nowcoder.com/acm/contest/923/D来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 262144K,其他语言52428 ...

  3. vue 路由传参中刷新页面参数丢失 及传参的几种方式?

    在页面跳转中,我通过路由传参,结果发现页面参数丢失了.路径返回了根目录.... 1. 先说下路由传参的几种方式吧? 比如:<div v-for="item in items" ...

  4. zic2xpm - 将 ZIICS 象棋片段 (chess pieces) 转换为 XBoard (XPM/XIM) 片段的工具。

    总览 SYNOPSIS zic2xpm file1 [file2 ...] 描述 zic2xpm 将一个或多个 ZIICS 片段文件转换为 XBoard 可用的格式.如果你给出一个以上的文件名,小心同 ...

  5. 在Linux下如果要使用接口标志要加什么头文件吗?因为我在使用IFF_UP时会出错,说是未定义

    头文件一般放在/usr/include目录下,用grep 'IFF_UP' /usr/include/*.* |less这个命令查找一下在哪个头文件里面有定义.   追问 嗯~这个方法确实可以查找到一 ...

  6. 笔记50 Mybatis快速入门(一)

    一.Mybatis简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis ...

  7. BCZM : 1.9

    有n个学生参加见面会,分别对m个研究组中的若干个感兴趣,为了满足所有学生的要求,每个学生都能参加自己感兴趣的见面会,如果每个见面会的时间为t,如何安排才能使得所有见面会的总时间最短? 分析: 先建立模 ...

  8. scala中的闭包

    scala闭包 代码示例: package test.close_pack import scala.collection.mutable.ArrayBuffer /** * AUTHOR Guozy ...

  9. Servlet 上传图片

    目录 Servlet 上传图片 预备 需求包 pom 前端代码 Servlet 上传图片 预备 需求包 commons-fileupload -用于上传 jstl -用于jsp页面遍历 servlet ...

  10. leetcode-回溯③

    题77 回溯: class Solution: def combine(self, n: int, k: int) -> List[List[int]]: res = [] def backtr ...