1. 数据准备
2. 生成训练数据和测试数据的label,代码生成
3. 生成训练数据和测试数据对应的lmdb:
./build/tools/convert_imageset --shuffle=true --backend="lmdb" ./data/CigaretteTrain20170413/ ./data/CigaretteTrain20170413/train.txt ./data/CigaretteTrain20170413/train_lmdb
./build/tools/convert_imageset --shuffle=true --backend="lmdb" ./data/CigaretteTrain20170413/ ./data/CigaretteTrain20170413/val.txt ./data/CigaretteTrain20170413/val_lmdb
./build/tools/convert_imageset --shuffle=true --backend="lmdb" ./data/CigaretteTrain20170413/ ./data/CigaretteTrain20170413/test.txt ./data/CigaretteTrain20170413/test_lmdb
4. 生成图像均值
./build/tools/compute_image_mean --backend="lmdb" ./data/CigaretteTrain20170413/train_lmdb ./data/CigaretteTrain20170413/train_lmdb/0327_train-mean.binaryproto
./build/tools/compute_image_mean --backend="lmdb" ./data/CigaretteTrain20170413/val_lmdb ./data/CigaretteTrain20170413/val_lmdb/0327_val-mean.binaryproto
./build/tools/compute_image_mean --backend="lmdb" ./data/CigaretteTrain20170413/test_lmdb ./data/CigaretteTrain20170413/test_lmdb/0327_test-mean.binaryproto
5. 配置训练网络
solver_finetune.prototxt
train_val_finetune.prototxt
6. 训练
./build/tools/caffe train -gpu all --solver=./data/CigaretteTrain20170413/solver_finetune.prototxt --weights=./data/Cigarette_image_0327/bvlc_reference_caffenet.caffemodel >train_cigarette_0413.log 2>&1
7. 观看gpu使用情况
watch -n 1 -d nvidia-smi
8. 测试
./build/tools/caffe test -gpu all -model ./data/CigaretteTrain20170413/test.prototxt -weights ./data/CigaretteTrain20170413/caffenet_finetune_iter_20000.caffemodel -iterations 1000
2. 生成训练数据和测试数据的label,代码生成
3. 生成训练数据和测试数据对应的lmdb:
./build/tools/convert_imageset --shuffle=true --backend="lmdb" ./data/CigaretteTrain20170413/ ./data/CigaretteTrain20170413/train.txt ./data/CigaretteTrain20170413/train_lmdb
./build/tools/convert_imageset --shuffle=true --backend="lmdb" ./data/CigaretteTrain20170413/ ./data/CigaretteTrain20170413/val.txt ./data/CigaretteTrain20170413/val_lmdb
./build/tools/convert_imageset --shuffle=true --backend="lmdb" ./data/CigaretteTrain20170413/ ./data/CigaretteTrain20170413/test.txt ./data/CigaretteTrain20170413/test_lmdb
4. 生成图像均值
./build/tools/compute_image_mean --backend="lmdb" ./data/CigaretteTrain20170413/train_lmdb ./data/CigaretteTrain20170413/train_lmdb/0327_train-mean.binaryproto
./build/tools/compute_image_mean --backend="lmdb" ./data/CigaretteTrain20170413/val_lmdb ./data/CigaretteTrain20170413/val_lmdb/0327_val-mean.binaryproto
./build/tools/compute_image_mean --backend="lmdb" ./data/CigaretteTrain20170413/test_lmdb ./data/CigaretteTrain20170413/test_lmdb/0327_test-mean.binaryproto
5. 配置训练网络
solver_finetune.prototxt
train_val_finetune.prototxt
6. 训练
./build/tools/caffe train -gpu all --solver=./data/CigaretteTrain20170413/solver_finetune.prototxt --weights=./data/Cigarette_image_0327/bvlc_reference_caffenet.caffemodel >train_cigarette_0413.log 2>&1
7. 观看gpu使用情况
watch -n 1 -d nvidia-smi
8. 测试
./build/tools/caffe test -gpu all -model ./data/CigaretteTrain20170413/test.prototxt -weights ./data/CigaretteTrain20170413/caffenet_finetune_iter_20000.caffemodel -iterations 1000