Windows caffe(四) 训练自己的图片数据

前一次实验将原始的图片数据转化为caffe可以运行的lmdb格式。

本次实验完整分析,如何训练自己的图片数据。

毕竟我们学习caffe要应用到实际的科研/工作中,而不仅仅停留在实验上。

一、实验准备

1、实验数据来自国外的医疗数据, 官网百度网盘下载(部分数据)。当然如果你有自己的数据,可以训练自己的数据。
2、 Git bash可以让你直接在windows下运行shell脚本。下载地址

二、创建文件清单

该步骤就是将要训练的数据写入train.txt,将要测试的数据写入test.txt。
参考别人的一种写法:
自己进行了部分修改,用于该实验。
首先创建一个txt文本,重命名为create_filelist.sh,内容如下:
# /usr/bin/env sh
DATA=D:/Caffe/Caffe_BVLC/data/re/
echo "Create train.txt..."
rm -rf $DATA/log.txt
rm -rf $DATA/train/train.txt
rm -rf $DATA/test/test.txt
for i in 3 4 5 6 7
do
find $DATA/train -name $i*.jpg | cut -d '/' -f8-8 | sed "s/$/ $i/">>$DATA/train/train.txt
done
for i in 3 4 5 6 7
do
find $DATA/test -name $i*.jpg | cut -d '/' -f8-8 | sed "s/$/ $i/">>$DATA/test/test.txt
done
>>log.txt
echo "Done.."

-f8-8为我们要保存的文件的层次:第八层文件,即文件名:
>>log.txt 将执行期间遇到的错误写入log.txt
这里一定要注意,别为了改变格式使用\r\n回车换行,否则数据无法识别!!!
执行该脚本,结果如下:

三、格式转换

有了文件清单,利用caffe提供的convert_imageset.exe,就可以将图片数据转化为lmdb或者leveldb格式
具体做法:创建一个文本文件,重命名 create_lmdb.sh
插入内容
DATA=D:/Caffe/Caffe_BVLC/data/livertumor01
rm -rf $DATA/img_train_lmdb
D:/Caffe/Caffe_BVLC/Build/x64/Release/convert_imageset.exe --shuffle \
--resize_height=256 --resize_width=256 \
$DATA $DATA/train.txt $DATA/img_train_lmdb
执行该脚本,会出现img_train_lmdb文件夹,在该文件夹下内容如下图所示:

四、训练数据

本次实验所用到的train.prototxt文件,是第二次实验时候的.prototxt文件
创建run_livertumor.bat,内容如下
D:\Caffe\Caffe_BVLC\Build\x64\Release\caffe.exe train --solver=D:\Caffe\Caffe_BVLC\data\livertumor01\train.prototxt
pause
执行该脚本

可以发现,最后的精度只有0.6818。 我们所使用的.prototxt文件不适合该数据,需要调整。

五、总结

总体来说,本实验实现了原始图片数据的训练。但对caffe的层次结构不太了解,不知道如何调整具体层次的具体参数,后续实验将具体分析caffe的层次结构。

刚接触caffe,博文难免有不足之处。如有问题,欢迎一起交流!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值