[pdal-commits] [PDAL/PDAL] 3ea6f2: Update the translate kernel

GitHub noreply at github.com
Tue Sep 8 06:30:04 PDT 2015


  Branch: refs/heads/omni-kernel-pipeline-manager
  Home:   https://github.com/PDAL/PDAL
  Commit: 3ea6f2e496cdc183a5ce9ff330c18daef3248a2e
      https://github.com/PDAL/PDAL/commit/3ea6f2e496cdc183a5ce9ff330c18daef3248a2e
  Author: Bradley J Chambers <brad.chambers at gmail.com>
  Date:   2015-09-08 (Tue, 08 Sep 2015)

  Changed paths:
    M doc/apps.rst
    M kernels/translate/CMakeLists.txt
    M kernels/translate/TranslateKernel.cpp
    M kernels/translate/TranslateKernel.hpp
    M test/unit/apps/pc2pcTest.cpp

  Log Message:
  -----------
  Update the translate kernel

We originally proposed the concept of a so-called "Omni" kernel, which in
it's simplest form was a simple, file format conversion utility, but could
optionally apply multiple filtering stages as part of the processing
pipeline. In time, we came to realize that this was just a generalized
form of the existing Translate kernel, and should serve as a drop-in
replacement of that initial capability.

Under the hood, the Translate kernel now uses the PipelineManager class to
construct a pipeline on-the-fly, given the command-line arguments provided
at runtime.

An input and output file name are both required, given by the `--input`
and `--output` flags. The drivers for these stages will be inferred from
the file names, where possible, but can also be explicitly provided using
the `--reader` and `--writer` flags. The input/output arguments can be
provided as positional parameters with a max occurance of 1.

The user may optionally specify multiple filter stages using the
`--filter` flag. The filters will be applied in the order they are
entered. If specifying filter as a positional argument, it must come after
the input and output arguments. As a convenience, users may omit the
leading "filters." in the filter stage names, as the fact that these
stages are filters is already implied. Available filters can be viewed by
executing `pdal --drivers`.

The composed pipeline XML will be written to disk if a valid filename is
provided with the `--pipeline` flag.

Finally, filter-specific options can still be passed via the command-line,
using the filter's full stage name, e.g., `filters.crop`. Filter options
can be viewed by running `pdal --options[=filter stage name]`.

Simple LAS to BPF conversion

```
$ pdal translate input.las output.bpf
```

Apply MortonOrder filter to sort points while converting from input.las to
sorted.las.

```
$ pdal translate input.las sorted.las mortonorder
```

Apply PDAL's native Splitter filter, followed by the plugin Ground filter.

```
$ pdal translate input.las ground.las splitter ground
```

Apply the Sort filter, specifying additional filter-specific options and
writing the resuling pipeline to disk.

```
$ pdal translate input.las sorted.las sort --filters.sort.dimension=X
--pipeline x_sort.xml
```




More information about the pdal-commits mailing list