open3d.t.pipelines.registration.compute_fpfh_feature#
- open3d.t.pipelines.registration.compute_fpfh_feature(input: open3d.t.geometry.PointCloud, max_nn: int | None = 100, radius: float | None = None, indices: open3d.core.Tensor | None = None) open3d.core.Tensor #
Function to compute FPFH feature for a point cloud.
It uses KNN search (Not recommended to use on GPU) if only max_nn parameter is provided, Radius search (Not recommended to use on GPU) if only radius parameter is provided, and Hybrid search (Recommended) if both are provided. If indices is provided, the function will compute FPFH features only on the selected points.
- Parameters:
input (open3d.core.Tensor) – The input point cloud with data type float32 or float64.
max_nn (int, optional) – Neighbor search max neighbors parameter. Default is 100.
radius (float, optional) – Neighbor search radius parameter. Recommended value is ~5x voxel size.
indices (open3d.core.Tensor, optional) – Tensor with the indices of the points to compute FPFH features on. Default is None.
- Returns:
The FPFH feature tensor with shape (N, 33).
Example
This example shows how to compute the FPFH features for a point cloud:
import open3d as o3d # read and downsample point clouds paths = o3d.data.DemoICPPointClouds().paths voxel_size = 0.01 pcd = o3d.t.io.read_point_cloud(paths[0]).voxel_down_sample(voxel_size) # compute FPFH features pcd_fpfh = o3d.t.pipelines.registration.compute_fpfh_feature(pcd, radius=5*voxel_size)