# Understanding Pattern Transformation

The appearance of an object in an image can vary in several different ways. PatMax can find objects whose appearance varies in any or all of the following ways:

- Size (overall size change or individual x- and y-axis size change)
- Rotation
- Location

Each of these types of transformation is called a degree of freedom, and is illustrated in the following table:

Degree of Freedom | Examples
--- | ---
X translation |
Y translation |
Rotation |
Uniform scale |
X scale |
Y scale |

In many applications, the appearance of an object can undergo several types of transformations at the same time. The following figure shows examples where a pattern experiences transformations in multiple degrees of freedom:

PatMax finds trained patterns in run-time images no matter what combination of transformations the pattern has undergone. You can limit PatMax to consider particular degrees of freedom, and within a degree of freedom, only a specified range. By doing this you can ensure that PatMax finds all of the variations that your application encounters in the smallest amount of time.

For each instance of the pattern that PatMax finds in a run-time image, PatMax returns the location of the instance as well as values for each of the degrees of freedom of the transformation the pattern has undergone.

PatMax also computes a score between 0.0 and 1.0 that provides an indication of how closely the pattern in the run-time image matches the trained pattern after accounting for the transformation that the pattern has undergone.