3D Representations

Revision as of 19:16, 10 February 2021 by David (talk | contribs)
\( \newcommand{\P}[]{\unicode{xB6}} \newcommand{\AA}[]{\unicode{x212B}} \newcommand{\empty}[]{\emptyset} \newcommand{\O}[]{\emptyset} \newcommand{\Alpha}[]{Α} \newcommand{\Beta}[]{Β} \newcommand{\Epsilon}[]{Ε} \newcommand{\Iota}[]{Ι} \newcommand{\Kappa}[]{Κ} \newcommand{\Rho}[]{Ρ} \newcommand{\Tau}[]{Τ} \newcommand{\Zeta}[]{Ζ} \newcommand{\Mu}[]{\unicode{x039C}} \newcommand{\Chi}[]{Χ} \newcommand{\Eta}[]{\unicode{x0397}} \newcommand{\Nu}[]{\unicode{x039D}} \newcommand{\Omicron}[]{\unicode{x039F}} \DeclareMathOperator{\sgn}{sgn} \def\oiint{\mathop{\vcenter{\mathchoice{\huge\unicode{x222F}\,}{\unicode{x222F}}{\unicode{x222F}}{\unicode{x222F}}}\,}\nolimits} \def\oiiint{\mathop{\vcenter{\mathchoice{\huge\unicode{x2230}\,}{\unicode{x2230}}{\unicode{x2230}}{\unicode{x2230}}}\,}\nolimits} \)

Ways to represent 3D objects and scenes.

Representations

Collection of images

Just a set of 2D images. Videos may also fall under this category.
Images may or may not have depth and may or may not be posed.

Light Field

This is similar to a collection of images.
However, instead of thinking of it as a set of images, each pixel represents the color along a ray in 3D space.

Volume

A volume is a dense 3D dataset \(\displaystyle F: \mathbb{R}^2 \to \mathbb{R}\) where the value at each position \(\displaystyle (x,y,z)\) corresponds to a density.
Volume rendering is used project a 3D volume into a 2D image by sampling the volume along a ray for each pixel in the 2D image.

Signed Distance Field

A signed distance field is a dense 3D dataset \(\displaystyle F: \mathbb{R}^2 \to \mathbb{R}\) where each position represents a distance to the nearest surface.
Positive values represent a point on the exterior of an object whereas negative values represent a point on the interior.
Ray marching is used to render signed distance fields into 2D images.

Point-clouds

A list of points in 3D (\(\displaystyle N \times 3\)). Points may also have color or other values.
Typically points are not semantically labeled so points are entirely unrelated to each other.

Mesh

A list of vertices (\(\displaystyle N \times 3\)) and triangles (\(\displaystyle N \times 3\)).
The current standard representation used in real-time 3D applications.

Conversions

Volume rendering

Volume rendering converts volumes to 2D images.

Ray marching

Ray marching converts signed distance fields to 2D images.

Marching cubes

Marching cubes converts volumes to meshes.

See Also