TL;DR

  1. Single-view reconstruction is ill-posed: a deterministic model collapses to the average. We should learn a distribution of all plausible configurations → generative models.
  2. Four families: GANs (adversarial), VAEs (variational lower bound), flows (invertible transform), diffusion (gradually add Gaussian noise, learn to reverse). Trilemma: quality, diversity, speed; diffusion has quality + diversity but is slow.
  3. Forward process: , in closed form . Nothing is learned.
  4. Reverse process: a network learns . Maximum likelihood is infeasible → negative ELBO → DDPM: predict the noise, .
  5. Sampling needs ~1000 steps. DDIM sketches and refines (non-Markovian, far fewer steps). Stable Diffusion runs diffusion in a latent space.
  6. For 3D: Zero-1-to-3 generates novel views conditioned on , but views are 3D-inconsistent. Gen-3Diffusion adds an explicit 3DGS at every step. MVGBench evaluates consistency instead of comparison to one ground truth.

Exam relevance

Hint from a fellow student: “Diffusion: slide 35, slide 33, lecture 10: be able to reconstruct the algorithm, be able to reason about the equations. Remember them!” Also: contrast flow matching vs. diffusion (Lecture 11), and “put together pieces, with diffusion to reconstruct depth and the back part of a scene”. See DDPM: Predict the Noise and Training and Sampling Algorithms.

Motivation for Generative Models

Slides 2-11

So far we reconstructed scenes and objects from multiple images (SfM, multi-view stereo, NeRF, Gaussian splatting); NeRF and 3DGS overfit to a set of training images. But tasks like single-view reconstruction are ill-posed: we can’t see what is behind the object.

  • A deterministic model might collapse to an average value.
  • We should learn a distribution of all possible configurations instead of simply regressing or fitting to observations.

Generating content is a very powerful capability with many applications:

Slide 7: text to 3D object (TRELLIS, Xiang et al., CVPR 2025)
Slide 8: image to 3D object (TRELLIS)
  • Image to 3D: a full 3D object from a single image. Still minor artifacts (e.g. the robot’s arms disconnected from the body), but huge progress within a year.
  • 3D scenes: SynCity (Engstler et al., CVPR 2025) generates a scene tile by tile; it can’t generate buildings larger than one tile, because tiles are not coordinated.
  • 3D worlds: Lyra 2.0 (Nvidia), HY-World 2.0 (Tencent Hunyuan).
  • Motion generation: motion sequences from text (UniMotion, Li et al., 3DV 2025).
Slide 9: SynCity
Slide 11: motion generation (UniMotion)

Generative Models: Main Architectures

Slides 12-16

GAN, VAE, flow-based models and diffusion models side by side
Slide 12: the four main families of generative models.
FamilyPrinciple
GANadversarial training
VAEmaximize a variational lower bound
Flow-based modelsinvertible transform to a simple distribution
Diffusion modelsgradually add Gaussian noise, then reverse

GAN: a generator turns random noise into samples that should look like the training data; a discriminator tries to tell real from generated samples. Training is a min-max game: tries to fool , tries to classify correctly. Goal: ‘s samples become so realistic that can’t tell the difference.

VAE: an autoencoder whose encoder outputs the parameters of a Gaussian in latent space, a mean and a standard deviation . With the reparameterization trick , , we can backpropagate through the sampling. The decoder reconstructs the input. Loss = reconstruction loss + KL divergence (keep the latent close to a standard Gaussian).

Diffusion: a forward process adds Gaussian noise step by step until the sample is pure noise; a reverse process is trained to remove it step by step.

VAE: encoder to mu and sigma, sampled z, decoder
Slide 14: VAE.

The generative modeling trilemma

High-quality samplesMode coverage / diversityFast sampling
GANs✓✗ (mode collapse)✓
VAEs, normalizing flows✗✓✓
Denoising diffusion models✓✓✗ (many iterative steps)

Diffusion Models

Idea

Slides 17-23

Diffusion models bridge two distributions: a simple Gaussian (random noisy images) and the complex data distribution (e.g. images of sports balls, which differ in shape, texture, size).

One direction is easy. Which one, and why?

The idea of diffusion models is to learn the backward process, the incremental denoising: a network takes the current noisy image and tells us how to denoise it. The same network is applied over many steps until we end up with an image of a volleyball.

