Python 中的 PDAL 中 filters.programmable 中的 pdalargs 的语法是什么?

What is the syntax for pdalargs in filters.programmable in PDAL in Python?

我在 python 中使用 pdal,我正在尝试使用可编程过滤器。根据 documenation,我应该能够通过编写(第 141 页)

来解析我的 python 函数的其他输入参数
{
    "pipeline":[
        "input.las",
        {
            "type":"filters.programmable",
            "module":"anything",
            "function":"filter",
            "source":"arguments.py",
            "pdalargs":"{\"factor\":0.3048,\"an_argument\":42, \"another\": \"a string\"}"
        },
        "output.las"
    ]
}

我尝试完全复制粘贴这个(真的,我只是更改了输入 las 文件的名称),但我不断收到此错误:

RuntimeError: JSON pipeline: Unable to parse pipeline:
* Line 13, Column 15
  Missing ',' or '}' in object declaration

我尝试在 pdalargs 参数中随机删除和插入 " 和 \,但我似乎无法获得正确的语法。(它在没有 pdalargs 的情况下工作正常)

是否有更新或文档中没有的内容??语法实际上应该如何使用 pdalargs?

我发现了如何更改语法。出现此问题可能是因为我在 python 脚本中将 json 代码编写为字符串。

无论如何,这个语法似乎有效:

jsonStr = """{
    "pipeline":[
        "input.las",
        {
            "type":"filters.programmable",
            "module":"anything",
            "function":"filter",
            "source":"arguments.py",
            "pdalargs": {"factor":0.3048,"an_argument":42, "another": "a string"}
        },
        "output.las"
    ]
}"""

希望这对遇到同样问题的其他人有所帮助。