import open3d as o3d import numpy as np # 加载点云数据 pcd = o3d.io.read_point_cloud("test.ply") # 设置法线估计的搜索参数 search_param = o3d.geometry.KDTreeSearchParamHybrid(radius=0.1, max_nn=30) # 计算点云的法线 pcd.estimate_normals(search_param=search_param) # 可选:确保法线的方向一致性 # pcd.orient_normals_consistent_tangent_plane(30) # 可视化原始点云和计算得到的法线 o3d.visualization.draw_geometries([pcd], point_show_normal=True) # 如果需要,可以将法线数据转换为NumPy数组进行进一步处理 normals_array = np.asarray(pcd.normals) # 打印法线数组的前5行,以检查法线数据 print(normals_array[:5])
运行效果如下:
标签:法线,模型,ply,param,normals,o3d,pcd From: https://www.cnblogs.com/hxqmw/p/18383969