4
0
mirror of https://github.com/nerfstudio-project/nerfstudio.git synced 2026-11-11 02:24:38 +08:00

return unscaled input in positional encoding (#1736)

* return unscaled input in positional encoding

* Update encodings.py
This commit is contained in:
hturki 2023-04-17 16:08:31 -04:00 committed by GitHub
parent 49835b2eab
commit 2f18e323cd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -141,9 +141,9 @@ class NeRFEncoding(Encoding):
Returns:
Output values will be between -1 and 1
"""
in_tensor = 2 * torch.pi * in_tensor # scale to [0, 2pi]
scaled_in_tensor = 2 * torch.pi * in_tensor # scale to [0, 2pi]
freqs = 2 ** torch.linspace(self.min_freq, self.max_freq, self.num_frequencies).to(in_tensor.device)
scaled_inputs = in_tensor[..., None] * freqs # [..., "input_dim", "num_scales"]
scaled_inputs = scaled_in_tensor[..., None] * freqs # [..., "input_dim", "num_scales"]
scaled_inputs = scaled_inputs.view(*scaled_inputs.shape[:-2], -1) # [..., "input_dim" * "num_scales"]
if covs is None:
@ -201,8 +201,8 @@ class RFFEncoding(Encoding):
Returns:
Output values will be between -1 and 1
"""
in_tensor = 2 * torch.pi * in_tensor # scale to [0, 2pi]
scaled_inputs = in_tensor @ self.b_matrix # [..., "num_frequencies"]
scaled_in_tensor = 2 * torch.pi * in_tensor # scale to [0, 2pi]
scaled_inputs = scaled_in_tensor @ self.b_matrix # [..., "num_frequencies"]
if covs is None:
encoded_inputs = torch.sin(torch.cat([scaled_inputs, scaled_inputs + torch.pi / 2.0], dim=-1))