原始点云:
alpha_shape算法
import open3d as o3d
pcd = o3d.io.read_point_cloud("airplane_0001.pcd")
mesh = o3d.geometry.TriangleMesh.create_from_point_cloud_alpha_shape(pcd, alpha=0.1)
o3d.visualization.draw_geometries([mesh], mesh_show_back_face=True)
ball_pivoting算法
import open3d as o3d
pcd = o3d.io.read_point_cloud("airplane_0001.pcd")
radii = [0.05, 0.1, 0.2, 0.4]
mesh = o3d.geometry.TriangleMesh.create_from_point_cloud_ball_pivoting(pcd, o3d.utility.DoubleVector(radii))
o3d.visualization.draw_geometries([mesh], mesh_show_back_face=True)
poisson算法
import open3d as o3d
pcd = o3d.io.read_point_cloud("airplane_0001.pcd")
mesh, density = o3d.geometry.TriangleMesh.create_from_point_cloud_poisson(pcd, depth=8)
o3d.visualization.draw_geometries([mesh], mesh_show_back_face=True)