TL;DR
- A good 3D representation is compatible with neural networks, flexible, and high fidelity. Voxels, point clouds and meshes each fail somewhere; implicit functions give arbitrary topology and resolution with little memory.
- A field maps every point in space to a scalar or vector: occupancy, unsigned distance (UDF), signed distance (SDF), even radiance (NeRF).
- Fields can be parameterized discretely (voxel grids, octrees: fast and local, but memory-hungry), neurally (an MLP: compact and continuous, but slow and not local), or hybrid (trainable features in a discrete structure + a small MLP: triplanes, NGLOD, Instant NGP hash encoding).
- Neural implicits for reconstruction: OccNet, IM-NET and DeepSDF encode the input into one global code and decode . This loses 3D structure and detail.
- IF-Nets decode from multi-scale local features at : . They keep details and articulations.
- Occupancy and SDF need watertight surfaces. NDF predicts an unsigned distance and can represent open surfaces, garments, scenes and functions.
Exam relevance
Block D of the study plan, and the base for exam task 3 (point cloud → SDF → mesh, training vs. inference, “why can’t we compute an SDF on raw data without labels?”). See Exam Task: Point Cloud to Mesh with a Learned SDF.
What Is a Good Representation for 3D Data?
Slides 2-9
We need a representation that is
- compatible with neural networks
- flexible
- high fidelity (can model high-frequency details)
| Representation | Definition | Problem |
|---|---|---|
| Voxels | discretization of 3D space into a grid; easy to process with neural networks | cubic memory → limited resolution |
| Point clouds | discretization into 3D points (optionally with colors, normals) | no connectivity/topology, limited number of points |
| Meshes | discretization into vertices and faces | limited number of vertices, needs a class-specific template, self-intersections |
| Implicit representation | no discretization | arbitrary topology and resolution, low memory footprint, not restricted to a specific class |



