首先参考点云单帧可视化:
使用numpy进行读取数据与使用python_pcl进行可视化
这一章节
使用python-pcl实现多帧
import numpy as np
import pcl.pcl_visualization
import time
# 创建管理可视化的类
visual = pcl.pcl_visualization.CloudViewing()
# 点云bin文件所在的目录
bin_path= "path_to_dir_which_includes_bin_files"
flag = True
while flag:
for root, dirs, files in os.walk(bin_path):
for file in fiels:
# lidar_path 指定一个kitti 数据的点云bin文件就行了
points = np.fromfile(root+file, dtype=np.float32).reshape(-1, 4) # .astype(np.float16)
# 这里对第四列进行赋值,它代表颜色值,根据你自己的需要赋值即可;
points[:, 3] = 3329330
# PointCloud_PointXYZRGB 需要点云数据是N*4,分别表示x,y,z,RGB ,其中RGB 用一个整数表示颜色;
color_cloud = pcl.PointCloud_PointXYZRGB(points)
visual.ShowColorCloud(color_cloud, b'cloud')
time.sleep(0.03)
flag != visual.WasStopped()