- 一、概述
- 1、读取点云
- 2、显示点云
- 3、保存点云
- 二、代码实现
- 三、结果展示
- 四、相关链接
pclpy是点云库PCL的python实现,pclpy自带的点云读取函数不支持读取中文路径下的点云,pclpy包含laspy,因此pclpy支持处理las格式的点云。
1、读取点云方式1:
cloud = pcl.PointCloud.PointXYZ()
# 读取点云数据
pcl.io.loadPCDFile('bunny.pcd', cloud)
方式2:
# 加载点云
cloud = pcl.PointCloud.PointXYZ()
reader = pcl.io.PCDReader()
reader.read("bunny.pcd", cloud)
2、显示点云
python显示的方式很多,pclpy的显示方式也是多种多样,这里仅展示一种最简单的可视化方式。
viewer = pcl.visualization.CloudViewer("viewer")
viewer.showCloud(cloud, "sample cloud") # 显示点云
while not viewer.wasStopped(10):
pass
3、保存点云
方式1
pcl.io.savePCDFile("11.pcd", cloud) # 默认方式
pcl.io.savePCDFileASCII("11.pcd", cloud) # ASCII
pcl.io.savePCDFileBinary("11.pcd", cloud) # 二进制
pcl.io.savePCDFileBinaryCompressed("11.pcd", cloud) # 压缩
方式2
writer = pcl.io.PCDWriter()
writer.write("rs.pcd", cloud_filtered)
writer函数一共有132种重载方式,感兴趣的可打开PCDWriter.py进行查看。
二、代码实现from pclpy import pcl
# 创建XYZ格式的点云
cloud = pcl.PointCloud.PointXYZ()
# ---------------读取点云数据-----------------
pcl.io.loadPCDFile('bunny.pcd', cloud)
# -----------------显示点云-------------------
pcl.filters.CovarianceSampling
viewer = pcl.visualization.CloudViewer("viewer")
viewer.showCloud(cloud, "sample cloud") # 显示点云
while not viewer.wasStopped(10):
pass
# -----------------保存点云-------------------
# 方式1
pcl.io.savePCDFile("11.pcd", cloud) # 默认方式
pcl.io.savePCDFileASCII("12.pcd", cloud) # ASCII
pcl.io.savePCDFileBinary("13.pcd", cloud) # 二进制
pcl.io.savePCDFileBinaryCompressed("14.pcd", cloud) # 压缩
# 方式2
writer = pcl.io.PCDWriter()
writer.write("15.pcd", cloud)
三、结果展示
四、相关链接
[1] WIN10系统下python快速安装点云库pclpy-0.11.0



