说明:由于caffe支持的数据类型不包括图像类型,所以需要将图像转化为lmdb类型才能被caffe识别。
步骤详解:
1、数据准备:在/home/yourname/caffe/examples下面建立两个文件夹train和val,放上自己从网上下载好的图片。(图片格式为1.jpg)
2、然后进入/home/yourname/data 创建文件夹mydata,这里可以看到mydata与cifar10、ilsvrc12、mnist在同一目录下,然后进入mydata。创建两个文本文件train.txt 和 val.txt,
接下来在这两个文本文件中设置数据格式:格式如图所示
这里说明一下:前面的那个路径是你的图片所在的地址。后面0 1 2 3 4 5 6 是lable,从0开始。
3、在/home/yourname/caffe/examples下创建文件夹mytask并将imagenet中所有的文件拷过来,然后进入create_inagenet.sh 修改路径,具体步骤如下:
然后进入文件creat_imagenet.sh修改下列五项。
我在修改这几项时出现下列问题:我在把DATA=data/mydata这里写成了DATA=/home/gwp/data/mydata就不对了。
下面我解释一下这几个路径:
EXAMPLE=/home/gwp/caffe/examples/mytask // 这是mytask的路径,里面装的是从imagenet中拷贝过来的文件。
DATA=data/mydata //这是存放train.txt和val.txt 的路径
TRAIN_DATA_ROOT=/home/gwp/caffe/examples/train
VAL_DATA_ROOT=/home/gwp/caffe/examples/val
这两个时存放train和val图片文件夹的主目录
4、然后在mydata目录下运行文件creat_imagenet.sh 生成两个数据集lmdb。
说明:如果第一次没有成功请打开caffe/examples/mytask删除下面这两个文件再重新运行creat_imagenet.sh
到此截止我们的数据集就做好了,下一步就是开始训练我们的数据。
这里开始准备训练自己的数据:只需要修改相关文件的路径即可。
make_image_mean.sh 也是修改相应的路径
最后需要修改的是model中prototxt文件,只需要修改路径
运行代码: