4
0
mirror of https://github.com/nerfstudio-project/nerfstudio.git synced 2026-11-11 18:44:21 +08:00
This commit is contained in:
Afloat 2026-11-06 19:14:34 +00:00 committed by GitHub
commit 2d98d0381f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 15 additions and 1 deletions

View File

@ -105,7 +105,7 @@ def apply_float_colormap(image: Float[Tensor, "*bs 1"], colormap: Colormaps = "v
image = torch.nan_to_num(image, 0)
if colormap == "gray":
return image.repeat(1, 1, 3)
return image.repeat_interleave(3, dim=-1)
image_long = (image * 255).long()
image_long_min = torch.min(image_long)
image_long_max = torch.max(image_long)

View File

@ -0,0 +1,14 @@
import pytest
import torch
from nerfstudio.utils.colormaps import ColormapOptions, apply_colormap
@pytest.mark.parametrize("shape", [(5, 1), (2, 4, 1), (2, 3, 4, 1)])
def test_grayscale_preserves_batch_dimensions(shape):
values = torch.linspace(0, 1, torch.Size(shape).numel()).reshape(shape)
rgb = apply_colormap(values, ColormapOptions(colormap="gray"))
assert rgb.shape == (*shape[:-1], 3)
for channel in range(3):
torch.testing.assert_close(rgb[..., channel], values[..., 0])