关于metric learning的人脸识别学习

今年暑假在北京自动化所做“大学生研究计划”,从7月7号-8月20号。导师和师兄人都很nice,度过了一个有收获的暑假吧!

我对人脸识别的理解:比较两个人脸是不是相似,而图片的存储是矩阵,那我们就是比较这两个矩阵有多近,如果“很近”,那就是同一个人嘛,相反,如果相差很大,那就不是一个人。如何来判断两个矩阵离得“近”呢,答案是丰富多彩的嘛,所以有各种各样的方法。

然后说下人脸识别的整个过程:样本——提取特征——训练——得到分类器——测试

1 样本,我用的LFW(Labeled Face in Wild)数据库,点击LFW可以下到,一共13233幅图片,对应5749个人。
2 提取特征,我用的LBP方法,另外由于提的特征过大,如果直接训练,成本太高,建议进行压缩,我在这里用的是cai deng的PCA方法,小伙伴们可以直接从这里下工具箱,很方便。
3 训练过程,我在这里是用的metric learning

这里参考了cao qiong的Similarity Metric Learning for Face Recognition和Jason V. Davis的Information Theoretic Metric Learning他们都是有完整代码贴出来的,可惜都是matlab的。

前面说到怎么找一个合适的距离能够“恰好”的把同一个人和不同的人分开,我们当然可以用我们熟悉的欧式距离,d1=(X-Y)’(X-Y)(X,Y是两个人脸的矩阵),但是效果不好,这个时候大家就想办法了,还有什么距离的,通常,马氏距离d=(X-Y)‘G(X-Y),这个时候我们通过训练找到一个合适的G,这个G能使在X和Y相近时,得到一个很小的值;cao qiong还引入了另一个距离,d2=XMY,这个距离,当X和Y靠近时,会很大,而远离时,d的值很小。cao xiong综合以上两点,d=d2-d1。而Jason V. Davis只使用了d1。
metric learning本质上就是要找一个合适的矩阵G。

感觉这是转化为一个最优化问题,我们肯定是最优某一项指标,然后给出一些限制条件,这样就变成我们熟悉的运筹学的问题了。

4 得到分类器,有了G以后分类就简单了,可以采用KNN分类,也可以给个简单的阈值,如果d大于某个值就不是同一个人,如果小于某个值就是一个人。

5 训练的结果:我用400维的数据测试下来识别率是89.7%

关于metric learning的人脸识别学习

时间: 2024-10-05 23:25:20

关于metric learning的人脸识别学习的相关文章

metric learning

度量(metric)的定义: 在数学中,一个度量(或距离函数)是一个定义集合中元素之间距离的函数.一个具有度量的集合被称为度量空间. 为什么要用度量学习?很多的算法越来越依赖于在输入空间给定的好的度量.例如K-means.K近邻方法.SVM等算法需要给定好的度量来反映数据间存在的一些重要关系.这一问题在无监督的方法(如聚类)中尤为明显.举一个实际的例子,考虑图1的问题, 假设我们需要计算这些图像之间的相似度(或距离,下同)(例如用于聚类或近邻分类).面临的一个基本的问题是如何获取图像之间的相似度

论文笔记之: Deep Metric Learning via Lifted Structured Feature Embedding

Deep Metric Learning via Lifted Structured Feature Embedding CVPR 2016 摘要:本文提出一种距离度量的方法,充分的发挥 training batches 的优势,by lifting the vector of pairwise distances within the batch to the matrix of pairwise distances. 刚开始看这个摘要,有点懵逼,不怕,后面会知道这段英文是啥意思的. 引言部分

配置和运行 MatchNet CVPR 2015 MatchNet: Unifying Feature and Metric Learning for Patch-Based Matching

配置和运行 MatchNet CVPR 2015 GitHub: https://github.com/hanxf/matchnet 最近一个同学在配置,测试这个网络,但是总是遇到各种问题. 我也尝试了一下,结果也是一堆问题. 这里记录一下. 问题1.  ImportError: No module named leveldb [email protected]:~/Downloads/matchnet-master$ ./run_gen_data.sh Traceback (most rece

论文笔记之:MatchNet: Unifying Feature and Metric Learning for Patch-Based Matching

MatchNet: Unifying Feature and Metric Learning for Patch-Based Matching CVPR  2015 本来都写到一半了,突然笔记本死机了,泪崩!好吧,重新写!本文提出了一种联合的学习patch表示的一个深度网络 和 鲁棒的特征比较的网络结构.与传统的像SIFT特征点利用欧氏距离进行距离计算的方式不同,本文是利用全连接层,通过学习到的距离度量来表示两个描述符的相似性. 本文的贡献点如下: 1. 提出了一个新的利用深度网络架构基于pat

Large Scale Metric Learning from Equivalence Constraints (KISSME) CVPR 2012

In this paper, we raise important issues on scalability and the required degree of supervision of existing Mahalanobis metric learning methods. Often rather tedious optimization procedures are applied that become computationally intractable on a larg

图像识别概念入门之“基于主成份分析的人脸识别学习”

最近看到一篇介绍利用“主成份分析实现人脸识别”的matlab应用实例. 学习了一遍,对主成份分析和图像识别有了一个概念性的认识. 这个例子可能是最简单的人脸识别例子了,暂且不考虑实用性,单单起到认识和了解. 下面matlab程序进行学习注释,希望能帮助记忆.同时加强交流. 程序使用的人脸库来自Essex大学的人脸数据库的face94部分.选择了10个人,每人选择3张照片.1张放入测试集合. 2张放入训练集合.照片比较理想化,绿色背景的大头照片,表情略有不同,光照均匀. 程序的链接如下: http

metric learning -- 马氏距离与欧氏距离

马氏距离是由印度统计学家马哈拉诺比斯(P. C. Mahalanobis)提出的,表示数据的协方差距离. 协方差:

人脸识别必读的N篇文章

一,人脸检测/跟踪 人脸检测/跟踪的目的是在图像/视频中找到各个人脸所在的位置和大小:对于跟踪而言,还需要确定帧间不同人脸间的对应关系. 1, Robust Real-time Object Detection. Paul Viola, Michael Jones. IJCV 2004. 入选理由: Viola的人脸检测工作使得人脸检测真正变得实时可用.他们发表了一系列文章,这篇是引用率最高的一篇. 2, Fast rotation invariant multi-view face detec

人脸文章与数据库

作者:风雨兼程链接:https://zhuanlan.zhihu.com/p/22591740来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 一.人脸检测/跟踪 人脸检测/跟踪的目的是在图像/视频中找到各个人脸所在的位置和大小:对于跟踪而言,还需要确定帧间不同人脸间的对应关系. 1.Robust Real-time Object Detection. Paul Viola, Michael Jones. IJCV 2004. 入选理由: Viola的人脸检测工作使