R: Normalize intensity

normalize_intensity {lidR} | R Documentation

## Normalize intensity

### Description

Normalize intensity values using multiple methods.

### Usage

    normalize_intensity(las, algorithm)

### Arguments

`las` | An object of class LAS or LAScatalog.
`algorithm` | an intensity normalizaton algorithm. `lidR` currently has range_correction.

### Value

Returns an object of class LAS. The attribute 'Intensity' records the normalized intensity. An extra attribute named 'RawIntensity' records the original intensities.

### Working with a `LAScatalog`

This section appears in each function that supports a LAScatalog as input.

In `lidR` when the input of a function is a LAScatalog the function uses the LAScatalog processing engine. The user can modify the engine options using the available options. A careful reading of the engine documentation is recommended before processing `LAScatalogs`. Each `lidR` function should come with a section that documents the supported engine options.

The `LAScatalog` engine supports `.lax` files that significantly improve the computation speed of spatial queries using a spatial index. Users should really take advantage a `.lax` files, but this is not mandatory.

### Supported processing options

Supported processing options for a `LAScatalog` (in bold). For more details see the LAScatalog engine documentation:

- chunk size: How much data is loaded at once.

- chunk buffer: No buffer needed. A buffer of 0 is used and cannot be changed

- chunk alignment: Align the processed chunks.

- progress: Displays a progression estimation.

- output files*: Mandatory because the output is likely to be too big to be returned in R and needs to be written in las/laz files. Supported templates are `{XLEFT}`, `{XRIGHT}`, `{YBOTTOM}`, `{YTOP}`, `{XCENTER}`, `{YCENTER}` `{ID}` and, if chunk size is equal to 0 (processing by file), `{ORIGINALFILENAME}`.

- select: The function will write files equivalent to the original ones. Thus `select = "*"` and cannot be changed.

- filter: Read only points of interest.

### See Also

Other normalize: `normalize_height()`

### Examples

    # A valid file properly populated
    LASfile <- system.file("extdata", "Topography.laz", package="lidR")
    las <- readLAS(LASfile)

    # pmin = 15 because it is an extremely small file
    # strongly decimated to reduce its size. There are
    # actually few multiple returns
    sensor <- track_sensor(las, Roussel2020(pmin = 15))

    # Here the effect is virtually null because the size of
    # the sample is too small to notice any effect of range
    las <- normalize_intensity(las, range_correction(sensor, Rs = 2000))

[Package lidR version 3.2.2 Index]