1.将下面的语句保存到txt中,并将txt 重命名为.bat,生成文件路径下 所有jpg 图片的路径(同理.bmp,.png)
dir /b/s/p/w *.jpg > num.txt
2.将带有训练标签的描述文件按比例划分为train/test,(以下示例为4:1)
import os
import random
#import shutil
total_path='D:/Datasets/lableRes.txt'
train_path='D:/Datasets/CASIA-WebFace-Clean_align/train.txt'
test_path='D:/Datasets/CASIA-WebFace-Clean_align/test.txt'
ftotal=open(total_path,'r')
ftrain=open(train_path,'a')
ftest = open(test_path,'a')
lines= ftotal.readlines()
random.shuffle(lines)
i=0
for line in lines:
if i%5==0:
ftest.write(line)
else:
ftrain.write(line)
i=i+1
ftotal.close()
ftest.close()
ftrain.close()
3.转lmdb 脚本内容如下(.bat)
@echo off
D:\Projects\Deeplearning\caffe-windows-ms\Build\x64\Release\convert_imageset.exe --gray=false --shuffle=true --backend=lmdb --resize_width=96 --resize_height=112^
D:\\Datasets\\CASIA-WebFace-Clean_align\\ D:\\Datasets\\CASIA-WebFace-Clean_align\\webface_train.txt D:\\Datasets\\LMDB\\Webface_train_lmdb
D:\Projects\Deeplearning\caffe-windows-ms\Build\x64\Release\convert_imageset.exe --gray=false --shuffle=true --backend=lmdb --resize_width=96 --resize_height=112^
D:\\Datasets\\CASIA-WebFace-Clean_align\\ D:\\Datasets\\CASIA-WebFace-Clean_align\\webface_test.txt D:\\Datasets\\LMDB\\Webface_test_lmdb
Pause
4.准备好train.prototxt solver.prototxt. train训练执行文件并保存训练日志的脚本内容如下(.cmd)
cd D:/AMSoftmax-master/train
D:/Projects/Deeplearning/caffe-windows-ms/Build/x64/Release/caffe.exe train^
--solver=D:/AMSoftmax-master/train/face_solver.prototxt^
--gpu 0 > train.log 2>&1
pause
5.注意事项:
a.要注意配置的路径为“/” 或者“\\” 而不是“\”;
b.如果训练测试数据为LMDB格式,.prototxt 中的数据输入层数据类型 Type:"Data"
data_parm{
source:xxxx/xxxx_lmdb
batch_size:128
backend:LMDB
}