Slide 19: forward process (data → noise)
Slide 20: learn to undo the noising

Diffusion models are the state of the art for image generation (Stable Diffusion, Flux, Midjourney, DALL-E) and image editing (Flux.1 Kontext: remove objects, change scenes, keep quality). Flow-based models are emerging, but their core architecture is often still diffusion-like.

Diffusion: Theory

Diffusion Probabilistic Models

Slide 25

A diffusion model learns the reverse of a noise generation procedure:

  • Forward step: iteratively add noise to the original sample → it converges to complete noise (e.g. ).
  • Reverse step: recover the original sample from the noise → this is the generation procedure.
Reverse process from x_T to x_0 and forward diffusion process
Slide 25: reverse process pθ(xt−1 | xt) and forward process q(xt | xt−1).

Forward Step

Slides 26-28

The forward process is a Markov chain, a product of conditional Gaussians:

Forward process

Put differently:

: the noise schedule (variances), usually fixed beforehand and increased over time. : the variance-preserving factor (it keeps the total variance bounded).

Skipping intermediate steps: the noising doesn’t have to be done step by step. There is a closed form for given :

Closed-form forward step

Equivalently .

In the limit we want pure noise, . We achieve this by . Original DDPM paper: , linear schedule from to .

Closed-form forward step and the decay of alpha bar over the diffusion steps
Slide 28: ᾱt decays to 0 over the steps.

Why not simply choose ?

Backward Step / Sampling

Slides 29-30

By design . In theory we can generate samples:

  1. sample initial random noise
  2. iteratively denoise , the unknown true denoising distribution

If is small, we can approximate with a Gaussian, whose mean is a trainable network:

Reverse process

Goal: maximum likelihood . This needs marginalizing over all possible paths ending in , . Infeasible!

Derivation of the Diffusion Loss

Slides 31-32

With Jensen’s inequality we get a negative ELBO (an upper bound on the negative log-likelihood, which we minimize):

which can be rewritten as three terms:

Decomposition of the ELBO

  1. prior matching: independent of (no learnable parameters) → constant, dropped.
  2. denoising matching: match the true denoising distribution (conditioned on , which is tractable) with the learned one.
  3. reconstruction term: scores the model against an actual data value.

(The derivation of the three terms is skipped in the lecture.) Because everything is Gaussian, all these KL terms reduce to simple L2 losses.

DDPM: Predict the Noise

Slides 33-34

Key idea of DDPM (Ho et al., 2020)

Predict the noise instead of the denoised signal. and share most of their information, so predicting it again is redundant. Instead, predict the residual and remove it.

DDPM reparameterization (Slide 33)

and the stepwise objective becomes

: the predicted noise; : a normalization (weighting) term; : a constant.

SymbolMeaning
clean data sample
noisy sample at step
the true noise added in the forward process
the network’s prediction of that noise
noise schedule;
how much of is left at step
standard deviation of the fresh noise in the reverse step
DDPM: predict the noise, reparameterized mean and noise-prediction objective
Slide 33: DDPM.

Simplified training objective (Slide 34)

Ho et al. drop the weights and sample at random:

The reconstruction term is approximately included ().

Why the mean formula makes sense

From the closed form, : knowing the noise means knowing the clean image. The reverse mean removes the fraction of the predicted noise that was added in the last step, and rescales by to undo the variance-preserving shrinking .

Training and Sampling Algorithms

Slide 35

Algorithm 1: Training

  1. repeat
  2. : sample an image from the training set
  3. : sample a random time step uniformly
  4. : sample Gaussian noise
  5. take a gradient descent step on : apply noise, let the model predict it, compute the loss, update
  6. until converged

Algorithm 2: Sampling

  1. : sample pure Gaussian noise
  2. for do
  3. if , else : sample noise to re-inject
  4. : predict the noise, remove it, add a little fresh noise
  5. end for
  6. return
DDPM Algorithm 1 Training and Algorithm 2 Sampling with annotations
Slide 35: training and sampling.

Typical mistakes

  • Training does not run the chain step by step: it jumps to a random with the closed form.
  • The network predicts the noise , not or .
  • In sampling, (same as in the mean formula of Slide 33).
  • The last step () adds no noise ().
