# FindGeometricTransform

FindGeometricTransform[pts1,pts2]

finds a geometric transformation that aligns positions specified by pts2 with pts1, returning the alignment error together with the transformation function.

FindGeometricTransform[ref,{pts1,pts2,}]

finds geometric transformations that align each of the ptsi with ref.

FindGeometricTransform[{pts1,pts2,}]

finds geometric transformations that align each of the ptsi with pts1.

# Details and Options  • FindGeometricTransform returns an expression of the form {err,trfun}, where err is an estimate of the average alignment error, and trfun is a transformation function. The function trfun can be applied to the positions pts2 to align them with the positions pts1.
• The geometries pts1 and pts2 can be given as lists of position coordinates or Wolfram Language graphics objects.
• FindGeometricTransform[image1,image2] finds the geometric transformation to align 2D or 3D images.
• FindGeometricTransform works with points in any dimensions as well as with built-in 2D and 3D graphics primitives.
• The following options can be specified:
•  Method Automatic alignment method to use TransformationClass Automatic geometrical relation between images
• By default, the most suitable alignment method and transformation class are used for calculating the transformation.
• Available fitting methods:
•  "Linear" linear solver based on SVD "RANSAC" random sample consensus method "FindFit" uses FindFit {"ImageAlign",method} ImageAlign transformation using the given method
• With the setting "RANSAC", some positions may be considered as outliers and may not be used to determine the geometric transformation.
• Possible settings for the TransformationClass option include:
•  "Translation" translation only "Rigid" translation and rotation "Similarity" translation, rotation, and scaling "Affine" linear transformation and translation "Perspective" linear fractional transformation

# Examples

open allclose all

## Basic Examples(2)

Determine the spatial transformation between two sets of positions:

Find the similarity transformation between two sets of two points:

## Scope(6)

Transformation between graphic primitives:

Apply the transformation and display the result:

A three-dimensional geometric transformation:

Transformation between images:

Transformation between 3D images:

Find transformations between reference points and each point set of a list:

Find transformations between each element of a list and the first element:

## Options(8)

### Method(4)

The method "Linear" is typically faster than "RANSAC":

The "RANSAC" method works best if there are outliers or erroneous correspondences:

For images, the "ImageAlign" method returns the transformation found by ImageAlign: Specify the method used by ImageAlign:

Use the "Keypoints" method using KAZE keypoints:

### TransformationClass(4)

Find a linear fractional transformation:

Find an affine transformation:

Find a rigid transformation:

Find a translation transform:

## Applications(3)

Use an estimated transformation of the corresponding points for aligning two images:

A basic image-stitching method:

Find the geometric transformation that aligns images:

Transform one image and compose on top of the other one:

Find a geometric alignment for a list of images with different exposures:

## Properties & Relations(2)

Find a 3D transformation and apply it using GeometricTransformation:

Find the parameters of an affine transformation: