估计点云法向量最常用的方式是搜索某点领域的小范围点,利用最小二乘法估计平面,再求一个垂直的向量,就是法向量。
estimate_normals(self, search_param=KDTreeSearchParamKNN with knn = 30, fast_normal_computation=True)
其中,法向量估计方式支持混合搜索 KNN搜索 半径搜索;默认为KNN搜索。
- 测试
import open3d as o3d
import numpy as np
pcd = o3d.io.read_point_cloud("./data/bunny.ply")
pcd.estimate_normals(search_param=o3d.geometry.KDTreeSearchParamHybrid(radius=0.1, max_nn=30))
o3d.visualization.draw_geometries([pcd],point_show_normal=True)
备注:
快捷键:
显示/不显示法线: N
法线长度: +/-