原标题:人脸算法测试
原文来自:CSDN      原文链接:https://blog.csdn.net/qq_22558867/article/details/103571008
人脸算法测试
本次测试主要测试:
- Dlib人脸检测 c++ 
- 基于SSD 框架的 ResNet-10  restnet face c++ 
- 基于caffe 框架的MTCNN人脸检测  c++ 
- 基于mxne框架的insightFace人脸识别模型  python 
- 基于Troch的openface模型  c++ 
实验所用的机器 (Intel® Core™ i7-6700K CPU @ 4.00GHz × 8 GeForce GTX 1060 6GB/PCIe/SSE2)
Dlib(C++)
使用的是Dlib自带d人脸检测,由于原始算法没有采用Dlib人脸识别,因此只测试了Dlib人脸检测
- Dlib代码参考 
| 
 | 数据库 | 像素大小 | 检测数 | 正确率 | 检测平均耗时 | landmark | 模式 | 
|---|
| cpu | 1987 | 960x540 | 1336 | 67.23% | 43.3ms | 68 | Release | 
注:
- 使用的Release 模式, Debug模式下,耗时很长 
- 测试代码见TestDlib 
Restnet face   (C++ )
opencv 的sample使用的模型, Caffe框架,     SSD framework using ResNet-10  restnet face
- 到官网下载模型文件deploy_lowres.prototxt和download_weights.py的文件,运行得到res10_300x300_ssd_iter_140000_fp16.caffemodel模型 
- 下载resnet_ssd_face.cpp文件,仿照上面即可运行 
- 关于如何训练对应的模型,详细情况见how_to_train_face_detector.txt 
| 
 | 数据库 | 像素大小 | 检测数 | 正确率 | 检测平均耗时 | landmark | 模式 | 
|---|
| cpu | 1987 | 960x540 | 1975 | 99.39% | 19.11ms | 
 | Release | 
注:
- Release模式 可以使用opencl 加速 
- 测试代码见本文件夹TsetDnn 
MTCNN (C++)
在960x544大小的图像上测试, 数据集大小为1987
- github上MTCNN的源码, 
- 下载Fast_MTCNN和对应的model文件夹里面的模型 
| 
 | 数据库 | 像素大小 | 检测数 | 正确率 | 检测平均耗时 | landmark | 模式 | 
|---|
| cpu | 1987 | 960x544 | 1739 | 87.51% | 50.3ms | 5 | Release | 
- 其中有200多张侧脸,低头,遮挡的图片  landmark 5个 
- 采用的是5点仿射矫正方法 
- 测试代码见本文件夹Fast_MTCNN 
insightFace(python)
insightface 采用的是MTCNN进行人脸检测,使用的是caffe框架下训练的模型在*$INSIGHTFACE/deploy/mtcnn-model/,使用的是cv2.warpAffine函数进行人脸对齐 ,使用model-r1000-ii*模型进行人脸__识别__准备:
- 准备好预训练模型 
- 将模型放到文件夹*- $INSIGHTFACE_ROOT/models/文件夹下面, 如- $INSIGHTFACE_ROOT/models/model-r1000-ii*
 
- 执行*- $INSIGHTFACE/deploy/test.py*
 
对于单张人脸图片会被裁剪只*(112x112)* ,并且整个的对齐加获取特征时间22ms
测试人脸数据,使用python基于mxnet框架,对已有的数据集进行测试
| 
 | 数据库 | 数据库总数 | 识别数 | 未检测数 | 正确率 | 检测耗时 | 编码耗时 | 
|---|
| cpu | 39 | 15139 | 10203 | 278 | 68.66% | 149.0635ms | 763.379ms | 
| gpu | 39 | 15139 | 10203 | 278 | 68.66% | 40.35655ms | 22.178555ms | 
注:
- 此数据集完全来自现场数据,质量效果较差,但是即使在这样的数据集上仍然有较好的效果,足以说明该算法的独到之处. 另外此数据集的像素普遍偏小,因此检测和编码(特征提取)速度很快 
- 没有在1987张图片的数据库人脸识别测试 
- 测试代码见insightFace 文件夹 
openFace (C++)
使用Torch框架训练的模型,进行人脸识别
- 运行参考js_face_recognition.html 
- 该模型在这两个数据集上面训练的  CASIA-WebFace and FaceScrub 
| 
 | 数据库 | 数据库总数 | 识别数 | 未检测数 | 正确率 | 识别耗时 | 模式 | 
|---|
| cpu | 39 | 15139 | - | - | - | - | Release | 
注
- 识别人脸,效果不理想,OpenFace version 0.2.0 识别率在92.9% , 但是在我们的数据库上识别效果很差, 可能是没有对齐的原因 
- 测试代码见TestDnn 
具体的测试代码,在我的GitHub面,感兴趣的自行获取
免责声明:本文来自互联网新闻客户端自媒体,不代表本网的观点和立场。
合作及投稿邮箱:E-mail:editor@tusaishared.com