Closed limacv closed 1 year ago
After training, I find that some voxels have negative density or zero density. I was wondering how the densities are defined if it's negative. Specifically, I find the negative density when I train using the default setting on the lego dataset.
I notice that negative density too. In my opinion, maybe during rendering/optimization, sigma (density) below opt.sigma_thresh (opt.density_thresh) is ignored. The density itself is optimized without any constraints, so negative density doesn't mean anything because it's rectified.
@wtiandong Note that you refer to a density value after it was linearly interpolated from its surrounding voxel values. The negative density of a voxel still contributes (it just might be the case that its neighbours have high positive densities).
What I found more interesting is that if you manually clamp negative density values to 0 during training after each iteration — the training diverges! So, the model really needs negative densities to balance things out.
邮件已送达 马力的邮箱
@wtiandong Note that you refer to a density value after it was linearly interpolated from its surrounding voxel values. The negative density of a voxel still contributes (it just might be the case that its neighbours have high positive densities).
What I found more interesting is that if you manually clamp negative density values to 0 during training after each iteration — the training diverges! So, the model really needs negative densities to balance things out.
That's interesting! Thank you for telling me!
Hi, when rendering the density goes through a ReLU so it will always be positive. The negative voxel values allow it to have more general boundary shapes during interpolation.
After training, I find that some voxels have negative density or zero density. I was wondering how the densities are defined if it's negative. Specifically, I find the negative density when I train using the default setting on the lego dataset.