flowchart LR
  subgraph TR["Training (one step)"]
    direction LR
    A["x₀ from data"] --> B["t ~ U(1..T), ε ~ N(0,I)"] --> C["x_t = √ᾱ_t x₀ + √(1−ᾱ_t) ε"] --> D["ε_θ(x_t, t)"] --> E["‖ε − ε_θ‖² → gradient step"]
  end
  subgraph SA["Sampling"]
    direction LR
    F["x_T ~ N(0,I)"] --> G["for t = T..1:<br/>x_{t−1} = 1/√α_t (x_t − β_t/√(1−ᾱ_t) ε_θ) + σ_t z"] --> H["x₀"]
  end

Sampling is slow: it often requires 1000 reverse steps.

Starting from less noise gives less diverse samples
Slide 37: less noise at the start → less diversity in the samples.

What happens if we don't start from pure noise, but from a partially noised image?

DDIM: Faster Sampling

Slides 38-41

Motivation: diffusion is slow because of the iterative procedure; GANs and VAEs create a sample in one forward pass. Can we combine the advantages? Instead of naively applying diffusion on top of a GAN/VAE, DDIM (Denoising Diffusion Implicit Models) proposes a principled rough sketch + refinement:

  • given , generate a rough sketch and predict deterministically
  • unlike the original diffusion model, it is not Markovian: the reverse step depends on
Original Markovian diffusion vs non-Markovian DDIM
Slide 39: original (Markovian) diffusion vs. DDIM (non-Markovian).

DDIM

Forward process (same marginals as DDPM; here denotes the cumulative product):

Reverse process:

With the sampling is fully deterministic.

Notation

On the DDIM slides, is what the DDPM slides call (the cumulative product).

DDIM significantly reduces the number of sampling steps: it creates the outline of the sample after only 100 steps (DDPM needs thousands), even usable results with 10.

Stable Diffusion: Diffusion in Latent Space

Slides 42-44

Problem with standard diffusion: DDPM operates directly on images, which are high-dimensional (a RGB image has 786,432 values). This makes it slow to train, expensive to sample and memory-intensive.

Stable Diffusion (Rombach et al., 2022). Key idea: run the diffusion process in a latent space.

  • An encoder maps the image into a compact latent ; the forward and reverse diffusion run on ; a decoder maps the denoised latent back to pixels.
  • The denoising U-Net uses self-attention (understand the image globally) and cross-attention to condition on text, semantic maps, images or other representations via an encoder .
  • Large-scale training: LAION-5B, 5 billion images with text annotations.
Stable Diffusion: pixel space encoder and decoder, latent diffusion with a denoising U-Net and cross-attention conditioning
Slide 43: Stable Diffusion (latent diffusion).

Multi-View Image Diffusion for 3D

Slides 45-46

Do 2D diffusion models have knowledge about the 3D domain? How can we leverage image diffusion for 3D?

Multi-view diffusion: produce multiple views of the same object or scene that are geometrically consistent (e.g. down 30°, left 90°).

Zero-1-to-3

Slides 47-52

Zero-1-to-3: train a diffusion model to generate novel views of an object. Built on Stable Diffusion, trained on Objaverse. Key idea: condition the generation on an image of the object and the relative rotation and translation .

Zero-1-to-3 training objective

: the embedding of the input view and the relative camera extrinsics. The same objective as a latent diffusion model, only with this extra conditioning.

Zero-1-to-3: Gaussian noise plus input view and R,T give an output view
Slide 47: Zero-1-to-3.

Reconstruction: a neural field is optimized so that its renderings match the input view (MSE) and, from other viewpoints , are guided by gradients from Zero-1-to-3 (a score-distillation-style loss, , → Lecture 11).

Problem: consistency. Sampling the same new view several times gives different results (different camera lenses, different cars). 2D multi-view diffusion has no explicit 3D representation (like NeRF or 3DGS), so the 3D consistency of the generated images is not constrained: every view is generated independently.

Different samples of the same new view of a camera and a car
Slide 51: inconsistent samples
Spider-Man views generated independently are inconsistent
Slide 52: no explicit 3D representation

Limitations of Multi-View Diffusion

