文章目录
一. 代码二. 结果三. 显示四. 参考首先声明文章主要参考:Ronny Restrepo!其中包括如下的内容。
点云数据的介绍图像和点云坐标系点云鸟瞰图生成点云360°全视图基于Mayavi的交互式三维可视化基于Matplotlib的交互式三维可视化
一. 代码
这里读取的是KITTI数据集中的.bin文件。
import mayavi.mlabimport torchimport numpy as npmypointcloud=np.fromfile("/media/zhang/data/KITTI/KittiDataset/training/velodyne/000001.bin",dtype=np.float32,count=-1).reshape([-1,4])mypointcloud=torch.from_numpy(mypointcloud)print(mypointcloud.size())print(mypointcloud.type())def viz_mayavi(points,vals="distance"): # 可视化只用到了3维数据(x,y,z)!x=points[:,0]y=points[:,1]z=points[:,2]r=points[:,3]d=torch.sqrt(x**2+y**2)if vals=="height":col=zelse:col=dfig=mayavi.mlab.figure(bgcolor=(0,0,0),size=(1280,720))mayavi.mlab.points3d(x,y,z,col,mode="point",colormap='spectral',figure=fig,)mayavi.mlab.show()if __name__=="__main__":viz_mayavi(mypointcloud,vals="height")
二. 结果
/home/zhang/anaconda3/envs/second/bin/python /home/zhang/PycharmProjects/my_test/one.pytorch.Size([115384, 4])torch.FloatTensor