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

想请问作者一些问题 #86

Open
LiJiajun000322 opened this issue Nov 26, 2024 · 21 comments
Open

想请问作者一些问题 #86

LiJiajun000322 opened this issue Nov 26, 2024 · 21 comments

Comments

@LiJiajun000322
Copy link

作者您好,我想请问在daclip-sde中,能否配置让daclip不工作呢,就完全是一个sde去工作,这可以在配置文件中实现吗

@LiJiajun000322
Copy link
Author

general settings

name: ir-sde
use_tb_logger: true
model: denoising
distortion: derain
gpu_ids: [0]

sde:
max_sigma: 50
T: 100
schedule: cosine # linear, cosine
eps: 0.005

degradation: # for some synthetic dataset that only have GTs

for denoising

sigma: 25
noise_type: G # Gaussian noise: G

for super-resolution

scale: 4

datasets

datasets:
train:
name: Train_Dataset
mode: LQGT
dataroot_GT: /home/image-restoration-sde-main/codes/datasets/low-light/trainH/GT/
dataroot_LQ: /home/image-restoration-sde-main/codes/datasets/low-light/trainH/LQ/

use_shuffle: true
n_workers: 20  # per GPU
batch_size: 16
GT_size: 256
LR_size: 256
use_flip: true
use_rot: true
color: RGB

val:
name: Val_Dataset
mode: LQGT
dataroot_GT: /home/image-restoration-sde-main/codes/datasets/low-light/testH/GT/
dataroot_LQ: /home/image-restoration-sde-main/codes/datasets/low-light/testH/LQ/

network structures

network_G:
which_model_G: ConditionalUNet
setting:
in_nc: 3
out_nc: 3
nf: 64
depth: 4
ch_mult: [ 1, 2, 4, 8 ]
context_dim: 512
use_degra_context: true
use_image_context: true

path

path:
pretrain_model_G: ~
strict_load: true
resume_state: ~

training settings: learning rate scheme, loss

train:
optimizer: AdamW # Adam, AdamW, Lion
lr_G: !!float 2e-4
lr_scheme: MultiStepLR
beta1: 0.9
beta2: 0.99
niter: 700000
warmup_iter: -1 # no warm up
lr_steps: [2000, 4000, 6000]
lr_gamma: 0.5
eta_min: !!float 1e-6

criterion

is_weighted: False
loss_type: l1
weight: 1.0

manual_seed: 3471
val_freq: !!float 1e4

logger

logger:
print_freq: 200
save_checkpoint_freq: !!float 1e4

我按如上配置文件去训练了一个lowlight的ir-sde,数据集就是LOL数据集。感觉效果不好,请作者指点一下配置参数

@LiJiajun000322
Copy link
Author

还有如果是低光任务的话,应该选IR-SDE还是Denoising SDE呢,我注意到IRSDE的项目里有两种SDE定义

@LiJiajun000322
Copy link
Author

Q3:daclip-sde文件做推理时,没有GT的情况应该怎么设置呢,我设置dataroot_GT:None会报错。
datasets:
test1:
name: Test
mode: LQGT
dataroot_GT: None
dataroot_LQ: datasets/universal/deg_type/LQ

是否时要修改mode:LQ?我这样试过也不行

@Algolzw
Copy link
Owner

Algolzw commented Nov 26, 2024

低光任务的话就用ir-sde就好。不用daclip的话这两个参数:use_degra_context: true, use_image_context: true要设置为false。在推理时,你尝试下同时修改mode: LQ 和去掉dataroot_GT这一行呢(不行的话可以dataroot_GT也设置为LQ路径试试)。

@LiJiajun000322
Copy link
Author

train:
optimizer: AdamW # Adam, AdamW, Lion
lr_G: !!float 2e-4
lr_scheme: MultiStepLR
beta1: 0.9
beta2: 0.99
niter: 700000
warmup_iter: -1 # no warm up
lr_steps: [2000, 4000, 6000]
lr_gamma: 0.5
eta_min: !!float 1e-6

logger:
print_freq: 200
save_checkpoint_freq: !!float 1e4

这部分的话迭代次数也需要这么多?我在LOL数据集上跑,发现打印的psnr几乎没变过,都是33

@LiJiajun000322
Copy link
Author

不用daclip的话这两个参数:use_degra_context: true, use_image_context: true要设置为false。

我这样做了以后发现无法进行低光恢复

@LiJiajun000322
Copy link
Author

use_degra_context: true
use_image_context: false
后可以进行低光恢复
如果use_degra_context设置为false,图像仍然是很暗的

@Algolzw
Copy link
Owner

Algolzw commented Nov 29, 2024

我还以为要重新训练。用pretrained weights的话确实是必须设置这两个参数的。

@LiJiajun000322
Copy link
Author

推理的话有没有办法不加载daclip模块呢,仅仅只有sde部分工作?

@LiJiajun000322
Copy link
Author

