equiadapt.pointcloud.canonicalization package

Submodules

equiadapt.pointcloud.canonicalization.continuous_group module

class equiadapt.pointcloud.canonicalization.continuous_group.ContinuousGroupPointcloudCanonicalization(canonicalization_network: Module, canonicalization_hyperparams: DictConfig)[source]

Bases: ContinuousGroupCanonicalization

This class represents a continuous group point cloud canonicalization.

Parameters:
  • canonicalization_network (torch.nn.Module) – The canonicalization network.

  • canonicalization_hyperparams (DictConfig) – The hyperparameters for canonicalization.

device

The device on which the operations are performed.

get_groupelement()[source]

Maps the input point cloud to the group element.

canonicalize()[source]

Returns the canonicalized point cloud.

canonicalize(x: Tensor, targets: List | None = None, **kwargs: Any) Tensor | Tuple[Tensor, List][source]

This method takes an image as input and returns the canonicalized image.

Parameters:
  • x (torch.Tensor) – The input point cloud.

  • targets (Optional[List]) – The list of targets (optional).

  • **kwargs (Any) – Additional keyword arguments.

Returns:

The canonicalized point cloud.

Return type:

Union[torch.Tensor, Tuple[torch.Tensor, List]]

get_groupelement(x: Tensor) dict[source]

This method takes the input image and maps it to the group element.

Parameters:

x (torch.Tensor) – The input image.

Returns:

The group element.

Return type:

dict

Raises:

NotImplementedError – If the method is not implemented.

class equiadapt.pointcloud.canonicalization.continuous_group.EquivariantPointcloudCanonicalization(canonicalization_network: Module, canonicalization_hyperparams: DictConfig)[source]

Bases: ContinuousGroupPointcloudCanonicalization

This class represents the equivariant point cloud canonicalization module.

It inherits from the ContinuousGroupPointcloudCanonicalization class.

Parameters:
  • canonicalization_network (torch.nn.Module) – The canonicalization network module.

  • canonicalization_hyperparams (DictConfig) – The hyperparameters for the canonicalization.

canonicalization_network

The canonicalization network module.

Type:

torch.nn.Module

canonicalization_hyperparams

The hyperparameters for the canonicalization.

Type:

DictConfig

canonicalization_info_dict

A dictionary to store the canonicalization information.

Type:

dict

get_groupelement(x: Tensor) Dict[str, Tensor][source]

This method takes the input image and maps it to the group element.

Parameters:

x (torch.Tensor) – The input point cloud.

Returns:

A dictionary containing the group element.

Return type:

Dict[str, torch.Tensor]

Module contents

This module contains the pointcloud canonicalization methods.

class equiadapt.pointcloud.canonicalization.ContinuousGroupPointcloudCanonicalization(canonicalization_network: Module, canonicalization_hyperparams: DictConfig)[source]

Bases: ContinuousGroupCanonicalization

This class represents a continuous group point cloud canonicalization.

Parameters:
  • canonicalization_network (torch.nn.Module) – The canonicalization network.

  • canonicalization_hyperparams (DictConfig) – The hyperparameters for canonicalization.

device

The device on which the operations are performed.

get_groupelement()[source]

Maps the input point cloud to the group element.

canonicalize()[source]

Returns the canonicalized point cloud.

canonicalize(x: Tensor, targets: List | None = None, **kwargs: Any) Tensor | Tuple[Tensor, List][source]

This method takes an image as input and returns the canonicalized image.

Parameters:
  • x (torch.Tensor) – The input point cloud.

  • targets (Optional[List]) – The list of targets (optional).

  • **kwargs (Any) – Additional keyword arguments.

Returns:

The canonicalized point cloud.

Return type:

Union[torch.Tensor, Tuple[torch.Tensor, List]]

get_groupelement(x: Tensor) dict[source]

This method takes the input image and maps it to the group element.

Parameters:

x (torch.Tensor) – The input image.

Returns:

The group element.

Return type:

dict

Raises:

NotImplementedError – If the method is not implemented.

class equiadapt.pointcloud.canonicalization.EquivariantPointcloudCanonicalization(canonicalization_network: Module, canonicalization_hyperparams: DictConfig)[source]

Bases: ContinuousGroupPointcloudCanonicalization

This class represents the equivariant point cloud canonicalization module.

It inherits from the ContinuousGroupPointcloudCanonicalization class.

Parameters:
  • canonicalization_network (torch.nn.Module) – The canonicalization network module.

  • canonicalization_hyperparams (DictConfig) – The hyperparameters for the canonicalization.

canonicalization_network

The canonicalization network module.

Type:

torch.nn.Module

canonicalization_hyperparams

The hyperparameters for the canonicalization.

Type:

DictConfig

canonicalization_info_dict

A dictionary to store the canonicalization information.

Type:

dict

get_groupelement(x: Tensor) Dict[str, Tensor][source]

This method takes the input image and maps it to the group element.

Parameters:

x (torch.Tensor) – The input point cloud.

Returns:

A dictionary containing the group element.

Return type:

Dict[str, torch.Tensor]