Sampling

StatsBase.sampleFunction
sample([rng], object, method)

Sample elements or points from geometric object with method. Optionally, specify random number generator rng.

sample([rng], object, nsamples, [weights], replace=false)

Generate nsamples samples from spatial object uniformly or using weights, with or without replacement depending on replace option.

Meshes.DiscreteSamplingMethodType
DiscreteSamplingMethod

A method for sampling from discrete representations of geometric objects such as meshes or collections of geometries.

Meshes.ContinuousSamplingMethodType
ContinuousSamplingMethod

A method for sampling from continuous representations of geometric objects. In this case, geometric objects are interpreted as a set of points in the embedding space.

Discrete sampling

Meshes.UniformSamplingType
UniformSampling(size, replace=false)

Sample elements uniformly from a given domain/data. Produce a sample of given size with or without replacement depending on the replace option.

Meshes.WeightedSamplingType
WeightedSampling(size, [weights]; replace=false)

Sample elements from a given domain/data using weights. Produce a sample of given size with or without replacement depending on the replace option. By default weights are uniform.

Meshes.BallSamplingType
BallSampling(radius; [options])

A method for sampling isolated elements from a given domain/data according to a norm-ball of given radius.

Options

  • metric - Metric for the ball (default to Euclidean())
  • maxsize - Maximum size of the resulting sample (default to none)

Continuous sampling

Meshes.RegularSamplingType
RegularSampling(n1, n2, ..., np)

Generate samples regularly using n1 points along the first parametric dimension, n2 points along the second parametric dimension, ..., np points along the last parametric dimension.

Examples

Sample sphere regularly with 360 longitudes and 180 latitudes:

sample(Sphere((0,0,0), 1), RegularSampling(360, 180))
Meshes.HomogeneousSamplingType
HomogeneousSampling(size)

Generate sample of given size from geometric object according to a homogeneous density.

Meshes.MinDistanceSamplingType
MinDistanceSampling(α, ρ=0.65, δ=100, metric=Euclidean())

Generate sample from geometric object such that all pairs of points are at least α units of distance away from each other. Optionally specify the relative radius ρ for the packing pattern, the oversampling factor δ and the metric.

This method is sometimes referred to as Poisson disk sampling or blue noise sampling in the computer graphics community.

References