# inla.nonconvex.hull: Nonconvex set extensions. In andrewzm/INLA: Functions which allow to perform full Bayesian analysis of latent Gaussian models using Integrated Nested Laplace Approximaxion

## Description

Constructs a nonconvex boundary for a point set using morphological operations.

## Usage

 1 2 3 4 5 6 7 8 9 10 inla.nonconvex.hull(points, convex = -0.15, concave = convex, resolution = 40, eps = NULL) inla.nonconvex.hull.basic(points, convex = -0.15, resolution = 40, eps = NULL)

## Arguments

 points 2D point coordinates (2-column matrix). convex The desired extension radius. Also determines the smallest allowed convex curvature radius. Negative values are interpreted as fractions of the approximate initial set diameter. concave The desired minimal concave curvature radius. Default is concave=convex. resolution The internal computation resolution. A warning will be issued when this needs to be increased for higher accuracy, with the required resolution stated. eps The polygonal curve simplification tolerance used for simplifying the resulting boundary curve. See inla.simplify.curve for details.

## Details

Morphological dilation by convex, followed by closing by concave, with minimum concave curvature radius concave. If the dilated set has no gaps of width between

2*convex*(sqrt(1+2*concave/convex) - 1)

and 2*concave, then the minimum convex curvature radius is convex. Special case concave=0 delegates to inla.nonconvex.hull.basic

The implementation is based on the identity

dilation(a) & closing(b) = dilation(a+b) & erosion(b)

where all operations are with respect to disks with the specified radii.

## Value

An inla.mesh.segment object.

## Note

Requires nndistF from the splancs package.

## Author(s)

Finn Lindgren finn.lindgren@gmail.com

## Examples

 1 2 3 4 5 6 if (require(splancs)) { loc = matrix(runif(20), 10, 2) boundary = inla.nonconvex.hull(loc, convex=0.2) lines(boundary, add=FALSE) points(loc) }

andrewzm/INLA documentation built on May 10, 2019, 11:12 a.m.