1、建立一个K-d Tree索引
import open3d as o3d
import numpy as np
pcd = o3d.io.read_point_cloud("data//bunny.pcd")
# 把所有点渲染为黑色(黑色兔子)
pcd.paint_uniform_color([0, 0, 0])
# 建立KD树索引
pcd_tree = o3d.geometry.KDTreeFlann(pcd)
2、半径搜索
# 半径搜索
[k1, idx1, _] = pcd_tree.search_radius_vector_3d(pcd.points[100], 0.02)
# 半径搜索结果并渲染为蓝色
np.asarray(pcd.colors)[idx1[1:], :] = [0, 0, 1]
print("查询点:", pcd.colors[100])
print("K近邻距离:", idx1)
o3d.visualization.draw_geometries([pcd])
3、可视化结果
4、代码解析