ShapePattern-package {ShapePattern}R Documentation

Tools for Analyzing Shapes and Patterns

Description

This is an evolving and growing collection of tools for the quantification, assessment, and comparison of shape and pattern. This collection provides tools for: (1) the spatial decomposition of planar shapes using 'ShrinkShape' to incrementally shrink shapes to extinction while computing area, perimeter, and number of parts at each iteration of shrinking; the spectra of results are returned in graphic and tabular formats (Remmel 2015) <doi:10.1111/cag.12222>, (2) simulating landscape patterns, (3) provision of tools for estimating composition and configuration parameters from a categorical (binary) landscape map (grid) and then simulates a selected number of statistically similar landscapes. Class-focused pattern metrics are computed for each simulated map to produce empirical distributions against which statistical comparisons can be made. The code permits the analysis of single maps or pairs of maps (Remmel and Fortin 2013) <doi:10.1007/s10980-013-9905-x>, (4) counting the number of each first-order pattern element and converting that information into both frequency and empirical probability vectors (Remmel 2020) <doi:10.3390/e22040420>, and (5) computing the porosity of raster patches <doi:10.3390/su10103413>. NOTE: This is a consolidation of existing packages ('PatternClass', 'ShapePattern') to begin warehousing all shape and pattern code in a common package. Additional utility tools for handling data are provided and this package will be added to as more tools are created, cleaned-up, and documented. Note that all future developments will appear in this package and that 'PatternClass' will eventually be archived.

Details

The DESCRIPTION file:

