caffe学习(9):mobilenets-ssd训练测试

3 篇文章 0 订阅

参考https://github.com/chuanqi305/MobileNet-SSD

下载源码

下载源码,解压,放在/home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/examples/

测试运行

修改/home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/examples/MobileNet-SSD下的demo.py的路径如下
在这里插入图片描述
运行demo.py

cd /home/jqy/jqy_caffe/caffe-gpu/caffe-ssd # 运行demo.py

运行完成,会显示/home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/examples/MobileNet-SSD/images/下图片的检测结果。

训练自己的模型

创建lmdb文件

我的lmdb文件还是在/home/jqy/data/VOCdevkit/VOC0712/lmdb下,创建方法见caffe学习(8):caffe-ssd分支训练测试

在这里插入图片描述

训练

切换到/home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/examples/MobileNet-SSD目录,训练需要用到train.sh,查看train.sh如下:
在这里插入图片描述
可以看到需要用到solver_train.prototxtmobilenet_iter_73000.caffemodel,前一个是solver文件,后一个是模型文件。
查看solver_train.prototxt如下:
在这里插入图片描述
可以看到需要MobileNetSSD_train.prototxtMobileNetSSD_test.prototxt,这俩文件在/home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/examples/MobileNet-SSD/example文件夹下。起初是没有的,需要运行gen_model.sh来生成。
查看gen_model.sh文件如下:
在这里插入图片描述
可知MobileNetSSD_train.prototxtMobileNetSSD_test.prototxtMobileNetSSD_train_template.prototxtMobileNetSSD_test_template.prototxt生成。查看MobileNetSSD_train_template.prototxt可知运行gen_model.sh需要lmdb数据,如下:
在这里插入图片描述
由于我原来的lmdb数据放在/home/jqy/data/VOCdevkit/VOC0712/lmdb下,建立软链接:

cd /home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/examples/MobileNet-SSD
ln -s /home/jqy/data/VOCdevkit/VOC0712/lmdb/VOC0712_trainval_lmdb trainval_lmdb
ln -s /home/jqy/data/VOCdevkit/VOC0712/lmdb/VOC0712_test_lmdb test_lmdb

需要labelmap.prototxt文件,该文件指示有哪些类型,如下:
在这里插入图片描述

cp /home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/data/VOC0712/labelmap_voc.prototxt /home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/examples/MobileNet-SSD/labelmap.prototxt

运行gen_model.sh

cd /home/jqy/jqy_caffe/caffe-gpu/caffe-ssd/examples/MobileNet-SSD
./gen_model.sh 21 # 运行,需要跟上类数

在这里插入图片描述
得到了训练所需的example/目录下文件
运行train.sh

./train.sh

运行成功,开始训练。

修改源码,自定义训练

修改train.sh

#!/bin/sh
if ! test -f example/MobileNetSSD_train.prototxt ;then
	echo "error: example/MobileNetSSD_train.prototxt does not exist."
	echo "please use the gen_model.sh to generate your own model."
        exit 1
fi
mkdir -p snapshot
../../build/tools/caffe train -solver="solver_train.prototxt" \
--snapshot="snapshot/mobilenet_iter_6000.solverstate" \ # 我昨天跑了6000次,今天在快照的基础上继续跑
-gpu 0,1 # 我有俩GPU,全用上

运行./train.sh

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值