谷歌宣布开源其内部使用的 TensorFlow Object Detection API 物体识别系统。本教程针对ubuntu16.04系统,快速搭建环境以及实现视频物体识别系统功能。

  本节首先介绍安装环境:

  1.首先简单安装tensorflow,一般用户可以直接按照下面的命令进行安装,若不行请转到http://www.cnblogs.com/wmr95/p/7500960.html进行安装。

     pip install tensorflow   (# For CPU)

    pip install tensorflow-gpu  (# For GPU )

  2.接下来通过命令安装一些库函数以及包。

  sudo apt-get install protobuf-compiler python-pil python-lxml

  sudo pip install jupyter

  sudo pip install matplotlib  

  (在安装jupyter和matplotlib的时候,出现过以下问题)

  sudo pip install jupyter会在下载的时候出现中断,如下图所示:

  

  不加sudo命令:pip install jupyter 会遇到权限不够的问题,如下图所示:

  

  我的解决办法是安装jupyter的时候输入命令:sudo pip install jupyter

  

  

  这样就莫名其妙地安装上了。

  安装matploatlib的时候输入命令:sudo -H pip install matplotlib

    

  其实这里想要强调的是:执行命令 sudo pip install jupyter的时候,会提示pip的版本不够,需要更新pip的版本,但是输入pip -V或者(pip install --upgrade pip)的时候,提示已经是最新的pip版本,如下图所示:

  

  

  实际上,你需要切换到root权限下进行pip,因为你用的sudo命令来pip。即你需要切换到root权限下对pip进行升级。

  首先在终端ternimal输入su,输入你的root下的密码后,进入到root权限,再进行pip升级,即执行pip install --upgrade pip命令。

  

  3.protobuf的编译

  这个Tensorflow Object Detection API使用protobufs来配置模型和训练参数。

  首先在ternimal终端输入命令下载tensorflow/models代码:

  git clone https://github.com/tensorflow/models.git

  在框架使用之前,protobuf库函数必须首先编译,通过以下命令来执行:

  在ternimal终端进入到tensorflow的models目录下:

  # From tensorflow/models/

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

  4.把库添加到环境变量PYTHONPATH中

  当在本地运行的时候,这个tensorflow/models/和slim目录应该添加到PYTHONPATH中,可以通过以下命令来执行:

  在ternimal终端进入到tensorflow/models/目录下:

  # From tensorflow/models/
  export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim
  
 注意:上面这个命令需要在你每次打开ternimal的时候都需要运行。如果你不想这样,你也可以把这句话添加到 ~/.bashrc文件的最后一行中。   5.测试安装成功
  通过以下命令测试你是否已经正确安装了the Tensorflow Object Detection API。
  进入到tensorflow/models/目录下:
  python object_detection/builders/model_builder_test.py

  最后放一张安装成功的截图,恭喜第一阶段大功告成:

  

  谷歌开源Tensorflow Object Dectection API链接:https://github.com/tensorflow/models/tree/master/object_detection

  

版权声明:

作者:王老头
出处:http://www.cnblogs.com/wmr95/p/7563173.html
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,并在文章页面明显位置给出原文链接,否则,作者将保留追究法律责任的权利。

谷歌开源的TensorFlow Object Detection API视频物体识别系统实现(一)[超详细教程] ubuntu16.04版本的更多相关文章

  1. 谷歌开源的TensorFlow Object Detection API视频物体识别系统实现(二)[超详细教程] ubuntu16.04版本

    本节对应谷歌开源Tensorflow Object Detection API物体识别系统 Quick Start步骤(一): Quick Start: Jupyter notebook for of ...

  2. 对于谷歌开源的TensorFlow Object Detection API视频物体识别系统实现教程

    本教程针对Windows10实现谷歌近期公布的TensorFlow Object Detection API视频物体识别系统,其他平台也可借鉴. 本教程将网络上相关资料筛选整合(文末附上参考资料链接) ...

  3. 谷歌开源的TensorFlow Object Detection API视频物体识别系统实现教程

    视频中的物体识别 摘要 物体识别(Object Recognition)在计算机视觉领域里指的是在一张图像或一组视频序列中找到给定的物体.本文主要是利用谷歌开源TensorFlow Object De ...

  4. 安装运行谷歌开源的TensorFlow Object Detection API视频物体识别系统

    Linux安装 参照官方文档:https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/inst ...

  5. 基于谷歌开源的TensorFlow Object Detection API视频物体识别系统搭建自己的应用(四)

    本章主要内容是利用mqtt.多线程.队列实现模型一次加载,批量图片识别分类功能 目录结构如下: mqtt连接及多线程队列管理 MqttManager.py # -*- coding:utf8 -*- ...

  6. Tensorflow object detection API 搭建物体识别模型(一)

    一.开发环境 1)python3.5 2)tensorflow1.12.0 3)Tensorflow object detection API :https://github.com/tensorfl ...

  7. Tensorflow object detection API 搭建物体识别模型(四)

    四.模型测试 1)下载文件 在已经阅读并且实践过前3篇文章的情况下,读者会有一些文件夹.因为每个读者的实际操作不同,则文件夹中的内容不同.为了保持本篇文章的独立性,制作了可以独立运行的文件夹目标检测. ...

  8. Tensorflow object detection API 搭建物体识别模型(三)

    三.模型训练 1)错误一: 在桌面的目标检测文件夹中打开cmd,即在路径中输入cmd后按Enter键运行.在cmd中运行命令: python /your_path/models-master/rese ...

  9. Tensorflow object detection API 搭建物体识别模型(二)

    二.数据准备 1)下载图片 图片来源于ImageNet中的鲤鱼分类,下载地址:https://pan.baidu.com/s/1Ry0ywIXVInGxeHi3uu608g 提取码: wib3 在桌面 ...

