如何将变量值插入 JSON 字符串以用于 PDAL

How to insert variable value into JSON string for use with PDAL

我正在尝试使用 PDAL 的 Python 扩展来读取 laz 文件。

为此,我使用了此处示例的简单管道结构:https://gis.stackexchange.com/questions/303334/accessing-raw-data-from-laz-file-in-python-with-open-source-software。但是,为 "filename:" 字段插入变量中包含的值对我很有用。为此,我尝试了以下操作,其中 fullFileName 是一个包含文件名称(完整路径)的 str 变量,但我收到一个错误,指出不存在这样的文件。我假设我的 JSON 语法有点不对劲或什么的;有人可以帮忙吗?

    pipeline="""{
    "pipeline": [
            {
                    "type": "readers.las",
                    "filename": "{fullFileName}"
                    }
            ]
    }"""

你可以按照这个代码:

import json
import pdal

file = "D:/Lidar data/input.laz"

pipeline={
  "pipeline": [
    {
        "type": "readers.las",
        "filename": file
    },
    {
        "type": "filters.sort",
        "dimension": "Z"
    }
  ]
}

r = pdal.Pipeline(json.dumps(pipeline))
r.validate()
points = r.execute()
print(points)