Python 中 No Module named ***问题

本文详细介绍了在使用Python和TensorFlow Object Detection API过程中遇到的模块导入错误问题,包括protc编译失败和object_detection模块导入错误。通过配置环境变量和~/.bashrc文件,实现了在任意目录下成功导入所需模块。

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

问题描述

使用python的时候,老是遇见No Module named的问题,例如在使用TensorFlow Object Detection API的过程中(GitHub:DetectionAPI),过程中的问题
1)protc编译失败
2)object_detection模块导入错误

from object_detection.builders import model_builder
from object_detection.meta_architectures import faster_rcnn_meta_arch
from object_detection.meta_architectures import rfcn_meta_arch
from object_detection.meta_architectures import ssd_meta_arch
from object_detection.models import ssd_resnet_v1_fpn_feature_extractor as ssd_resnet_v1_fpn
from object_detection.protos import hyperparams_pb2
from object_detection.protos import losses_pb2
from object_detection.protos import model_pb2

对于问题1,采用3.3版本的protoc进行编译,注意在research目录下面编译
对于问题2(书中的参考模块是slim,路径:/home/lxl/models-master/research/slim,pwd:/home/lxl/models-master/research)

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

该命令执行完以后,可以在research目录python环境中导入slim模块,但是换一个目录就无法导入了!slim导入错误
也就是python环境变量在当前目录下work on,对于object_detection目录也是如此(export PYTHONPATH=$PYTHONPATH:‘pwd’:‘pwd’/object_detection),如何修改python全部的环境变量,使得在任何终端路径下面都可以导入module呢?
这时候我们需要配置~/.bashrc文件


sudo gedit ~/.bashrc


export PYTHONPATH=$PYTHONPATH:'/home/lxl/models-master/research'

在打开终端,直接导入模块就OK(slim 和object_detection都在research目录下面)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值