# Generic Geometric Transformations

Perform generic geometric transformations using the `imwarp` workflow

Geometric transformations map pixel coordinates in the output image to coordinates in the input image. The mapping process then interpolates the value of output pixels from the input image.

Use these functions to perform general 2-D, 3-D, and N-D geometric transformations. To perform a 2-D or 3-D geometric transformation, first create a geometric transformation object that stores information about the transformation. Then, pass the image to be transformed and the geometric transformation object to the `imwarp` function.

## Functions

 `imwarp` Apply geometric transformation to image `affineOutputView` Create output view for warping images `fitgeotrans` Fit geometric transformation to control point pairs `findbounds` Find output bounds for spatial transformation `fliptform` Flip input and output roles of spatial transformation structure `makeresampler` Create resampling structure `maketform` Create spatial transformation structure (`TFORM`) `tformarray` Apply spatial transformation to N-D array `tformfwd` Apply forward spatial transformation `tforminv` Apply inverse spatial transformation

## Objects

expand all

 `Warper` Apply same geometric transformation to many images efficiently
 `imref2d` Reference 2-D image to world coordinates `imref3d` Reference 3-D image to world coordinates
 `affine2d` 2-D affine geometric transformation `affine3d` 3-D affine geometric transformation `projective2d` 2-D projective geometric transformation `geometricTransform2d` 2-D geometric transformation object `geometricTransform3d` 3-D geometric transformation object `PiecewiseLinearTransformation2D` 2-D piecewise linear geometric transformation `PolynomialTransformation2D` 2-D polynomial geometric transformation `LocalWeightedMeanTransformation2D` 2-D local weighted mean geometric transformation

## Topics

### Geometric Transformation

2-D and 3-D Geometric Transformation Process Overview

To perform a general geometric transformation of a 2-D or 3-D image, first define the parameters of the transformation, then warp the image.

Matrix Representation of Geometric Transformations

Affine and projective transformations are represented by matrices. You can use matrix operations to perform a global transformation of an image.

N-Dimensional Spatial Transformations

You can create custom geometric transformations to process images of arbitrary dimension, or to change the dimensionality of the output image from the input image.

Specify Fill Values in Geometric Transformation Output

This example shows how to specify the color of blank space in the image after a geometric transformation.

### Spatial Referencing

Image Coordinate Systems

Learn how image locations are expressed using pixel indices and spatial coordinates.

Define World Coordinates Using Spatial Referencing

Spatial referencing objects encode the relationship between the image extent in intrinsic coordinates, the image extent in world coordinates, and the image resolution.

Define World Coordinates Using XData and YData Properties

The `XData` and `YData` image properties are two-element vectors that control the range of coordinates spanned by the image.