还有就是我自己在LOL数据集上训练IR-SDE的时候,PSNR几乎与迭代次数无关
24-11-27 04:41:52.877 - INFO: <epoch: 82, iter: 10,000, psnr: 32.039530
24-11-27 05:51:09.814 - INFO: <epoch:165, iter: 20,000, psnr: 32.376172
24-11-27 07:02:31.526 - INFO: <epoch:247, iter: 30,000, psnr: 32.891167
24-11-27 08:11:48.979 - INFO: <epoch:330, iter: 40,000, psnr: 31.893832
24-11-27 09:21:05.904 - INFO: <epoch:413, iter: 50,000, psnr: 32.960719

@LiJiajun000322
Copy link
Author

如果我这里GT设置为和LQ一样的话,测试结果就没法完成低光增强(ir-sde重新训练)

@LiJiajun000322
Copy link
Author

general settings

name: ir-sde
use_tb_logger: true
model: denoising
distortion: lowlight
gpu_ids: [1]

sde:
max_sigma: 50
T: 100
schedule: cosine # linear, cosine
eps: 0.005

degradation: # for some synthetic dataset that only have GTs

for denoising

sigma: 25
noise_type: G # Gaussian noise: G

for super-resolution

scale: 4

datasets

datasets:
train:
name: Train_Dataset
mode: LQGT
dataroot_GT: /home/datasets/low-light/trainH/GT/
dataroot_LQ: /home/datasets/low-light/trainH/LQ/

use_shuffle: true
n_workers: 20  # per GPU
batch_size: 4
GT_size: 256
LR_size: 256
use_flip: true
use_rot: true
color: RGB

val:
name: Val_Dataset
mode: LQGT
dataroot_GT: /home/datasets/low-light/testH/GT/
dataroot_LQ: /home/datasets/low-light/testH/LQ/

network structures

network_G:
which_model_G: ConditionalUNet
setting:
in_nc: 3
out_nc: 3
nf: 64
depth: 4

path

path:
pretrain_model_G: ~
strict_load: true
resume_state: ~

training settings: learning rate scheme, loss

train:
optimizer: AdamW # Adam, AdamW, Lion
lr_G: !!float 2e-4
lr_scheme: MultiStepLR
beta1: 0.9
beta2: 0.99
niter: 700000
warmup_iter: -1 # no warm up
lr_steps: [2000, 4000, 6000]
lr_gamma: 0.5
eta_min: !!float 1e-6

criterion

is_weighted: False
loss_type: l1
weight: 1.0

manual_seed: 3471
val_freq: !!float 1e4

logger

logger:
print_freq: 200
save_checkpoint_freq: !!float 1e4

这是我的训练参数,可以麻烦作者看一下吗,IR-SDE用于LOWLIGHT任务

@LiJiajun000322
Copy link
Author

name: ir-sde
suffix: ~ # add suffix to saved images
model: denoising
gpu_ids: [0]

sde:
max_sigma: 25
T: 100

degradation:
sigma: 25
noise_type: G # Gaussian noise: G

datasets:
test1:
name: Val_Dataset
mode: LQGT
dataroot_GT:/home/datasets/low-light/testH/LQ/
dataroot_LQ: /home/datasets/low-light/testH/LQ/

network structures

network_G:
which_model_G: ConditionalUNet
setting:
in_nc: 3
out_nc: 3
nf: 64
depth: 4

path

path:
pretrain_model_G: pretrained/ir-sde.pth

推理的时候就是用的GT和LQ都是LQ的路径

@LiJiajun000322
Copy link
Author

在推理时,你尝试下同时修改mode: LQ 和去掉dataroot_GT这一行呢(不行的话可以dataroot_GT也设置为LQ路径试试)。

这样不行,会报缺少GT路径的错误

Traceback (most recent call last):
File "test.py", line 102, in
GT = test_data["GT"]
KeyError: 'GT'

@Algolzw
Copy link
Owner

Algolzw commented Dec 2, 2024

ir-sde设置看着没什么问题呀,按理说训练测试也应该没问题。

@LiJiajun000322
Copy link
Author

请问作者当时训练低光任务是用了哪些数据集呢,我看IR-SDE原始论文里是没做低光增强,在DACLIP里有用IR-SDE对LOL数据集的测试集做测试,可以提供一下数据集吗,我想训练一个用于低光增强的单个IR-SDE模型。

@LiJiajun000322
Copy link
Author

或者说作者这里可否提供一下单个IR-SDE在低光增强上的权重文件呢,非常感谢您的帮助!

@Algolzw
Copy link
Owner

Algolzw commented Dec 2, 2024

数据集可以在这里下载,IR-SDE的权重我没有保存,不过你重新训练就行,应该很快。

@LiJiajun000322
Copy link
Author

我这边就是重新训练后觉得有问题,能否作者提供一下呢:D

@LiJiajun000322
Copy link
Author

我发现我训练的模型,使用test给好LQ和GT的路径,模型能够正常输出恢复后的图像,但是用inference.py,或者把test的GT路径换成LQ,就没办法完成低光增强

@Algolzw
Copy link
Owner

Algolzw commented Dec 5, 2024

按理说不应该啊。你直接把feed_data中GT设为None呢?或者检查一下图像保存的代码。

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

2 participants