ArrayResample

ArrayResample[array,{n1,n2,}]

resamples array to have dimensions {n1,n2,}.

ArrayResample[array,dspec]

resamples array according to the dimension specification dspec.

ArrayResample[array,dspec,scheme]

specifies resampling scheme, either point or bin based.

ArrayResample[array,dspec,scheme,{{xmin,xmax},}]

resamples only the data in the specified subrange {{xmin,xmax},}.

Details and Options

  • ArrayResample can be used for resampling data arrays based on a large selection of interpolation and approximation models.
  • ArrayResample works with data arrays of any depth.
  • The dimension specification dspec can be of the form:
  • nn samples
    Scaled[s]rescale sampling resolution by factor s
    Allpreserve dimension
    Automaticpreserve dimension ratios
    {dspec1,,dspeck}resample up to the ^(th) dimension
  • For a multidimensional array, the notation n is taken to be equivalent to {n,Automatic,} and {n} equivalent to {n,All,}.
  • The dimension ratios for an array of dimensions is taken to be .
  • The scheme determines the location of sample and resample positions and can be of the form:
  • "Point"point sampling (default)
    "Bin"bin sampling
    {"Bin",alignment}bin sampling with specified alignment
  • For input data of length n the "Point" resampling scheme assumes a data range from 1 to n and the "Bin" scheme assumes a data range from 0 to n with the alignment indicating the sample location within each bin.
  • Bin alignment alignment can be Left, Center, Right or any number between (Left) and 1 (Right).
  • The data range can be modified using the DataRange option.
  • By default, the data is resampled on the entire data domain, ranging from 1 to for the "Point" scheme and from 0 to for the "Bin" scheme. Use the DataRange option to modify the coordinates of the data domain.
  • With a subrange {{xmin,xmax},} specified with respect to the DataRange, only the data values in the given interval are resampled. »
  • The following options can be given:
  • AntialiasingFalseapply antialiasing when downsampling
    DataRangeAutomaticrange of the input data
    Padding"Fixed"padding method
    ResamplingAutomaticresampling method
  • For possible settings for Padding, see the reference page for ArrayPad.

Examples

open allclose all

Basic Examples  (2)

Subsample an array:

Downsample an array:

Resize a 2D array of data:

Scope  (8)

Basic Uses  (4)

Exact computation:

Precision of the input is preserved:

Resizing a symbolic array:

Resample a subdomain of the input signal:

Output Dimensions  (1)

With size specified as a scalar, output dimension is selected such that dimension ratio is preserved:

Sampling Schemes  (3)

By default, the "Point" sampling scheme is used:

Use the "Bin" scheme, which uses center alignment by default:

Specify the alignment of the bins:

Generate a "Point" resampling with three times the input resolution:

Compute the sampling positions:

Options  (5)

Antialiasing  (1)

When downsampling, by default no antialiasing is happening:

With antialiasing, all samples that fall in between new samples are averaged:

DataRange  (1)

DataRange specifies the domain of resampling. Subrange specification is defined with respect to this domain:

Resample the whole data:

Resample the first half using default DataRange->{1,n}, where n is the length of data:

Resample the first half of the data using a {0,1} data range:

Padding  (2)

The default padding value is "Fixed":

Specify a different padding:

By default, the same padding is used for all dimensions:

Use different paddings for different dimensions:

Resampling  (1)

By default, "Linear" resampling is used:

Use a different resampling scheme:

"Nearest" resampling averages the samples if the sampling position is halfway between samples:

Use "NearestLeft" or "NearestRight" for a bias to left or right for half-integer sampling positions:

Applications  (1)

Reduce the size of a dataset for faster visualization:

Properties & Relations  (2)

Compare array resampling for a few different kernels:

Downsample can be used to downsample by an integer factor:

Possible Issues  (1)

Exact computations are performed with integer data:

Apply N to integer data for faster computation:

Introduced in 2014
 (10.0)
 |
Updated in 2016
 (11.0)