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

BitbyBit Integrates Gaussian Splatting

Lithuanian company Bit by Bit developers has integrated Gaussian Splatting (3DGS), enabling low-code applications.

Michael Rubloff

Jul 5, 2024

Platforms

BitbyBit Integrates Gaussian Splatting

Lithuanian company Bit by Bit developers has integrated Gaussian Splatting (3DGS), enabling low-code applications.

Michael Rubloff

Jul 5, 2024

Platforms

BitbyBit Integrates Gaussian Splatting

Lithuanian company Bit by Bit developers has integrated Gaussian Splatting (3DGS), enabling low-code applications.

Michael Rubloff

Platforms

Nerfstudio Integrates 3DGS MCMC

Nerfstudio now supports 3DGS MCMC, which should increase the fidelity of outputs across the board.

Michael Rubloff

Jul 3, 2024

Platforms

Nerfstudio Integrates 3DGS MCMC

Nerfstudio now supports 3DGS MCMC, which should increase the fidelity of outputs across the board.

Michael Rubloff

Jul 3, 2024

Platforms

Nerfstudio Integrates 3DGS MCMC

Nerfstudio now supports 3DGS MCMC, which should increase the fidelity of outputs across the board.

Michael Rubloff

Research

Diffusion Based 3DGS Relighting

Research topics on relighting continue to increase sharply.

Michael Rubloff

Jul 2, 2024

Research

Diffusion Based 3DGS Relighting

Research topics on relighting continue to increase sharply.

Michael Rubloff

Jul 2, 2024

Research

Diffusion Based 3DGS Relighting

Research topics on relighting continue to increase sharply.

Michael Rubloff

Platforms

Voluma.ai adds Timelapse Mode

Voluma.ai, specializing in the creation and augmentation of 3D graphics, has introduced its latest feature: timelapse mode.

Michael Rubloff

Jul 1, 2024

Platforms

Voluma.ai adds Timelapse Mode

Voluma.ai, specializing in the creation and augmentation of 3D graphics, has introduced its latest feature: timelapse mode.

Michael Rubloff

Jul 1, 2024

Platforms

Voluma.ai adds Timelapse Mode

Voluma.ai, specializing in the creation and augmentation of 3D graphics, has introduced its latest feature: timelapse mode.

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

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

Research

Mip-Splatting: Anti-Aliasing for Gaussian Splatting

If you've been trying out Gaussian Splatting, you may have noticed that the scene tends to degrade quickly, especially when you pull outside of the capture path or change the focal length, compared to NeRF.

Michael Rubloff

Nov 28, 2023

Research

Mip-Splatting: Anti-Aliasing for Gaussian Splatting

If you've been trying out Gaussian Splatting, you may have noticed that the scene tends to degrade quickly, especially when you pull outside of the capture path or change the focal length, compared to NeRF.

Michael Rubloff

Nov 28, 2023

Research

Mip-Splatting: Anti-Aliasing for Gaussian Splatting

If you've been trying out Gaussian Splatting, you may have noticed that the scene tends to degrade quickly, especially when you pull outside of the capture path or change the focal length, compared to NeRF.

Michael Rubloff