insightface 訓練作者提供的數據集

1.下載源碼:

開源代碼地址:https://github.com/deepinsight/insightface

2.查看作者項目訓練要求

(1)訓練數據

訓練數據使用作者提供並製作好的數據,如下圖所示:

點擊Dataset-Zoo進入數據下載中心,如下圖所示:

 

本人訓練數據爲MS1M-ArcFace,選擇自己想要訓練的數據都可以。

(2)訓練要求如下圖所示:

 a.

由於在本地配置環境問題比較多,本人直接拉取mxnet-cu90鏡像,省去好多麻煩事,可參考我的博客https://www.cnblogs.com/liuwenhua/p/11537696.html,有詳細解讀。

 

b.下載代碼放到自己的目錄下:

c.數據解讀:

根據作者要求把下載數據放到datastes目錄下,六個文件中前三個是訓練數據需求,後三個是驗證數據。

打開文件property,如下圖:

85742爲類別數,根據不同數據需要更改代碼,後續提到。112,112爲圖片大小。

d.ubuntu環境設置及代碼編輯

具體方法如下:

創建sh文件:進入到recognition,編輯

1

vim run_train.sh

編輯下面兩行代碼

export MXNET_CPU_WORKER_NTHREADS=24
export MXNET_ENGINE_TYPE=ThreadedEnginePerDevice

 

執行命令如下:

cp sample_config.py config.py
vim config.py

顯示如下圖所示:

根據自己的下載的數據或製作的數據需要添加代碼在dataset =edict()下面

複製代碼

dataset.emore = edict()
dataset.emore.dataset = 'emore'
dataset.emore.dataset_path = '../datasets/faces_emore'
dataset.emore.num_classes = 85742
dataset.emore.image_shape = (112,112,3)
dataset.emore.val_targets = ['lfw', 'cfp_fp', 'agedb_30']

複製代碼

①更改的第一個就是上面的emore,根據自己的喜好

②更改dataset.emore.dataset_path路徑

③dataset.emore.num_classes,訓練數據的類別數

(3)開始訓練

我的設備是兩塊RTX2080ti,運行代碼如下:

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

由於在運行過程中提示顯存不足,所以要設置bach_size,爲了方便運行,我們添加下面代碼到run_train.sh文件中

export MXNET_CPU_WORKER_NTHREADS=24
export MXNET_ENGINE_TYPE=ThreadedEnginePerDevice

CUDA_VISIBLE_DEVICES='0,1' python -u train.py --network r100 --loss arcface --dataset emore --per-batch-size 36

保存退出,在終端運行

bash run_train.sh

模型開始訓練,如下圖:

 

後續準備製作自己的訓練數據,後續更新

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章