使用open3d计算ply模型的法线及显示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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])

 

运行效果如下:

 

posted @   hxqmw  阅读(397)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示