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

Platforms

OpenNeRF added to Nerfstudio

OpenNeRF is the latest method to be supported by Nerfstudio.

Michael Rubloff

May 24, 2024

Platforms

OpenNeRF added to Nerfstudio

OpenNeRF is the latest method to be supported by Nerfstudio.

Michael Rubloff

May 24, 2024

Platforms

OpenNeRF added to Nerfstudio

OpenNeRF is the latest method to be supported by Nerfstudio.

Michael Rubloff

Platforms

PlayCanvas's SuperSplat Updated with PWA support

PlayCanvas's Supersplat has continued to receive additional updates. This time it's coming with a big boost to performance, yet again.

Michael Rubloff

May 24, 2024

Platforms

PlayCanvas's SuperSplat Updated with PWA support

PlayCanvas's Supersplat has continued to receive additional updates. This time it's coming with a big boost to performance, yet again.

Michael Rubloff

May 24, 2024

Platforms

PlayCanvas's SuperSplat Updated with PWA support

PlayCanvas's Supersplat has continued to receive additional updates. This time it's coming with a big boost to performance, yet again.

Michael Rubloff

Research

Reflecting on NeRF-Casting

Late last year we looked at Uni-SDF which introduced dual radiance fields to better represent reflections in a scene. However, I just happened to see NeRF-Casting on Github a little while ago

Michael Rubloff

May 23, 2024

Research

Reflecting on NeRF-Casting

Late last year we looked at Uni-SDF which introduced dual radiance fields to better represent reflections in a scene. However, I just happened to see NeRF-Casting on Github a little while ago

Michael Rubloff

May 23, 2024

Research

Reflecting on NeRF-Casting

Late last year we looked at Uni-SDF which introduced dual radiance fields to better represent reflections in a scene. However, I just happened to see NeRF-Casting on Github a little while ago

Michael Rubloff

Platforms

Scaniverse arrives on Android

Gaussian Splatting platform, Scaniverse, is now available on Android.

Michael Rubloff

May 21, 2024

Platforms

Scaniverse arrives on Android

Gaussian Splatting platform, Scaniverse, is now available on Android.

Michael Rubloff

May 21, 2024

Platforms

Scaniverse arrives on Android

Gaussian Splatting platform, Scaniverse, is now available on Android.

Michael Rubloff

Trending articles

Trending articles

Trending articles

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

Research

Gaustudio

Gaussian Splatting methods have continued to pour in over the first three months of the year. With the rate of adoption, being able to merge and compare these methods, shortly after their release would be amazing.

Michael Rubloff

Apr 8, 2024

Research

Gaustudio

Gaussian Splatting methods have continued to pour in over the first three months of the year. With the rate of adoption, being able to merge and compare these methods, shortly after their release would be amazing.

Michael Rubloff

Apr 8, 2024

Research

Gaustudio

Gaussian Splatting methods have continued to pour in over the first three months of the year. With the rate of adoption, being able to merge and compare these methods, shortly after their release would be amazing.

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

Research

The MERF that turned into a SMERF

For the long time readers of this site, earlier this year, we looked into Google Research's Memory Efficient Radiance Fields (MERF). Now, they're back with another groundbreaking method: Streamable Memory Efficient Radiance Fields, or SMERF.

Michael Rubloff

Dec 13, 2023

Research

The MERF that turned into a SMERF

For the long time readers of this site, earlier this year, we looked into Google Research's Memory Efficient Radiance Fields (MERF). Now, they're back with another groundbreaking method: Streamable Memory Efficient Radiance Fields, or SMERF.

Michael Rubloff

Dec 13, 2023

Research

The MERF that turned into a SMERF

For the long time readers of this site, earlier this year, we looked into Google Research's Memory Efficient Radiance Fields (MERF). Now, they're back with another groundbreaking method: Streamable Memory Efficient Radiance Fields, or SMERF.

Michael Rubloff

Featured

Featured

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

Michael Rubloff

May 8, 2024

Research

Gaustudio

Gaussian Splatting methods have continued to pour in over the first three months of the year. With the rate of adoption, being able to merge and compare these methods, shortly after their release would be amazing.

Michael Rubloff

Apr 8, 2024

Gaustudio

Research

Gaustudio

Gaussian Splatting methods have continued to pour in over the first three months of the year. With the rate of adoption, being able to merge and compare these methods, shortly after their release would be amazing.

Michael Rubloff

Apr 8, 2024

Gaustudio

Research

Gaustudio

Michael Rubloff

Apr 8, 2024

Gaustudio

Tools

splaTV: Dynamic Gaussian Splatting Viewer

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

Michael Rubloff

Mar 15, 2024

SplaTV

Tools

splaTV: Dynamic Gaussian Splatting Viewer

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

Michael Rubloff

Mar 15, 2024

SplaTV

Tools

splaTV: Dynamic Gaussian Splatting Viewer

Michael Rubloff

Mar 15, 2024

SplaTV