Differentiable Rendering
Daniel Yukimura

scene
parameters
2D image
- camera pose
- geometry
- materials
- lighting
- ...



rendering
scene
parameters
2D image
rendering
rendering
differentiable
Feedback
Learning
- Inverse Graphics
- Optimization
- 3D Reconstruction
- Fast rendering
- ...
Applications:


Wang Yifan, Felice Serena, Shihao Wu, Cengiz Öztireli, Olga Sorkine-Hornung - ACM SIGGRAPH ASIA 2019.

Sameer Agarwal, Noah Snavely, Ian Simon, Steven M. Seitz and Richard Szeliski - International Conference on Computer Vision, 2009, Kyoto, Japan.



Differentiable Monte Carlo Ray Tracing through Edge Sampling
Rendering equation:
Global Illumination
(Recalling)

Monte Carlo Integration
(Recalling)

Monte Carlo Integration
(Recalling)

Path Tracing
(Recalling)

Differentiable Monte Carlo Ray Tracing through Edge Sampling
- camera pose
- geometry
- materials
- lighting
- ...
Strategy: Break into smooth and discontinuous regions.
Assumptions:
- triangular meshes (with no interpenetration)
- no point light sources
- no perfectly specular surfaces
Primary visibility
(2D screen-space domain)


- All discontinuities happen at triangle edges.


Monte Carlo estimation:
Secondary visibility
(global illumination - 3D)

edge portion:

Importance Sampling The Edges
- There are many triangles to sample.
- Now we have to sample edges
- and sample points from the edges...
- Most edges are not silhouette
- not all points have non-zero contribution
Hierarchical edge sampling
two hierarchies:
- Triangle edges that associate with only one face and meshes w/ no smooth shading.
- All the remaining edges
volume hierarchie:
- 3D bounding volume: 3D pos. of edge endpoints.
- 6D bounding volume: pos. of edge endpoints and the normals associated w/ the faces of the edge
Importance sampling a single edge
- Sample based on the BRDF
- Precompute a table of fitted linearly transformed cosines for all BRDFs.

Results
Inverse rendering:
Adversarial examples:

Implicit Representation

- Do not represent 3D shape explicitly
- Instead, consider it implicitly as decision boundary of a classifier
Occupancy networks
- Represent the implicit surface as a neural network.

Differentiable Volumetric Rendering





Architecture

- Volumetric Rendering is differentiable here!
- Depth gradients
Forward Pass - Rendering:

Texture mapping:


Loss:
Differentiable Rendering:
KNOWN
??
Depth Gradients:

Results

Implicit Differentiable Rendering

Multiview 3D Surface Reconstruction
Input: Collection of 2D images (masked)
with rough or noisy camera info.
Targets:
- Geometry
- Appearance (BRDF, lighting conditions)
- Cameras
Method:
Geometry:
signed distance function (SDF) +
implicit geometric regularization (IGR)

- geometry parameters
IDR - Forward pass

Ray cast:
(first intersection)
IDR - Forward pass

- appearance parameters
Output (Light Field):
Surface normal
Global gometry feature vector
Differentiable intersections
Lemma:

Light Field Approx.

BRDF function
out direction
income direction
emitted
radiance
incoming radiance
Results:


Copy of Deep Implicits
By Daniel Yukimura
Copy of Deep Implicits
- 260