美文网首页
SSD-Tensorflow-master训练自己的数据集

SSD-Tensorflow-master训练自己的数据集

作者: ZeroZhou | 来源:发表于2019-04-04 12:09 被阅读0次

1.数据准备:

    自己的图片打标,做成VOC2007格式,文件夹路径对应。

2.修改VOC_LABELS为自己的labels:

    修改脚本".datasets/pascalvoc_common.py",修改里面的"VOC_LABELS",背景为0,其余改为自己的类。

3.生成训练数据:

    运行tf_convert_data.py,将其里面的路径修改为自己的路径。

修改代码:

a.修改:/datasets/pascalvoc_common.py

第一类none不要动,其他的类修改为自己数据集的类

b.修改:datasets/pascalvoc_to_tfrecords.py

文件中,82行,格式改为相对应的‘.jpg’或‘.jpeg’,83行‘r’改为‘rb'

c.修改:nets/ssd_vgg_300.py

num_classes=21,

no_annotation_label=21,

将其修改为自己的类+1

d.修改:eval_ssd_network.py

num_classes', 21

修改num_classes为“类别数+1”

e.修改:datasets/pascalvoc_2007.py

根据自己的训练数据修改整个文件

none类不要动,其他类修改为自己数据集的类,其中括号内的第一个数为图片数,第二个数为目标数(也就是bonding box数,关于如何计算目标数,我写了一个python文件,在附录中),52行和76行的total是所有类的总和;

NUM_CLASSES改为自己的类别数(不用加一)

f.修改:train_ssd_network.py

num_classes为“类别数+1”

g.修改:max_number_of_steps

修改‘None’为最大训练步数(如50000),设为None时训练会一直进行,需要手动停止

参数配置参照:

python train_ssd_network.py

--train_dir=./logs/

--dataset_dir=./tfrecords

--num_classes=3

--dataset_name=pascalvoc_2007

--dataset_split_name=train

--model_name=ssd_300_vgg

--checkpoint_path=./checkpoints/model.ckpt-63669

--save_summaries_secs=60

--save_interval_secs=600

--weight_decay=0.0005

--optimizer=adam

--learning_rate=0.001

--batch_size=8

--gpu_memory_fraction=0.7

--max_number_of_steps=50000

--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

相关文章

  • SSD-Tensorflow-master训练自己的数据集

    1.数据准备: 自己的图片打标,做成VOC2007格式,文件夹路径对应。 2.修改VOC_LABELS为自己的...

  • TX2 +caffe +ssd/ubuntu16.04+caff

    1.SSD安装及训练自己的数据集 - CSDN博客 2.caffe-SSD训练自己的数据集 - CSDN博客 3....

  • CS231N学习记录

    数据集:训练集+验证集+测试集 交叉验证:当训练数据太小时,为了更好地利用数据,那么将训练数据集划分成n份,其中n...

  • sklearn学习 — 数据集

    sklearn数据集 1. 数据集的划分 训练集 : (占数据集比重高) 用于训练,构建模型 测试集 : 在模型...

  • 神经网络优化1

    数据划分 数据集分类 通常会将数据集分层三类: 训练集(Training Sets):采用训练集进行训练时,通过改...

  • 2.封装kNN算法之数据分割

    训练数据集与测试数据集 当我们拿到一组数据之后,通常我们需要把数据分割成两部分,即训练数据集和测试数据集。训练数据...

  • 洛杉矶房价预测

    制作训练集、评测集 交叉验证 数据有限,发挥数据本来的效率 数据的训练集合评测集的矛盾a. 如果用更多的数据去训练...

  • 基于Keras实现Kaggle2013--Dogs vs. Ca

    【下载数据集】 下载链接--百度网盘关于猫的部分数据集示例 【整理数据集】 将训练数据集分割成训练集、验证集、测试...

  • Caffe学习记录02

    用AlexNet训练自己的数据集 参考资料 本篇重点在于讲述如何讲自己的数据集转化为Caffe能用的数据集,至于具...

  • 高数没用?看看机器学习的公式,验证下微积分都还给老师没

    KNN分类 K-近邻算法,把数据集分为训练数据集和测试数据集,用训练数据集导入KNN,对于一个数据向量,计算此数据...

网友评论

      本文标题:SSD-Tensorflow-master训练自己的数据集

      本文链接:https://www.haomeiwen.com/subject/clffiqtx.html