2021-8-17!来自DeepInsight / InsightFace 的开源代码 如何训练?

一 、官方数据训练

1.clone 源代码

项目来自官网的源代码。

git clone --recursive https://github.com/deepinsight/insightface.git

代码会实时更新可能会有一些不一样的地方 本篇教程只适用于近期的代码。为了方便,我已经打包好了在下面的链接中。
链接:https://pan.baidu.com/s/1iTz6k8A3216vRiBa5sU1wQ 提取码:8888

2. 配置相关环境

大致记得需要这几个环境
在这里插入图片描述
另外 cuda 环境的话不用太纠结。
相应的库文件能对应起来就ok 服务器是cuda 11.2的
安装的是 pip install mxnet-cu102
还安装了 nccl( 因为报错 缺少nccl)看官网教程

3. 下载作者提供的数据集

点击 -> 开源数据集我下的是UMDFace (8K ids/0.37M images) 相对来说小一些。

如何训练自己的数据集?
我在后面会给大家介绍
请添加图片描述

4. 开始训练

进入insightface/recognition目录下
新建一个名为 faces_emore 的文件夹
将下载的数据集压缩包全部解压放入 faces_emore
在这里插入图片描述
然后去 insightface/recognition/arcface_mxnet目录下
复制一份 sample_config.py 名为 config.py
修改如下内容:

数据目录,多少张人脸
在这里插入图片描述
更改批次 每个显卡训练多少个批次 我是一个显卡就改的小一些(会报 Out Of Memory)
在这里插入图片描述
如果说后期 需要训练自己的数据集 可以根据相关的配置进行更改

Config.py解读

5. 开始训练

insightface/recognition/arcface_mxnet目录下 执行如下命令

(1). Train ArcFace with LResNet100E-IR.

CUDA_VISIBLE_DEVICES='0,1,2,3' python -u train.py --network r100 --loss arcface --dataset emore

(2). Train CosineFace with LResNet50E-IR.


CUDA_VISIBLE_DEVICES='0,1,2,3' python -u train.py --network r50 --loss cosface --dataset emore

(3). Train Softmax with MobileFaceNet.

CUDA_VISIBLE_DEVICES='0,1,2,3' python -u train.py --network y1 --loss softmax --dataset emore

(4). Fine-turn the above Softmax model with Triplet loss.

CUDA_VISIBLE_DEVICES='0,1,2,3' python -u train.py --network mnas05 --loss triplet --lr 0.005 --pretrained ./models/y1-softmax-emore,1

如果说出现如下内容, 就代表成功了!!!!
在这里插入图片描述
啦啦啦啦~~~~~~~~~~~~~~~~~~~~~~~至此结束。
请添加图片描述

二、个人数据训练

1. 数据制作

不同处就在数据制作,和相关的config配置。其他大致都一样
接下来讲一下如何制作自己的数据集
下载im2rec.py文件 拷贝到 datasets 目录中
链接:https://pan.baidu.com/s/1X50fr4D75YSdiOMnT2TDIA 提取码:8888
数据集制作:

-----data
---------001
--------------1.jpg
--------------2.jpg
---------002
--------------1.jpg
--------------2.jpg

类似这样子的一个形式。也放入 datasets中
OK! 开始执行命令

python im2rec.py  <lst>  <images>  --list --recursive 

lst :lst生成目录
images:图片主路径

python im2rec.py --num-thread <num>   <lstfile>   <images>

num-thread:线程个数 加速…
lstfile lst:lst文件的位置
images :图片主路径

可以看到会生成 如下图三个文件但是缺少一个property

在这里插入图片描述

好接下来我们开始新建文件 名为property
在这里插入图片描述
放 以上内容 第一个是 多少张人的人脸==多少类别 112是图片尺寸 固定的。
OK ! 验证集的话可以 直接复制上次的三个验证集bin文件。也可以自己制作方法都一样。我就不写了。
在这里插入图片描述

2. 训练依旧

在这里插入图片描述

请添加图片描述请添加图片描述请添加图片描述请添加图片描述请添加图片描述请添加图片描述请添加图片描述请添加图片描述

教程到此结束~~~~~~~~~~~

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值