Type: Package
Package: ShapePattern
Title: Tools for Analyzing Shapes and Patterns
Version: 3.0.1
Authors@R: c( person("Tarmo K.", "Remmel", email = "remmelt@yorku.ca", role = c("aut", "cre"), comment = c(ORCID = "0000-0001-6251-876X")), person("Marie-Josee", "Fortin", role = "ctb"), person("Ferenc", "Csillag", role = "ctb"), person("Sandor", "Kabos", role = "ctb"))
Maintainer: Tarmo K. Remmel <remmelt@yorku.ca>
Description: This is an evolving and growing collection of tools for the quantification, assessment, and comparison of shape and pattern. This collection provides tools for: (1) the spatial decomposition of planar shapes using 'ShrinkShape' to incrementally shrink shapes to extinction while computing area, perimeter, and number of parts at each iteration of shrinking; the spectra of results are returned in graphic and tabular formats (Remmel 2015) <doi:10.1111/cag.12222>, (2) simulating landscape patterns, (3) provision of tools for estimating composition and configuration parameters from a categorical (binary) landscape map (grid) and then simulates a selected number of statistically similar landscapes. Class-focused pattern metrics are computed for each simulated map to produce empirical distributions against which statistical comparisons can be made. The code permits the analysis of single maps or pairs of maps (Remmel and Fortin 2013) <doi:10.1007/s10980-013-9905-x>, (4) counting the number of each first-order pattern element and converting that information into both frequency and empirical probability vectors (Remmel 2020) <doi:10.3390/e22040420>, and (5) computing the porosity of raster patches <doi:10.3390/su10103413>. NOTE: This is a consolidation of existing packages ('PatternClass', 'ShapePattern') to begin warehousing all shape and pattern code in a common package. Additional utility tools for handling data are provided and this package will be added to as more tools are created, cleaned-up, and documented. Note that all future developments will appear in this package and that 'PatternClass' will eventually be archived.
License: GPL-3
LazyData: true
LazyDataCompression: xz
Depends: R (>= 4.3.0), sp, igraph, terra
Imports: landscapemetrics, raster
NeedsCompilation: no
Packaged: 2023-08-22 18:53:14 UTC; tarmo
Author: Tarmo K. Remmel [aut, cre] (<https://orcid.org/0000-0001-6251-876X>), Marie-Josee Fortin [ctb], Ferenc Csillag [ctb], Sandor Kabos [ctb]
Repository: CRAN
Date/Publication: 2023-08-22 16:50:02 UTC

Index of help topics:

CARsimu                 This function simulates an image using a FFT
                        implementation of a Conditional Autoregressive
                        (CAR) model.
KLPQ                    Computes and returns the Kullback-Leibler
                        divergence between two probability
                        distributions
ShapePattern-package    Tools for Analyzing Shapes and Patterns
build.lut               Bias correction lookup table (LUT) builder
                        based on simulations.
buildsurfs              Build an array of surfaces across compositional
                        and configuration analysis space.
data                    This is a generic data environment that
                        provides some demo data and control
                        functionality.
doubleplotter           A comparison of two maps based on their
                        empirical (null) distributions for a
                        class-focused pattern metric
findcol                 An internal utility that identifies that
                        identifies the appropriate column of the
                        Whittle correction matrix.
findrow                 An internal utility that identifies that
                        identifies the appropriate row of the Whittle
                        correction matrix.
imaks                   Draws a matrix in the proper orientation, as it
                        it were a raster landscape.
patternbits             Decompose a binary landscape (grid) to count
                        its pattern elements
porosity                Compute the porosity of raster zones (patches)
singlemap               Process a single binary map
singleplotter           Depict the empirical (null) distribution for
                        class-focused pattern metrics.
ssr                     Decompose a planar shape (polygon) to produce
                        area, perimeter, and number of parts spectra
surfplot                Produce graphic plots providing class-focused
                        pattern metric context for a landcape map
wi                      An internal utility that helps with the Whittle
                        estimation.
wtest.run               Whittle estimation for binary map

This package combines the legacy functionality of package PatternClass and package ShapePattern and sets the environment for continuing to contribute to shape and pattern analyses. Eventually, package PatternClass will be archived (please point to this package to maintain functionality). Functions are provided to perform (1) ShrinkShape, a spatial decomposition by iterative shrinking of planar shapes (ploygons); (2) PatternClass, a tool for computing and visualizing statistical differences between class-level landscape maps; (3) Patternbits, a means for producing probability distributions for the most elemental hyper-local pattern elements in a binary landscape map and using Kullback-Leibler divergence to assess similarity and differnece between two such distributions; (4) CAR 2D simulation of stationary and isotropic landscape patterns, and (5) a tool for computing raster zone (patch) porosity.

Author(s)

Tarmo K. Remmel [aut, cre] (<https://orcid.org/0000-0001-6251-876X>), Marie-Josee Fortin [ctb], Ferenc Csillag [ctb], Sandor Kabos [ctb]

Maintainer: Tarmo K. Remmel <remmelt@yorku.ca>

References

1. Polygon shape analysis:

Remmel, T.K. 2015. ShrinkShape2: a FOSS toolbox for computing rotation-invariant shape spectra for characterizing and comparing polygons. The Canadian Geographer 59(4):532-547.

2. Comparing binary landscapes:

Remmel, T.K. and M.-J. Fortin. 2016. What constitutes a significant difference in landscape pattern? (using R). In Gergel, S.E. and M.G. Turner. Learning landscape ecology: concepts and techniques for a sustainable world (2nd ed.). New York: Springer. http://sarahgergel.net/lel/learning-landscape-ecology/

Remmel, T.K. and M.-J. Fortin. 2013. Categorical class map patterns: characterization and comparison. Landscape Ecology. DOI: 10.1007/s/10980-013-9905-x.

Remmel, T.K. and F. Csillag. 2003. When are two landscape pattern indices significantly different? Journal of Geographical Systems 5(4):331-351.

3. For computing pattern elements:

Remmel, T.K. 2020. Distributions of hyper-local configuration elements to characterize, compare, and assess landscape-level spatial patterns. Entropy 22(4):420.

4. Simulating Landscapes:

Remmel, T.K. and F. Csillag. When are two landscape pattern indices significantly different? Journal of Geographical Systems 5(4):331-351.

5. For computing raster patch porosity:

Remmel, T.K. 2018. An incremental and philosophically different approach to measuring raster patch porosity. Sustainability 10:3413.

See Also

It would be prudent to also observe the landscapemetrics package.

Examples

# Specific examples are provided on the individual function manual pages.
# This package provides functions for different areas of analysis:
#
# 1. ShrinkShape
# ssr()
#
# 2. PatternClass (legacy package moved here)
# The order of function calls should be: singlemap() > singleplotter()
# or
# singlemap(), singlemap() > doubleplotter()
#
# 3. Patternbits
# patternbits() and KLPQ()
#
# 4. Conditional AutoRegressive 2D pattern simulator
# CARsimu()

[Package ShapePattern version 3.0.1 Index]