ImportError: нет модуля с именем 'nets'

Я пытаюсь преобразовать training_checkpoint в окончательную замороженную модель из сценария export_inference_graph.py, предоставленного в tensorflow / models, но возникает следующая ошибка. И да, я уже настроил $ 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'

Я борюсь с этим уже несколько дней, пробовал много решений, ничего не работает. Я использую Ubuntu 16.04 с версией tensorflow-gpu.


person Ishara Abeykoon    schedule 04.09.2017    source источник
comment
какая у вас версия тензорного потока?   -  person Tianjin Gu    schedule 04.09.2017
comment
Его tensorflow-gpu (1.3.0)   -  person Ishara Abeykoon    schedule 04.09.2017
comment
Почти невозможно ответить на этот вопрос без подробных инструкций о том, что именно вы сделали и что произошло. Здесь похоже, что вы используете сторонний пакет для обнаружения объектов, а не только Tensorflow?   -  person Peter Hawkins    schedule 08.09.2017


Ответы (9)


Взгляните на Protobuf Compilation на https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/installation.md и правильно установите PYTHONPATH, вот как я решил это для Windows

Для 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
person Pawan Mishra    schedule 20.04.2018
comment
Это рабочее решение. Но мне приходится делать это каждый раз, когда я перезагружаю машину. Это не навсегда. Есть предположения ? - person Soumya Boral; 25.07.2018
comment
Нет Soumya, до сих пор нет постоянного решения для этого. Это нужно делать каждый раз при перезапуске машины. Возможно, в будущих версиях это будет решено. - person Pawan Mishra; 26.07.2018
comment
Имеет ли смысл добавлять эти переменные в вашу среду conda? docs. conda.io/projects/conda/en/latest/user-guide/tasks/ - person VirtualVDX; 21.11.2019
comment
@SoumyaBoral команда 'set' временно установит его, чтобы сделать его постоянным, вам нужно изменить 'переменные среды' - person Marco D.G.; 19.03.2020

Физический графический процессор Ubuntu 18 (устройство: 0, имя: Tesla K80, идентификатор шины pci: 0000: 00: 1e.0, вычислительные возможности: 3,7) строгий текст

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

Это на случай, если вы загрузили или клонировали каталог своих моделей.

person Vadim    schedule 20.05.2019

Я получил ту же ошибку, потому что я пропустил, чтобы фактически поместить тонкий пакет в папку tensorflow / models. Тонкий пакет находится на https://github.com/tensorflow/models

person andreas    schedule 10.09.2017

TF-Slim доступен как tf.contrib.slim через TensorFlow 1.0, поэтому вам не нужно устанавливать его дополнительно, если вы использовали pip install tensorflow. Вам все еще нужно сделать эти 3 вещи:

  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/')
    

После этих 3 шагов все готово. Теперь вы можете импортировать сети TF следующим образом:

import tensorflow as tf
from tensorflow.contrib import slim
from nets import inception_resnet_v2
person tsveti_iko    schedule 02.10.2018

Это исправлено в более новых версиях tensorflow, если вы его получите, просто обновите свою версию tensorflow.

person Ishara Abeykoon    schedule 31.05.2018
comment
Это также происходит в последней версии процессора тензорного потока (1.9). Однако решение @Pawan решило проблему. - person Soumya Boral; 25.07.2018

Для MacOS:

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

Решает проблему.

person ceekay    schedule 06.08.2018

обнаружил тонкую ошибку в окнах, и это решило мою проблему

. Я просто скопировал всю папку nets из каталога slim в C: \ Python \ Python \ Lib \ site-packages \ object_detection-0.1-py3.5.egg (где я установил object_detection API). Тогда ошибка полностью исчезла.

person Draxy07    schedule 25.02.2019

Это проблема PYTHONPATH.

Я хотел бы добавить к существующим ответам, что, если он все еще не работает для вас, и вы используете среду Anaconda, используйте подсказку Anaconda (в режиме администратора), которая поставляется с дистрибутивом, а не системную подсказку вашей ОС. Установите PYTHONPATH в подсказке Anaconda и запускайте свои команды оттуда.

Также PYTHONPATH сбрасывается при каждой деактивации среды anaconda, включая перезапуск компьютера. Так что не забудьте установить его снова.

person Gabriel P.    schedule 18.08.2018

ЕСЛИ вы используете Jupyter Notebook и используете Linux sys

скачать модели тензорного потока

а затем напишите это в свой блокнот

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

Я решил свою проблему с этим

Надеюсь, это поможет

person Coder    schedule 22.05.2020