3、tiny yolov2 训练

1、上官网下载yolov2-tiny.weights,或者先不下载,在虚拟机下下载

https://pjreddie.com/darknet/yolo/

https://pjreddie.com/media/files/yolov2-tiny.weights

2、在虚拟几下安装darknet

git clone https://github.com/pjreddie/darknet
cd darknet
make

3、下载yolov2-tiny.weights

wget https://pjreddie.com/media/files/yolov2-tiny.weights

4、测试小狗

./darknet detect cfg/yolov2-tiny.cfg yolov2-tiny.weights data/dog.jpg

5、训练tiny yolov2

在darknet-master/scripts文件夹中新建文件夹VOCdevkit,

将D:\VOC2019整个目录

拷贝到ubuntu系统下的/home/k210、块10/darknet/scripts/VOCdevkit目录下,

6、通过voc_gj_label_2019.py生成数据集

python voc_gj_label_2019.py

运行结束后在darknet/scripts文件夹下将生产新的文件2019_test.txt2019_train.txt和VOC2019/labels如下图所示

7、中间暂时略去

(1)放置在cfg下面的

voc_gj_2019.data

(2)放置在data下面的

voc_gj.names

8、要注意的是需要修改yolov2-tiny.cfg 最后一层卷积层的大小,(linear)也就是第119行的filter和第125行的训练类别数,修改为

yolov2-tiny_gj_2019.cfg另存

###########

[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=1024
activation=leaky

[convolutional]
size=1
stride=1
pad=1
filters=60 #修改最后一层卷积层核参数个数,计算公式是依旧自己数据的类别数filter=num×(classes + coords + 1)=5×(7+4+1)=60 
activation=linear

[region]
anchors =  0.57273, 0.677385, 1.87446, 2.06253, 3.33843, 5.47434, 7.88282, 3.52778, 9.77052, 9.16828
bias_match=1
classes=7#类别数,本例为7类 
coords=4
num=5
softmax=1
jitter=.2
rescore=0

9、修改输入图片的尺寸

[net]
# Testing
#batch=1         #测试时候放出来
#subdivisions=1  #测试时候放出来
# Training
batch=64          #训练时候放出来
subdivisions=2    #训练时候放出来
width=320   #修改
height=240  #修改
channels=3
momentum=0.9
decay=0.0005
angle=0
saturation = 1.5
exposure = 1.5
hue=.1

 

10、消减模型,为了让模型更小,删除第93行到第113行,删除内容如下

[maxpool]
size=2
stride=1

[convolutional]
batch_normalize=1
filters=1024
size=3
stride=1
pad=1
activation=leaky

###########

[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=1024
activation=leaky

11、训练

(1)方法一、直接训练

./darknet detector train cfg/voc_gj_2019.data cfg/yolov2-tiny_gj_2019.cfg

(2) 如果用官网的预训练模型darknet.conv.weights做初始化,则训练命令为

./darknet detector train cfg/voc_gj_2019.data cfg/yolov2-tiny_gj_2019.cfg darknet19_448.conv.23 

12、测试

./darknet detector test cfg/voc_gj_2019.data cfg/yolov2-tiny_gj_2019.cfg backup/yolov2-tiny_gj_2019_100.weights data/20190325145623.jpg

13、待测试

(1)安装darkflow

(2)安装Cython和opencv

pip3 install Cython
pip3 install opencv-python

(3)修改offset

找到目录   ./darkflow/utils/loader.py 文件,搜索 self.offset = 16 ,修改为

 self.offset = 16+4

 (4)

flow --model cfg/yolov2-tiny_gj_2019.cfg --load backup/yolov2-tiny_gj_2019_100.weights --savepb

(5)

python3 gen_pb_graph.py workspace/yolov2-tiny_gj_2019.pb

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值