Skip to content

planes.txt near far inverse

Pakkapon Phongthawee edited this page May 28, 2021 · 4 revisions

On this page, we will explain how plane placement works in NeX-MPI. You can understand more clearly how to create the dataset to run with NeX.

Assume that, you want to create nex-mpi of the real 3d object. We will use NeRF's lego by Heinzelnisse as an example.

You have to take multiple pictures of an object. Here show the position of 3 cameras.

Then, NeX-MPI needs to select 1 camera to be a "Reference camera". The set of planes will forward-facing to this camera. NeX-MPI will automatically select the most centered camera. However, you can pick your own reference camera by providing the argument -ref_img

In this case, we will pick the camera that highlight in yellow to be the reference camera.

Near / Far

you have to provide the position of the first plane (near / dmin) and the last plane (far, dmax).

In NeRF, they set variable of Lego near = 2.0, far = 6.0 In the photo shown above, camera is the world coordinate (0.0,4.0,0.0). So, the near=2.0 in camera coordinate be the position (0,2,0) in world coordinate and far will become (0,-2,0) respectively as shown in picture below.

Plane placement

We have 2 strategy to place the plane. So, we need to provide 0 or 1 in planes.txt right after you provide near and far

Normal depth (0)

If you are capturing an object that closes to the camera, such as this Lego. You can need to place the plane around the object. So, the plane is spread equally between the near plane and the far plane.

Inverse depth (1)

To store objects that lie far away in the scene such as the sky, you need the plane to handle the sky. So, you need to have dense planes around the object and planes that place faraway to handle the background.

Clone this wiki locally