bezzam commited on
Commit
60a5032
1 Parent(s): 603e514

Upload 156 files

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
.gitattributes CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ recon_epochBEST filter=lfs diff=lfs merge=lfs -text
.hydra/config.yaml ADDED
@@ -0,0 +1,136 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ wandb_project: lensless
2
+ seed: 0
3
+ start_delay: null
4
+ files:
5
+ dataset: bezzam/DiffuserCam-Lensless-Mirflickr-Dataset-NORM
6
+ huggingface_dataset: true
7
+ huggingface_psf: psf.tiff
8
+ single_channel_psf: true
9
+ split_seed: null
10
+ n_files: null
11
+ test_size: null
12
+ downsample: 2
13
+ downsample_lensed: 2
14
+ input_snr: null
15
+ vertical_shift: null
16
+ horizontal_shift: null
17
+ rotate: false
18
+ flipud: true
19
+ flip_lensed: true
20
+ save_psf: false
21
+ crop: null
22
+ image_res: null
23
+ extra_eval: null
24
+ force_rgb: false
25
+ simulate_lensless: false
26
+ alignment: null
27
+ torch: true
28
+ torch_device: cuda:0
29
+ device_ids:
30
+ - 0
31
+ - 3
32
+ measure: null
33
+ eval_disp_idx:
34
+ - 0
35
+ - 1
36
+ - 3
37
+ - 4
38
+ - 8
39
+ display:
40
+ plot: true
41
+ gamma: null
42
+ save: true
43
+ reconstruction:
44
+ method: multi_wiener
45
+ skip_unrolled: false
46
+ init_processors: null
47
+ init_pre: true
48
+ init_post: true
49
+ unrolled_fista:
50
+ n_iter: 20
51
+ tk: 1
52
+ learn_tk: true
53
+ unrolled_admm:
54
+ n_iter: 5
55
+ mu1: 0.0001
56
+ mu2: 0.0001
57
+ mu3: 0.0001
58
+ tau: 0.0002
59
+ trainable_inv:
60
+ K: 0.0001
61
+ multi_wiener:
62
+ nc:
63
+ - 32
64
+ - 64
65
+ - 128
66
+ - 256
67
+ - 436
68
+ pre_process:
69
+ network: null
70
+ depth: 4
71
+ nc:
72
+ - 32
73
+ - 64
74
+ - 116
75
+ - 128
76
+ delay: null
77
+ freeze: null
78
+ unfreeze: null
79
+ post_process:
80
+ network: null
81
+ depth: 4
82
+ nc:
83
+ - 32
84
+ - 64
85
+ - 116
86
+ - 128
87
+ delay: null
88
+ freeze: null
89
+ unfreeze: null
90
+ train_last_layer: false
91
+ compensation: null
92
+ trainable_mask:
93
+ mask_type: null
94
+ initial_value: psf
95
+ grayscale: false
96
+ mask_lr: 0.001
97
+ optimizer: Adam
98
+ L1_strength: 1.0
99
+ target: object_plane
100
+ simulation:
101
+ grayscale: false
102
+ output_dim: null
103
+ object_height: 0.04
104
+ flip: true
105
+ random_shift: false
106
+ random_vflip: 0.5
107
+ random_hflip: 0.5
108
+ random_rotate: false
109
+ scene2mask: 0.1
110
+ mask2sensor: 0.009
111
+ deadspace: true
112
+ use_waveprop: false
113
+ sensor: rpi_hq
114
+ snr_db: 10
115
+ downsample: 8
116
+ quantize: false
117
+ max_val: 255
118
+ training:
119
+ batch_size: 4
120
+ epoch: 25
121
+ eval_batch_size: 4
122
+ metric_for_best_model: null
123
+ save_every: null
124
+ skip_NAN: true
125
+ clip_grad: 1.0
126
+ crop_preloss: false
127
+ optimizer:
128
+ type: Adam
129
+ lr: 0.0001
130
+ slow_start: false
131
+ step: false
132
+ gamma: 0.1
133
+ loss: l2
134
+ lpips: 1.0
135
+ unrolled_output_factor: false
136
+ pre_proc_aux: false
.hydra/hydra.yaml ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ hydra:
2
+ run:
3
+ dir: outputs/${now:%Y-%m-%d}/${now:%H-%M-%S}
4
+ sweep:
5
+ dir: multirun/${now:%Y-%m-%d}/${now:%H-%M-%S}
6
+ subdir: ${hydra.job.num}
7
+ launcher:
8
+ _target_: hydra._internal.core_plugins.basic_launcher.BasicLauncher
9
+ sweeper:
10
+ _target_: hydra._internal.core_plugins.basic_sweeper.BasicSweeper
11
+ max_batch_size: null
12
+ params: null
13
+ help:
14
+ app_name: ${hydra.job.name}
15
+ header: '${hydra.help.app_name} is powered by Hydra.
16
+
17
+ '
18
+ footer: 'Powered by Hydra (https://hydra.cc)
19
+
20
+ Use --hydra-help to view Hydra specific help
21
+
22
+ '
23
+ template: '${hydra.help.header}
24
+
25
+ == Configuration groups ==
26
+
27
+ Compose your configuration from those groups (group=option)
28
+
29
+
30
+ $APP_CONFIG_GROUPS
31
+
32
+
33
+ == Config ==
34
+
35
+ Override anything in the config (foo.bar=value)
36
+
37
+
38
+ $CONFIG
39
+
40
+
41
+ ${hydra.help.footer}
42
+
43
+ '
44
+ hydra_help:
45
+ template: 'Hydra (${hydra.runtime.version})
46
+
47
+ See https://hydra.cc for more info.
48
+
49
+
50
+ == Flags ==
51
+
52
+ $FLAGS_HELP
53
+
54
+
55
+ == Configuration groups ==
56
+
57
+ Compose your configuration from those groups (For example, append hydra/job_logging=disabled
58
+ to command line)
59
+
60
+
61
+ $HYDRA_CONFIG_GROUPS
62
+
63
+
64
+ Use ''--cfg hydra'' to Show the Hydra config.
65
+
66
+ '
67
+ hydra_help: ???
68
+ hydra_logging:
69
+ version: 1
70
+ formatters:
71
+ simple:
72
+ format: '[%(asctime)s][HYDRA] %(message)s'
73
+ handlers:
74
+ console:
75
+ class: logging.StreamHandler
76
+ formatter: simple
77
+ stream: ext://sys.stdout
78
+ root:
79
+ level: INFO
80
+ handlers:
81
+ - console
82
+ loggers:
83
+ logging_example:
84
+ level: DEBUG
85
+ disable_existing_loggers: false
86
+ job_logging:
87
+ version: 1
88
+ formatters:
89
+ simple:
90
+ format: '[%(asctime)s][%(name)s][%(levelname)s] - %(message)s'
91
+ handlers:
92
+ console:
93
+ class: logging.StreamHandler
94
+ formatter: simple
95
+ stream: ext://sys.stdout
96
+ file:
97
+ class: logging.FileHandler
98
+ formatter: simple
99
+ filename: ${hydra.runtime.output_dir}/${hydra.job.name}.log
100
+ root:
101
+ level: INFO
102
+ handlers:
103
+ - console
104
+ - file
105
+ disable_existing_loggers: false
106
+ env: {}
107
+ mode: RUN
108
+ searchpath: []
109
+ callbacks: {}
110
+ output_subdir: .hydra
111
+ overrides:
112
+ hydra:
113
+ - hydra.mode=RUN
114
+ task:
115
+ - reconstruction.method=multi_wiener
116
+ - training.batch_size=4
117
+ - training.eval_batch_size=4
118
+ - torch_device=cuda:0
119
+ - device_ids=[0,3]
120
+ - reconstruction.multi_wiener.nc=[32,64,128,256,436]
121
+ - reconstruction.pre_process.network=null
122
+ - reconstruction.post_process.network=null
123
+ - wandb_project=lensless
124
+ job:
125
+ name: train_learning_based
126
+ chdir: true
127
+ override_dirname: device_ids=[0,3],reconstruction.method=multi_wiener,reconstruction.multi_wiener.nc=[32,64,128,256,436],reconstruction.post_process.network=null,reconstruction.pre_process.network=null,torch_device=cuda:0,training.batch_size=4,training.eval_batch_size=4,wandb_project=lensless
128
+ id: ???
129
+ num: ???
130
+ config_name: train_mirflickr_diffuser
131
+ env_set: {}
132
+ env_copy: []
133
+ config:
134
+ override_dirname:
135
+ kv_sep: '='
136
+ item_sep: ','
137
+ exclude_keys: []
138
+ runtime:
139
+ version: 1.3.2
140
+ version_base: '1.3'
141
+ cwd: /root/LenslessPiCam
142
+ config_sources:
143
+ - path: hydra.conf
144
+ schema: pkg
145
+ provider: hydra
146
+ - path: /root/LenslessPiCam/configs
147
+ schema: file
148
+ provider: main
149
+ - path: ''
150
+ schema: structured
151
+ provider: schema
152
+ output_dir: /root/LenslessPiCam/outputs/2024-06-19/09-59-22
153
+ choices:
154
+ hydra/env: default
155
+ hydra/callbacks: null
156
+ hydra/job_logging: default
157
+ hydra/hydra_logging: default
158
+ hydra/hydra_help: default
159
+ hydra/help: default
160
+ hydra/sweeper: basic
161
+ hydra/launcher: basic
162
+ hydra/output: default
163
+ verbose: false
.hydra/overrides.yaml ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ - reconstruction.method=multi_wiener
2
+ - training.batch_size=4
3
+ - training.eval_batch_size=4
4
+ - torch_device=cuda:0
5
+ - device_ids=[0,3]
6
+ - reconstruction.multi_wiener.nc=[32,64,128,256,436]
7
+ - reconstruction.pre_process.network=null
8
+ - reconstruction.post_process.network=null
9
+ - wandb_project=lensless
eval_recon/0/0.png ADDED
eval_recon/0/1.png ADDED
eval_recon/0/3.png ADDED
eval_recon/0/4.png ADDED
eval_recon/0/8.png ADDED
eval_recon/1/0.png ADDED
eval_recon/1/1.png ADDED
eval_recon/1/3.png ADDED
eval_recon/1/4.png ADDED
eval_recon/1/8.png ADDED
eval_recon/10/0.png ADDED
eval_recon/10/1.png ADDED
eval_recon/10/3.png ADDED
eval_recon/10/4.png ADDED
eval_recon/10/8.png ADDED
eval_recon/11/0.png ADDED
eval_recon/11/1.png ADDED
eval_recon/11/3.png ADDED
eval_recon/11/4.png ADDED
eval_recon/11/8.png ADDED
eval_recon/12/0.png ADDED
eval_recon/12/1.png ADDED
eval_recon/12/3.png ADDED
eval_recon/12/4.png ADDED
eval_recon/12/8.png ADDED
eval_recon/13/0.png ADDED
eval_recon/13/1.png ADDED
eval_recon/13/3.png ADDED
eval_recon/13/4.png ADDED
eval_recon/13/8.png ADDED
eval_recon/14/0.png ADDED
eval_recon/14/1.png ADDED
eval_recon/14/3.png ADDED
eval_recon/14/4.png ADDED
eval_recon/14/8.png ADDED
eval_recon/15/0.png ADDED
eval_recon/15/1.png ADDED
eval_recon/15/3.png ADDED
eval_recon/15/4.png ADDED
eval_recon/15/8.png ADDED
eval_recon/16/0.png ADDED
eval_recon/16/1.png ADDED
eval_recon/16/3.png ADDED
eval_recon/16/4.png ADDED
eval_recon/16/8.png ADDED
eval_recon/17/0.png ADDED