【问题标题】:Tensorflow object detection: ImportError: No module named netsTensorFlow 对象检测:ImportError: No module named nets
【发布时间】:2017-07-11 13:51:30
【问题描述】:

我目前正在尝试在 Windows 7 上安装 tensorflow 对象检测应用程序(雇主要求),但我在最后几步就失败了。

基本上我在运行安装测试命令时收到以下错误: ImportError: 没有名为 nets 的模块。

我已经阅读了一些关于该主题的解决方案:

https://github.com/tensorflow/models/issues/729 https://github.com/tensorflow/models/issues/1842

看起来像这样: export PYTHONPATH="$PYTHONPATH:"somepath"/tensorflow/models/slim"

基本上意味着我必须在 PYTHONPATH 环境变量中设置正确的路径。

在使用 Windows 时,我尝试这样调用: SET PYTHONPATH="$PYTHONPATH:C:tensorflow/models/slim 而当它不起作用时,我在 system-> 环境变量中创建了一个 PYTHONPATH 变量。

我仍然收到错误,所以我想我仍然缺少一些东西,但由于我缺乏知识,我仍然无法弄清楚是什么。

熟悉 Windows 的人能否指出缺少的内容?

谢谢

【问题讨论】:

  • 我也遇到了这个问题。你有想过吗?
  • 我让它工作了,但是......无论如何,请检查我下面的答案,看看它是否也适合你。很抱歉,如果需要一段时间才能回复。

标签: windows tensorflow environment-variables object-detection


【解决方案1】:

在 Linux 中: 将 export export PYTHONPATH=$PYTHONPATH:pwd:pwd/slim 添加到 ~/.bashrc 注意:你应该保留单引号

如果您使用 Windows,我想它应该是这样的:PYTHONPATH=$PYTHONPATH:'C:/tensorflow/models':'C:/tensorflow/models'/slim 只是我的猜测,你可以试一试。 祝你好运!

【讨论】:

  • 谢谢!将超薄模型的路径添加到 PYTHONPATH 变量中对我有用。
【解决方案2】:

如果您运行 setup.py,它将安装所有相关模块以进行对象检测。另一个选项是下载 git 目录。 cd 到文件夹并尝试从那里运行模块。您可能会遇到 protubuf 问题。在运行代码之前尝试安装它。在 windows 中安装 protobuf 有点复杂。但如果您不使用“.pb”文件,则不需要。

【讨论】:

    【解决方案3】:

    我想出了一个让它工作的方法。我不会将其作为最终答案,因为它主要是一种解决方法,并且由于我缺乏理解,我不能保证它会起作用(而且它可能不是最佳实践)。

    反正就是这样:

    正如 Beta 之前建议的那样,您必须运行 setup.py,但是从模型文件夹运行它对我来说并没有这样做,我还必须从对象检测文件夹运行它。

    但是那里有一个问题,它产生了一个错误,说 BUILD 已经存在(这是正确的),所以我不得不从模型内部删除 BUILD 文件。

    之后它工作了,结果我设置的路径工作正常。

    现在,如果一些专家会对此进行调查并解释此解决方法的工作原理和原因,它可能会成为一个有效的解决方案。

    【讨论】:

      猜你喜欢
      • 2018-10-28
      • 2017-05-30
      • 2016-04-27
      • 1970-01-01
      • 1970-01-01
      • 2018-06-23
      • 2015-09-10
      • 1970-01-01
      • 2012-08-12
      相关资源
      最近更新 更多