caffe学习(2)------用caffe训练自己的图片

前天写了一篇caffe的配置方法,阅读访问量一夜之间一千多,让我自己就有点惊讶,deeplearning看来是有点火啊。

在按照上篇的方法:http://blog.csdn.net/lishanlu136/article/details/51474582配置完caffe后,就能跑跑图片了,当然最简单的就是mnist手写数字识别库了,其次就是cifar10库,跑这些示例有助于对caffe跑图片过程的了解。不过现在我介绍的是用自己的图片库来跑。

下面是具体过程:

1、前期准备,当然是自己的图片库,RGB图和灰度图均可,分为两个文件夹,train用于装训练用的图片(包括正样本,负样本),test用于装测试用的图片(包括正负样本),然后在train,test的同级目录下建立label文件,对图片进行标注,如:

别忘了,test文件夹也要做类似的标注,现在跑图片的前期准备算是做完了。

2、利用convert_imageset.exe转换图片格式

因为caffe跑图片需要图片的数据格式为lmb或leveldb格式,所以跑图片之前需要转换,其实也可以直接读图片进行训练,但是这样太慢了,对于数据库较大的,建议还是转吧,记得在上次配置caffe时生成的convert_imageset.exe吗,如果上次配置有勾选编译convert_imageset这个工程,就在caffe.exe同级目录下能找到,如果没找到,再编译一次就是了;我们得写一个.bat文件,怎么写.bat文件?用记事本写,最后把后缀改为.bat就是了,具体写法如下:

这是转train文件夹里面的图片,test文件夹一样得转,我是转成leveldb格式的,因为我的图片是灰度图,所以,我这里设置了gray=true,如果你的是RGB图就不用管它,因为默认为RGB图,shuffle是在转的时候设置的打乱顺序,因为,我的图片正样本在前面,负样本在后面,不打乱的话,对后面的训练很不利。

3、利用compute_image_mean.exe计算图片库的均值

这个.exe可执行文件也能在caffe.exe同级目录下找到,通过调用compute_image_mean.exe计算图片库的均值,具体写法如下:

这里我的compute_image_mean.bat文件和我的train_leveldb文件夹是在同一级,所以,我这里是用的相对路径,运行之后,会在同级目录下生成trainmean.binarypaoto文件。

4、修改训练网络的配置文件和solver.prototxt文件

到这一步了,主要就是修改里面的路径问题了,主要就是data层的source路径,和 transform_param 里的mean_file路径,最后输出的分类数num_output也得改为符合自己的分类数,最后就是solver.prototxt文件了,它就是调用前面的网络进行训练的的,所以路径一定不用错,不然找不到训练网络,这个solver.prototxt文件是对整个训练过程的宏观设置,可以设置迭代次数,基准学习率,权重衰减等等。(ps:关于路径,我开始用‘\'一直出错,报错原因是找不到文件,后来改为了'/',才对。)

5、写run.bat文件调用caffe.exe可以开始训练了

好了,训练自己的图片库就这样结束了。

6、利用网上公开的caffemodel进行微调

7、利用断点继续上次的训练

8、利用训练好的模型对单张图片分类

9、利用训练好的模型对整个测试集进行测试

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值