赞
踩
colab.research.google.com/drive/1qoclD7HJ3-o0O1R8cvV3PxLhoDCMsH8W
def surface_splatting(means3D, scales, quats, colors, opacities, intrins, viewmat, projmat):
# Rasterization setup
projmat = torch.zeros(4,4).cuda()
projmat[:3,:3] = intrins
projmat[-1,-2] = 1.0
projmat = projmat.T
# T 是论文中的 M
T, colors, opacities, center, depth, radii = setup(means3D, scales, quats, opacities, colors, viewmat, projmat)
# Rasterization
# 1. Generate pixels
W, H = (intrins[0,-1] * 2).long(), (intrins[1,-1] * 2).long()
W, H = W.item(), H.item()
pix = torch.stack(torch.meshgrid(torch.arange(W),
torch.arange(H), indexing='xy'), dim=-1).to('cuda')
# 2. Compute ray splat intersection # Eq.9 and Eq.10
x = pix.reshape(-1,1,2)[..., :1]
y = pix.reshape(-1,1,2)[..., 1:]
k = -T[None][..., 0] + x * T[None][..., 3] # 这个是 h_u, 因为公式8 h_u = ⊤ · h_x = ⊤ · (−1, 0, 0, 声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/1009677
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。