texture_image: Calculate Texture Metrics per Pixel

View source: R/movingwindow.R

texture_imageR Documentation

Calculate Texture Metrics per Pixel

Description

Calculates the various texture metrics over windows centered on individual pixels. This creates a continuous surface of the texture metric.

Usage

texture_image(
  x,
  window_type = "square",
  size = 5,
  in_meters = FALSE,
  metric,
  args = NULL,
  parallel = TRUE,
  ncores = NULL,
  nclumps = 100
)

Arguments

x

A raster or matrix.

window_type

Character. Type of window, either circular or square.

size

Numeric. Size of window (edge length) or diameter (in meters).

in_meters

Logical. Is the size given in meters?

metric

Character. Metric to calculate for each window. Metrics from the geodiv package are listed below.

args

List. Arguments from function to be applied over each window (e.g., list(threshold = 0.2)).

parallel

Logical. Option to run the calculations in parallel on available cores.

ncores

Numeric. If parallel is TRUE, number of cores on which to run the calculations. Defaults to all available, minus 1.

nclumps

Numeric. Number of clumps to split the raster or matrix into.

Details

Note that this function is meant to work on rasters with an equal area projection.

Metrics available from geodiv package:

  1. 'sa': average surface roughness

  2. 'sq': root mean square roughness

  3. 's10z': ten-point height

  4. 'sdq': root mean square slope of surface, 2-point method

  5. 'sdq6': root mean square slope of surface, 7-point method

  6. 'sdr': surface area ratio

  7. 'sbi': surface bearing index

  8. 'sci': core fluid retention index

  9. 'ssk': skewness

  10. 'sku': kurtosis

  11. 'sds': summit density

  12. 'sfd': 3d fractal dimension

  13. 'srw': dominant radial wavelength, radial wavelength index, mean half wavelength

  14. 'std': angle of dominating texture, texture direction index

  15. 'svi': valley fluid retention index

  16. 'stxr': texture aspect ratio

  17. 'ssc': mean summit curvature

  18. 'sv': maximum valley depth

  19. 'sph': maximum peak height

  20. 'sk': core roughness depth

  21. 'smean': mean peak height

  22. 'svk': reduced valley depth

  23. 'spk': reduced peak height

  24. 'scl': correlation length

  25. 'sdc': bearing area curve height interval

Value

A raster or list of rasters (if function results in multiple outputs) with pixel values representative of the metric value for the window surrounding that pixel.

Note

The total window size for square windows will be (size * 2) + 1.

Examples

# import raster image
data(normforest)
normforest <- terra::unwrap(normforest)

# crop raster to smaller area
x <- terra::crop(normforest, terra::ext(normforest[1:100, 1:100, drop = FALSE]))

# get a surface of root mean square roughness
sa_img <- texture_image(x = x, window = 'square',
size = 5, metric = 'sa',
parallel = TRUE, ncores = 1, nclumps = 20)

# plot the result
terra::plot(sa_img)

geodiv documentation built on Oct. 6, 2023, 1:07 a.m.