labels
voxel.labels.recode(tensor, mapping, reverse=False, default=0, background=False) -> torch.Tensor
¶
Remap the values of a label tensor through an ordered mapping.
In the forward direction, tensor is treated as an index map and each value
i is replaced with mapping[i] (a lookup-table gather); the mapping values
may be of any dtype. In the reverse direction, each value is replaced with its
position within mapping, which requires an integer mapping; values not
present in mapping become default.
A LabelLookup is treated as its ordered integer indices.
Parameters:
-
tensor(Tensor) –An integer label tensor.
-
mapping(Tensor or list or LabelLookup) –The ordered values to map index positions to.
-
reverse(bool, default:False) –Map values back to their index positions.
-
default(int, default:0) –The index assigned to reverse-mapped values that are not present in
mapping. -
background(bool, default:False) –Prepend the background label 0 to
mapping(unless already present) so it occupies the first index position.
Returns:
-
Tensor–The recoded tensor, with the same shape as
tensor.
voxel.labels.onehot(tensor, labels=-1, background=False) -> torch.Tensor
¶
One-hot encode an integer label tensor, placing classes on a leading dimension.
Parameters:
-
tensor(Tensor) –An integer label tensor.
-
labels(int or Tensor or LabelLookup, default:-1) –The classes to encode. If an integer, it is the total number of classes (-1 infers one greater than the largest value). If a tensor or lookup of label values, the tensor is first reverse-recoded so those values map to the channels.
-
background(bool, default:False) –When
labelsis a tensor or lookup, reserve the first channel for the background label 0 (unless already present).
Returns:
-
Tensor–The one-hot encoded tensor with the class dimension inserted first.
voxel.labels.collapse(tensor, labels=None, background=False) -> torch.Tensor
¶
Collapse a one-hot (or probabilistic) tensor into a label tensor.
This is the inverse of onehot: the leading class dimension is reduced with
an argmax, and the resulting channel indices are optionally recoded into label
values.
Parameters:
-
tensor(Tensor) –A tensor with classes on the leading dimension.
-
labels(Tensor or LabelLookup, default:None) –The label values the channels correspond to. If None, the channel indices are returned directly, otherwise they are forward-recoded into label values.
-
background(bool, default:False) –When
labelsis provided, treat the first channel as the background label 0 (unless already present), matchingonehot.
Returns:
-
Tensor–The label tensor with the class dimension removed.