barbararoessle/dense_depth_priors_nerf

How should I get the max_depth and dist2m of config.json?

EchoTHChen opened this issue · 3 comments

How should I get the max_depth and dist2m of config.json?

I have the same question. As I understand, the max_depth is the maximum depth in a real scenario and is a number you can roughly guess. dist2m is a scale the COLMAP reconstruction scale-free depth to real scale depth, first dist2m can be given 1 and in preprocessing code

const auto scaling_result = ComputeMeanScaling(target_depth, sparse_depth);
will calculate a scale. But in depth estimation, it is middle depth scale align the depth, so I am also not sure which method is used in this repo.

max_depth: The far plane for rendering is set according to the furthest sensor depth. With max_depth you can set an upper limit. E.g. there may be a far away outlier in the depth map, which otherwise would lead to a very distant far plane and inefficient NeRF sampling.

dist2m: It defines the scaling from the sparse reconstruction to meters which enables the computation of depth metrics. You can initially guess it. Running extract_scannet_scene will print the resulting scaling factor between sparse depth and sensor depth. By multiplying this factor with the initial guess, you obtain a suited dist2m. When you rerun extract_scannet_scene the factor between sparse depth and sensor depth will become 1, or something very close to it, then dist2m is reasonable set.

Thanks