1 我的问题
我在试图执行deeplabv3+模型代码时,出现了ModuleNotFoundError: No module named 'nets.mobilenetv2'的问题,如图
2 解决方法
首先,我们应保证直接的pytorch库中包含nets包,可以提供命令行窗口,分别输入以下指令以查看
1.activate ***
2.pip list
***:你自己创建和使用的pytorch环境的名字
如果没有包含nets包,则运行以下代码进行安装
pip install nets
值得关注的是,在特定的pytorch环境下,使用pip安装某个包时,不必在包名后添加版本号,这是因为在这个环境下,pip会自动给你匹配符合你环境的包版本
最后,在模型根目录中找到nets文件夹,在nets文件夹内新建一个nets文件夹,并把前者包含的东西都复制到后者内即可,如下图
3 结果呈现
4 疑点
该报错出现的原因是,我们应该让nets.***中的nets和***在同一级上。如我的问题,应该让nets和mobilenetv2在同一级文件夹上。
参考网上的一些方法,是将nets文件夹复制进nets文件夹下,不过一般系统会自动重叠nets文件夹内的东西,而不是真的能够将nets文件夹复制进入。
所以,我们直接在nets文件夹下创建一个同名文件夹,并将其他东西一并复制进新的nets文件夹中。
5 如有问题,欢迎指正