open3d读取pcd格式点云
def read_display_pcd_pc(path):pcd=open3d.io.read_point_cloud(path)# 设置点云颜色 只能是0 1 如[1,0,0]代表红色为既rpcd.paint_uniform_color([0, 1, 0])#创建窗口对象vis=open3d.visualization.Visualizer()# 创建窗口,设置窗口标题vis.create_window(window_name="point_cloud")# 设置点云渲染参数opt=vis.get_render_option()# 设置背景色(这里为白色)opt.background_color=np.array([255, 255, 255])# 设置渲染点的大小opt.point_size=1.0# 添加点云vis.add_geometry(pcd)vis.run()
效果图
用open3d读取bin文件
def read_display_bin_pc(path):points=np.fromfile(path,dtype=np.float32).reshape(-1,4)points=points[:,:3]#open3d 只需xyz 与pcl不同#将array格式的点云转换为open3d的点云格式,若直接用open3d打开的点云数据,则不用转换pcd=open3d.geometry.PointCloud() # 传入3d点云格式pcd.points=open3d.utility.Vector3dVector(points)#转换格式# 设置颜色 只能是0 1 如[1,0,0]代表红色为既rpcd.paint_uniform_color([1,0,0])#创建窗口对象vis=open3d.visualization.Visualizer()# 创建窗口,设置窗口名称vis.create_window(window_name="point_cloud")# 设置点云渲染参数opt=vis.get_render_option()# 设置背景色(这里为白色)opt.background_color=np.array([255, 255, 255])# 设置渲染点的大小opt.point_size=1.0# 添加点云vis.add_geometry(pcd)vis.run()
效果图