Meshes can either be created per object (impractical) or deformed from a template (limited resolution and topology, as seen in mesh-based clothing models).
Surfaces as an implicit function: a function tells us whether a point is inside or outside an object. If the function is continuous, a level set of it defines a surface:
Intuition
With implicit functions, topology changes only require changing . Mesh-based representations would struggle (e.g. one blob splitting into two).
(More on implicit vs. explicit geometry in Lecture 5.)
Neural Fields
What Is a Field?
Slides 10-15
Neural fields are a very general concept that applies to all kinds of data, not only 3D. The name comes from physics:
Field
A field is a mapping that associates a scalar or vector quantity to each point in space.
Examples: 3D signed distance fields (implicit surface), a 3D parabola (explicit surface), an image, audio, a vector field.
You have already seen fields! (e.g. implicit geometric regularization, Gropp et al.)
Occupancy, unsigned and signed distance fields (Slide 14)
Occupancy field:
Unsigned distance field:
Signed distance field:
: the volume (inside), : the surface.
| Field | Information | Surface |
|---|---|---|
| Occupancy | inside / outside | level set |
| UDF | distance only | , no sign change |
| SDF | distance + side | zero crossing |
Sign convention
Slide 14 uses positive inside, negative outside. DeepSDF (and the concept page) use negative inside, positive outside. Both exist; state your convention in the exam. A UDF is : what is dropped is the sign, not the magnitude.
Fields can be anything: NeRF (→ Lecture 7) is a field that maps a 5D input, position + viewing direction , to color and density .
Parameterizing Fields
Slide 16
The field mapping is usually far too complicated to write down explicitly, so we have to parameterize it:
- Discrete: evaluate the field at control points (voxel grids, octrees), store the values, and approximate the field at arbitrary points from them.
- Neural: a neural network, e.g. for an SDF: input a query point , output its signed distance. Inherently continuous, and in theory it can approximate any field to arbitrary precision.
- Hybrid: the best of both worlds.
Discrete: Voxel Grids and Octrees
Slides 17-23
Voxel grid: subdivide 3D space into a grid of equal-sized bins and store a field value (signed distance, occupancy, …) per voxel. Images are 2D voxel grids.
Continuous fields with voxels: the values can also be stored at the corners of the voxels. For a query point , interpolate:
Interpolation in a voxel grid
: stored value at corner , : kernel function. With trilinear interpolation the voxel grid becomes a continuous field.
Properties of voxel grids:
- For input dimensions and bins per dimension, the memory is : intractable in higher dimensions.
- For 3D scenes, lots of voxels store no useful information (empty space).
- ✓ Retain locality information.
- ✓ Easy to extend CNNs to 3D convolutions.
Octrees: divide a voxel into 8 subvoxels if it contains more than points. The depth of the octree depends on the desired resolution.
| Octrees: pros | Octrees: cons |
|---|---|
| reduce memory wasted by empty space | still memory-intensive (depending on the resolution) |
| more expensive to construct | |
| subdivision is not differentiable | |
| to sample a point, you have to traverse the hierarchy |
Neural Fields
Slides 24-30
Neural field
Represent the field by a neural network that can be queried at points in space (and time). Example: a neural signed distance field, , signed distance.
In 2019, three works had essentially the same idea: Occupancy Networks (Mescheder et al., CVPR 2019), IM-NET (Chen et al., CVPR 2019) and DeepSDF (Park et al., CVPR 2019). They are called neural implicits, because they are neural representations of implicit functions (SDF, UDF, occupancy).
Neural fields can represent any signal: images, 3D shapes, audio, solutions of differential equations (SIREN, Sitzmann et al., NeurIPS 2020). They are compact: a room scene fits in about 1 MB of network weights, while the mesh needs 110 MB.
Discussion of neural fields (Slide 29)
Pros:
- storage does not grow with spatial resolution or the number of dimensions
- resolution is chosen at test time
- adaptive resolution: more capacity goes to high-frequency areas
- work for arbitrary dimensions
Cons:
- slow training and sampling
- do not expose locality
- inconvenient processing: you can’t run convolutions
- editing is hard
Intuition
Neural fields are nothing “smart”: they are just neural networks overfit to one specific scene, storing it in their weights. The network automatically spends more weights on the parts of the signal with high-frequency detail.
Comparison (Slide 30)
Memory Speed Locality Resolution Discrete ✗ ✓ ✓ ✗ Neural ✓ ✗ ✗ ✓ Hybrid parameterizations: the best of both worlds.
Hybrid Representations
Slides 31-41
Fully connected neural fields are costly to train and evaluate. Hybrids combine discrete and neural parts: a small neural network is augmented by a discrete structure of trainable feature vectors, optimized jointly. The network no longer has to do all the heavy lifting; the discrete structure captures the spatial features of the signal.
Voxel features + neural field
Slide 32
Store learnable features in a voxel grid. A small network takes the 3D point together with the trilinearly interpolated feature and outputs occupancy, distance, …: . Examples: IF-Nets (Chibane et al., CVPR 2020), Convolutional Occupancy Networks (Peng et al., ECCV 2020), Neural Sparse Voxel Fields (Liu et al., NeurIPS 2020).
Trap
Hybrids store features, not SDF or occupancy values.
Feature planes and triplanes
Slides 33-34
Instead of a 3D voxel grid, features can be stored on a 2D feature plane: project orthographically onto the plane and interpolate there (Convolutional Occupancy Networks). The triplane representation projects onto three axis-aligned planes, adds the three features and passes them through a shallow MLP (EG3D, Chan et al., CVPR 2022). Memory grows with instead of .
Octree feature volumes (NGLOD)
Slides 35-36
Replace the voxel grid by an octree to vary the level of detail. NGLOD (Takikawa et al., CVPR 2021) stores feature vectors at the voxel corners of a sparse voxel octree; the octree levels are levels of detail (LODs). For a query point and LOD : find the voxels at all levels up to , trilinearly interpolate their corner features, sum them to , and feed it with to a small MLP that predicts the signed distance. MLP and features are optimized jointly, end to end.
Octree problems and Instant NGP
Slides 37-40
| Octree approaches (NGLOD, NSVF) | Instant NGP’s hash grid |
|---|---|
| build an explicit tree that subdivides space adaptively | no tree, no spatial data structure at all |
| only allocate memory where the surface exists | at each resolution level, just a flat array of feature vectors |
| need tree construction, traversal and updates during training | a voxel corner’s integer coordinates are hashed into to index the array |
| if the surface moves during training, the tree must be rebuilt | no “where does this voxel live?” lookup: the hash is the address |
| memory bounded by the occupied space | memory is a fixed budget per level |
Multiresolution hash encoding (Instant NGP, Müller et al., SIGGRAPH 2022)
- For an input coordinate , find the surrounding voxels at resolution levels and hash the integer coordinates of their corners.
- Look up the -dimensional feature vectors in the hash tables .
- Linearly interpolate them according to the position of in the voxel.
- Concatenate the results of all levels (plus auxiliary inputs ) into the MLP input .
- Evaluate a small MLP .
Gradients flow back through the MLP, the concatenation and the interpolation into the looked-up feature vectors.
Intuition
A dense grid says “I’ll allocate memory for every possible location, just in case.” A hash grid says “I’ll allocate a fixed budget and let the important locations claim slots through training, while unimportant locations share slots harmlessly.” Hash collisions are not resolved explicitly: gradients from important locations dominate, and the multiresolution structure disambiguates. is a hyperparameter: smaller means more collisions (faster, less memory, lower quality). The trick is to decouple grid resolution from memory cost. Training takes seconds instead of hours.
Hybrid representations (Slide 41)
- trade-off between memory and speed
- best of both worlds
- the neural network can locally “super-resolve” the discrete representation
| Hybrid | Structure | How features are combined |
|---|---|---|
| Voxel features (IF-Nets, ConvONet) | 3D feature grid | trilinear interpolation |
| Triplane (EG3D) | three 2D feature planes | sum of the three plane features |
| NGLOD | sparse octree with LODs | sum over levels |
| Instant NGP | multiresolution hash tables | concatenation over levels |
Neural Fields for 3D Reconstruction
From One Scene to Many Shapes
Slides 42-46
So far a network was overfit to a single scene. That has its uses, but it is more useful to generalize to different shapes. Typical 3D reconstruction tasks start from a deficient 3D geometry and must reconstruct high-frequency details and missing parts:
- voxel super-resolution
- point cloud completion
Global-code implicit function learning (OccNet, IM-NET, DeepSDF, 2019)
An encoder maps the shape observation (sparse point cloud, partial point cloud, low-res voxels) to a global shape code . A decoder takes and a continuous query point and predicts the occupancy:
These work well for rigid objects (chairs, tables, lamps): continuous, multiple topologies. But on humans they failed: they can’t reconstruct articulations and don’t retain details of the input.
IF-Nets: Implicit Functions in Feature Space
Slides 49-55
Problems with previous work (Slide 50):
- Loss of 3D structure: the whole input is squeezed into one vector .
- Point coordinates carry no information about local shape: the decoder only sees .
IF-Nets (Chibane, Alldieck and Pons-Moll, CVPR 2020): the input is a 3D grid . A 3D CNN encoder computes a multi-scale feature grid (from local to global). For a query point , the features of all scales are sampled at and decoded:
Representation of IF-Nets
Trap
The IF-Nets decoder receives the features at , not the coordinates . It is structurally a hybrid, but the features come from an encoder, not from per-scene optimization.
Results: IF-Nets reconstruct articulations, retain details and complete shapes. In the SHARP challenge (ECCV 2020) they also completed textures: from very incomplete scans (missing legs, feet), they generate plausible feet with little local evidence. IF-Nets learn human shape characteristics without a body model.
Remaining Problem: Watertight Surfaces → NDF
Slides 56-64
We changed the input representation. The output is still occupancy or SDF, which only works for watertight surfaces. Surfaces that don’t divide space into two regions can’t be represented: open surfaces and manifolds, garments, functions, complex shapes (e.g. a bus with its interior). We need a different output representation.
Neural Unsigned Distance Fields (NDF) (Chibane, Mir and Pons-Moll, NeurIPS 2020): change the output from to , the unsigned distance:
NDF
Surface: . Projection onto the surface:
No inside is needed anymore: you don’t have to close the surfaces (which is a mess). The encoder stays IF-Nets-like; only the output changes.
Getting the surface without a sign change:
- Projection: move query points by against the gradient → a dense point cloud on the surface (e.g. 1 million points).
- Sphere marching / tracing: step along a camera ray by until → depth, normals and shaded renderings directly, without a mesh.
Neural processing of arbitrary surfaces (not representable by prior learned implicits):
- Mathematical functions and manifolds: one NDF trained on 1000 functions per type (linear, parabola, sinusoids, spirals). Classical regression becomes: write as and trace the ray until .
- Garments: open surfaces without thickness (about 300 garments of five types).
- Scenes: open surfaces with holes and no thickness (34 real scenes from RGB-D sensors).


