利用自己的人脸数据集对人脸识别模型进行精度评测
2017-07-20 11:25
1111 查看
本博记录为卤煮学习过程中的理解,作为备忘demo。其中有错误疏漏之处,还请大家帮忙指正。
卤煮:非文艺小燕儿
本博地址:利用自己的人脸数据集对人脸识别模型进行精度评测
一般人脸识别模型的精度验证都是用LFW,但是LFW的数据分布于我们实用阶段有些差距,因此最好还是在我们自己实用环境下的人脸图像进行测试评估。
LFW精度评测:利用LFW对人脸识别模型进行精度评测
以下使用的都是crop后的人脸彩色图像,人脸的图片命名都是以name_****.jpg的格式存放(***的长度和内容随意)。以便区分同人(name相同)和异人*(name不同)。
(1)自己的图片分两组,一组为ref_faces(M张),一组为test_faces(N张)。
(2)利用你的人脸识别模型和网络,计算所有faces的特征。
(3)将ref_faces中每一个face,与test_faces中的所有face一一匹配计算相似度。
将相似度存放在Similarity_file.txt中,每匹配完一张ref_face,进行一次回车。最终会得到M行数据,每行N个相似度。也就是M*N的矩阵。
同时将真实匹配结果(同人为1,异人为0),以相同的方式存放在Ref_file.txt中,也相当也得到一个M*N的矩阵。
(4)ref_file矩阵的和,就是同人匹配对的个数S_n,则异人匹配对的个数D_n=M*N-S_n。
(5)以ref_file为参照,将Similarity_file中的所有同人匹配概率存放到Same_p向量中,所有异人匹配概率存放到Diff_p向量中。
(6)由(5)的结果已经可以通过matlab绘制出概率密度figure,和累积分布figure。如下图:
(7)对Same_p进行从小到大排序,Diff_p进行从大到小排序。指定一个错误接受率(FAR),根据异人匹配总数D_n,可以计算出容错个数Miss_n,在排序后Diff_p中第Miss_n+1个数值,便是判定阈值。
(8)在排序后的Same_p中,从头开始查找比判定阈值大的数,找到第一个大于阈值的数为止。由于找到这个数之前所排查的数都是小于阈值的,因此这些就是同脸匹配失败的结果,用其总数除以S_n就可以得到错误拒绝率(FRR)。
备注:
FAR:False Accept Rate,错误接受率,指将身份不同的两张照片,判别为相同身份,越低越好
FRR:False Reject Rate,错误拒绝率,指将身份相同的两张照片,判别为不同身份,越低越好
这两个指标有明确的物理意义,FAR决定了系统的安全性,FRR决定了系统的易用程度。
卤煮:非文艺小燕儿
本博地址:利用自己的人脸数据集对人脸识别模型进行精度评测
一般人脸识别模型的精度验证都是用LFW,但是LFW的数据分布于我们实用阶段有些差距,因此最好还是在我们自己实用环境下的人脸图像进行测试评估。
LFW精度评测:利用LFW对人脸识别模型进行精度评测
以下使用的都是crop后的人脸彩色图像,人脸的图片命名都是以name_****.jpg的格式存放(***的长度和内容随意)。以便区分同人(name相同)和异人*(name不同)。
(1)自己的图片分两组,一组为ref_faces(M张),一组为test_faces(N张)。
(2)利用你的人脸识别模型和网络,计算所有faces的特征。
(3)将ref_faces中每一个face,与test_faces中的所有face一一匹配计算相似度。
将相似度存放在Similarity_file.txt中,每匹配完一张ref_face,进行一次回车。最终会得到M行数据,每行N个相似度。也就是M*N的矩阵。
同时将真实匹配结果(同人为1,异人为0),以相同的方式存放在Ref_file.txt中,也相当也得到一个M*N的矩阵。
(4)ref_file矩阵的和,就是同人匹配对的个数S_n,则异人匹配对的个数D_n=M*N-S_n。
(5)以ref_file为参照,将Similarity_file中的所有同人匹配概率存放到Same_p向量中,所有异人匹配概率存放到Diff_p向量中。
(6)由(5)的结果已经可以通过matlab绘制出概率密度figure,和累积分布figure。如下图:
(7)对Same_p进行从小到大排序,Diff_p进行从大到小排序。指定一个错误接受率(FAR),根据异人匹配总数D_n,可以计算出容错个数Miss_n,在排序后Diff_p中第Miss_n+1个数值,便是判定阈值。
(8)在排序后的Same_p中,从头开始查找比判定阈值大的数,找到第一个大于阈值的数为止。由于找到这个数之前所排查的数都是小于阈值的,因此这些就是同脸匹配失败的结果,用其总数除以S_n就可以得到错误拒绝率(FRR)。
备注:
FAR:False Accept Rate,错误接受率,指将身份不同的两张照片,判别为相同身份,越低越好
FRR:False Reject Rate,错误拒绝率,指将身份相同的两张照片,判别为不同身份,越低越好
这两个指标有明确的物理意义,FAR决定了系统的安全性,FRR决定了系统的易用程度。
相关文章推荐
- 利用LFW对人脸识别模型进行精度评测
- 深度学习与人脸识别系列(5)__利用训练好的vgg模型进行人脸识别(利用摄像头)
- 深度学习与人脸识别系列(6)__利用训练好的vgg模型进行人脸识别(利用摄像头)
- Tensorflow学习教程------利用卷积神经网络对mnist数据集进行分类_利用训练好的模型进行分类
- 【深度学习】笔记7: CNN训练Cifar-10技巧 ---如何进行实验,如何进行构建自己的网络模型,提高精度
- 深度学习-CAFFE利用CIFAR10网络模型训练自己的图像数据获得模型-1.制作自己的数据集
- TensorFlow Object Detection API教程——利用自己制作的数据集进行训练预测和测试
- 待完成任务(一) 利用自己的数据集 利用lenet网络进行训练
- Tensorflow学习教程------利用卷积神经网络对mnist数据集进行分类_训练模型
- 深度学习-CAFFE利用CIFAR10网络模型训练自己的图像数据获得模型-4应用生成模型进行预测
- TensorFlow实现人脸识别(5)-------利用训练好的模型实时进行人脸检测
- 利用Oxford训练好的人脸模型进行微调训练;识别3个人脸
- 利用SSD和自己训练好的模型进行目标检测
- 在Caffe上利用自己的数据集进行微调
- 利用Java调用OpenCV进行人脸识别
- 利用条件随机场模型进行中文分词
- [windows caffe]在VGG_FACE上finetune自己的人脸数据集
- 利用PCA对数据集进行降维
- opencv2-5利用摄像头进行人脸识别
- caffe---利用自己的手写数字进行测试