该函数用于将 Open3D 中 PointCloud 类型的点云写入到 PLY、XYZ、PLY_ASCII、PTS、PCD、VTK 或者自定义的文件格式中。
open3d.io.write_point_cloud(filename, pointcloud, write_ascii=False, compressed=False, print_progress=False)
filename
:要保存的文件名,文件格式应该与文件名的后缀名匹配,支持 PLY、XYZ、PLY_ASCII、PTS、PCD、VTK 或者自定义的文件格式。pointcloud
:要保存的 PointCloud 类型的点云。write_ascii
:可选,表示保存为 ASCII 码格式还是二进制格式,默认为 False(保存为二进制格式)。compressed
:可选,表示保存时是否使用压缩,默认为 False(不使用压缩)。print_progress
:可选,表示是否在终端打印处理进度,默认为 False。该函数没有返回值。
下面的示例展示了如何将点云保存为 PLY 格式的文件:
import numpy as np
import open3d as o3d
# 创建点云
pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(np.random.rand(100, 3))
# 保存点云到文件
o3d.io.write_point_cloud("example.ply", pcd)
这个示例首先使用 NumPy 创建了一个 100 个点的点云,然后使用 Open3D 的 write_point_cloud
函数将其保存到了一个名为 example.ply
的文件中。