Slides 53-58

  • Generating novel views independently leads to 3D inconsistencies.
  • Synchronized denoising with crosstalk (Zero123++, SyncDreamer, …) helps, but cannot ensure accurate consistency (the unicorn looks left in one view, right in another).
  • Inconsistent multi-view images lead to implausible 3D reconstructions when fed to a sparse-view reconstructor (NeRF / SDF / 3DGS regressor), e.g. floating 3D Gaussian splats with LGM.

Key questions: How can we get rid of 3D inconsistencies (→ Gen-3Diffusion)? How can we quantify inconsistencies and performance (→ MVGBench)?

Reverse sampling with a consistency refinement at every step
Slide 58: add a consistency refinement at every diffusion step.

Problem: the multi-view diffusion process lacks an explicit 3D representation, so its trajectory drifts away from the multi-view consistent samples. Solution: introduce an explicit 3D representation to refine multi-view consistency at each diffusion timestep.

Gen-3Diffusion

Slides 59-65

Gen-3Diffusion (Xue et al., NeurIPS 2024 “Human 3Diffusion”, PAMI 2025). Key idea: synchronize a 2D multi-view diffusion model and a 3D diffusion-based generative model (3D Gaussian splats) at every diffusion timestep:

  • the explicit 3D representation ensures 2D multi-view consistency
  • the strong multi-view shape prior from the 2D model helps the 3D generation

At each step, the 3D model takes the input view and the current noisy multi-view images, generates 3D Gaussians, renders them to consistent multi-view images, and these are used in the next denoising step.

3D Gaussian splats diffusion model and 2D multi-view diffusion model synchronized at each timestep
Slide 59: synchronizing 2D multi-view diffusion and 3D reconstruction.

Results: better appearance and geometry than avatar methods (SiTH, SiFU, ICON, ECON) and than novel-view diffusion (Zero123-XL, SV3D). It generalizes strongly (even to multiple people), thanks to the pre-trained 2D diffusion model.

Slide 65: strong generalization (3DGS renderings).

Multi-View Diffusion and Ground Truth: MVGBench

Slides 66-73

Reconstructing an object from a single image is ill-posed, but benchmarks compare against ground-truth data. What is ground truth in a generative task?

Given the front view of a toy castle, which of the four generated back views is the ground truth?

Input view and 180 degree GT with hidden and mirrored parts
Slide 69: the true back view contains things hidden in the front view.

MVGBench (Xie et al., ICCV 2025): a comprehensive benchmark that evaluates

  • 3D geometric consistency (Chamfer distance, depth)
  • 3D texture consistency (cSSIM, cPSNR, cLPIPS)
  • image quality (oFID, IQ-vlm)
  • semantic consistency (style, object class, color)

How it works: generate two independent sets of views from the same input, fit a 3DGS to each, and compare the two reconstructions (render test views, compute Chamfer, depth, cPSNR, …). If the generated views are internally consistent, both reconstructions agree.

Two view sets, 3DGS fitting, rendering, consistency metrics
Slide 71: 3D geometric and texture consistency in MVGBench.

Semantic and quality metrics: FID compares distributions (not one GT image):

(: mean and covariance of real and generated features), plus a pre-trained VLM for question answering on quality and for class, color and style consistency.

Finding: there is a trade-off between image quality and 3D consistency. No existing method (Zero123, SV3D, SyncDreamer, …) achieves both.

Conclusion

Slide 74

  • How diffusion models work
  • How diffusion models can generate multi-view images
  • Limitations of multi-view diffusion

Next lecture: other ways to use diffusion for 3D: Score Distillation Sampling; methods that don’t rely on image diffusion: point diffusion, Hunyuan3D 2.0, TRELLIS.

Worked Example: One Forward and One Reverse Step

Self-Test

Why do we need generative models for single-view reconstruction?

Explain the generative trilemma for GANs, VAEs and diffusion models.

Write down the forward step and its closed form. What must hold for ?

Why can't we train with maximum likelihood directly, and what do we do instead?

What is the key idea of DDPM, and what is the simplified loss?

Reconstruct the DDPM training algorithm.

Reconstruct the DDPM sampling algorithm.

How does DDIM speed up sampling?

What is the key idea of Stable Diffusion?

How does Zero-1-to-3 work, and what is its main problem?

Why evaluate multi-view generation with MVGBench instead of comparing to ground truth?