nexuslrf commited on
Commit
4c96031
·
verified ·
1 Parent(s): a431f2b

Upload folder using huggingface_hub

Browse files
.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
+ asset/teaser.jpg filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: other
3
+ library_name: DiffusionRenderer
4
+ arxiv: 2501.18590
5
+ tags:
6
+ - nvidia
7
+ - rendering
8
+ - diffusion
9
+ ---
10
+
11
+ # DiffusionRenderer: Neural Inverse and Forward Rendering with Video Diffusion Models
12
+
13
+ ![img](asset/teaser.jpg)
14
+
15
+ [Ruofan Liang](https://www.cs.toronto.edu/~ruofan/)\*, [Zan Gojcic](https://zgojcic.github.io/), [Huan Ling](https://www.cs.toronto.edu/~linghuan/), [Jacob Munkberg](https://research.nvidia.com/person/jacob-munkberg), [Jon Hasselgren](https://research.nvidia.com/person/jon-hasselgren), [Zhi-Hao Lin](https://chih-hao-lin.github.io/), [Jun Gao](https://www.cs.toronto.edu/~jungao/), [Alexander Keller](https://research.nvidia.com/person/alex-keller), [Nandita Vijaykumar](https://www.cs.toronto.edu/~nandita/), [Sanja Fidler](https://www.cs.toronto.edu/~fidler/), [Zian Wang](https://www.cs.toronto.edu/~zianwang/)\*
16
+
17
+ \* indicates equal contribution
18
+
19
+ **[Paper](https://arxiv.org/abs/2501.18590) | [Project Page](https://research.nvidia.com/labs/toronto-ai/DiffusionRenderer/)**
20
+
21
+ **Overview.**
22
+ DiffusionRenderer is a general-purpose framework that achieves high-quality geometry and material estimation from real-world videos (inverse rendering), and photorealistic image/video synthesis from G-buffers and lighting (forward rendering). Both the inverse and forward renderers are video diffusion models trained on a combination of curated synthetic datasets and auto-labeled real-world videos.
23
+ Unlike classic PBR, which relies on precise geometry and path tracing, DiffusionRenderer provides a data-driven approximation of light transport through video GenAI models. It synthesizes realistic lighting effects without explicit simulation, complementing PBR for real-world applications such as relighting and material editing, especially when explicit geometry is inaccessible or inaccurate.
asset/teaser.jpg ADDED

Git LFS Details

  • SHA256: 51fd54a67fb473680d4163b7b737bcedc998cd69c8e90fcf3b9262195d25a6bf
  • Pointer size: 131 Bytes
  • Size of remote file: 125 kB
env_decoder/config.json ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_class_name": "EnvDecoder",
3
+ "_diffusers_version": "0.28.0",
4
+ "_name_or_path": "outputs/env_encoding_latent/checkpoint-48000",
5
+ "act_fn": "none",
6
+ "channels": [
7
+ 1280,
8
+ 640,
9
+ 320,
10
+ 320
11
+ ],
12
+ "feat_input": false,
13
+ "latent_encoder": true,
14
+ "num_attention_heads": [
15
+ 20,
16
+ 20,
17
+ 10,
18
+ 5
19
+ ],
20
+ "num_res_blocks": 2,
21
+ "only_cross_attention": true,
22
+ "out_channels": 8
23
+ }
env_decoder/diffusion_pytorch_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:66bbda72d25a3d6bf534241528053955a6d0da843b5a75ad879e9062bad58ad5
3
+ size 639050104
env_encoder/config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_class_name": "EnvEncoder",
3
+ "_diffusers_version": "0.28.0",
4
+ "_name_or_path": "outputs/env_encoding_latent/checkpoint-48000",
5
+ "channels": [
6
+ 320,
7
+ 640,
8
+ 1280,
9
+ 1280
10
+ ],
11
+ "in_channels": 12,
12
+ "latent_encoder": true,
13
+ "num_res_blocks": 2
14
+ }
env_encoder/diffusion_pytorch_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8b482aedf651bd9f0c70523168d828b0dba1fecfcfd027dc552c3283916a762c
3
+ size 645859016
lora/pytorch_lora_weights.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:aca396e76261c37c5a42b9d8f4c5fea2d4970847bf45b4998a61ebad49f83786
3
+ size 13632920
model_index.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_class_name": "RGBXVideoDiffusionPipeline",
3
+ "_diffusers_version": "0.28.0",
4
+ "env_encoder": [
5
+ "src.models.env_encoder",
6
+ "EnvEncoder"
7
+ ],
8
+ "feature_extractor": [
9
+ null,
10
+ null
11
+ ],
12
+ "image_encoder": [
13
+ null,
14
+ null
15
+ ],
16
+ "scheduler": [
17
+ "diffusers",
18
+ "EulerDiscreteScheduler"
19
+ ],
20
+ "unet": [
21
+ "src.models.custom_unet_st",
22
+ "UNetCustomSpatioTemporalConditionModel"
23
+ ],
24
+ "vae": [
25
+ "diffusers",
26
+ "AutoencoderKLTemporalDecoder"
27
+ ]
28
+ }
nrm_encoder/config.json ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_class_name": "EnvNormalEncoder",
3
+ "_diffusers_version": "0.28.0",
4
+ "_name_or_path": "outputs/env_encoding_latent/checkpoint-48000",
5
+ "channels": [
6
+ 320,
7
+ 640,
8
+ 1280,
9
+ 1280
10
+ ],
11
+ "in_channels": 4,
12
+ "latent_encoder": true,
13
+ "light_block": false,
14
+ "num_res_blocks": 2
15
+ }
nrm_encoder/diffusion_pytorch_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e5cae950adce2f7a719f3223efb247896748d743f875240a90944d902ce26789
3
+ size 645766856
scheduler/scheduler_config.json ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_class_name": "EulerDiscreteScheduler",
3
+ "_diffusers_version": "0.28.0",
4
+ "beta_end": 0.012,
5
+ "beta_schedule": "scaled_linear",
6
+ "beta_start": 0.00085,
7
+ "clip_sample": false,
8
+ "final_sigmas_type": "zero",
9
+ "interpolation_type": "linear",
10
+ "num_train_timesteps": 1000,
11
+ "prediction_type": "v_prediction",
12
+ "rescale_betas_zero_snr": false,
13
+ "set_alpha_to_one": false,
14
+ "sigma_max": 700.0,
15
+ "sigma_min": 0.002,
16
+ "skip_prk_steps": true,
17
+ "steps_offset": 1,
18
+ "timestep_spacing": "leading",
19
+ "timestep_type": "continuous",
20
+ "trained_betas": null,
21
+ "use_karras_sigmas": true
22
+ }
unet/config.json ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_class_name": "UNetCustomSpatioTemporalConditionModel",
3
+ "_diffusers_version": "0.28.0",
4
+ "_name_or_path": "outputs/svd_render_env_enc_img_obj_X_dl3dvLoRA_ema_r16_vid_fs24/unet",
5
+ "addition_time_embed_dim": 256,
6
+ "block_out_channels": [
7
+ 320,
8
+ 640,
9
+ 1280,
10
+ 1280
11
+ ],
12
+ "context_embedding_type": null,
13
+ "context_vocab_size": 16,
14
+ "cross_attention_dim": [
15
+ 320,
16
+ 640,
17
+ 1280,
18
+ 1280
19
+ ],
20
+ "down_block_types": [
21
+ "CrossAttnDownBlockSpatioTemporal",
22
+ "CrossAttnDownBlockSpatioTemporal",
23
+ "CrossAttnDownBlockSpatioTemporal",
24
+ "DownBlockSpatioTemporal"
25
+ ],
26
+ "in_channels": 24,
27
+ "layers_per_block": 2,
28
+ "multi_res_encoder_hidden_states": true,
29
+ "num_attention_heads": [
30
+ 5,
31
+ 10,
32
+ 20,
33
+ 20
34
+ ],
35
+ "num_frames": 14,
36
+ "out_channels": 4,
37
+ "projection_class_embeddings_input_dim": 768,
38
+ "sample_size": 96,
39
+ "temporal_cross_attention_dim": null,
40
+ "transformer_layers_per_block": 1,
41
+ "up_block_types": [
42
+ "UpBlockSpatioTemporal",
43
+ "CrossAttnUpBlockSpatioTemporal",
44
+ "CrossAttnUpBlockSpatioTemporal",
45
+ "CrossAttnUpBlockSpatioTemporal"
46
+ ],
47
+ "use_skip_1_attention": true
48
+ }
unet/diffusion_pytorch_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a4a08509483087c40e091294ec944150c2a0183c664f8f1dffcbde5a1d7389f2
3
+ size 5894228272
vae/config.json ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_class_name": "AutoencoderKLTemporalDecoder",
3
+ "_diffusers_version": "0.28.0",
4
+ "_name_or_path": "stabilityai/stable-video-diffusion-img2vid",
5
+ "block_out_channels": [
6
+ 128,
7
+ 256,
8
+ 512,
9
+ 512
10
+ ],
11
+ "down_block_types": [
12
+ "DownEncoderBlock2D",
13
+ "DownEncoderBlock2D",
14
+ "DownEncoderBlock2D",
15
+ "DownEncoderBlock2D"
16
+ ],
17
+ "force_upcast": true,
18
+ "in_channels": 3,
19
+ "latent_channels": 4,
20
+ "layers_per_block": 2,
21
+ "out_channels": 3,
22
+ "sample_size": 768,
23
+ "scaling_factor": 0.18215
24
+ }
vae/diffusion_pytorch_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:af602cd0eb4ad6086ec94fbf1438dfb1be5ec9ac03fd0215640854e90d6463a3
3
+ size 195531910