open3d.core.nns.NearestNeighborSearch#

class open3d.core.nns.NearestNeighborSearch#

NearestNeighborSearch class for nearest neighbor search. Construct a NearestNeighborSearch object with input dataset_points of shape {n_dataset, d}.

__init__(self: open3d.cpu.pybind.core.nns.NearestNeighborSearch, dataset_points: open3d.cpu.pybind.core.Tensor, index_dtype: open3d.cpu.pybind.core.Dtype = Int64) None#
fixed_radius_index(self: open3d.cpu.pybind.core.nns.NearestNeighborSearch, radius: float | None = None) bool#
Parameters:
  • query_points (open3d.core.Tensor) – The query tensor of shape {n_query, d}.

  • radius (float) – Radius value for radius search.

  • sort (Optional[bool], optional, default=None) –

Returns:

Tuple[open3d.core.Tensor, open3d.core.Tensor, open3d.core.Tensor]

hybrid_index(self: open3d.cpu.pybind.core.nns.NearestNeighborSearch, radius: float | None = None) bool#

Perform hybrid search.

Parameters:
  • query_points (open3d.core.Tensor) – The query tensor of shape {n_query, d}.

  • radius (float) – Radius value for radius search.

  • max_knn (int) – Maximum number of neighbors to search per query point.

Returns:

Tuple[open3d.core.Tensor, open3d.core.Tensor, open3d.core.Tensor]

knn_index(self: open3d.cpu.pybind.core.nns.NearestNeighborSearch) bool#

Set index for knn search.

Perform knn search.

Parameters:
  • query_points (open3d.core.Tensor) – The query tensor of shape {n_query, d}.

  • knn (int) – Number of neighbors to search per query point.

Returns:

Tuple[open3d.core.Tensor, open3d.core.Tensor]

multi_radius_index(self: open3d.cpu.pybind.core.nns.NearestNeighborSearch) bool#

Set index for multi-radius search.

Perform multi-radius search. Each query point has an independent radius.

Parameters:
  • query_points (open3d.core.Tensor) – The query tensor of shape {n_query, d}.

  • radii (open3d.core.Tensor) – Tensor of shape {n_query,} containing multiple radii, one for each query point.

Returns:

Tuple[open3d.core.Tensor, open3d.core.Tensor, open3d.core.Tensor]