我正在尝试获取TensorFlow对象检测API
https://github.com/tensorflow/models/tree/master/research/object_detection
按照安装说明在Windows上工作
https://github.com/tensorflow/models/tree/master/research/object_detection
似乎适用于Linux / Mac。仅当我将上述存储库克隆到的目录中放入脚本时,我才能使此工作正常。如果将脚本放在任何其他目录中,则会出现此错误:
ModuleNotFoundError: No module named 'utils'
我怀疑原因未正确执行与上述安装说明中列出的Windows命令等效的Windows:
# From tensorflow/models/research/
export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim
如果重要的话,我正在使用Windows 10,Python 3.6和TensorFlow 1.4.0。当然,我已经对此问题进行了Google搜索,并找到了各种链接,例如:
https://github.com/tensorflow/models/issues/1747
但这并没有解决担忧。有关如何解决此问题的任何建议?
这是我到目前为止已经完成的具体步骤:
1)通过pip3安装TensorFlow和相关工具
2)在管理命令提示符下,运行以下命令:
pip3 install pillow
pip3 install lxml
pip3 install jupyter
pip3 install matplotlib
3)在我的情况下,将TensorFlow“模型”存储库克隆到Documents文件夹
C:\Users\cdahms\Documents\models
4)下载了Google Protobuf https://github.com/google/protobuf Windows v3.4.0发行版“ protoc-3.4.0-win32.zip”(我尝试了最新的3.5.1并在后续步骤中遇到了错误,因此我按照这个vid https://www.youtube.com/watch?v=COlbP62-BU&list=PLQVvvaa0QuDcNK5GeCQnxYnSSaar2tpku&index=1尝试了3.4.0 ,protobuf编译成功了)
5)将Protobuf下载文件解压缩到Program Files中,特别是
"C:\Program Files\protoc-3.4.0-win32"
6)将CD放入models \ research目录,具体来说
cd C:\Users\cdahms\Documents\models\research
7)执行protobuf编译
“C:\Program Files\protoc-3.4.0-win32\bin\protoc.exe” object_detection/protos/*.proto --python_out=.
导航:
C:\Users\cdahms\Documents\models\research\object_detection\protos
并验证.py文件是通过编译成功创建的(只有.proto文件才可以开始)
8)cd到object_detection目录,例如:
cd C:\Users\cdahms\Documents\models\research\object_detection
然后在命令提示符下输入以下内容以启动object_detection_tutorial.ipynb Jupyter Notebook
jupyter notebook
9)在Jupyter Notebook中,选择“ object_detection_tutorial.ipynb”-> Cell->全部运行,该示例应在笔记本中运行
10)在Jupyter Notebook中,选择“文件”->“下载为”->“ Python”,然后将笔记本的.py版本保存到同一目录,即
C:\Users\cdahms\Documents\models\research\object_detection\object_detection_tutorial.py
现在,您可以在所选的Python编辑器(例如PyCharm)中打开脚本并运行它。
11)将脚本移到任何其他目录,然后尝试运行它,您将发现错误:
ModuleNotFoundError: No module named 'utils'
因为我们尚未通知Python如何找到这些行使用的utils目录:
from utils import label_map_util
from utils import visualization_utils as vis_util
解决这个问题。。。
12)进入系统->高级系统设置->环境变量。。。->新建,并添加一个名称为PYTHONPATH和以下值的变量:
13)同样在环境变量下,编辑PATH并添加%PYTHONPATH%,如下所示:
14)重新启动以确保这些路径更改生效
15)弹出命令提示符并运行命令“ set”,验证PYTHONPATH是否存在以及PYTHONPATH和PATH是否包含前面步骤中的值。
16)现在您可以将“ object_detection_tutorial.py”复制到任何其他目录,它将运行
如评论中所述,utils
是一个子模块,因此您实际上需要添加object_detection
到PYTHONPATH
,而不是object_detection/utils
。
我很高兴为您服务。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句