Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ModuleNotFoundError: No module named 'basicsr.models.archs' #97

Open
GuinanGuo opened this issue Mar 8, 2024 · 9 comments
Open

ModuleNotFoundError: No module named 'basicsr.models.archs' #97

GuinanGuo opened this issue Mar 8, 2024 · 9 comments

Comments

@GuinanGuo
Copy link

Deraining:
python test.py:
/root/miniconda3/lib/python3.8/site-packages/torchvision/transforms/functional_tensor.py:5: UserWarning: The torchvision.transforms.functional_tensor module is deprecated in 0.15 and will be removed in 0.17. Please don't rely on it. You probably just need to use APIs in torchvision.transforms.functional or in torchvision.transforms.v2.functional.
warnings.warn(
Traceback (most recent call last):
File "test.py", line 21, in
from basicsr.models.archs.restormer_arch import Restormer
ModuleNotFoundError: No module named 'basicsr.models.archs'

@Mytttttttt
Copy link

Mytttttttt commented Mar 8, 2024 via email

@GuoWena
Copy link

GuoWena commented Mar 11, 2024

May I ask if you have resolved it? I am facing the same problem

@GuinanGuo
Copy link
Author

GuinanGuo commented Mar 11, 2024

May I ask if you have resolved it? I am facing the same problem

是的问题解决了,
1,你先按照他们的install文件安装好环境,严格按照要求来(谷歌下载数据那部分的环境安不安装就无所谓了,你也可以手动下载数据集)
2,环境安装好后,cd Restormer,输入命令export PYTHONPATH=Restormer:$PYTHONPATH后,就可以正常训练了

PS:测试的时候你也可能会遇到相似的报错,测试前输入命令export PYTHONPATH=$PYTHONPATH:~/Restormer/后面就可以正常测试了。有时候你关机重新打开训练/测试的时候,发现输入了我上文提到的2个命令还是报错,此时你看看有没有激活pytorch181,没有的话记得激活,命令是:conda activate pytorch181

@GuoWena
Copy link

GuoWena commented Mar 11, 2024

请问您解决了吗?我面临着同样的问题

是的问题解决了, 1,你先按照他们的安装文件安装好环境,严格按照要求来(谷歌下载数据那部分的环境安不安装就无所谓了,你也手动下载数据集) 2、环境安装好后,cd Restormer,输入命令export PYTHONPATH=Restormer:$PYTHONPATH后,就可以正常训练了

PS:测试的时候你也可能会遇到类似的报错,测试前输入命令export PYTHONPATH=$PYTHONPATH:~/Restormer/后面就可以正常测试了。有时候你关机重新打开训练/测试的时候,发现输入看看我前面提到的2个命令还是报错,此时你没有激活pytorch181,没有什么记得激活,命令是:conda activate pytorch181

非常感谢,我现在去试试。

@GuoWena
Copy link

GuoWena commented Mar 11, 2024

(yolo) E:\Restormer-main\Restormer-main\Denoising>D:\anconda\anconda\envs\yolo\python.exe test_gaussian_color_denoising.py --model_type non_blind --sigmas 15
Compute results for noise level 15
===>Testing using weights: ./pretrained_models/gaussian_color_denoising_sigma15.pth

0it [00:00, ?it/s]
0it [00:00, ?it/s]
0it [00:00, ?it/s]
0it [00:00, ?it/s]

(yolo) E:\Restormer-main\Restormer-main\Denoising>
可以帮我看一下,为什么测试出的结果为空呢,非常感谢

@GuinanGuo
Copy link
Author

GuinanGuo commented Mar 11, 2024

(yolo) E:\Restormer-main\Restormer-main\Denoising>D:\anconda\anconda\envs\yolo\python.exe test_gaussian_color_denoising.py --model_type non_blind --sigmas 15

Compute results for noise level 15
===>Testing using weights: ./pretrained_models/gaussian_color_denoising_sigma15.pth
0it [00:00, ?it/s] 0it [00:00, ?it/s] 0it [00:00, ?it/s] 0it [00:00, ?it/s]

(yolo) E:\Restormer-main\Restormer-main\Denoising> 可以帮我看一下,为什么测试出的结果为空呢,非常感谢

我似乎也遇到过这个问题,不过这个问题的原因有很多,我个人上次碰到这个问题的原因没记错的话,似乎是test.py文件里,我忘了改测试集名字了,比如我实际的测试集的名字是Test100,但是test.py文件里的写的测试集却是其他的名字。还有个原因是我测试集的目录结构写错了,正确的数据集结构是test/数据集名/input(当然input同目录下也可以放上target)【不同任务的数据集的测试集的结构不同,你根据官方的数据集结构来弄好就行】。我当初就是这两个原因,你可以参考下,但不保证能解决问题,因为还有其他什么原因也可能导致这个结果为空。

@GuoWena
Copy link

GuoWena commented Mar 11, 2024

(yolo) E:\Restormer-main\Restormer-main\Denoising>D:\anconda\anconda\envs\yolo\python.exe test_gaussian_color_denoising.py --model_type non_blind --sigmas 15

Compute results for noise level 15
===>Testing using weights: ./pretrained_models/gaussian_color_denoising_sigma15.pth
0it [00:00, ?it/s] 0it [00:00, ?it/s] 0it [00:00, ?it/s] 0it [00:00, ?it/s]
(yolo) E:\Restormer-main\Restormer-main\Denoising> 可以帮我看一下,为什么测试出的结果为空呢,非常感谢

我似乎也遇到过这个问题,不过这个问题的原因有很多,我个人上次碰到这个问题的原因没记错的话,似乎是test.py文件里,我忘了改测试集名字了,比如我实际的测试集的名字是Test100,但是test.py文件里的写的测试集却是其他的名字。还有个原因是我测试集的目录结构写错了,正确的数据集结构是test/数据集名/input(当然input同目录下也可以放上target)。我当初就是这两个原因,你可以参考下,但不保证能解决问题,因为还有其他什么原因也可能导致这个结果为空。

我是在单个GPU上进行的测试,是否和这个有关系呢?yaml文件我将gpu的个数改为了1,您是在单个GPU上进行的测试吗

@GuinanGuo
Copy link
Author

(yolo) E:\Restormer-main\Restormer-main\Denoising>D:\anconda\anconda\envs\yolo\python.exe test_gaussian_color_denoising.py --model_type non_blind --sigmas 15

Compute results for noise level 15
===>Testing using weights: ./pretrained_models/gaussian_color_denoising_sigma15.pth
0it [00:00, ?it/s] 0it [00:00, ?it/s] 0it [00:00, ?it/s] 0it [00:00, ?it/s]
(yolo) E:\Restormer-main\Restormer-main\Denoising> 可以帮我看一下,为什么测试出的结果为空呢,非常感谢

我似乎也遇到过这个问题,不过这个问题的原因有很多,我个人上次碰到这个问题的原因没记错的话,似乎是test.py文件里,我忘了改测试集名字了,比如我实际的测试集的名字是Test100,但是test.py文件里的写的测试集却是其他的名字。还有个原因是我测试集的目录结构写错了,正确的数据集结构是test/数据集名/input(当然input同目录下也可以放上target)。我当初就是这两个原因,你可以参考下,但不保证能解决问题,因为还有其他什么原因也可能导致这个结果为空。

我是在单个GPU上进行的测试,是否和这个有关系呢?yaml文件我将gpu的个数改为了1,您是在单个GPU上进行的测试吗

我多gpu和单gpu都用过,改gpu的数量那yaml文件和train.sh文件都要改,既然你训练的时候没有报错,那测试的时候,不会因为gpu的数量导致结果为空。建议检查下1,你的测试集是不是按照官方的结构来的,2,测试集存放的目录和官方的一样不,3,以及test.py文件里的datasets = ['Rain100L', 'Rain100H', 'Test100', 'Test1200', 'Test2800']这行代码和你测试集名字是不是一致的。

@GuoWena
Copy link

GuoWena commented Mar 11, 2024

(yolo) E:\Restormer-main\Restormer-main\Denoising>D:\anconda\anconda\envs\yolo\python.exe test_gaussian_color_denoising.py --model_type non_blind --sigmas 15

Compute results for noise level 15
===>Testing using weights: ./pretrained_models/gaussian_color_denoising_sigma15.pth
0it [00:00, ?it/s] 0it [00:00, ?it/s] 0it [00:00, ?it/s] 0it [00:00, ?it/s]
(yolo) E:\Restormer-main\Restormer-main\Denoising> 可以帮我看一下,为什么测试出的结果为空呢,非常感谢

我似乎也遇到过这个问题,不过这个问题的原因有很多,我个人上次碰到这个问题的原因没记错的话,似乎是test.py文件里,我忘了改测试集名字了,比如我实际的测试集的名字是Test100,但是test.py文件里的写的测试集却是其他的名字。还有个原因是我测试集的目录结构写错了,正确的数据集结构是test/数据集名/input(当然input同目录下也可以放上target)。我当初就是这两个原因,你可以参考下,但不保证能解决问题,因为还有其他什么原因也可能导致这个结果为空。

我是在单个GPU上进行的测试,是否和这个有关系呢?yaml文件我将gpu的个数改为了1,您是在单个GPU上进行的测试吗

我多gpu和单gpu都用过,改gpu的数量那yaml文件和train.sh文件都要改,既然你训练的时候没有报错,那测试的时候,不会因为gpu的数量导致结果为空。建议检查下1,你的测试集是不是按照官方的结构来的,2,测试集存放的目录和官方的一样不,3,以及test.py文件里的datasets = ['Rain100L', 'Rain100H', 'Test100', 'Test1200', 'Test2800']这行代码和你测试集名字是不是一致的。

我现在去尝一下,非常感谢!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants