Tensorflow object detection 训练并使用自己的模型

第一次训练记录一下:

1.使用 LabelImg 这款小软件,将训练测试图片进行人工标注,标注完成后保存为同名的xml文件。

2.(1)对于Tensorflow,需要输入专门的 TFRecords Format 格式。

调用写好的xml_to_csv.py将xml文件转换为csv文件,
在Spyder中打开xml_to_csv.py(D:\install package\TensorFlow)文件,更改os.chdir(19行,改为自己的测试集训练集路径) 、path(20行 改为自己的测试集训练集路径) 、 xml_df.to_csv(46行 名字改为自己的.csv文件)
将生成的.csv文件放入data中。

第二步从.csv表格中创建TFRecord
调用generate_tfrecord.py,将csv文件转换为record文件。
打开generate_tfrecord.py,(1)更改os.chdir(C:\ProgramData\Anaconda3\envs\tensorflow\Lib\site-packages\tensorflow\models\research\object_detection\)

(2)更改# TO-DO replace this with label map,更改为自己的分类。
(3)更改main()函数中的 path = os.path.join(os.getcwd(), ‘image2\train’),将加粗部分改为自己的图片路径image2\train和image2\test。
打开anaconda prompt,定位到objection目录下,执行

python generate_TFRecord.py --csv_input=data/dog_train.csv  --output_path=data/dog_train.record
 python generate_TFRecord.py --csv_input=data/dog_test.csv  --output_path=data/dog_test.record

对于训练集与测试集分别运行上述代码即可,得到train.record与test.record文件

在对应目录(/data)下,创建一个 dog.pbtxt的文本文件(可以复制一个其他名字的文件,然后用文本编辑软件打开修改),写入自己的标签,我的例子中是一个,id序号注意与前面创建CSV文件时保持一致。

item {
 id: 1
name: 'dog'
}

3.Object Detection github链接: 模型.
将ssd_mobilenet_v1_coco.config 放在training 文件夹下,记事本打开,改下述代码:

(1)、搜索其中的 PATH_TO_BE_CONFIGURED ,将对应的路径改为自己的路径,注意不要把test跟train弄反了;
在这里插入图片描述
(2)、将 num_classes 按照实际情况更改

(3)、batch_size 原本是24,我在运行的时候出现显存不足的问题,故改为1。

4.开始训练

切换到object_detection目录,输入:

python train.py --logtostderr --train_dir=training/ --pipeline_config_path=training/ssd_mobilenet_v1_coco.config

–train_dir=
后面加的是输出check_point的文件夹路径
–pipeline_config_path=
加的是配置文件的路径

如果没有train.py,在object_detection\legacy文件夹下找到train.py,并放入object_detection文件夹

训练时出现错误:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值