Caffe学习(五)win10下配置vs2013版本的yolo+mobileNet训练自己的数据集

3 篇文章 0 订阅
3 篇文章 0 订阅

Caffe学习(五)win10下配置vs2013版本的yolo+mobileNet训练自己的数据集

准备阶段

1、caffe-mobilenet-windows
2、数据集
3、python

caffe-yolo

关于Caffe-YOLOv3-Windows的安装配置请参考

https://blog.csdn.net/mqyw29995/article/details/105961674

数据集

1、工具下载
标定数据集可以使用labelme,具体下载可去GitHub上下在,安装按照上面提示进行。
2、数据标定
对数据进行标定后会生产相应的xml。
PS:由于这一步不是重点且教程很多所以不详细叙述

制作lmdb

这里说的txt是图片位置以及xml位置,这里需要打乱顺序。
可以直接写一个py脚本进行分类也可以用官方的脚本,这里是darknet下的scripts文件夹下的voc_label.py做修改(这里的darknet是yolov3的可参考yolov3配置文章)。

1、由于这个是直接调用的voc的所以我们这边可以套用voc的框架,首先生成两个文件,train.txt和val.txt
train.txt:记录你的训练集,val.txt记录你的验证集。
在这里插入图片描述
PS:这里生成可以自己用python或者c++写一个生成工具,红色框内对应的是xml的文件名(同时也是图片的位置),需要注意的是xml存在图片一定要存在。同时训练集和测试集的xml最好放同一个文件夹下,比较方便。

2、首先吧sets修改成只有两个数组,然后把classes修改成你对应的类别(我这边是只有一类所以选aeroplane,如果你标定的有两类,三类就加队对应的名称,这里需要和你xml标定的名称一样)
在这里插入图片描述
3、修改路径,这里的所有路径都需要改成你对应的图片已经xml和txt所在的路径,当然如果你不修改,也可以根据他的路径创造文件夹然后放下去。
在这里插入图片描述
在这里插入图片描述

特别注意:最后一个写入地址需要改成
在这里插入图片描述
修改最后两条os.system() (这里可以选择屏蔽,由于语句是Linux下语句,所以需要换成window下操作命令)
在这里插入图片描述

然后运行py就可以生成需要的两个文件
在这里插入图片描述

其中内容大致是这样的
在这里插入图片描述3、生成lmdb
这里需要调用工程自带的 convert_annoset.exe

Caffe-YOLOv3-Windows-master\scripts\build\tools\Release\convert_annoset.exe --anno_type=detection --encode_type=jpg --encoded=true  --shuffle=true --label_map_file=labelmap_voc.prototxt VOCdevkit\VOC2012\Germany\ VOCdevkit\2012_train.txt VOCdevkit\train_voc_lmdb
Caffe-YOLOv3-Windows-master\scripts\build\tools\Release\convert_annoset.exe --anno_type=detection --encode_type=jpg --encoded=true  --shuffle=true --label_map_file=labelmap_voc.prototxt VOCdevkit\VOC2012\Germany\ VOCdevkit\2012_val.txt VOCdevkit_voc_lmdb

然后运行脚本,最后就可以生成lmdb文件了(注意正常大小说明生成成功,如果两个文件都只有8k说明失败)。

开始训练

1、模型位置在 Caffe-YOLOv3-Windows-master\models\yolov3\ 下
在这里插入图片描述
1、修改solver文件:
在这里插入图片描述
1、2两个net替换成你(修改过的)的net文件位置

2、修改test文件:
在这里插入图片描述
2.1、 修改成你对应的lmdb所在的目录
在这里插入图片描述

2.2、 修改你标签文件所在的目录下(这里的标签文件可以参考voc的标签文件格式改成自己的,即去掉多余的,加上自己的,background必须保留)。

加粗样式
2.3、修改数量
2.3.1、这里修改修改成你的类别数+1(例如,我是1类所以是2)

在这里插入图片描述
2.3.2、这里需要修改成(类别数+5)*3(例如,我只有一类就是(1+5)*3)
在这里插入图片描述
在这里插入图片描述
2.4、修改train文件
2.4.1、修改训练集所在位置,添加跟test一样的label位置
在这里插入图片描述
2.4.2、修改类别数,这里注意有几类就写几(不用像test一样 +1)
在这里插入图片描述
在这里插入图片描述

2.4.3、修改num_output:这里修改的方法跟test是一直的(其实值是一样的)
在这里插入图片描述
在这里插入图片描述

最后编写bat文件执行,开始训练

Caffe-YOLOv3-Windows-master\scripts\build\tools\Release\caffe.exe train -solver VOCdevkit/mobilenet_yolov3_lite_solver.prototxt

这里注意:由于我训练的没有预训练模型,所以不用加(预训练模型要跟你的网络模型一致才能用)。

等待训练完成。
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值