Object-Detection win10+python3.7+tensorflow -gpu1.13+cuda10.1+cuDnn7.5训练流程

参考自https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10

1.将图像分为train和test两类,分别拷贝到.. models\images\test和.. models\images\train目录下;

2.利用LabelImg分别对train和test目录中的所有图像进行标注,在两个目录下分别生成各个图像的.xml文件;

3.打开Anaconda prompt,设置模型环境变量:

set  PYTHONPATH=d:\tensorflow1\models;d:\tensorflow1\models\research;d:\tensorflow1\models\research\slim

4.利用xml_to_csv将XML文件转换为CSV文件:

(tensorflow1) C:\tensorflow1\models\research\object_detection> python xml_to_csv.py

5.修改generate_tfrecord文件,跳转到31行,分别修改类别名称。

6.生成train.record和test.record文件:

python generate_tfrecord.py --csv_input=images\train_labels.csv --image_dir=images\train --output_path=train.record

python generate_tfrecord.py --csv_input=images\test_labels.csv --image_dir=images\test --output_path=test.record

7.创建label图:打开pbtxt,修改类标记。

8.配置训练参数:

将C:\tensorflow1\models\research\object_detection\samples\configs中的faster_rcnn_inception_v2_pets.config拷贝到 \object_detection\training 路径中,改变文件中的类别数量和训练数据路径:

  • 第9行,修改类别总数;

  • 第110行,修改fine_tune_checkpoint路径

              C:/tensorflow1/models/research/object_detection/faster_rcnn_inception_v2_coco_2018_01_28/model.ckpt

  • 第126、128行, train_input_reader 内容中,分别修改

          input_path :

              "C:/tensorflow1/models/research/object_detection/train.record"

           label_map_path:

             "C:/tensorflow1/models/research/object_detection/training/labelmap.pbtxt"

  • 第132行,改变test中的图片数量;
  • 第140、142行,在 eval_input_reader内容中,分别修改 input_path label_map_path
    1. input_path : "C:/tensorflow1/models/research/object_detection/test.record"
    2. label_map_path: "C:/tensorflow1/models/research/object_detection/training/labelmap.pbtxt"

9.训练

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

10.查看训练loss图

(tensorflow1) C:\tensorflow1\models\research\object_detection>tensorboard --logdir=training

python D:\anaconda3\pkgs\tensorboard-1.13.1-py37h33f27b4_0\Scripts\tensorboard-script.py --logdir=training

11.修改 “model.ckpt-XXXX”中的“XXXX” ,导出图

python export_inference_graph.py --input_type image_tensor --pipeline_config_path training/faster_rcnn_inception_v2_pets.config --trained_checkpoint_prefix training/model.ckpt-6770 --output_directory inference_graph

12.使用新分类器:

修改第50行中的NUM_CLASSES数值,以及IMAGE_NAME ,将一张图像拖到本路径下

python Object_detection_image.py

 

你可能感兴趣的:(深度学习)