Caffe训练个人数据并调用模型进行分类

最近有份作业,需要用到cafee做一些图片分类方面的,用惯Tensorflow了就gg,图片集用了华南理工大学的图片集

一开始的安装由于我懒,所以让个有经验的同学帮我装了下,本来想亲力亲为的我,真香

由于我之前装了tensorflow-gpu,CUDA版本9.0,caffe现在好像支持最高8.0,用9.0是会build不出来的,嫌麻烦我直接装cpu版了。

然后想先做个简单的分类练一下手,第一眼看到的博客地址,发现跟其他博客写的也差不多,顺序也差不多,但是我自己会遇到一些问题,主要就是路径的问题。

所以,流程中的脚本文件的路径什么的,要好好注意用在哪,以及会和其他路径怎么连接。

首先,可能由于Caffe版本不同,我看到很多网上的教程,可执行exe文件都是在“/build/tools/”下,而我的是在“caffe\scripts\build\tools\Release”下,接下来跟着流程走。

我的整个训练产生的文件:

1.train.txt文件和val.txt文件以及label.txt,我的图片都一起放data里面了,一开始搞txt文本,还是用python处理的。。分出train和val文件夹,需要在之后的一些文件中加上文件夹的路径,后面会说原因。

ftw93.jpg 0
ftw94.jpg 0
ftw95.jpg 0
ftw96.jpg 0
ftw97.jpg 0
ftw98.jpg 0
ftw99.jpg 0
...
mtw1.jpg 1
mtw10.jpg 1
mtw100.jpg 1
mtw101.jpg 1
mtw102.jpg 1
mtw103.jpg 1
mtw104.jpg 1
mtw105.jpg 1
mtw106.jpg 1
mtw107.jpg 1

label.txt即所有分类

0 欧美女
1 亚洲女
2 欧美男
3 亚洲男

我的文件都是这样配置,不用绝对地址就是因为路径相关,等一下说。

(2018-12-06更新)自动生成caffe训练的训练和测试集txt脚本如下(训练和测试图片放两个文件夹):

# /usr/bin/env sh
DATA=D:/caffe/examples/my_image
FILETYPE=jpg   #需要处理样本的图片格式
echo "Create train.txt..."
rm -rf $DATA/train.txt
array=("ftw" "fty" "mtw" "mty")    # 循环几种类别
for i in 0 1 2 3  #
do
echo ${array[i]}
find $DATA/data/train -name ${array[i]}*.$FILETYPE | cut -d '/' -f7 | sed "s/$/ $i/">>train.txt   # 写入文件
done
echo "Create test.txt..."
rm -rf $DATA/test.txt
for i in 0 1 2 3   # -f6-7 指目录第6-7层,根据上面的目录来指定,若是不加train文件夹,只需7即可
do
find $DATA/data/test -name ${array[i]}*.$FILETYPE | cut -d '/' -f7 | sed "s/$/ $i/">>val.txt  
done
echo "All done"
pause

2. 生成lmdb文件,我用的也是create_imagenet.sh文件,路径为caffe\examples\imagenet,文件里面我一开始也用相对路径,一直有出错的部分,所以我直接全用绝对路径了。在这里面就有TRAIN_DATA_ROOT和VAL_DATA_ROOT的问题了,这两个指训练和测试数据集的地址,与之前train.txt和val.txt里的路径会组合成完整的路径,我不在train.txt中使用完整路径的原因,是因为我用git bash启动sh文件,如果TRAIN_DATA_ROOT设置为 / ,则默认为git的exe文件所以路径作为TRAIN_DATA_ROOTÿ

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值