Guide|News

What is an AABB?

Michael Rubloff

Michael Rubloff

Apr 10, 2023

Email
Copy Link
Twitter
Linkedin
Reddit
Whatsapp
AABB in NeRFs
AABB in NeRFs

When you're playing a video game or watching a movie with 3D graphics, you're seeing objects that are made up of points in a 3D space. To make the graphics look more realistic, the computer needs to know which points are inside the object and which are outside. One way to do this is by using an AABB, which stands for "axis-aligned bounding box."

What is an AABB?

An Axis-Aligned Bounding Box is a rectangular box that fully encloses a 3D object or scene, with its edges aligned with the coordinate axes. It's called "axis-aligned" because the sides of the box are parallel to the three axes of the 3D space: x, y, and z. So, imagine a rectangular box that's aligned with the x, y, and z axes. It serves as an approximation of the object's geometry, simplifying the process of ray-object intersection tests, which are fundamental to rendering. AABB is widely used in computer graphics for various applications, such as collision detection, ray tracing, and visibility culling. In the context of Neural Radiance Fields, AABB helps accelerate the rendering process by efficiently partitioning the 3D space and reducing the number of network queries.

What values can AABB be?

AABB can be 1, 2, 4, 8, 16, 32, 64, or 128. Each time you multiply, you add one more occupancy grid. The first one covers an area of two by two by two. The next 4 by 4 by 4. Next is 8 by 8. Each one contains data, information, and memory, the more occupancy grids you have, and the more VRAM it consumes, and results in a larger file size when saved.

How are AABB's calculated?

The AABB is defined by two points: the point with the lowest x, y, and z coordinates (let's call it Point A), and the point with the highest x, y, and z coordinates (let's call it Point B). These two points determine the size and position of the AABB. You can think of the AABB as a container that holds the object. AABB is a the height, width, and depth of a NeRF subject.

AABBs are useful in 3D graphics for a few reasons. First, they are easy to calculate. You just need to find the minimum and maximum points of the object. This makes them great for real-time applications, like video games, where you need to quickly figure out what objects are visible on the screen.

While NeRF has shown impressive results, rendering a 3D scene using this technique can be computationally expensive, particularly when dealing with large and complex scenes. This is where Axis-Aligned Bounding Boxes come into play. AABB is a simple yet powerful method for optimizing the rendering process, enabling NeRF to handle more complex scenes efficiently.

NeRF uses a neural network to create 3D objects. The neural network is trained on a set of images that show the object from different angles, and it learns to create a 3D model of the object based on those images. However, in order to do this, the neural network needs to know what the object looks like from different angles, which means it needs to know the shape of the object.

When a NeRF renders a scene, it first generates a set of viewing rays that pass through each pixel of the image. The algorithm then samples points along these rays and queries the neural network to compute the radiance and volume density at each point. To optimize this process, AABB is employed to divide the 3D space into smaller regions, or voxels. Each voxel is associated with a bounding box, which helps identify the regions where the viewing rays intersect the scene. By focusing only on the voxels where intersection occurs, the number of network queries is significantly reduced, resulting in a more efficient rendering process.

AABBs are particularly useful in NeRF because they can help speed up the process of training the neural network. Sampling all the points in a large object can take a long time, but by using AABBs to divide the object into smaller regions, NeRF can sample points more efficiently. This speeds up the training process and makes it possible to create 3D models of complex objects more quickly.

Depending on your use case, using a different AABB value be beneficial. For instance, if you are trying to show a small product, utilizing a lower AABB, will not only allow the NeRF to train faster, but will focus on the specific object itself. However, if you are NeRFing a landscape, setting the AABB higher will show the larger area. In some ways, you can relate AABB to aperture in photography.

Apart from accelerating the rendering process, AABB also contributes to improving the quality of the images generated by NeRF. By subdividing the 3D space into smaller regions, the algorithm can adaptively sample points along the viewing rays with higher precision, especially in areas with intricate geometry and varying volume density. In addition to speeding up the training process, this adaptive sampling allows NeRF to produce images with greater detail and fewer artifacts.

You might recognize this box if you've used Luma AI's Guided mode, where it asks the user to manually set the AABB. It also appears in Instant-NGP's code to compile, where the user sets the AABB.

What if I don't have enough VRAM to use a large AABB?

If you're having VRAM issues, use a smaller AABB value.

AABBs are just one of the many tools that NeRF uses to create 3D models of objects. By combining the power of neural networks with the efficiency of AABB, NeRF is revolutionizing the world of 3D graphics. With NeRF, it's possible to create realistic 3D models of complex objects quickly and easily, making it easier than ever to bring your ideas to life in the digital world.

What does AABB stand for?

AABB stands for axis-aligned bounding box.

Featured

Featured

Featured

Research

Frustum Volume Caching

A criticism of NeRFs is their rendering rates. Quietly a couple of papers have been published over the last two months which push NeRFs into real time rates.

