ModuleNotFoundError: No module named 'tf_slim'

jake picture jake · Jun 20, 2020 · Viewed 10.9k times · Source

Using Anaconda to try and setup deeplab (https://github.com/tensorflow/models/tree/master/research/deeplab).

I have gotten through a lot of issues by seeing other questions answered but have hit one that doesn't seem to be answered:

when trying to run the "python deeplab/model_test.py" I get:

(base) PS D:\DeepLab\models-master\research> python deeplab/model_test.py
C:\Users\Jake\anaconda3\lib\site-packages\tensorflow\python\framework\dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorflow\python\framework\dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorflow\python\framework\dtypes.py:518: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint16 = np.dtype([("qint16", np.int16, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorflow\python\framework\dtypes.py:519: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint16 = np.dtype([("quint16", np.uint16, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorflow\python\framework\dtypes.py:520: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint32 = np.dtype([("qint32", np.int32, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorflow\python\framework\dtypes.py:525: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  np_resource = np.dtype([("resource", np.ubyte, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorboard\compat\tensorflow_stub\dtypes.py:541: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorboard\compat\tensorflow_stub\dtypes.py:542: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorboard\compat\tensorflow_stub\dtypes.py:543: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint16 = np.dtype([("qint16", np.int16, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorboard\compat\tensorflow_stub\dtypes.py:544: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint16 = np.dtype([("quint16", np.uint16, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorboard\compat\tensorflow_stub\dtypes.py:545: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint32 = np.dtype([("qint32", np.int32, 1)])
C:\Users\Jake\anaconda3\lib\site-packages\tensorboard\compat\tensorflow_stub\dtypes.py:550: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  np_resource = np.dtype([("resource", np.ubyte, 1)])
Traceback (most recent call last):
  File "deeplab/model_test.py", line 22, in <module>
    from deeplab import model
  File "D:\DeepLab\models-master\research\deeplab\model.py", line 58, in <module>
    from deeplab.core import feature_extractor
  File "D:\DeepLab\models-master\research\deeplab\core\feature_extractor.py", line 24, in <module>
    from deeplab.core import nas_network
  File "D:\DeepLab\models-master\research\deeplab\core\nas_network.py", line 44, in <module>
    from deeplab.core import nas_genotypes
  File "D:\DeepLab\models-master\research\deeplab\core\nas_genotypes.py", line 23, in <module>
    from deeplab.core import nas_cell
  File "D:\DeepLab\models-master\research\deeplab\core\nas_cell.py", line 29, in <module>
    from deeplab.core import xception as xception_utils
  File "D:\DeepLab\models-master\research\deeplab\core\xception.py", line 58, in <module>
    from nets.mobilenet import conv_blocks as mobilenet_v3_ops

  **File "D:\DeepLab\models-master\research\slim\nets\mobilenet\conv_blocks.py", line 20, in <module>
    import tf_slim as slim
ModuleNotFoundError: No module named 'tf_slim'**

I found some suggestions that this may be environment variable related but mine are all correct: env vars and i refreshed the anaconda window multiple times to make sure the changes were taking place.

I have tf_slim in my folder directory here: C:\Program Files\Python36\Lib\site-packages\tf_slim.

Not sure what to do :( I'm pretty new at this type of installation.

I am on windows 10.

Answer

Sreekumar picture Sreekumar · Jun 20, 2020

Anaconda by default creates a virtual environment and if you open python via anaconda prompt ,the python executable in the virtual environment is opened. This virtual environment will have it's own set of modules and won't refer to the system level python packages. I suggest you to open the anaconda prompt and type the following command:

pip install tf_slim