Trap
A UDF has no sign change, so it can’t be meshed with standard marching cubes. The slides show projection to a point cloud and sphere marching instead.
Meshes vs. Implicits
Slide 65
| Control / meaning | Topology | Details | |
|---|---|---|---|
| Parametric meshes (Alldieck 2018, Bhatnagar 2019/2020, Tiwari 2020) | ✓ | ✗ | ✗ |
| Implicit functions (IF-Nets, NDF) | ✗ | ✓ | ✓ |
Implicit functions are also compatible with learning. But for human and clothing modeling they lack control: you can’t say “raise the left arm”.
Exam Task: Point Cloud to Mesh with a Learned SDF
Scenario: a museum has a point cloud of a statue (200 points) and wants a mesh, using a signed distance field. Explain training and inference time.
flowchart TB
subgraph T["Training (many watertight shapes)"]
direction LR
GT["GT mesh"] --> S1["sample sparse input X<br/>+ query points p with GT SDF(p)"]
S1 --> E1["encoder (e.g. IF-Net:<br/>voxelize + 3D CNN)"] --> F1["features F₁..Fₙ"]
F1 --> D1["decoder: SDF(p)"] --> L1["loss vs. GT SDF(p)<br/>update encoder + decoder"]
end
subgraph I["Inference (museum statue)"]
direction LR
PC["200 points"] --> E2["encoder (once, frozen)"] --> F2["features"]
F2 --> D2["query decoder on a<br/>dense 3D grid"] --> MC["marching cubes<br/>(zero level set)"] --> M["mesh"]
end
| Question | Answer |
|---|---|
| What is learned? | encoder and decoder weights, on a dataset of many shapes |
| Where do the labels come from? | GT SDF values at query points, computed from watertight GT meshes |
| Why local features (IF-Nets) instead of one global code? | only 200 points: a global code loses 3D structure and detail |
| How do we get the mesh? | the surface is the zero level set: evaluate on a grid, run marching cubes |
Why can't we compute an SDF on raw data without labels, and how do we get around it?
Answer sign needs inside and outside. A raw point cloud has no surface and no volume, so there is no label. The SDF only works with watertight ground truth. Workarounds: (1) switch to an unsigned distance (NDF): the distance to the nearest point needs no inside. (2) Estimate normals and run Poisson surface reconstruction (Lecture 5) to get an indicator function, i.e. inside/outside labels. (Slide 13 also mentions IGR, Gropp et al., which learns an SDF directly from raw points; the mechanism is not explained in the lecture.)
The
Self-Test
What makes a good 3D representation, and where do voxels, point clouds and meshes fall short?
Answer
Compatible with neural networks, flexible, high fidelity. Voxels: cubic memory, limited resolution. Point clouds: no connectivity, limited points. Meshes: limited vertices, need a template, self-intersections.
Define occupancy, UDF and SDF. What is the difference between a UDF and an SDF?
Answer
Occupancy: 1 inside, 0 outside. UDF: distance to the surface. SDF: distance with a sign for inside/outside. The UDF drops the sign; it has no sign change at the surface.
Compare discrete and neural parameterizations.
Answer , fixed resolution. Neural: compact, resolution chosen at test time, but slow, not local, no convolutions, hard to edit.
Discrete (voxels, octrees): fast and local, but memory grows as
What is a hybrid representation? Give examples.
Answer
Trainable features in a discrete structure + a small MLP, optimized jointly. Voxel features (IF-Nets, ConvONet), triplanes (EG3D, sum of three planes), octree features (NGLOD), multiresolution hash grid (Instant NGP).
How does the Instant NGP hash encoding work, and why is it memory-efficient?
Answer resolutions, hash the corner coordinates of the voxel around into a table of feature vectors, interpolate, concatenate over levels, feed to a small MLP. The table size is fixed, so resolution is decoupled from memory. Collisions are resolved implicitly by gradients and the multiresolution structure.
At each of
What are the two problems of OccNet / IM-NET / DeepSDF, and how do IF-Nets solve them?
Answer from local features at .
The global code loses 3D structure, and the point coordinates carry no local shape information. IF-Nets compute a multi-scale 3D feature grid and decode
Why do we need NDF, and how do we get a surface from it?
Answer to a dense point cloud, or render with sphere marching.
Occupancy and SDF need watertight surfaces; open surfaces, garments, scenes and functions don’t divide space. NDF predicts the unsigned distance. Surface: project points with
Why are neural fields "nothing smart"?
Answer
They are networks overfit to one scene that store it in their weights. To generalize to new shapes you need an encoder (or a latent code per shape).
Related
- Previous: Lecture 5: Surface Reconstruction · Next: Lecture 6.2: Point Cloud Processing · Course: Overview
- Concepts: Neural Field, Signed Distance Function, Occupancy Field, Voxel Grid, Hash Encoding, Marching Cubes, Implicit and Explicit Representations
- Neural fields are the base of NeRF (Lecture 7). Instant NGP comes back as a fast NeRF variant.