Skip to contents

getAffineTransform computes the matrix of an affine transform from 4 pairs of corresponding points in a source and destination image.

Usage

getAffineTransform(from, to, from_dim, to_dim = from_dim)

Arguments

from

A 4x2 matrix indicating the location (x, y) of 4 points in the source image.

to

A 4x2 matrix indicating the location (x, y) of 4 points in the destination image. The order of the points must correspond to the order in from.

from_dim

A vector which first two elements indicate the number of rows and columns of the source image.

to_dim

A vector which first two elements indicate the number of rows and columns of the destination image. If not specified, from_dim will be used as a default.

Value

A 3x3 matrix.

Author

Simon Garnier, garnier@njit.edu

Examples

from <- matrix(c(1, 1, 2, 5, 6, 5, 5, 1), nrow = 4, byrow = TRUE)
to <- matrix(c(1, 1, 1, 5, 5, 5, 5, 1), nrow = 4, byrow = TRUE)
getAffineTransform(from, to, c(1080, 1920), c(1080, 1920))
#>      [,1] [,2]    [,3]
#> [1,]    1 0.25 -269.75
#> [2,]    0 1.00    0.00