windows下执行tensorflow/models的代码显示No module named ‘object_detection‘

本文介绍了解决在使用TensorFlow目标检测API时遇到的No module named 'object_detection'错误的方法。提供了两种解决方案:一是通过设置环境变量PYTHONPATH来包含所需的路径;二是直接在Python的site-packages目录中创建.pth文件来添加这些路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Traceback (most recent call last):
File "object_detection/builders/model_builder_test.py", line 21, in <module>
from object_detection.builders import model_builder
ModuleNotFoundError: No module named 'object_detection'

 

 

有下面2个方法可以解决:

1.就是object_detection没有添加到你的路径,如果是linux下,直接执行:

export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim

就行,如果是win下,在你的python(包括Anaconda,Anaconda本身只是一个包管理器而已)的Lib的site-packages目录下,新建一个xx.pth的文件,比如我新建的就是tensorflow_model.pth文件,添加你的models的3个路径,比如我的就是:

E:\models-master\research
E:\models-master\research\slim
E:\models-master\research\object_detection

 

 

 

2.在系统环境变量下新建一个PYTHONPATH,里面放这3个路径,然后需要重启电脑让环境变量生效,上面那个不需要重启

 

 

root@ubuntu:~# python -c "from datasets import exceptions; print('成功导入')" 成功导入 root@ubuntu:~# python3 image_to_text.py Traceback (most recent call last): File "/root/image_to_text.py", line 1, in <module> from modelscope.pipelines import pipeline File "/usr/local/lib/python3.10/dist-packages/modelscope/pipelines/__init__.py", line 4, in <module> from .base import Pipeline File "/usr/local/lib/python3.10/dist-packages/modelscope/pipelines/base.py", line 15, in <module> from modelscope.models.base import Model File "/usr/local/lib/python3.10/dist-packages/modelscope/models/__init__.py", line 18, in <module> fix_transformers_upgrade() File "/usr/local/lib/python3.10/dist-packages/modelscope/utils/automodel_utils.py", line 48, in fix_transformers_upgrade from transformers import PreTrainedModel File "/usr/local/lib/python3.10/dist-packages/transformers/utils/import_utils.py", line 2154, in __getattr__ module = self._get_module(self._class_to_module[name]) File "/usr/local/lib/python3.10/dist-packages/transformers/utils/import_utils.py", line 2184, in _get_module raise e File "/usr/local/lib/python3.10/dist-packages/transformers/utils/import_utils.py", line 2182, in _get_module return importlib.import_module("." + module_name, self.__name__) File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "/usr/local/lib/python3.10/dist-packages/transformers/modeling_utils.py", line 73, in <module> from .loss.loss_utils import LOSS_MAPPING File "/usr/local/lib/python3.10/dist-packages/transformers/loss/loss_utils.py", line 21, in <module> from .loss_d_fine import DFineForObjectDetectionLoss File "/usr/local/lib/python3.10/dist-packages/transformers/loss/loss_d_fine.py", line 21, in <module> from .loss_for_object_detection import ( File "/usr/local/lib/python3.10/dist-packages/transformers/loss/loss_for_object_detection.py", line 32, in <module> from transformers.image_transforms import center_to_corners_format File "/usr/local/lib/python3.10/dist-packages/transformers/image_transforms.py", line 22, in <module> from .image_utils import ( File "/usr/local/lib/python3.10/dist-packages/transformers/image_utils.py", line 59, in <module> from torchvision.transforms import InterpolationMode File "/usr/local/lib/python3.10/dist-packages/torchvision/__init__.py", line 10, in <module> from torchvision import _meta_registrations, datasets, io, models, ops, transforms, utils # usort:skip ImportError: cannot import name 'datasets' from partially initialized module 'torchvision' (most likely due to a circular import) (/usr/local/lib/python3.10/dist-packages/torchvision/__init__.py)
最新发布
07-13
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值