|
Algorithm 1 Dual-path adversarial denoising network training procedure |
-
Input:
Clean image set .
Noisy image set (unpaired).
Hyper-parameters: , , , , ksize, batch_size, epochs, early_stop_patience
-
Parameters
:
— Denoiser (Dual-UNet) parameters.
— Generator (UNet-G) parameters.
— Discriminator (PatchGAN) parameters.
-
Output:
Trained denoiser with minimal noise and maximum detail preservation
-
1:
Randomly initialize , ,
-
2:
Pre-compute Gaussian kernel
-
3:
for epoch to epochs do
-
4:
for mini-batch to
do
-
5:
/* 1. Sample data */
-
6:
Random batch from X
-
7:
Random batch from Y (same size)
-
8:
noise map same spatial size as x
-
9:
/* 2. Forward passes */
-
10:
▹ Denoised image
-
11:
▹ Synthetic noisy image
-
12:
/* 3. Update Discriminator P */
-
13:
-
14:
-
15:
if mini-batch mod num_critic then
-
16:
/* 4. Update Denoiser D */
-
17:
-
18:
-
19:
/* 5. Update Generator G */
-
20:
-
21:
-
22:
end if
-
23:
end for
-
24:
/* 6. Early stopping check */
-
25:
val_loss ← MAE on validation set
-
26:
if val_loss has not improved for early_stop_patience epochs then
-
27:
break
-
28:
end if
-
29:
end for
-
30:
return
|