File size: 2,787 Bytes
6adbdcb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
wandb_project: diffusercam
seed: 0
start_delay: null
files:
  cache_dir: null
  dataset: bezzam/DiffuserCam-Lensless-Mirflickr-Dataset-NORM
  huggingface_dataset: true
  huggingface_psf: psf.tiff
  single_channel_psf: true
  hf_simulated: false
  split_seed: null
  n_files: null
  test_size: null
  downsample: 2
  downsample_lensed: 2
  input_snr: null
  psf_snr: -10
  background_fp: null
  background_snr_range: null
  vertical_shift: null
  horizontal_shift: null
  rotate: false
  flipud: true
  flip_lensed: true
  save_psf: true
  crop: null
  image_res: null
  extra_eval: null
  force_rgb: false
  simulate_lensless: false
  random_flip: false
  random_rotate: false
  random_shifts: false
alignment: null
torch: true
torch_device: cuda:2
device_ids:
- 2
- 3
- 0
- 1
measure: null
eval_disp_idx:
- 0
- 1
- 3
- 4
- 8
display:
  plot: true
  gamma: null
save: true
reconstruction:
  init: null
  method: unrolled_admm
  skip_unrolled: false
  init_processors: null
  init_pre: true
  init_post: true
  psf_network: false
  psf_residual: false
  direct_background_subtraction: false
  learned_background_subtraction: false
  integrated_background_subtraction: false
  down_subtraction: false
  integrated_background_unetres: false
  unetres_input_background: false
  unrolled_fista:
    n_iter: 20
    tk: 1
    learn_tk: true
  unrolled_admm:
    n_iter: 5
    mu1: 0.0001
    mu2: 0.0001
    mu3: 0.0001
    tau: 0.0002
  trainable_inv:
    K: 0.0001
  multi_wiener:
    nc:
    - 64
    - 128
    - 256
    - 512
    - 512
  pre_process:
    network: null
    depth: 4
    nc:
    - 32
    - 64
    - 116
    - 128
    delay: null
    freeze: null
    unfreeze: null
  post_process:
    network: UnetRes
    depth: 4
    nc:
    - 32
    - 64
    - 128
    - 256
    delay: null
    freeze: null
    unfreeze: null
    train_last_layer: false
  compensation: null
  compensation_residual: true
trainable_mask:
  mask_type: null
  initial_value: psf
  grayscale: false
  mask_lr: 0.001
  optimizer: Adam
  L1_strength: 1.0
target: object_plane
simulation:
  grayscale: false
  output_dim: null
  object_height: 0.04
  flip: true
  random_shift: false
  random_vflip: 0.5
  random_hflip: 0.5
  random_rotate: false
  scene2mask: 0.1
  mask2sensor: 0.009
  deadspace: true
  use_waveprop: false
  sensor: rpi_hq
  snr_db: 10
  downsample: 8
  quantize: false
  max_val: 255
training:
  batch_size: 4
  epoch: 25
  eval_batch_size: 4
  metric_for_best_model: null
  save_every: null
  skip_NAN: true
  clip_grad: 1.0
  crop_preloss: false
optimizer:
  type: Adam
  lr: 0.0001
  lr_step_epoch: true
  cosine_decay_warmup: false
  final_lr: false
  exp_decay: false
  slow_start: false
  step: false
  gamma: 0.1
loss: l2
lpips: 1.0
unrolled_output_factor: false
pre_proc_aux: false