训练目标: 识别向日葵和玫瑰花两种类别。
数据集: 花卉数据集
原始数据集中的图片分辨率大小不一,这里在生成lmdb的时候,统一裁剪为160x160的分辨率大小。
create_lmdb.sh脚本中使用参数 --resize_height=160 --resize_width=160
网络模型: alex net
制作训练图片文件
在caffe-1.0\data下新建flowers目录,作为数据的根目录。
在flowers文件夹下分别放置train和val。
在train和val中放置不同类别的图rose和sunflower。
每一个类别的图中,训练图片是测试图片的5倍以上,测试图片100张,那么训练图片应该大于500张。
以下是rose训练图片集
生成数据脚本
在caffe-1.0\examples中新建 flower_class文件夹。作为此分类项目的根目录,然后创建以下3个脚本
create_filelist.sh:
DATA=data/flowers
MY=examples/flower_class
echo "Create train.txt..."
rm -rf $DATA/train.txt
find $DATA/train/rose -name *.jpg | cut -d '/' -f5 | sed "s:^:rose/:" | sed "s/$/ 0/">>$MY/train.txt
find $DATA/train/sunflower -name *.jpg | cut -d '/' -f5 | sed "s:^:sunflower/:" | sed "s/$/ 1/">>$MY/train.txt
echo "Create val.txt..."
rm -rf $DATA/val.txt
find $DATA/val/rose