NEWS


lasR 0.12.1

lasR 0.12.0

lasR 0.10.3

Change: normalize() loose its argument extrabytes in favor of a new function hag() that is equivalent to normalize(TRUE) New: add stages delete_noise(), delete_ground()

lasR 0.10.2

Fix: The local_maximum function previously experienced significant delays when writing points to disk, taking up to 2 seconds on Linux and up to 30 seconds on Windows. This issue severely hindered parallelization capabilities. The new fix dramatically reduces the write time to around 0.1 seconds, greatly improving overall performance.

lasR 0.10.1

lasR 0.10.0

lasR 0.9.3

lasR 0.9.2

lasR 0.9.1

lasR 0.9.0

lasR 0.8.0

lasR 0.7.2

lasR 0.7.1

lasR 0.7.0

NEW FEATURES

  1. New stage classify_with_csf() to classify ground points.

  2. The metric engine introduced in v0.6.0 can now compute metrics on extrabytes attributes. e.g. Amplitude_mean

  3. New stage sampling_poisson to perform Poisson Disk Sampling

  4. sampling_pixel and sampling_voxel are faster.

FIXES

  1. sampling_* stages respect the filter argument

  2. Fix #63 crash when some chunk are skipped either because they have 0 points of because of the stop_if stage.

  3. Fix #64 metrics on RGB were actually computed on RRR

BREAKING CHANGES

  1. classify_isolated_voxels() renamed into classify_with_ivf() for consistency.

lasR 0.6.2

lasR 0.6.1

lasR 0.6.0

NEW FEATURES

  1. New stage stop_if to conditionally escape the pipeline. New section about stop_if in the online tutorial.

  2. New stage write_lax. This stage was automatically added by the engine but can now be explicitly added by users.

  3. New internal "metric engine". The metric engine is used to compute metrics in, e.g., rasterize() with operators like zmean, imean, and so on. The metric engine has been redesigned and allows any string with the format attribute_metric such as z_sd, i_mean, c_mode, a_mean, intensity_max, classification_mode, angle_mean, and any other combinations. All attributes are mapped, and new functions are available such as sum, mode. Many more could be added easily. Former strings such as zmean or imax are no longer valid and should be replaced by z_mean and i_max but are backward compatible.

  4. rasterize gained access to the new metric engine and can compute many more metrics natively.

  5. summarize() gained access to the metric engine and can compute metrics for each file or each chunk. Used in conjunction with reader_las_circle(), it can be used, for example, to compute plot inventory metrics. The online tutorial has been updated. The section "plot inventory" no longer uses callback() and is preceded by a new section "summarize".

BREAKING CHANGES

  1. The package no longer assigns set_parallel_strategy(concurrent_points(half_core())) when loading. Instead, if nothing is provided, this is interpreted as concurrent_points(half_core()). Thus, users can now write exec(pipeline, on = file, ncores = 8). The engine will now respect ncores = 8 because no global settings with global precedence were assigned. The multi-threading vignette has been updated.

  2. Pipelines that include R-based stages (rasterize with R function, callback) are no longer parallelizable with the concurrent-file strategy. Parallelizing a pipeline that involves the R C API is terribly complex and eventually leads only to pseudo-parallelism with a lot of troubleshooting to deal with (especially to abort the pipeline). Consequently, we removed parallelism capabilities. The numerous new native metrics added in the metric engine compensate for that loss. The online documentation has been updated accordingly.

INTERNAL CHANGES

  1. A large number of changes to separate lasR from R. lasR can now be compiled as standalone software. A Makefile has been added to the repository. At the R level, the pipeline and the processing options are passed to the C++ engine via a JSON file instead of being passed via the R's C API, effectively separating lasR from R itself. The R side of lasR is now purely an API to the standalone engine. A JSON file produced by the lasR package can be executed with the standalone software: lasr pipeline.json. However, the syntax of the JSON file is not documented and is not intended to be documented. Rather, the JSON file should be produced by an API such as the lasR package, a QGIS plugin, or a Python package. Obviously, there is currently no such thing.

lasR 0.5.6

lasR 0.5.5

lasR 0.5.4

lasR 0.5.3

lasR 0.5.2

lasR 0.5.1

lasR 0.5.0

lasR 0.4.8

lasR 0.4.7

lasR 0.4.6

lasR 0.4.5

lasR 0.4.4

lasR 0.4.3

lasR 0.4.2

lasR 0.4.1

lasR 0.4.0

lasR 0.3.6

lasR 0.3.5

lasR 0.3.4

lasR 0.3.3

lasR 0.3.2

lasR 0.3.1

lasR 0.3.0

lasR 0.2.1 (2024-03-05)

lasR 0.2.0 (2024-03-01)

lasR 0.1.2 (2024-02-10)

lasR 0.1.1 (2024-02-08)

lasR 0.1.0 (2024-02-01)