通俗易懂复现基于tensorflow的SSD:

目录

通俗易懂介绍复现基于tensorflow的SSD:

I 实现demo,运用训练好的模型进行测试

1.首先下载完整的代码:

2.下载的文件比较大,因为其中已经包含了一个VGG的模型,解压这个模型:

3.我们先试一下SSD的检测效果:

II 接下来介绍如果训练:

1.下载数据:

2.生成TF-Record文件:

3.训练

通俗易懂介绍复现基于tensorflow的SSD:

I 实现demo,运用训练好的模型进行测试

1.首先下载完整的代码:

https://github.com/balancap/SSD-Tensorflow

2.下载的文件比较大,因为其中已经包含了一个VGG的模型,解压这个模型:

unzip ssd_300_vgg.ckpt.zip

3.我们先试一下SSD的检测效果:

jupyter notebook notebooks/ssd_notebook.ipynb

但我还是喜欢直接用python文件,所以不用管上面这条语句,把

ssd_notebook.ipynb的内容全部copy到demo.py(自己新建的)中,直接运行会报错,因为没装jupyter,千万记住是装jupyter,而不是notebooks。可以pip install jupyter,也可以用pycharm里直接搜索然后安装。如果是想使用pip 安装指定的目录下,可以参考我的另一篇博客:https://mp.csdn.net/postedit/86552214

另外需要注意的是,如果使用的是python2.7,notebooks是找不到的,因此需要在notebook目录下新建一个

__init__.py 文件。

运行demo.py结果如下:

 

II 接下来介绍如果训练:

先下载数据,数据集使用公开的pascal_voc2007:

1.下载数据:

wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar

解压:

tar xvf VOCtrainval_06-Nov-2007.tar
tar xvf VOCtest_06-Nov-2007.tar
tar xvf VOCdevkit_08-Jun-2007.tar

最后文件的目录如下:

2.生成TF-Record文件:

新建一个run.sh文件,内容如下:

#!/usr/bin/env bash
DATASET_DIR=VOC2007/
OUTPUT_DIR=./tfrecords_
python ./tf_convert_data.py \
    --dataset_name=pascalvoc \
    --dataset_dir=${DATASET_DIR} \
    --output_name=voc_2007_train \
    --output_dir=${OUTPUT_DIR}

上面定义的两个路径时你自己的数据路径,执行结果如下:

3.训练

创建一个sh脚本文件为train.sh,内容如下:

#!/usr/bin/env bash

DATASET_DIR=./tfrecords_/
TRAIN_DIR=./train_model/
CHECKPOINT_PATH=./checkpoints/vgg_16.ckpt

python3 ./train_ssd_network.py \
    --train_dir=./train_model/ \
    --dataset_dir=./tfrecords_/ \
    --dataset_name=pascalvoc_2007 \
    --dataset_split_name=train \
    --model_name=ssd_300_vgg \
    --checkpoint_path=./checkpoints/vgg_16.ckpt \
    --checkpoint_model_scope=vgg_16 \
    --checkpoint_exclude_scopes=ssd_300_vgg/conv6,ssd_300_vgg/conv7,ssd_300_vgg/block8,ssd_300_vgg/block9,ssd_300_vgg/block10,ssd_300_vgg/block11,ssd_300_vgg/block4_box,ssd_300_vgg/block7_box,ssd_300_vgg/block8_box,ssd_300_vgg/block9_box,ssd_300_vgg/block10_box,ssd_300_vgg/block11_box \
    --trainable_scopes=ssd_300_vgg/conv6,ssd_300_vgg/conv7,ssd_300_vgg/block8,ssd_300_vgg/block9,ssd_300_vgg/block10,ssd_300_vgg/block11,ssd_300_vgg/block4_box,ssd_300_vgg/block7_box,ssd_300_vgg/block8_box,ssd_300_vgg/block9_box,ssd_300_vgg/block10_box,ssd_300_vgg/block11_box \
    --save_summaries_secs=60 \
    --save_interval_secs=600 \
    --weight_decay=0.0005 \
    --optimizer=adam \
    --learning_rate=0.001 \
    --learning_rate_decay_factor=0.94 \
    --batch_size=24 \
    --gpu_memory_fraction=0.9

训练效果:


 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值