R: Apply Affine Transformation To Pixel Image

affine.im {spatstat} | R Documentation

## Apply Affine Transformation To Pixel Image

### Description

Applies any affine transformation of the plane (linear transformation plus vector shift) to a pixel image.

### Usage

      ## S3 method for class 'im'
    affine(X, mat=diag(c(1,1)), vec=c(0,0), ...)

### Arguments

`X` | Pixel image (object of class `"im"`).
`mat` | Matrix representing a linear transformation.
`vec` | Vector of length 2 representing a translation.
`...` | Optional arguments passed to `as.mask` controlling the pixel resolution of the transformed image.

### Details

The image is subjected first to the linear transformation represented by `mat` (multiplying on the left by `mat`), and then the result is translated by the vector `vec`.

The argument `mat` must be a nonsingular 2 * 2 matrix.

This is a method for the generic function `affine`.

### Value

Another pixel image (of class `"im"`) representing the result of applying the affine transformation.

### Author(s)

Adrian Baddeley Adrian.Baddeley@curtin.edu.au

and Rolf Turner r.turner@auckland.ac.nz

### See Also

`affine`, `affine.ppp`, `affine.psp`, `affine.owin`, `rotate`, `shift`

### Examples

      X <- setcov(owin())
      stretch <- diag(c(2,3))
      Y <- affine(X, mat=stretch)
      shear <- matrix(c(1,0,0.6,1),ncol=2, nrow=2)
      Z <- affine(X, mat=shear)

[Package spatstat version 1.54-0 Index]