# [−][src]Function arrayfire::transform

pub fn transform<T: HasAfEnum>(

input: &Array<T>,

trans: &Array<f32>,

odim0: i64,

odim1: i64,

method: InterpType,

is_inverse: bool

) -> Array<T>

Transform(Affine) an Image

The transform function uses an affine transform matrix to tranform an input image into a new one. The transform matrix tf is a 3x2 matrix of type float. The matrix operation is applied to each location (x, y) that is then transformed to (x', y') of the new array. Hence the transformation is an element-wise operation.

The operation is as below: tf = [r00 r10 r01 r11 t0 t1]

x' = x * r00 + y * r01 + t0; y' = x * r10 + y * r11 + t1;

Interpolation types of NEAREST, LINEAR, BILINEAR and CUBIC are allowed. Affine transforms can be used for various purposes. translate, scale and skew are specializations of the transform function.

This function can also handle batch operations.

# Parameters

`input`

is the image to be resized`trans`

is the transformation matrix to be used for image transformation`odim0`

is the output height`odim1`

is the output width`method`

indicates which interpolation method to use for resizing. It uses enum InterpType to identify the interpolation method.`is_inverse`

indicates if to apply inverse/forward transform

# Return Values

Transformed Array