前言:
win8不能安装 tensorflow object_detection
我的基本环境
cudnn 7.5.0
cuda 9.0
tensorflow-gpu 1.12.0
python 3.6
protoc 3.12.4
win10
准备:
step1:下载protobuf : https://github.com/protocolbuffers/protobuf/releases/
step2:下载tensorflow model:https://codeload.github.com/tensorflow/models/zip/master
git快很多:
git clone -b v1.12.0 https://github.com/tensorflow/models.git
开始:
1-创建&激活虚拟环境
conda create -n XXX_env pip python=3.6
conda activate XXX_env
2-安装tensorflow-gpu
pip install tensorflow-gpu
3-解压zip包,并把protoc.exe添加到环境变量
protoc
有输出就安装成功
4-protoc编译tensorflow model。输出一个换行表示成功
(tf12_env) D:\models\research>protoc ./object_detection/protos/*.proto --python_out=.
5、创建文件D:\anaconda\Lib\site-packages\tensorflow_model.pth 内容如下
D:\models\research
D:\models\research\slim
6、运行models/research下的setup.py
python setup.py build
python setup.py install
7、slim模块build&install
cd slim
python setup.py build
python setup.py install
8、测试
(tf12_env) D:\models\research>python object_detection/builders/model_builder_test.py
输出:
bug汇总:
【bugs-1】No module named tensorflow.compat.v1
原因: tensorflow.compat.v1 这个包只会出现在 tf2.0 版本中,而我的环境是 tf1.14
解决:
$ git checkout v1.12.0
$ git log
$ git reset --hard d7ce21fa4d3b8b204530873ade75637e1313b760
输出:
【bug-2】from nets import inception_resnet_v2 ModuleNotFoundError: No module named ‘nets’
原因: slim模块安装错误,
解决:
删除*/research/slim下的BUILD文件
需要重新build&install