我有来自Neptec的Opal Lidar的点云数据,其格式为.mat。数据采用笛卡尔格式,其中我在一个表中具有结构类型,在一个表中具有点,而在另一结构中具有强度。我将其转换为python中的csv文件,并希望阅读以适合CNN。读取PCD文件的代码如下(从一个github存储库中):
def load_pc_from_pcd(pcd_path):
"""Load PointCloud data from pcd file."""
p = pcl.load(pcd_path)
return np.array(list(p), dtype=np.float32)
但是我没有任何pcd数据类型的样本。我的csv文件如下:
X,Y,Z,Intensity
-8121.6904296875,163.50155639648438,-18.94129180908203,42.0
-8140.76123046875,182.27249145507812,-22.06368637084961,35.0
-8141.88916015625,183.74932861328125,-21.510177612304688,37.0
由于我无权访问任何pcd文件,因此任何使用pcd文件的人都可以告诉我如何以正确的方式读取CSV文件?
谢谢!
答案 0 :(得分:2)
您可以添加pcd文件一样的标头。您可以写:
# .PCD v.7 - Point Cloud Data file format
VERSION .7
FIELDS x y z
SIZE 4 4 4
TYPE F F F
COUNT 1 1 1
WIDTH no_of_points
HEIGHT 1
POINTS no_of_points
DATA ascii
然后删除文件中的逗号并替换为空格。