Closed Linkersem closed 2 months ago
Sure.
The interpolation is, in the one path, done via Python so that we can have autodiff take care of correct gradients. In that case, no interpolation weights are sent to the rasterizer, and it does not do any interpolation itself (except on the blending weights). In the real-time viewer, we don't need gradients, but we still need correct interpolation, so the rasterizer gets the actual interpolation weights and performs interpolation itself.
Hth! Bernhard
Hi, @Snosixtyboo,thank you for your excellent work and previous responses ! I'm reading the code of sibr_viewer, and I noticed that in the function(file:HierarchyView.cpp)
onRenderIBR(sibr::IRenderTarget& dst, const sibr::Camera& eye)
, after callingSwitching::getTsIndexed()
,CudaRasterizer::Rasterizer::forward()
is called directly, but in render_hierarchy.py, after callingget_interpolation_weights()
, the new Gaussian and its properties are first interpolated and calculated. I'm confused about the difference between the two. Could you please explain it? Looking forward to your reply.