资源经验分享人脸算法测试

人脸算法测试

2019-12-18 | |  105 |   0

原标题:人脸算法测试

原文来自:CSDN      原文链接:https://blog.csdn.net/qq_22558867/article/details/103571008


人脸算法测试

本次测试主要测试:

  1. Dlib人脸检测 c++

  2. 基于SSD 框架的 ResNet-10  restnet face c++

  3. 基于caffe 框架的MTCNN人脸检测  c++

  4. 基于mxne框架的insightFace人脸识别模型  python

  5. 基于Troch的openface模型  c++

实验所用的机器 (Intel® Core™ i7-6700K CPU @ 4.00GHz × 8 GeForce GTX 1060 6GB/PCIe/SSE2)

Dlib(C++)

使用的是Dlib自带d人脸检测,由于原始算法没有采用Dlib人脸识别,因此只测试了Dlib人脸检测

  1. Dlib代码参考


数据库像素大小检测数正确率检测平均耗时landmark模式
cpu1987960x540133667.23%43.3ms68Release

注:

  1. 使用的Release 模式, Debug模式下,耗时很长

  2. 测试代码见TestDlib

Restnet face   (C++ )

opencv 的sample使用的模型, Caffe框架,     SSD framework using ResNet-10  restnet face

  1. 到官网下载模型文件deploy_lowres.prototxt和download_weights.py的文件,运行得到res10_300x300_ssd_iter_140000_fp16.caffemodel模型

  2. 下载resnet_ssd_face.cpp文件,仿照上面即可运行

  3. 关于如何训练对应的模型,详细情况见how_to_train_face_detector.txt


数据库像素大小检测数正确率检测平均耗时landmark模式
cpu1987960x540197599.39%19.11ms
Release

注:

  1. Release模式 可以使用opencl 加速

  2. 测试代码见本文件夹TsetDnn

MTCNN (C++)

在960x544大小的图像上测试, 数据集大小为1987

  1. github上MTCNN的源码,

  2. 下载Fast_MTCNN和对应的model文件夹里面的模型


数据库像素大小检测数正确率检测平均耗时landmark模式
cpu1987960x544173987.51%50.3ms5Release
  1. 其中有200多张侧脸,低头,遮挡的图片  landmark 5个

  2. 采用的是5点仿射矫正方法

  3. 测试代码见本文件夹Fast_MTCNN

insightFace(python)

insightface 采用的是MTCNN进行人脸检测,使用的是caffe框架下训练的模型在*$INSIGHTFACE/deploy/mtcnn-model/,使用的是cv2.warpAffine函数进行人脸对齐 ,使用model-r1000-ii*模型进行人脸__识别__准备:

  1. 准备好预训练模型

  2. 将模型放到文件夹*$INSIGHTFACE_ROOT/models/文件夹下面, 如$INSIGHTFACE_ROOT/models/model-r1000-ii*

  3. 执行*$INSIGHTFACE/deploy/test.py*

对于单张人脸图片会被裁剪只*(112x112)* ,并且整个的对齐加获取特征时间22ms

测试人脸数据,使用python基于mxnet框架,对已有的数据集进行测试


数据库数据库总数识别数未检测数正确率检测耗时编码耗时
cpu39151391020327868.66%149.0635ms763.379ms
gpu39151391020327868.66%40.35655ms22.178555ms

注:

  1. 此数据集完全来自现场数据,质量效果较差,但是即使在这样的数据集上仍然有较好的效果,足以说明该算法的独到之处. 另外此数据集的像素普遍偏小,因此检测和编码(特征提取)速度很快

  2. 没有在1987张图片的数据库人脸识别测试

  3. 测试代码见insightFace 文件夹

openFace (C++)

使用Torch框架训练的模型,进行人脸识别

  1. 运行参考js_face_recognition.html

  2. 该模型在这两个数据集上面训练的  CASIA-WebFace and FaceScrub


数据库数据库总数识别数未检测数正确率识别耗时模式
cpu3915139----Release

  1. 识别人脸,效果不理想,OpenFace version 0.2.0 识别率在92.9% , 但是在我们的数据库上识别效果很差, 可能是没有对齐的原因

  2. 测试代码见TestDnn


具体的测试代码,在我的GitHub面,感兴趣的自行获取

免责声明:本文来自互联网新闻客户端自媒体,不代表本网的观点和立场。

合作及投稿邮箱:E-mail:editor@tusaishared.com


上一篇:用CapsNets做电能质量扰动分类

下一篇:python 比较 2张图片的相似度

用户评价
全部评价

热门资源

  • Python 爬虫(二)...

    所谓爬虫就是模拟客户端发送网络请求,获取网络响...

  • TensorFlow从1到2...

    原文第四篇中,我们介绍了官方的入门案例MNIST,功...

  • TensorFlow从1到2...

    “回归”这个词,既是Regression算法的名称,也代表...

  • TensorFlow2.0(10...

    前面的博客中我们说过,在加载数据和预处理数据时...

  • 反向传播是什么?

    深度学习系统能够学习极其复杂的模式,它们通过调...