環(huán)境配置完全后
1 VOC數(shù)據(jù)集
在/data/VOCdevkit目錄下創(chuàng)建mydataset, 并放入自己的數(shù)據(jù)集:
cd data/VOCdevkit
mkdir mydataset
cd mydataset
mkdir Annotations
mkdir ImageSets
mkdir JPEGImages
cd ImageSets
mkdir Layout
mkdir Main
mkdir Segmentation
其中Annotations中存放一些列XML文件蔽氨,包含object的bbox,name等;
ImageSets中三個子目錄下均存放train.txt, val.txt, trainval.txt, test.txt這幾個文件厌杜,文件內(nèi)容為圖片的文件名(不帶后綴);
JPEGImages存放所有的圖片渤涌;
2 生成lmdb訓(xùn)練數(shù)據(jù)
在/data目錄下創(chuàng)建一個自己的文件夾:
cd /data
mkdir mydataset
把/data/VOC0712目錄下的create_list.sh 黎比、create_data.sh、labelmap_voc.prototxt 這三個文件拷貝到/mydataset下:
cp VOC0712/create* ./mydataset
cp VOC0712/label* ./mydataset
labelmap_voc.prototxt, 此文件定義label愁憔。
修改create_list.sh
修改成for name in mydataset
修改create_data.sh
修改成dataset_name="mydataset"
修改labelmap_indoor.prototxt
修改分類類別
./data/mydataset/create_list.sh
./data/mydataset/create_data.sh
錯誤處理:
ImportError: No module named caffe.proto
輸入
export PYTHONPATH=/home/cehh/caffe/python:$PYTHONPATH
3 訓(xùn)練
python ./examples/ssd/ssd_mydata2.py
主要修改點(diǎn):
(1)train_data和test_data修改成指向自己的數(shù)據(jù)集LMDB
train_data = "examples/mydataset/mydataset_trainval_lmdb"
test_data = "examples/mydataset/mydataset_test_lmdb"
(2) num_test_image該變量修改成自己數(shù)據(jù)集中測試數(shù)據(jù)的數(shù)量
(3)num_classes 該變量修改成自己數(shù)據(jù)集中 標(biāo)簽類別數(shù)量數(shù) + 1