欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

用pip或easy_install在Win10上安装TensorFlow Object Detection API

程序员文章站 2022-05-07 12:43:33
...

对于TensorFlow Object Detection API 官方安装指导,我觉得有以下两点可以改进的地方:

1、安装:指导中要求使用者先克隆下整个models仓库,然后安装Protobuf解压出object_detection模块,然后将object_detection模块与slim模块的目录添加到PYTHONPATH中,这一操作在新打开Shell后都需要重新进行(当然,添加到环境变量配置文件中可以免除此麻烦)。此外,在Windows系统上,安装配置protobuf相对麻烦,同时还存在bug,识别一些模型时会出问题【https://github.com/tensorflow/tensorflow/issues/3002】。

2、使用:在object_detection的ipython tutorial中,使用了如下语句:

from utils import label_map_util, visualization_utils

这里的utils是object_detection下的子模块。如果按照这个写法,运行脚本不在object_detection目录下就无法找到utils。

本文提出一个方法,将object detection api做成whl或egg包,不必安装配置protobuf,也可以避免bug,安装使用都要方便的多。
我这里已经将他们打包出来(slim我也一并打包了),Python环境是3.6.6和Python2.7.15(Win10 64位系统)。前往下载:whl_and_egg_of_TF_Object_Detection_API

下载后,请先安装依赖:

  • Protobuf 3.0.0
  • Python-tk
  • Pillow 1.0
  • lxml
  • Jupyter notebook
  • Matplotlib
  • Tensorflow
  • Cython
  • contextlib2

安装whl只需执行:

pip install xxx.whl

即可。

安装egg只需执行:

easy_install xxx.egg

即可。

使用时,请使用标准的引用Python模块的子模块的用法,对于object_detection的utils或是其他子模块,请使用:

from object_detection.utils import label_map_util, visualization_utils

这样运行脚本不管放在哪里,都是可以搜索到utils并执行的。

此法在其他平台上同样可以使用,我在树莓派上也是使用这种方法安装的,只是需要在树莓派上去编译。