Zerg-Overmind / Strivec

Official code for the paper: Strivec (ICCV2023)
142 stars 3 forks source link

Different implement of Volume rendering compared to original nerf #6

Closed ZhenhuiL1n closed 9 months ago

ZhenhuiL1n commented 9 months ago

Hi,

the raw2alpha implementation is different from the original nerf as shown below in the Cuda implementation.

image

Could you please explain why it is implemented like this, thanks a lot!

Zerg-Overmind commented 9 months ago

Hi, sorry for my late reply. This is because we use softplus, which is also adopted in TensoRF. Again, we just want to do a fair comparison with TensoRF so we keep it the same.

alpha = 1 - exp(-softplus(density + shift) interval) = 1 - exp(-log(1 + exp(density + shift)) interval) = 1 - exp(log(1 + exp(density + shift)) ^ (-interval)) = 1 - (1 + exp(density + shift)) ^ (-interval)

Best