代码之家  ›  专栏  ›  技术社区  ›  Ishara Abeykoon

导入错误:没有名为“nets”的模块

  •  12
  • Ishara Abeykoon  · 技术社区  · 8 年前

    是的,我已经将$PYTHONPATH设置为“models/slim”,但仍然出现了这个错误,有人能帮我吗?

    $ echo $PYTHONPATH
    :/home/ishara/tensorflow_models/models:/home/ishara/tensorflow_models/models/slim
    

    $sudo python3 object_detection/export_inference_graph.py  --input_type image_tensor  --pipeline_config_path = "ssd_inception_v2_pets.config"  --trained_checkpoint_prefix="output/model.ckpt-78543"  --output_directory="birds_inference_graph.pb"
    
    Traceback (most recent call last):
      File "object_detection/export_inference_graph.py", line 74, in <module>
        from object_detection import exporter
      File "/usr/local/lib/python3.5/dist-packages/object_detection-0.1-py3.5.egg/object_detection/exporter.py", line 28, in <module>
    
      File "/usr/local/lib/python3.5/dist-packages/object_detection-0.1-py3.5.egg/object_detection/builders/model_builder.py", line 30, in <module>
      File "/usr/local/lib/python3.5/dist-packages/object_detection-0.1-py3.5.egg/object_detection/models/faster_rcnn_inception_resnet_v2_feature_extractor.py", line 28, in <module>
    ImportError: No module named 'nets'
    

    我正在使用带有tensorflow gpu版本的Ubuntu 16.04。

    9 回复  |  直到 8 年前
        1
  •  20
  •   Pawan Mishra    8 年前

    查看Protobuf编译 https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/installation.md

    对于Windows:

    步骤1: protoc object_detection/protos/*.proto --python_out=.

    步骤2:

    set PYTHONPATH= <Path to 'research' Directory> ; <Path to 'slim' Directory>
    

    set PYTHONPATH=C:\Users\Guy\Desktop\models\research;C:\Users\Guy\Desktop\models\research\slim
    
        2
  •  7
  •   Vadim    7 年前

    Ubuntu 18物理GPU(设备:0,名称:特斯拉K80,pci总线id:0000:00:1e.0,计算能力:3.7)

    cd models/research/slim/;
    python setup.py build
    python setup.py install
    

    以防您下载或克隆了模型目录。

        3
  •  4
  •   tsveti_iko    7 年前

    TF Slim作为TF提供。contrib。通过TensorFlow 1.0实现slim 如果使用,则需要另外安装 pip install tensorflow . 你仍然需要做以下三件事:

    1. $ cd
      $ git clone https://github.com/tensorflow/models/
      
    2. 添加 PYTHONPATH .bashrc

      $ cd
      $ vi .bashrc
      
      export PYTHONPATH="$PYTHONPATH:/home/${YOUR_USERNAME}/models/research/slim"
      
    3. $ vi ${YOUR_SCRIPT}.py
      
      import sys
      sys.path.append('/home/${YOUR_USERNAME}/models/research/slim/')
      

    在这三个步骤之后,你就都准备好了。现在,您可以像这样导入TF网络:

    import tensorflow as tf
    from tensorflow.contrib import slim
    from nets import inception_resnet_v2
    
        4
  •  3
  •   andreas    8 年前
        5
  •  1
  •   Ishara Abeykoon    8 年前

    这在更新版本的tensorflow上是固定的,如果你得到它,只需更新你的tensorflow版本。

        6
  •  1
  •   ceekay    7 年前

    对于MacOS:

    export PYTHONPATH=/home/username/models/research/slim:$PYTHONPATH

        7
  •  1
  •   Draxy07    7 年前

    在windows上遇到slim错误,这解决了我的问题

    . 我所做的是,我只是将整个nets文件夹从slim目录复制到C:\Python\Python\Lib\site packages\object\u detection-0.1-py3.5。egg(我在那里安装了object_检测API)。然后错误就完全消失了。

        8
  •  0
  •   Gabriel P.    7 年前

    我想补充一下现有的答案,如果它仍然不适用于您,并且您使用的是Anaconda环境,请使用发行版附带的Anaconda提示符(在管理模式下),而不是操作系统的系统提示符。在Anaconda提示符内设置PYTHONPATH,然后从那里运行命令。

    此外,蟒蛇路径在每次anaconda环境停用时重置,其中包括机器重启。所以记得再次设置。

        9
  •  0
  •   Coder    6 年前

    下载 tensorflow-models

    然后把这个写在你的笔记本上

    sys.path.append("/home/Roy/Downloads/models-master/research/slim/")

    我用这个解决了我的问题

    希望有帮助

    推荐文章