Mesh computation takes long time: o3d.geometry.TriangleMesh.create_from_point_cloud_ball_pivoting()

43 Views Asked by At

I try to convert a 3D point cloud to mesh using Open3D. I have ~138000 points in the cloud, and I would like to know how much it might take to convert.

point_cloud = np.loadtxt(points3D.txt, skiprows=3, usecols=[1, 2, 3, 4, 5, 6])

pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(point_cloud[:,:3])
pcd.colors = o3d.utility.Vector3dVector(point_cloud[:,3:6]/255)
pcd.estimate_normals(search_param=o3d.geometry.KDTreeSearchParamHybrid(radius=0.1, max_nn=30))

distance = pcd.compute_nearest_neighbor_distance()
avg_dist = np.mean(distance)
radius = 3 * avg_dist

bpa_mesh = o3d.geometry.TriangleMesh.create_from_point_cloud_ball_pivoting(
    pcd, o3d.utility.DoubleVector([radius, radius * 2]))

How to make this process faster?

0

There are 0 best solutions below