openface 训练数据集

训练深度网络模型
OpenFace还不是运用faceNet的model作为训练模型,所以在准确性上比faceNet要低,如果你只是做一个简单的分类,建议你看看官网的demo3(http://cmusatyalab.github.io/openface/demo-3-classifier/),如果你想自己训练一个模型,建议提供一个大于500k的图片集作为训练集。(这里的500k应该是50w张图片来理解更合适)
Openface暂时还没提供该faceNet模型的支持。
注意:在K40Gpu的机器上训练数据估计要耗费很多的内存还有一整天的时间,所以务必准备相应的硬件支持。

1)创建原生图片目录data/mydataset/raw
Raw目录下再建立各个分类目录,这些分类目录的名字将是分类的标签名,在子目录下面就存放各个分类的图片。

2)预处理原生图片
如果你想比较你图片集跟LFW数据集的准确率,你可以使用项目中提供的脚本来清除你图片集中带有LFW特征的图片(data/casia-facescrub/remove-lfw-names.py)
我们启用8个线程来预处理图片:

for N in {1..8}; do ./util/align-dlib.py <path-to-raw-data> align outerEyesAndNose <path-to-aligned-data> --size 96 & done

注:<> 括号里是自己的目录,自己需要根据实际改写
然后修剪生成分类目录,在每个分类目录下存放3张精选的图片:

./util/prune-dataset.py <path-to-aligned-data> --numImagesThreshold 3

注:3这个阈值,你可以根据情况自己设置

3)训练模型
执行 training/main.lua文件去训练模型(在 training/opts.lua文件里编辑选项或者通过命令行传参执行)然后会产生损失函数和处理模型到training/work这个目录里。对于GPU内存来说,大概需要耗费128G内存,需设置-peoplePerBatch和-imagesPerPerson(默认分别是15和20)来减少内存的消耗。(这些参数可限制每批次处理的上限)

注意:数据目录的metadata(元数据)存放在缓存里training/work/trainCache.t7;如果数据目录发生改变了,删除这些元数据,他会重新生成一个。

停止或者重启训练
每次训练迭代都会把模型存放在work里面,如果训练进程被kill掉,你可以通过-retain参数重启。你也可以设置不同人工种子-manualSeed来作为图片序列采样,-epochNumber设置迭代次数。

这里需要你懂点lua语言的应用的,不然真的一头雾水,主要的翻译就这样了

4)分析训练结果
验证损失函数: training/plot-loss.py.
需要装相应的依赖,相应依赖存放在 training/requirements.txt,可以执行以下命令安装:

pip2 install -r requirements.txt

模型的正确率:
Openface 官方有说明默认是使用nn4.small2,有3733968个参数,预计准确率为93左右
LFW数据集在国外训练model挺流行,可是在国内感觉不怎么行,毕竟采集的人物大都是外国人为准;关于模型的正确率,你可以参考这个链接:
http://cmusatyalab.github.io/openface/models-and-accuracies/

http://cmusatyalab.github.io/openface/training-new-models/

时间: 2024-11-05 20:36:51

openface 训练数据集的相关文章

莫烦scikit-learn学习自修第四天【内置训练数据集】

1. 代码实战 #!/usr/bin/env python #!_*_ coding:UTF-8 _*_ from sklearn import datasets from sklearn.linear_model import LinearRegression import matplotlib.pyplot as plt # 从内置训练数据集中加载房价数据 loaded_data = datasets.load_boston() data_X = loaded_data.data data_

python3 TensorFlow训练数据集准备 下载一些百度图片 入门级爬虫示例

从百度图片下载一些图片当做训练集,好久没写爬虫,生疏了.没有任何反爬,随便抓. 网页: 动态加载,往下划会出现更多的图片,一次大概30个.先找到保存每一张图片的json,其对应的url: 打开调试,清空,然后往下划.然后出现: 点击左侧的链接,出现右边的详细信息,对应的就是URL.对这个url做请求即可.以下是代码: # -*- coding: utf-8 -*- # import tensorflow as tf # import os # import numpy as np import

[ML] 点云训练数据集的制作

1.使用CloudCompare进行类别分割 (1)定义类别文件xml Classification:ground,wall,ceiling,bed,desk, --ground:文件1,文件2 --wall:文件1,文件2 (2)计算特征 读取每个类别,文件列表,计算列表中每个文件的点云特征. 组织成一个新的点云文件保存. 原文地址:https://www.cnblogs.com/yhlx125/p/10107427.html

sklearn训练感知器用iris数据集

简化版代码 1 from sklearn import datasets 2 import numpy as np 3 4 #获取data和类标 5 iris = datasets.load_iris() 6 X = iris.data[:,[2,3]] 7 y = iris.target 8 9 #测试样本和训练样本三七分 10 from sklearn.model_selection import train_test_split 11 X_train,X_test,y_train,y_te

tfrecord数据集训练验证-猫狗大战

#!/usr/bin/env python # -*- coding:utf-8 -*- from mk_tfrecord import * #from model import * from inception_v3 import * import numpy as np import os import cv2 os.environ["CUDA_VISIBLE_DEVICES"] = "2" def training(): N_CLASSES = 2 # 分类数

使用LAP数据集进行年龄训练及估计

一.背景 原本是打算按<DEX Deep EXpectation of apparent age from a single image>进行表面年龄的训练,可由于IMDB-WIKI的数据集比较庞大,各个年龄段分布不均匀,难以划分训练集及验证集.后来为了先跑通整个训练过程的主要部分,就直接用LAP数据集,参考caffe的finetune_flickr_style,进行一些参数修改,利用bvlc_reference_caffenet.caffemodel完成年龄估计的finetune. 二.训练

使用faster-rcnn.pytorch训练自己数据集

引言 最近在实验室复现faster-rcnn代码,基于此项目jwyang/faster-rcnn.pytorch(目前GitHub上star最多的faster-rcnn实现),成功测试源码数据集后,想使用自己的数据集爽一下. 本文主要介绍如何跑通源代码并“傻瓜式”训练自己的数据集~之前的此类博客都是介绍如何在原作者的caffe源码下进行数据集训练,那么本文针对目前形势一片大好的pytorh版faster-rcnn源码进行训练新的数据集,废话不多说,Lets go! faster-rcnn pyt

sklearn数据集

sklearn 的数据集有好多个种 自带的小数据集(packaged dataset):sklearn.datasets.load_<name> 可在线下载的数据集(Downloaded Dataset):sklearn.datasets.fetch_<name> 计算机生成的数据集(Generated Dataset):sklearn.datasets.make_<name> svmlight/libsvm格式的数据集:sklearn.datasets.load_sv

物体检测算法 SSD 的训练和测试

GitHub:https://github.com/stoneyang/caffe_ssd Paper: https://arxiv.org/abs/1512.02325 1. 安装 caffe_SSD: git clone https://github.com/weiliu89/caffe.git cd caffe git checkout ssd 2. 编译该 caffe 文件,在主目录下: # Modify Makefile.config according to your Caffe i