experiment.yaml 12.3 KB
Newer Older
1
2
3
4
data_source_class_type: ImplicitronDataSource
model_factory_class_type: ImplicitronModelFactory
optimizer_factory_class_type: ImplicitronOptimizerFactory
training_loop_class_type: ImplicitronTrainingLoop
5
seed: 42
6
7
8
9
10
11
detect_anomaly: false
exp_dir: ./data/default_experiment/
hydra:
  run:
    dir: .
  output_subdir: null
Jeremy Reizenstein's avatar
Jeremy Reizenstein committed
12
  mode: RUN
13
data_source_ImplicitronDataSource_args:
14
15
  dataset_map_provider_class_type: ???
  data_loader_map_provider_class_type: SequenceDataLoaderMapProvider
16
17
18
19
20
21
22
  dataset_map_provider_BlenderDatasetMapProvider_args:
    base_dir: ???
    object_name: ???
    path_manager_factory_class_type: PathManagerFactory
    n_known_frames_for_test: null
    path_manager_factory_PathManagerFactory_args:
      silence_logs: true
23
24
25
26
27
28
29
30
31
32
  dataset_map_provider_JsonIndexDatasetMapProvider_args:
    category: ???
    task_str: singlesequence
    dataset_root: ''
    n_frames_per_sequence: -1
    test_on_train: false
    restrict_sequence_name: []
    test_restrict_sequence_id: -1
    assert_single_seq: false
    only_test_set: false
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
    dataset_class_type: JsonIndexDataset
    path_manager_factory_class_type: PathManagerFactory
    dataset_JsonIndexDataset_args:
      limit_to: 0
      limit_sequences_to: 0
      exclude_sequence: []
      limit_category_to: []
      load_images: true
      load_depths: true
      load_depth_masks: true
      load_masks: true
      load_point_clouds: false
      max_points: 0
      mask_images: false
      mask_depths: false
      image_height: 800
      image_width: 800
50
      box_crop: true
51
      box_crop_mask_thr: 0.4
52
53
      box_crop_context: 0.3
      remove_empty_masks: true
54
55
      seed: 0
      sort_frames: false
Jeremy Reizenstein's avatar
Jeremy Reizenstein committed
56
57
    path_manager_factory_PathManagerFactory_args:
      silence_logs: true
Roman Shapovalov's avatar
Roman Shapovalov committed
58
59
60
61
62
63
64
  dataset_map_provider_JsonIndexDatasetMapProviderV2_args:
    category: ???
    subset_name: ???
    dataset_root: ''
    test_on_train: false
    only_test_set: false
    load_eval_batches: true
65
    n_known_frames_for_test: 0
Roman Shapovalov's avatar
Roman Shapovalov committed
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
    dataset_class_type: JsonIndexDataset
    path_manager_factory_class_type: PathManagerFactory
    dataset_JsonIndexDataset_args:
      limit_to: 0
      limit_sequences_to: 0
      pick_sequence: []
      exclude_sequence: []
      limit_category_to: []
      load_images: true
      load_depths: true
      load_depth_masks: true
      load_masks: true
      load_point_clouds: false
      max_points: 0
      mask_images: false
      mask_depths: false
      image_height: 800
      image_width: 800
      box_crop: true
      box_crop_mask_thr: 0.4
      box_crop_context: 0.3
      remove_empty_masks: true
      n_frames_per_sequence: -1
      seed: 0
      sort_frames: false
    path_manager_factory_PathManagerFactory_args:
      silence_logs: true
93
94
95
96
97
98
99
  dataset_map_provider_LlffDatasetMapProvider_args:
    base_dir: ???
    object_name: ???
    path_manager_factory_class_type: PathManagerFactory
    n_known_frames_for_test: null
    path_manager_factory_PathManagerFactory_args:
      silence_logs: true
100
    downscale_factor: 4
Jeremy Reizenstein's avatar
Jeremy Reizenstein committed
101
102
103
104
105
106
107
108
109
  dataset_map_provider_RenderedMeshDatasetMapProvider_args:
    num_views: 40
    data_file: null
    azimuth_range: 180.0
    resolution: 128
    use_point_light: true
    path_manager_factory_class_type: PathManagerFactory
    path_manager_factory_PathManagerFactory_args:
      silence_logs: true
110
111
112
  data_loader_map_provider_SequenceDataLoaderMapProvider_args:
    batch_size: 1
    num_workers: 0
113
114
115
116
117
118
119
    dataset_length_train: 0
    dataset_length_val: 0
    dataset_length_test: 0
    train_conditioning_type: SAME
    val_conditioning_type: SAME
    test_conditioning_type: KNOWN
    images_per_seq_options: []
120
121
122
    sample_consecutive_frames: false
    consecutive_frames_max_gap: 0
    consecutive_frames_max_gap_seconds: 0.1
123
124
125
126
127
128
  data_loader_map_provider_SimpleDataLoaderMapProvider_args:
    batch_size: 1
    num_workers: 0
    dataset_length_train: 0
    dataset_length_val: 0
    dataset_length_test: 0
129
model_factory_ImplicitronModelFactory_args:
130
  resume: true
131
132
  model_class_type: GenericModel
  resume_epoch: -1
133
  force_resume: false
134
  model_GenericModel_args:
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
    log_vars:
    - loss_rgb_psnr_fg
    - loss_rgb_psnr
    - loss_rgb_mse
    - loss_rgb_huber
    - loss_depth_abs
    - loss_depth_abs_fg
    - loss_mask_neg_iou
    - loss_mask_bce
    - loss_mask_beta_prior
    - loss_eikonal
    - loss_density_tv
    - loss_depth_neg_penalty
    - loss_autodecoder_norm
    - loss_prev_stage_rgb_mse
    - loss_prev_stage_rgb_psnr_fg
    - loss_prev_stage_rgb_psnr
    - loss_prev_stage_mask_bce
    - objective
    - epoch
    - sec/it
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
    mask_images: true
    mask_depths: true
    render_image_width: 400
    render_image_height: 400
    mask_threshold: 0.5
    output_rasterized_mc: false
    bg_color:
    - 0.0
    - 0.0
    - 0.0
    num_passes: 1
    chunk_size_grid: 4096
    render_features_dimensions: 3
    tqdm_trigger_threshold: 16
    n_train_target_views: 1
    sampling_mode_training: mask_sample
    sampling_mode_evaluation: full_grid
    global_encoder_class_type: null
    raysampler_class_type: AdaptiveRaySampler
    renderer_class_type: MultiPassEmissionAbsorptionRenderer
    image_feature_extractor_class_type: null
    view_pooler_enabled: false
    implicit_function_class_type: NeuralRadianceFieldImplicitFunction
    view_metrics_class_type: ViewMetrics
    regularization_metrics_class_type: RegularizationMetrics
    loss_weights:
      loss_rgb_mse: 1.0
      loss_prev_stage_rgb_mse: 1.0
      loss_mask_bce: 0.0
      loss_prev_stage_mask_bce: 0.0
    global_encoder_HarmonicTimeEncoder_args:
      n_harmonic_functions: 10
      append_input: true
      time_divisor: 1.0
    global_encoder_SequenceAutodecoder_args:
      autodecoder_args:
        encoding_dim: 0
193
        n_instances: 1
194
195
196
197
198
199
        init_scale: 1.0
        ignore_input: false
    raysampler_AdaptiveRaySampler_args:
      n_pts_per_ray_training: 64
      n_pts_per_ray_evaluation: 64
      n_rays_per_image_sampled_from_mask: 1024
200
      n_rays_total_training: null
201
202
203
204
205
206
207
208
209
210
211
      stratified_point_sampling_training: true
      stratified_point_sampling_evaluation: false
      scene_extent: 8.0
      scene_center:
      - 0.0
      - 0.0
      - 0.0
    raysampler_NearFarRaySampler_args:
      n_pts_per_ray_training: 64
      n_pts_per_ray_evaluation: 64
      n_rays_per_image_sampled_from_mask: 1024
212
      n_rays_total_training: null
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
      stratified_point_sampling_training: true
      stratified_point_sampling_evaluation: false
      min_depth: 0.1
      max_depth: 8.0
    renderer_LSTMRenderer_args:
      num_raymarch_steps: 10
      init_depth: 17.0
      init_depth_noise_std: 0.0005
      hidden_size: 16
      n_feature_channels: 256
      bg_color: null
      verbose: false
    renderer_MultiPassEmissionAbsorptionRenderer_args:
      raymarcher_class_type: EmissionAbsorptionRaymarcher
      n_pts_per_ray_fine_training: 64
      n_pts_per_ray_fine_evaluation: 64
      stratified_sampling_coarse_training: true
      stratified_sampling_coarse_evaluation: false
      append_coarse_samples_to_fine: true
      density_noise_std_train: 0.0
      return_weights: false
      raymarcher_CumsumRaymarcher_args:
        surface_thickness: 1
        bg_color:
        - 0.0
        background_opacity: 0.0
        density_relu: true
        blend_output: false
      raymarcher_EmissionAbsorptionRaymarcher_args:
        surface_thickness: 1
        bg_color:
        - 0.0
        background_opacity: 10000000000.0
        density_relu: true
        blend_output: false
    renderer_SignedDistanceFunctionRenderer_args:
      ray_normal_coloring_network_args:
        feature_vector_size: 3
        mode: idr
        d_in: 9
        d_out: 3
        dims:
        - 512
        - 512
        - 512
        - 512
        weight_norm: true
        n_harmonic_functions_dir: 0
        pooled_feature_dim: 0
      bg_color:
      - 0.0
      soft_mask_alpha: 50.0
Jeremy Reizenstein's avatar
Jeremy Reizenstein committed
265
266
267
268
269
270
271
      ray_tracer_args:
        sdf_threshold: 5.0e-05
        line_search_step: 0.5
        line_step_iters: 1
        sphere_tracing_iters: 10
        n_steps: 100
        n_secant_steps: 8
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
    image_feature_extractor_ResNetFeatureExtractor_args:
      name: resnet34
      pretrained: true
      stages:
      - 1
      - 2
      - 3
      - 4
      normalize_image: true
      image_rescale: 0.16
      first_max_pool: true
      proj_dim: 32
      l2_norm: true
      add_masks: true
      add_images: true
      global_average_pool: false
      feature_rescale: 1.0
    view_pooler_args:
      feature_aggregator_class_type: AngleWeightedReductionFeatureAggregator
      view_sampler_args:
        masked_sampling: false
        sampling_mode: bilinear
      feature_aggregator_AngleWeightedIdentityFeatureAggregator_args:
        exclude_target_view: true
        exclude_target_view_mask_features: true
        concatenate_output: true
        weight_by_ray_angle_gamma: 1.0
        min_ray_angle_weight: 0.1
      feature_aggregator_AngleWeightedReductionFeatureAggregator_args:
        exclude_target_view: true
        exclude_target_view_mask_features: true
        concatenate_output: true
        reduction_functions:
        - AVG
        - STD
        weight_by_ray_angle_gamma: 1.0
        min_ray_angle_weight: 0.1
      feature_aggregator_IdentityFeatureAggregator_args:
        exclude_target_view: true
        exclude_target_view_mask_features: true
        concatenate_output: true
      feature_aggregator_ReductionFeatureAggregator_args:
        exclude_target_view: true
        exclude_target_view_mask_features: true
        concatenate_output: true
        reduction_functions:
        - AVG
        - STD
    implicit_function_IdrFeatureField_args:
      d_in: 3
      d_out: 1
      dims:
      - 512
      - 512
      - 512
      - 512
      - 512
      - 512
      - 512
      - 512
      geometric_init: true
      bias: 1.0
      skip_in: []
      weight_norm: true
      n_harmonic_functions_xyz: 0
      pooled_feature_dim: 0
    implicit_function_NeRFormerImplicitFunction_args:
      n_harmonic_functions_xyz: 10
      n_harmonic_functions_dir: 4
      n_hidden_neurons_dir: 128
      input_xyz: true
      xyz_ray_dir_in_camera_coords: false
      transformer_dim_down_factor: 2.0
      n_hidden_neurons_xyz: 80
      n_layers_xyz: 2
      append_xyz:
      - 1
    implicit_function_NeuralRadianceFieldImplicitFunction_args:
      n_harmonic_functions_xyz: 10
      n_harmonic_functions_dir: 4
      n_hidden_neurons_dir: 128
      input_xyz: true
      xyz_ray_dir_in_camera_coords: false
      transformer_dim_down_factor: 1.0
      n_hidden_neurons_xyz: 256
      n_layers_xyz: 8
      append_xyz:
      - 5
    implicit_function_SRNHyperNetImplicitFunction_args:
      hypernet_args:
        n_harmonic_functions: 3
        n_hidden_units: 256
        n_layers: 2
        n_hidden_units_hypernet: 256
        n_layers_hypernet: 1
        in_features: 3
        out_features: 256
        xyz_in_camera_coords: false
      pixel_generator_args:
        n_harmonic_functions: 4
        n_hidden_units: 256
        n_hidden_units_color: 128
        n_layers: 2
        in_features: 256
        out_features: 3
        ray_dir_in_camera_coords: false
    implicit_function_SRNImplicitFunction_args:
      raymarch_function_args:
        n_harmonic_functions: 3
        n_hidden_units: 256
        n_layers: 2
        in_features: 3
        out_features: 256
        xyz_in_camera_coords: false
        raymarch_function: null
      pixel_generator_args:
        n_harmonic_functions: 4
        n_hidden_units: 256
        n_hidden_units_color: 128
        n_layers: 2
        in_features: 256
        out_features: 3
        ray_dir_in_camera_coords: false
    view_metrics_ViewMetrics_args: {}
    regularization_metrics_RegularizationMetrics_args: {}
optimizer_factory_ImplicitronOptimizerFactory_args:
  betas:
  - 0.9
  - 0.999
  breed: Adam
  exponential_lr_step_size: 250
  gamma: 0.1
  lr: 0.0005
  lr_policy: MultiStepLR
  momentum: 0.9
  multistep_lr_milestones: []
  weight_decay: 0.0
Jeremy Reizenstein's avatar
Jeremy Reizenstein committed
409
410
  linear_exponential_lr_milestone: 200
  linear_exponential_start_gamma: 0.1
Jeremy Reizenstein's avatar
Jeremy Reizenstein committed
411
  foreach: true
412
413
training_loop_ImplicitronTrainingLoop_args:
  evaluator_class_type: ImplicitronEvaluator
David Novotny's avatar
David Novotny committed
414
415
416
417
418
419
  evaluator_ImplicitronEvaluator_args:
    is_multisequence: false
    camera_difficulty_bin_breaks:
    - 0.97
    - 0.98
  eval_only: false
420
421
422
423
424
425
426
427
428
  max_epochs: 1000
  store_checkpoints: true
  store_checkpoints_purge: 1
  test_interval: -1
  test_when_finished: false
  validation_interval: 1
  clip_grad: 0.0
  metric_print_interval: 5
  visualize_interval: 1000
429
430
431
  visdom_env: ''
  visdom_port: 8097
  visdom_server: http://127.0.0.1