跳转到主要内容

点云写入器到las文件。

项目描述

注意

这个库最初是在Jakarto创建的,因为我们需要一个单一的库来轻松地从pandas数组创建las文件。我们发现使用旧的laspy API有些不直观,所以我们创建了这个包装器。自laspy 2.0.0以来,这得到了极大的改进。那些寻找读取和写入las文件最简单方法的人可能会发现jaklas很有用,但我鼓励同时阅读laspy的文档。

jaklas

jaklas是围绕laspy的一个薄包装,使读取和写入las文件尽可能简单。

主要用例是通过单个函数调用将pandas数组写入las文件。根据列名、数据类型和点值推断las文件属性(点偏移、点缩放、文件版本、点格式等)。

las写入器支持实现__getitem__且具有正确字段名的任何对象。

安装

pip install jaklas

测试

git clone git@github.com:jakarto3d/jaklas.git
cd jaklas
pip install -r requirements-dev.txt
python -m pip install .
pytest

用法

jaklas.write 将pandas数据框(或字典)写入las文件。

数据框 必须 有以下之一(不区分大小写)

  • 'x', 'y' 和 'z' 列
  • 或 'xyz' 列

并且它可以有其他las属性(使用来自laspy的大小写敏感的名称)

  • gps_time
  • intensity
  • classification
  • red
  • green
  • blue
  • edge_of_flight_line
  • key_point
  • nir
  • 返回次数
  • 重叠
  • 点源ID
  • 原始分类
  • 返回编号
  • 返回点波位置
  • 扫描角度
  • 扫描角度排名
  • 扫描方向标志
  • 扫描仪通道
  • 合成
  • 用户数据
  • 波包索引
  • 波包偏移
  • 波包大小
  • 保留
  • x_t
  • y_t
  • z_t

其他列名将作为额外维度写入。

示例

import jaklas
import pandas

data = {
    'gps_time': [0, 1.232, 2.543, 3.741],
    'intensity': [14578, 54236, 1425, 12543],
    'X': [456, 234, 567, 432],
    'Y': [10234, 10256, 10789, 10275],
    'Z': [10, 11, 12, 13],
}
dataframe = pandas.DataFrame(data)
filename = 'example.las'
jaklas.write(dataframe, filename)

注意大写字母 'X'、'Y' 和 'Z' 表示的是实际坐标,而不是像 las 文件中的缩放 int32 坐标。

查看 jaklas.write 的文档字符串以获取更多选项,例如控制偏移和缩放。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分布

jaklas-0.4.4.tar.gz (8.2 kB 查看哈希值)

上传时间 源代码

编译分布

jaklas-0.4.4-py3-none-any.whl (8.3 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面