python实现点云格式转换:las转csv

Las转csv格式的通用方法是使用python文件中的laspy库,

然而在转换过程中的痛点在于laspy库的1.x版本与2.x版本的部分语法不兼容;

以下是符合laspy 2.x版本的点云处理代码:

import pandas as pd
import numpy as np
import laspy
# 点云文件路径
filepath = r"XXX" #输入las格式文件路径
# 使用laspy读取点云文件
with laspy.open(filepath) as las_file:
    las_data = las_file.read()
# 读取点云数据的x, y, z坐标
x = las_data.x
y = las_data.y
z = las_data.z
# 将x, y, z坐标转换为2D数组
x_M = np.array(x)[:, np.newaxis]
y_M = np.array(y)[:, np.newaxis]
z_M = np.array(z)[:, np.newaxis]
# 将坐标合并为一个数组
concatenate_array = np.concatenate((x_M, y_M, z_M), axis=1)
# 将合并后的数组转换为DataFrame
data_save = pd.DataFrame(concatenate_array, columns=["x", "y", "z"])
# CSV文件路径
output_file = r"xxx" #输入csv格式文件后缀
# 保存到CSV文件,不包含索引
data_save.to_csv(output_file, index=False)
print("Save_OK")
# 注意:不需要手动关闭文件,因为在 'with' 语句中会自动关闭

运行结果如下:

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值