FVL2020 / ICCV-2023-MB-TaylorFormer

79 stars 9 forks source link

关于进行test指令运行遇到错误 #10

Open king-huoye opened 6 months ago

king-huoye commented 6 months ago

我在运行该指令:python Dehazing/test.py --size 'L' --input_dir '/data/Dense-Haze/Test/Haze' --target_dir '/data/Dense-Haze/Test/GT' --result_dir 'pre_process_Dense' --weights 'Dehazing/pretrai ned_models/densehaze-MB-TaylorFormer-L.pth'

出现了这样的结果:===>Testing using weights: Dehazing/pretrained_models/densehaze-MB-TaylorFormer-L.pth C:\ProgramData\Anaconda3\envs\taylor\lib\site-packages\torch\cuda__init__.py:104: UserWarning: NVIDIA GeForce RTX 4090 with CUDA capability sm_89 is not compatible with the current PyTorch installation. The current PyTorch install supports CUDA capabilities sm_37 sm_50 sm_60 sm_61 sm_70 sm_75 compute_37. If you want to use the NVIDIA GeForce RTX 4090 GPU with PyTorch, please check the instructions at https://pytorch.org/get-started/locally/

warnings.warn(incompatible_device_warn.format(device_name, capability, " ".join(arch_list), device_name)) 0it [00:00, ?it/s] C:\ProgramData\Anaconda3\envs\taylor\lib\site-packages\numpy\core\fromnumeric.py:3441: RuntimeWarning: Mean of empty slice. out=out, **kwargs) C:\ProgramData\Anaconda3\envs\taylor\lib\site-packages\numpy\core_methods.py:189: RuntimeWarning: invalid value encountered in double_scalars ret = ret.dtype.type(ret / rcount) final PSNR: nan final SSIM: nan 请问该如何解决呢

snowy-land commented 4 months ago

您好,请问您现在解决了吗?我也遇到了同样的问题

raindrop313 commented 4 months ago

@king-huoye @snowy-land 可能是由于您所使用的pytoch版本较旧,据我所知4090不支持一些老版本的pytorch,建议安装新的pytorch版本,或是使用老的显卡。 可以参考下这个帖子:‘discuss.pytorch.org/t/pytorch-not-working-with-nvidia-4090/173054‘

snowy-land commented 4 months ago

@raindrop313 谢谢您,我在更换到3090并更改环境版本后解决了第一个问题算力匹配的问题。但是我运行了指令:python Dehazing/test.py --size 'L' --input_dir '/data/Dense-Haze/Test/Haze' --target_dir '/data/Dense-Haze/Test/GT' --result_dir '/data/Dense-Haze/pre_process_Dense' --weights 'Dehazing/pretrained_models/densehaze-MB-TaylorFormer-L.pth'

之后出现了这样的结果: ===>Testing using weights: Dehazing/pretrained_models/densehaze-MB-TaylorFormer-L.pth 0it [00:00, ?it/s] /root/miniconda3/envs/pytorch181/lib/python3.7/site-packages/numpy/core/fromnumeric.py:3441: RuntimeWarning: Mean of empty slice. out=out, **kwargs) /root/miniconda3/envs/pytorch181/lib/python3.7/site-packages/numpy/core/_methods.py:189: RuntimeWarning: invalid value encountered in double_scalars ret = ret.dtype.type(ret / rcount) final PSNR: nan final SSIM: nan 请问这要怎么解决呢

raindrop313 commented 4 months ago

因为SOTS数据集和densehaze数据集命名不太相同,如果你是想在densehaze上面推理的话,可以尝试修改test.py中的这个代码: ’target=np.float32(utils.load_img(os.path.join(targetdir,file.split('/')[-1])))/255.‘ 改成如下形式: ’target=np.float32(utils.load_img(os.path.join(targetdir,file.split('/')[-1].split('_')[0]+'_GT.png')))/255.‘ 可以尝试下能否解决你的问题 @snowy-land

king-huoye commented 4 months ago

@raindrop313 不过我装的pytorch是官网最新的那个118的那个,我最近在忙别的,我晚一点根据你的意见试一下哈

snowy-land commented 4 months ago

@raindrop313 十分感谢您抽出时间回复我。我还想请教下我在用ITS数据集训练时运行指令“sh train.sh Dehazing/Options/MB-TaylorFormer-L.yml”后,出现了这样的结果: Traceback (most recent call last): File "basicsr/train.py", line 325, in main() File "basicsr/train.py", line 186, in main model = create_model(opt) File "/root/autodl-tmp/project/Restormer/basicsr/models/init.py", line 38, in create_model model = model_cls(opt) File "/root/autodl-tmp/project/Restormer/basicsr/models/image_restoration_model.py", line 65, in init self.net_g = define_network(deepcopy(opt['network_g'])) File "/root/autodl-tmp/project/Restormer/basicsr/models/archs/init.py", line 45, in define_network net = dynamic_instantiation(_arch_modules, network_type, opt) File "/root/autodl-tmp/project/Restormer/basicsr/models/archs/init.py", line 39, in dynamic_instantiation raise ValueError(f'{cls_type} is not found.') ValueError: MB_TaylorFormer is not found.

之后我将train.sh的pretrain_network_g修改到了ITS-MB-TaylorFormer-L.pth的路径,但还是有这个报错

raindrop313 commented 4 months ago

你的环境的根路径是不是放在restormer文件夹下面了?打开MB_TaylorFormer的文件夹,然后: “ python setup.py develop --no_cuda_ext ” 试下能否解决。 这个问题不是权重路径不对引起的,二十basicsr在初始化时没有找到MB_TaylorFormer.py的路径 @snowy-land

snowy-land commented 4 months ago

@raindrop313 非常感谢您这么晚还回复我,在执行您所说的操作后我的问题解决了,谢谢

snowy-land commented 3 months ago

@raindrop313 您好,我想再次请教下要如何在训练时输出SSIM呢