〖3D激光点云〗激光雷达点云bin文件读取和显示!

激光雷达点云bin文件读取和显示!

文章目录

    • 一. 代码
    • 二. 结果
    • 三. 显示
    • 四. 参考

首先声明文章主要参考:Ronny Restrepo!其中包括如下的内容。

  • 点云数据的介绍
  • 图像和点云坐标系
  • 点云鸟瞰图生成
  • 点云360°全视图
  • 基于Mayavi的交互式三维可视化
  • 基于Matplotlib的交互式三维可视化

一. 代码

  • 这里读取的是KITTI数据集中的.bin文件。
import mayavi.mlab
import torch
import numpy as np

mypointcloud=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=z
    else:
        col=d

    fig=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.py
torch.Size([115384, 4])
torch.FloatTensor

三. 显示

〖3D激光点云〗激光雷达点云bin文件读取和显示!_第1张图片
〖3D激光点云〗激光雷达点云bin文件读取和显示!_第2张图片

四. 参考

  • https://blog.csdn.net/Doraemon_Zzn/article/details/104713793!
  • https://blog.csdn.net/Doraemon_Zzn/article/details/106083933!

你可能感兴趣的:(Deep,Learning学习笔记,激光点云,3d目标检测)