在三维点云处理过程中经常会自己造点点云数据进行展示,但是一般情况下都是用numpy array甚至是list把数据先存起来,但是open3d里面的
visualization.draw_geometries([pcd])里面pcd是pointcloud的格式,所以需要把numpy array转换为point cloud
官方给出了解决方法
numpy转point cloud
pcd = o3d.geometry.PointCloud() pcd.points = o3d.utility.Vector3dVector(xyz)
point cloud转numpy array
pcd_load = o3d.io.read_point_cloud("../../TestData/sync.ply") xyz_load = np.asarray(pcd_load.points)