〖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

三. 顯示

四. 參考

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章