Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Tut] TensorFlow ModuleNotFoundError: No Module Named ‘utils’
1
TensorFlow ModuleNotFoundError: No Module Named ‘utils’

5/5 – (1 vote)

Problem Formulation

[Image: image-273.png]

Say, you try to import
Code:
label_map_util
from the
Code:
utils
module when running TensorFlow’s
Code:
object_detection
API. You get the following error message:

Code:
>>> from utils import label_map_util Traceback (most recent call last): File "<pyshell#3>", line 1, in <module> from utils import label_map_util ModuleNotFoundError: No module named 'utils'

[Image: 1f4ac.png] Question: How to fix the
Code:
ModuleNotFoundError: No module named 'utils'
?

Solution Idea 1: Fix the Import Statement

The most common source of the error is that you use the expression
Code:
from utils import <something>
but Python doesn’t find the utils module. You can fix this by replacing the import statement with the corrected
Code:
from object_detection.utils import <something>
.

For example, do not use these import statements:

Code:
from utils import label_map_util from utils import visualization_utils as vis_util

Instead, use these import statements:

Code:
from object_detection.utils import label_map_util from object_detection.utils import visualization_utils as vis_util

Everything remains the same except the bolded text.

This, of course, assumes that Python can resolve the
Code:
object_detection
API. You can follow the installation recommendations here, or if you already have TensorFlow installed, check out the Object Detection API installation tips here.

Solution Idea 2: Modify System Path

Another idea to solve this issue is to append the path of the TensorFlow Object Detection API folder to the system paths so your script can find it easily.

To do this, import the
Code:
sys
library and run
Code:
sys.path.append(my_path)
on the path to the
Code:
object_detection
folder that may reside in
Code:
/home/.../tensorflow/models/research/object_detection
, depending on your environment.

Code:
import sys sys.path.append('path/to/object/detection/folder')
Solution Idea 3: Dirty Copy and Paste

I don’t recommend using this approach but I still want to share it with you for comprehensibility. Try copying the
Code:
utils
folder from
Code:
models/research/object_detection
in the same directory as the Python file requiring
Code:
utils
.

Solution Idea 4: Import Module from Another Folder (Utils)

This is a better variant of the previous approach: use our in-depth guide to figure out a way to import the utils module correctly, even though it may reside on another path. This should usually do the trick.

[Image: 1f30e.png] Recommended Tutorial: How to Import a Module from Another Path

Resources: You can find more about this issue here, here, and here. Among other sources, these were also the ones that inspired the solutions provided in this tutorial.

Thanks for reading this—feel free to learn more about the benefits of a TensorFlow developer (we need to keep you motivated so you persist through the painful debugging process you’re currently in). [Image: 1f609.png]

[Image: 1f30e.png] Recommended Tutorial: TensorFlow Developer – Income and Opportunity
Reply

Users browsing this thread:
1 Guest(s)


Forum Jump: