Raysampler as pluggable

Summary:
This converts raysamplers to ReplaceableBase so that users can hack their own raysampling impls.

Context: Andrea tried to implement TensoRF within implicitron but could not due to the need to implement his own raysampler.

Reviewed By: shapovalov

Differential Revision: D36016318

fbshipit-source-id: ef746f3365282bdfa9c15f7b371090a5aae7f8da
This commit is contained in:
David Novotny
2022-05-12 15:39:35 -07:00
committed by Facebook GitHub Bot
parent e85fa03c5a
commit e767c4b548
16 changed files with 185 additions and 96 deletions

View File

@@ -49,10 +49,8 @@ generic_model_args:
append_xyz:
- 5
latent_dim: 0
raysampler_args:
raysampler_AdaptiveRaySampler_args:
n_rays_per_image_sampled_from_mask: 1024
min_depth: 0.0
max_depth: 0.0
scene_extent: 8.0
n_pts_per_ray_training: 64
n_pts_per_ray_evaluation: 64

View File

@@ -54,7 +54,7 @@ generic_model_args:
n_harmonic_functions_dir: 4
pooled_feature_dim: 0
weight_norm: true
raysampler_args:
raysampler_AdaptiveRaySampler_args:
n_rays_per_image_sampled_from_mask: 1024
n_pts_per_ray_training: 0
n_pts_per_ray_evaluation: 0

View File

@@ -6,5 +6,5 @@ clip_grad: 1.0
generic_model_args:
chunk_size_grid: 16000
view_pooler_enabled: true
raysampler_args:
raysampler_AdaptiveRaySampler_args:
n_rays_per_image_sampled_from_mask: 850

View File

@@ -4,7 +4,7 @@ defaults:
- _self_
generic_model_args:
chunk_size_grid: 16000
raysampler_args:
raysampler_AdaptiveRaySampler_args:
n_rays_per_image_sampled_from_mask: 800
n_pts_per_ray_training: 32
n_pts_per_ray_evaluation: 32

View File

@@ -1,17 +1,6 @@
defaults:
- repro_multiseq_base.yaml
- repro_feat_extractor_transformer.yaml
- repro_multiseq_nerformer.yaml
- _self_
generic_model_args:
chunk_size_grid: 16000
raysampler_args:
n_rays_per_image_sampled_from_mask: 800
n_pts_per_ray_training: 32
n_pts_per_ray_evaluation: 32
renderer_MultiPassEmissionAbsorptionRenderer_args:
n_pts_per_ray_fine_training: 16
n_pts_per_ray_fine_evaluation: 16
implicit_function_class_type: NeRFormerImplicitFunction
view_pooler_enabled: true
view_pooler_args:
feature_aggregator_class_type: AngleWeightedIdentityFeatureAggregator

View File

@@ -16,11 +16,11 @@ generic_model_args:
sequence_autodecoder_args:
encoding_dim: 256
n_instances: 20000
raysampler_args:
raysampler_class_type: NearFarRaySampler
raysampler_NearFarRaySampler_args:
n_rays_per_image_sampled_from_mask: 2048
min_depth: 0.05
max_depth: 0.05
scene_extent: 0.0
n_pts_per_ray_training: 1
n_pts_per_ray_evaluation: 1
stratified_point_sampling_training: false

View File

@@ -13,11 +13,11 @@ generic_model_args:
loss_prev_stage_mask_bce: 0.0
loss_autodecoder_norm: 0.0
depth_neg_penalty: 10000.0
raysampler_args:
raysampler_class_type: NearFarRaySampler
raysampler_NearFarRaySampler_args:
n_rays_per_image_sampled_from_mask: 2048
min_depth: 0.05
max_depth: 0.05
scene_extent: 0.0
n_pts_per_ray_training: 1
n_pts_per_ray_evaluation: 1
stratified_point_sampling_training: false

View File

@@ -49,7 +49,7 @@ generic_model_args:
n_harmonic_functions_dir: 4
pooled_feature_dim: 0
weight_norm: true
raysampler_args:
raysampler_AdaptiveRaySampler_args:
n_rays_per_image_sampled_from_mask: 1024
n_pts_per_ray_training: 0
n_pts_per_ray_evaluation: 0

View File

@@ -1,4 +1,3 @@
defaults:
- repro_singleseq_base
- _self_
exp_dir: ./data/nerf_single_apple/

View File

@@ -5,5 +5,5 @@ defaults:
generic_model_args:
chunk_size_grid: 16000
view_pooler_enabled: true
raysampler_args:
raysampler_AdaptiveRaySampler_args:
n_rays_per_image_sampled_from_mask: 850

View File

@@ -6,7 +6,7 @@ generic_model_args:
chunk_size_grid: 16000
view_pooler_enabled: true
implicit_function_class_type: NeRFormerImplicitFunction
raysampler_args:
raysampler_AdaptiveRaySampler_args:
n_rays_per_image_sampled_from_mask: 800
n_pts_per_ray_training: 32
n_pts_per_ray_evaluation: 32

View File

@@ -12,11 +12,11 @@ generic_model_args:
loss_prev_stage_mask_bce: 0.0
loss_autodecoder_norm: 0.0
depth_neg_penalty: 10000.0
raysampler_args:
raysampler_class_type: NearFarRaySampler
raysampler_NearFarRaySampler_args:
n_rays_per_image_sampled_from_mask: 2048
min_depth: 0.05
max_depth: 0.05
scene_extent: 0.0
n_pts_per_ray_training: 1
n_pts_per_ray_evaluation: 1
stratified_point_sampling_training: false

View File

@@ -13,11 +13,11 @@ generic_model_args:
loss_prev_stage_mask_bce: 0.0
loss_autodecoder_norm: 0.0
depth_neg_penalty: 10000.0
raysampler_args:
raysampler_class_type: NearFarRaySampler
raysampler_NearFarRaySampler_args:
n_rays_per_image_sampled_from_mask: 2048
min_depth: 0.05
max_depth: 0.05
scene_extent: 0.0
n_pts_per_ray_training: 1
n_pts_per_ray_evaluation: 1
stratified_point_sampling_training: false