此前就听闻室友说tensorflow在windows下坑很多,这次终于亲身领会到了。以下是参考网上大佬的教程以及自己的踩坑史总结出的有效步骤(亲测有效)

1.下载objectdetection所在的models(文件很大,考虑到国内github的速度,以下的资源均给出码云地址,进入后点击克隆/下载,选择下载方式)

  https://gitee.com/burningcarbon/tensorflow-models

2.在自己的python环境中安装依赖(给出版本号的必须下载对应版本,否则报错,其余下最新版即可)

  tensorflow==1.14.0

  numpy==1.16

  matplotlib

  lxml

  pillow

  Cython

3. 安装cocoapi(由于该项目官方并不支持windows编译,所以下载大佬的修改版)

  下载:地址https://gitee.com/burningcarbon/windows-cocoapi 

  安装:在命令行下进入cocoapi/PythonAPI目录,执行:  python setup.py build_ext install

    注意:

      以上命令适用于在全局的python环境安装

      如果想要安装在虚拟环境中,则需要执行 python安装路径/python.exe setup.py build_ext install

      或者激活虚拟环境,在其中执行原命令即可

  将PythonAPI目录下的pycocotools复制到research目录下

4.protobuf的编译

  下载编译器

    进入https://github.com/protocolbuffers/protobuf/releases,在最新版(当前为3.11.4)中,下载Assets中的protoc-3.11.4-win64.zip

    进入models/research目录,执行protoc  object_detection/protos/*.proto --python_out=.

      如果报错提示No such file or directory,则一个一个进行编译

        

        protoc object_detection/protos/anchor_generator.proto --python_out=.
        protoc object_detection/protos/argmax_matcher.proto --python_out=.
        protoc object_detection/protos/bipartite_matcher.proto --python_out=.
        protoc object_detection/protos/box_coder.proto --python_out=.
        protoc object_detection/protos/box_predictor.proto --python_out=.
        protoc object_detection/protos/calibration.proto --python_out=.
        protoc object_detection/protos/eval.proto --python_out=.
        protoc object_detection/protos/faster_rcnn.proto --python_out=.
        protoc object_detection/protos/faster_rcnn_box_coder.proto --python_out=.
        protoc object_detection/protos/grid_anchor_generator.proto --python_out=.
        protoc object_detection/protos/hyperparams.proto --python_out=.
        protoc object_detection/protos/image_resizer.proto --python_out=.
        protoc object_detection/protos/input_reader.proto --python_out=.
        protoc object_detection/protos/keypoint_box_coder.proto --python_out=.
        protoc object_detection/protos/losses.proto --python_out=.
        protoc object_detection/protos/matcher.proto --python_out=.
        protoc object_detection/protos/mean_stddev_box_coder.proto --python_out=.
        protoc object_detection/protos/model.proto --python_out=.
        protoc object_detection/protos/multiscale_anchor_generator.proto --python_out=.
        protoc object_detection/protos/optimizer.proto --python_out=.
        protoc object_detection/protos/pipeline.proto --python_out=.
        protoc object_detection/protos/post_processing.proto --python_out=.
        protoc object_detection/protos/preprocessor.proto --python_out=.
        protoc object_detection/protos/region_similarity_calculator.proto --python_out=.
        protoc object_detection/protos/square_box_coder.proto --python_out=.
        protoc object_detection/protos/ssd.proto --python_out=.
        protoc object_detection/protos/ssd_anchor_generator.proto --python_out=.
        protoc object_detection/protos/string_int_label_map.proto --python_out=.
        protoc object_detection/protos/train.proto --python_out=.

  安装:

      命令行进入models/research目录,执行python setup.py install(python虚拟环境的安装同第二步cocoapi的安装)

5.配置环境变量

  此电脑》属性》高级系统设置》环境变量,找到path,添加 models存放路径/models/research/object_detection

7.安装slim

删除 models/research/slim目录下的BUILD文件,然后命令行下cd 到 models/research/slim目录下,运行: python setup.py install.py(python虚拟环境的安装同上)

8.测试

  命令行进入models/research路径,运行测试命令python object_detection/builders/model_builder_test.py(python虚拟环境的测试同上)

  最后出现以下输出则证明环境安装成功

  

windows下tensorflow/objectdetection API环境搭建(基于tensorflow1.14和python3.6)的更多相关文章

  1. windows下vue.js开发环境搭建教程

    这篇文章主要为大家详细介绍了windows下vue.js开发环境搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 最近,vue.js越来越火.在这样的大浪潮下,我也开始进入vue的学习行列中 ...

  2. Windows下ELK-5.4.3环境搭建

    Windows下ELK-5.4.3环境搭建 一.概述 ELK官网 https://www.elastic.co ELK由Elasticsearch.Logstash和Kibana三部分组件组成: El ...

  3. 转:Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。

    原文来自于:http://www.ituring.com.cn/article/128439 Windows下的PHP开发环境搭建——PHP线程安全与非线程安全.Apache版本选择,及详解五种运行模 ...

  4. Windows下C,C++开发环境搭建指南

    Windows下C,C++开发环境搭建指南 前情提要 基于近一段时间很多网友发邮件反馈,说一些项目编译出现问题,诸如此类的情况. 就觉得很有必要写一篇C,C++开发环境的小指南,统一回复. 1.君欲善 ...

  5. [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)

    MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)   网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...

  6. 【1】windows下IOS开发基础环境搭建

    一.目的 本文的目的是windows下IOS开发基础环境搭建做了对应的介绍,大家可根据文档步骤进行mac环境部署: 二.安装虚拟机 下载虚拟机安装文件绿色版,点击如下文件安装 获取安装包:       ...

  7. Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。

    今天为在Windows下建立PHP开发环境,在考虑下载何种PHP版本时,遭遇一些让我困惑的情况,为了解决这些困惑,不出意料地牵扯出更多让我困惑的问题. 为了将这些困惑一网打尽,我花了一下午加一晚上的时 ...

  8. Windows下Ionic Android开发环境搭建

    转自 http://www.itwap.net/ArticleContent.aspx?id=26 来源: itwap.net 作者: 词略 时间: 2015-4-2 16:57:28 (一)Ioni ...

  9. Windows下Go语言的环境搭建

    在本地搭建了一个开发GO语言的开发环境,给大家分享一下用go语言写的第一个hello world的过程,希望对大家有所帮助. 1.想写GO语言首先得下载go语言的开发包 官方下载地址:https:// ...

随机推荐

  1. Sqlite教程(4) Activity

    之前我们已经有了DbHelper.Data Access Object.Configuration. 那麽现在就是由Activity去创建它们,然後就可以存取Sqlite. 架构图表示了它们的关系. ...

  2. mybatis处理LIKE模糊查询字符串拼接

    -- 最佳实践 <select id="getSealByMap" parameterType="map" resultType="map&qu ...

  3. android完整资讯App、Kotlin新闻应用MVP + RxJava + Retrofit + Dagger2、优雅区间选择器等源码

    Android精选源码 Android完整资讯客户端源码 android展示注册进度效果源码 Android Wifi热点数据传输Socket 通信示例源码 Android Dota的辅助信息app源 ...

  4. FFT算法的verilog实现

    首先需要明白傅里叶相关的基本知识:还是 借用这位英雄的文章,真心写的让人佩服不已http://blog.jobbole.com/70549/ 然后是卷积的理解http://blog.csdn.net/ ...

  5. 吴裕雄--天生自然python学习笔记:Python3 JSON 数据解析

    JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. Python3 中可以使用 json 模块来对 JSON 数据进 ...

  6. Qt QString 与 QByteArray 的转换

    QString转换为QByteArray QByteArray byte; QString string; byte = string.toAscii(); QByteArray 转换为 QStrin ...

  7. c socket 开发测试

    c语言异常 参照他人代码写一个tcp的 socket 开发测试 异常A,在mac osx系统下编译失败,缺库转到debian下. 异常B,include引用文件顺序不对,编译大遍异常 异常C,/usr ...

  8. 第十六届“二十一世纪的计算”学术研讨会 密西根州立大学教授Anil K. Jain主题演讲

    Biometrics---How Do I Know Who You Are? 密西根州立大学教授Anil K. Jain主题演讲" title="第十六届"二十一世纪的 ...

  9. SpringBoot多数据源中的分布式事务

    虽然现在微服务越来越流行,我们的系统随之也拆分出来好多的模块功能.这样做的目的其实就是为了弥补单体架构中存在的不足.随着微服务的拆分,肯定设计到分库分表,但这之中肯定设计到分布式事务.最典型的例子就是 ...

  10. 关于JavaScript中的==与!的转换问题

    最近遇到了一道很有趣的JavaScript试题,感觉很有趣.记录一下免得以后面试遇到 题目是: console.log([]==![],{}==!{},[]==!{},{}==![]) 这道题考察的主 ...