smooth_height: Smooth a point cloud

View source: R/smooth_height.R

smooth_heightR Documentation

Smooth a point cloud

Description

Point cloud-based smoothing algorithm. Two methods are available: average within a window and Gaussian smooth within a window. The attribute Z of the returned LAS object is the smoothed Z. A new attribute Zraw is added to store the original values and can be used to restore the point cloud with unsmooth_height.

Usage

smooth_height(
  las,
  size,
  method = c("average", "gaussian"),
  shape = c("circle", "square"),
  sigma = size/6
)

unsmooth_height(las)

Arguments

las

An object of class LAS

size

numeric. The size of the windows used to smooth.

method

character. Smoothing method. Can be 'average' or 'gaussian'.

shape

character. The shape of the windows. Can be circle or square.

sigma

numeric. The standard deviation of the gaussian if the method is gaussian.

Details

This method does not use raster-based methods to smooth the point cloud. This is a true point cloud smoothing. It is not really useful by itself but may be interesting in combination with filters, for example to develop new algorithms.

Value

An object of the class LAS.

Examples

LASfile <- system.file("extdata", "Megaplot.laz", package="lidR")
las <- readLAS(LASfile, select = "xyz")

las <- decimate_points(las, highest(1))
#plot(las)

las <- smooth_height(las, 5, "gaussian", "circle", sigma = 2)
#plot(las)

las <- unsmooth_height(las)
#plot(las)

Jean-Romain/lidR documentation built on April 6, 2024, 9:41 p.m.