Michael Rubloff

Jul 26, 2024

Research

Frustum Volume Caching

A criticism of NeRFs is their rendering rates. Quietly a couple of papers have been published over the last two months which push NeRFs into real time rates.

Michael Rubloff

Jul 26, 2024

Research

Frustum Volume Caching

A criticism of NeRFs is their rendering rates. Quietly a couple of papers have been published over the last two months which push NeRFs into real time rates.

Michael Rubloff

Research

N-Dimensional Gaussians for Fitting of High Dimensional Functions

It significantly improves the fidelity of reflections and other view-dependent effects, making scenes look more realistic.

Michael Rubloff

Jul 24, 2024

Research

N-Dimensional Gaussians for Fitting of High Dimensional Functions

It significantly improves the fidelity of reflections and other view-dependent effects, making scenes look more realistic.

Michael Rubloff

Jul 24, 2024

Research

N-Dimensional Gaussians for Fitting of High Dimensional Functions

It significantly improves the fidelity of reflections and other view-dependent effects, making scenes look more realistic.

Michael Rubloff

Platforms

Luma AI launches Loops for Dream Machine

Luma AI is starting the week off hot, with the release of Loops.

Michael Rubloff

Jul 22, 2024

Platforms

Luma AI launches Loops for Dream Machine

Luma AI is starting the week off hot, with the release of Loops.

Michael Rubloff

Jul 22, 2024

Platforms

Luma AI launches Loops for Dream Machine

Luma AI is starting the week off hot, with the release of Loops.

Michael Rubloff

Platforms

SuperSplat adds Histogram Editing

PlayCanvas is back with a new update to SuperSplat. It's the release of v0.22.2 and then the quick update to v0.24.0.

Michael Rubloff

Jul 18, 2024

Platforms

SuperSplat adds Histogram Editing

PlayCanvas is back with a new update to SuperSplat. It's the release of v0.22.2 and then the quick update to v0.24.0.

Michael Rubloff

Jul 18, 2024

Platforms

SuperSplat adds Histogram Editing

PlayCanvas is back with a new update to SuperSplat. It's the release of v0.22.2 and then the quick update to v0.24.0.

Michael Rubloff

Trending articles

Trending articles

Trending articles

Platforms

Nerfstudio Releases gsplat 1.0

Just in time for your weekend, Ruilong Li and the team at Nerfstudio are bringing a big gift.

Michael Rubloff

Jun 7, 2024

Platforms

Nerfstudio Releases gsplat 1.0

Just in time for your weekend, Ruilong Li and the team at Nerfstudio are bringing a big gift.

Michael Rubloff

Jun 7, 2024

Platforms

Nerfstudio Releases gsplat 1.0

Just in time for your weekend, Ruilong Li and the team at Nerfstudio are bringing a big gift.

Michael Rubloff

News

SIGGRAPH 2024 Program Announced

The upcoming SIGGRAPH conference catalog has been released and the conference will be filled of radiance fields!

Michael Rubloff

May 14, 2024

News

SIGGRAPH 2024 Program Announced

The upcoming SIGGRAPH conference catalog has been released and the conference will be filled of radiance fields!

Michael Rubloff

May 14, 2024

News

SIGGRAPH 2024 Program Announced

The upcoming SIGGRAPH conference catalog has been released and the conference will be filled of radiance fields!

Michael Rubloff

Platforms

Google CloudNeRF: Zip-NeRF and CamP in the Cloud

It doesn't seem like a lot of people know this, but you can run CamP and Zip-NeRF in the cloud, straight through Google and it's actually super easy. It’s called CloudNeRF.

Michael Rubloff

May 8, 2024

Platforms

Google CloudNeRF: Zip-NeRF and CamP in the Cloud

It doesn't seem like a lot of people know this, but you can run CamP and Zip-NeRF in the cloud, straight through Google and it's actually super easy. It’s called CloudNeRF.

Michael Rubloff

May 8, 2024

Platforms

Google CloudNeRF: Zip-NeRF and CamP in the Cloud

It doesn't seem like a lot of people know this, but you can run CamP and Zip-NeRF in the cloud, straight through Google and it's actually super easy. It’s called CloudNeRF.

Michael Rubloff

Tools

splaTV: Dynamic Gaussian Splatting Viewer

Kevin Kwok, perhaps better known as Antimatter15, has released something amazing: splaTV.

Michael Rubloff

Mar 15, 2024

Tools

splaTV: Dynamic Gaussian Splatting Viewer

Kevin Kwok, perhaps better known as Antimatter15, has released something amazing: splaTV.

Michael Rubloff

Mar 15, 2024

Tools

splaTV: Dynamic Gaussian Splatting Viewer

Kevin Kwok, perhaps better known as Antimatter15, has released something amazing: splaTV.

Michael Rubloff