windows下object_detection(tensorflow-gpu1.13.1)安装

前言

为了搭建robust-physical-attack环境,根据https://github.com/shangtse/robust-physical-attack/blob/master/Pipfile

[[source]]
verify_ssl = true
name = "pypi"
url = "https://pypi.org/simple"

[requires]
python_version = "3.6"

[packages]
numpy = "==1.16.4"
tensorflow-gpu = "==1.13.2"
pyopengl = "==3.1.0"
lucid = "==0.3.1"
object-detection = {git = "https://github.com/tensorflow/models.git", subdirectory = "research", ref = "fe748d4a4a1576b57c279014ac0ceb47344399c4", editable = true}
slim = {git = "https://github.com/tensorflow/models.git", subdirectory = "research/slim", ref = "fe748d4a4a1576b57c279014ac0ceb47344399c4", editable = true}

[dev-packages]

一、配置好tensorflow环境

由于原环境有tensorflow_gpu1.13.1此处直接使用,具体为:
tf1.13.1 + cuda10.1 + cudnn-v8.0.5.39
tensorflow环境可参考其他文章。

二、git下载指定ref的models

由于,models已经更新迭代较多版本,需要拉取指定的ref的分支。

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

三、protoc编译

(1)下载protoc

https://github.com/protocolbuffers/protobuf/releases
我选择的是protoc-3.15.0-win64,下载好后把bin中的protoc.exe放入models/research目录下即可。

此处也可以把bin目录添加到系统环境变量中,但是我个人不喜欢环境变量中放太多东西。

(2)开始编译 进入models/research目录,此处有两种方式,最好先尝试第一种,即批量进行操作

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

如果提示No such file or directory,但文件又确实存在的话,就尝试第二种,即一个一个文件进行编译(此处可参考https://blog.csdn.net/KID_yuan/article/details/91428058)

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

最后会生成相应的 .py文件。

四、安装

(1)object_detection

进入models/research目录

python setup.py install

该过程会生成一个build文件,里面有编译的lib/object_detection等,基本就算安装成功。
此外很多人写了需要将models/research/object_detection文件路径和models,research的路径加入环境变量中,其实可以不用添加,只需在你Anaconda使用的env对应的site-packages目录下,如D:\software\Anaconda3\envs\3d_adv\Lib\site-packages 这个文件夹目录下,写一个.pth文件,内容为两条路径

D:\py_code\install\models\research
D:\py_code\install\models\research\slim

此外,将models/research/object_detection文件夹全部拷贝到D:\software\Anaconda3\envs\3d_adv\Lib\site-packages 目录下。

(2)slim

删除 models/research/slim目录下的BUILD文件,然后cd 到 models/research/slim目录下,运行: python setup.py install

(3)测试

测试命令python object_detection/builders/model_builder_test.py
如果有以下报错:

ImportError: cannot import name 'device_spec'

就看看是不是安装了tf_slim,卸载后再装一遍slim,这个报错的原因还可能是之前尝试安装过其他版本的object_detection。
最后输出
1
表示object_detection安装成功。

五、测试API

打开并运行research\object_detection中的object_detection_tutorial.ipynb
windows下object_detection(tensorflow-gpu1.13.1)安装_第1张图片
windows下object_detection(tensorflow-gpu1.13.1)安装_第2张图片

你可能感兴趣的:(目标检测,tensorflow,windows,python)