AppsGuidesAI DictionarySmall FixesOn RecordAboutFollow the lab

NeRF

Also called neural radiance field, neural radiance fields

A NeRF is a small neural network that learns a 3D scene from a few dozen photos, so you can view it from angles nobody photographed.

In plain words

Walk around a statue taking photos from many sides. A NeRF (neural radiance field) studies those photos and builds a 3D version of the scene. You can then move a virtual camera anywhere and see a new view, even from a spot where you never stood.

It does not store the scene as a model made of triangles, like a video game does. It stores it inside a neural network that answers one question: at this point in space, looking from this direction, how solid is it and what colour?

To draw a picture, the computer asks that question at many points along the line of sight of every pixel and blends the answers. Training adjusts the network until the pictures it draws match the real photos. Shine and reflections can look natural, because colour may depend on where you look from.

Everyday example

Rebuilding a room from wedding photos

Imagine a hall where guests took photos from every corner. A friend who studied them all could sketch the stage from the balcony, though nobody stood there. A NeRF works similarly: it learns one consistent 3D scene that explains every photo, then draws views in between.

Where the example breaks: Your friend understands what a stage is and can imagine its hidden back. A NeRF knows nothing about objects. It only fits the light it saw, so parts no photo showed come out blurry or as floating smudges.

Go deeper

How it actually works

NeRF was introduced in 2020. Its key idea: represent a scene as a continuous function learned by a network, and draw it with classic volume rendering.

  1. Collect photos with known camera positions

    The input is a set of photos of one still scene plus each camera's position and angle, usually worked out by software that matches features across the photos. The original paper used 20 to 62 photos for real scenes.

  2. Ask the network about any point

    The network takes five numbers: a 3D position (x, y, z) and a viewing direction. It returns density (how much stuff is there) and colour as seen from that direction. The original's core was a plain stack of 8 fully connected layers.

  3. March along each pixel's ray

    For each pixel, imagine a ray from the camera through it. Sample points along the ray, ask the network about each, and blend their colours, weighted by density and by how much light gets past the points in front. That is the pixel's colour.

  4. Train by comparing with the real photos

    Draw the pixels for one of the input photos and measure how far off they are. Because every step is differentiable, backpropagation can nudge the network's weights to reduce the error. Repeat over all the photos, many thousands of times.

  5. Make it faster

    The first NeRFs took one to two days to train per scene and about 30 seconds to draw a frame. NVIDIA's Instant NGP (2022) brought training down to a matter of seconds. In 2023, Gaussian splatting offered real-time viewing by dropping the network altogether.

First described
March 2020, "NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis"
Who
Ben Mildenhall, Pratul Srinivasan, Matthew Tancik, Jonathan Barron, Ravi Ramamoorthi and Ren Ng, at UC Berkeley, Google Research and UC San Diego
Recognition
Best paper honourable mention at ECCV 2020
Size
About 5 MB of network weights per scene, versus over 15 GB for an earlier voxel method on the same task

A NeRF reconstructs one real scene. It does not invent new ones, though many 3D generation systems build on the same idea.

Questions people ask

What does NeRF stand for?

Neural radiance field. Neural, because a neural network stores the scene. Radiance, because it describes the light leaving each point. Field, because it gives a value for every point in space.

Is NeRF the same as photogrammetry?

Both turn photos into 3D. Classic photogrammetry usually builds a surface mesh with a painted texture, the format games and 3D tools use. NeRF stores the scene as a learned function with colour that changes by viewing angle, so shine and reflections come out more naturally, but the result is harder to edit.

NeRF vs Gaussian splatting: which is better?

They solve the same problem. Gaussian splatting draws in real time and trains faster than the original NeRF, but its files are larger. NeRF-style models are far more compact. Which is better depends on whether you need speed or small files.

Can a NeRF capture moving things?

The original assumes the scene stays perfectly still across all photos. Moving people or leaves blur into ghosts. Later research, such as D-NeRF (2020), added time as an input so scenes can move, but it is harder.

Was this clear?

1 is confusing, 5 is crystal clear. One tap, no account needed.

Spotted something wrong, or know a better example? Suggest a change

Further reading