谷歌发布object detection api(https://github.com/tensorflow/models)已经有一段时间了,这个api的发布,让我们不用自己再去为faster-rcnn、ssd、rfcn单独造轮子了。

现记录一下以ssd_mobilenet这个模型的object detection api使用。

一、安装TensorFlow、以及用到的库

按照官方指导操作即可:https://github.com/tensorflow/models/blob/master/object_detection/g3doc/installation.md。

二、下载models、ssd_mobilenet_v1_coco

下载地址:https://github.com/tensorflow/models、https://github.com/tensorflow/models/blob/master/object_detection/g3doc/detection_model_zoo.md

1、解压后,进入models目录,执行:

protoc object_detection/protos/*.proto --python_out=.

export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim

2、解压ssd_mobilenet_v1_coco_11_06_2017.tar.gz到,得到:frozen_inference_graph.pb  graph.pbtxt  model.ckpt.data-00000-of-00001  model.ckpt.index  model.ckpt.meta,

二、准备数据集

1、使用将Pascal voc格式的数据集转换成record格式,即生成train.record、eval.record,参考models/object_detection/create_pascal_tf_record.py

2、创建工程目录:

+SSD_MOBILENET

+data
            -label_map file(根据models/object_detection/ models/object_detection/data/pascal_label_map.pbtxt来修改)
            -train TFRecord file(即生成的train.record)
            -eval TFRecord file(即生成的eval.record)

-model.ckpt(将解压ssd_mobilenet_v1_coco_11_06_2017.tar.gz得到的model.ckpt.data-00000-of-00001重命名为mode.ckpt)
            -model.ckpt.index(解压ssd_mobilenet_v1_coco_11_06_2017.tar.gz得到)
            -model.ckpt.meta(解压ssd_mobilenet_v1_coco_11_06_2017.tar.gz得到)

+models
            + model
                -pipeline config file(根据models/object_detection/samples/configs/ssd_mobilenet_v1_pets.config来修改,具体到下面说明)
                +train
                +eval

3、进入models目录执行:

python object_detection/train.py \
     --logtostderr \
     --pipeline_config_path=${PATH_TO_YOUR_PIPELINE_CONFIG} \
     --train_dir=${PATH_TO_TRAIN_DIR}

开始训练。

其中:PATH_TO_YOUR_PIPELINE_CONFIG为SSD_MOBILENET/models/model/pipeline config file,PATH_TO_TRAIN_DIR为SSD_MOBILENET/models/model/train

关于pipeline config file内容修改如下:

第9行:num_classes:,你数据集有几类就改成几类

第158行:fine_tune_checkpoint: "PATH_TO_BE_CONFIGURED/model.ckpt",即SSD_MOBILENET/data/model.ckpt

第177行:input_path: "PATH_TO_BE_CONFIGURED/pet_train.record",即SSD_MOBILENET/data/train.record

第179行:label_map_path: "PATH_TO_BE_CONFIGURED/pet_label_map.pbtxt",即SSD_MOBILENET/data/label_map file

第191行:input_path: "PATH_TO_BE_CONFIGURED/pet_val.record",即SSD_MOBILENET/data/eval.record

第193行:label_map_path: "PATH_TO_BE_CONFIGURED/pet_label_map.pbtxt",即SSD_MOBILENET/data/label_map file

第183行:num_examples: ,eval有多少张就改成多少张

TensorFlow object detection api------ssd_mobilenet使用相关推荐

  1. Tensorflow object detection API 搭建物体识别模型

    ----------------------------------------------------先把别人博客教程跑通-------------------------------------- ...

  2. ubunu16.04 TensorFlow object detection API 应用配置

    TensorFlow object detection API应用–配置 主要参考 : https://github.com/tensorflow/models/blob/master/researc ...

  3. 谷歌开放的TensorFlow Object Detection API 效果如何?对业界有什么影响

    ? 谷歌开放了一个 Object Detection API: Supercharge your C 写个简单的科普帖吧. 熟悉TensorFlow的人都知道,tf在Github上的主页是:tenso ...

  4. tensorflow object detection API训练错误解决

    问题描述 tensorflow object detection API训练coco数据集时提示错误:Windows fatal exception: access violation,如下图: Th ...

  5. 如何在windows系统上安装Tensorflow Object Detection API?

    前言 都说Linux是最适合程序员使用的操作系统,这话还真不假. 之前一直在云服务器上跑代码,近期接手了师兄的台式机(GTX 1050),虽然配置很渣,但想在本地玩玩看,于是乎先安装一波Tensorf ...

  6. 测试TensorFlow Object Detection API

    安装Object Detection API http://blog.csdn.net/chenhaifeng2016/article/details/74115168 Jupyter支持Tensor ...

  7. Tensorflow Object detection API 在 Windows10 配置

    Tensorflow Object detection API 在 Windows10 下的配置不如在 Ubuntu 下配置方便,但还是有方法的,介绍一下我的配置流程. 官方目标检测的demo中调用了 ...

  8. Tensorflow object detection API 搭建自己的目标检测模型并迁移到Android上

    参考链接:https://blog.csdn.net/dy_guox/article/details/79111949 之前参考上述一系列博客在Windows10下面成功运行了TensorFlow A ...

  9. ssd目标检测训练自己的数据_目标检测Tensorflow object detection API之训练自己的数据集...

    构建自己的模型之前,推荐先跑一下Tensorflow object detection API的demo JustDoIT:目标检测Tensorflow object detection API​zh ...

  10. 关于使用tensorflow object detection API训练自己的模型-补充部分(代码,数据标注工具,训练数据,测试数据)

    之前分享过关于tensorflow object detection API训练自己的模型的几篇博客,后面有人陆续碰到一些问题,问到了我解决方法.所以在这里补充点大家可能用到的东西.声明一下,本人专业 ...

最新文章

  1. Qt 编译一直死循环问题
  2. poj 1270(toposort)
  3. C#面向对象设计模式纵横谈——6.Prototype 原型模式(创建型模式)
  4. APP不显示GPU过度渲染的问题
  5. 《scikit-learn》数据标准化与SVM之SVC
  6. zookeeper启动失败
  7. python判断字符串出现的次数_【如何判断python字符串出现次数?这几种方法你一定要学会】- 环球网校...
  8. 数域、有限域(伽罗瓦域)
  9. codeforces 题解
  10. 背包那些经典的例子( 上 )
  11. 【转载】日志等级及使用情形
  12. wandb 导入环境变量问题
  13. 埃拉托色尼筛选法计算素数个数
  14. AnyDesk(远程控制软件) 免费版,比Teamviewer好用
  15. springboot2.7.X+es8 集成开发
  16. elemntui icon 大小_vue-elementui 引入第三方iconfont图标 并使用彩色icon
  17. 系统架构师设计培训心得之二——架构设计
  18. 关于芯片之争,你需要知道这些本质
  19. 计算机视觉相关综述整理
  20. 如何解决数据关联查询

热门文章

  1. ubuntu卸载_ROS入门笔记(二):ROS安装与环境配置及卸载(重点)
  2. 编程计算1+2+3+4+...+n的值超过500的和的第一个值
  3. display: inline-block;下增加overflow:hidden;产生高度问题
  4. Maven中的profile和spring boot中的profile进行结合
  5. ansible部署tomcat及 include机制
  6. 登白云嶂,银屏嘴游记
  7. Discriminative Modeling vs Generative Modeling
  8. Oracle 表空间 创建参数 说明
  9. 中国国产万亿次高性能计算机向产业化迈进
  10. java非阻塞 串口读数据_串口阻塞与非阻塞