【LiDar16】Open3D將CSV點雲數據可視化並保存

一、從pcap文件到CSV文件

最近使用深圳速騰的LiDar16線雷達,拿到的數據是pcap格式的文件,第一步比較簡單,用雷達自帶的軟件把pcap文件導出成csv文件即可。

二、python讀取csv文件

考慮到Open3d的API
在這裏插入圖片描述
所以用Numpy讀取csv文件比較合適
所以

import numpy as np
import open3d as o3d
np.set_printoptions(suppress=True) # 取消默認的科學計數法
Data1 = np.loadtxt('E:/003.csv',dtype=np.float,skiprows=1,
                   delimiter=',',usecols=(0,1,2),unpack=False)

skiprows是指跳過的行數,我這裏設爲1,因爲我的數據第一行是表頭
delimiter=','表示數據的分隔符是逗號
usecols=(0,1,2)表示使用第0、1、2列數據,這裏結合表的具體內容,我的表數據的三維座標是第0、1、2列數據,所以……
unpack=False表示不把每一列當成一個向量輸出,也就是一行數據就是一個向量,如果等於True就是一列數據是一個向量。我的數據是三維座標,一行爲一個向量。
在這裏插入圖片描述
最後輸出的效果爲
在這裏插入圖片描述

三、Numpy轉Open3D

open3d官網有例程
仿照例程有

pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(Data1)
print(np.asarray(pcd.points))
o3d.visualization.draw_geometries([pcd])

然後就是你的模型~
在這裏插入圖片描述

四、保存成3d模型

最後保存成open3d、pcl等點雲庫可直接讀取的格式,比如ply、pcd什麼的
o3d.io.write_point_cloud_cloud('E:/003.ply',pcd)

收官~

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