随机推荐

  1. 雷林鹏分享: C# 教程

    C# 教程 C# 是一个简单的.现代的.通用的.面向对象的编程语言,它是由微软(Microsoft)开发的. 本教程将告诉您基础的 C# 编程,同时将向您讲解 C# 编程语言相关的各种先进理念. 现在 ...

  2. Struts2框架之类型转换 --Struts2框架

    Struts2框架实现了大多数常见的用于类型转换的转换器,开发人员不用自己编写类型转换代码,就可以实现数据类型的转换.下面一个Struts2框架类型转换的简单事例, 本例可在使用validate()方 ...

  3. 表结构中updated_time设计为ON UPDATE CURRENT_TIMESTAMP时,使用过程的一个坑

    一.mysql表结构中存在如下设计时 表结构中updated_time设计为ON UPDATE CURRENT_TIMESTAMP时,如下 `updated_time` datetime NOT NU ...

  4. 「SDOI2008」Sandy 的卡片

    用第一个串建立后缀自动机.然后别的串在上面跑.从根节点开始.如果当前不能转移,一直移到slink或者根.如果移到根,能匹配长度变为0,否则变为maxlen[能转移的点]+1,再转移.转移完往slink ...

  5. Android -------- MVC,MVP 和 MVVM 架构设计模式

    MVC(Model-View-Controller)是最常见的软件架构之一,业界有着广泛应用.它本身很容易理解,但是要讲清楚,它与衍生的 MVP 和 MVVM 架构的区别就不容易了. 一.MVC MV ...

  6. PHP工厂模式demo

    <?php//工厂模式 interface operstion{ function oper($a,$b);}//加class add implements operstion{ functio ...

  7. 【模板/经典题型】FWT

    FWT在三种位运算下都满足FWT(a×b)=FWT(a)*FWT(b) 其中or卷积和and卷积还可以通过FMT实现(本质上就是个高维前缀和) #include<bits/stdc++.h> ...

  8. Remove Duplicates From Sorted Array leetcode java

    算法描述: Given a sorted array, remove the duplicates in place such that each element appear only once a ...

  9. spring boot(十)邮件服务

    springboot仍然在狂速发展,才五个多月没有关注,现在看官网已经到1.5.3.RELEASE版本了.准备慢慢在写写springboot相关的文章,本篇文章使用springboot最新版本1.5. ...

  10. 子类父类(虚函数下的 引用指针 对象)->看来没有子类指针这回事

    #include<iostream> using namespace std; class Father { public: Father() { cout << " ...