<a id="easymatch"></a>

# EasyMatch - Matching Area Patterns

**EasyMatch**  is a pattern matching library that allows users to learn and identify given patterns in an image.

![image](assets/images/easymatch/matchingapattern.webp)

<a id="easymatch-process"></a>

## Process

**EasyMatch** learns a pattern and finds exact matches:

* The pattern is learned by defining an ROI that contains the object to be matched (see [Learn a Pattern](learning_process.html.md)).
* Images can now be searched for one or more occurrences of the pattern, which may be translated, rotated or scaled (an)isotropically (see [Find Matches](matching_process.html.md)).
  * These matches are represented by a vector of [`EFoundPattern`](../../../doxygen_cpp/classeVision_1_1EFoundPattern.html) [<sub>.NET</sub>](../../../doxygen_cs/classeVision_1_1EFoundPattern.html) [<sub>Python</sub>](../../../doxygen_python/classeVision_1_1EFoundPattern.html).
  * Each `EFoundPattern` contains a `Score`, `Center`, `Angle`, `ScaleX` and `ScaleY`.
* **EasyMatch** scores positions (translation, rotation, scaling) by computing the correlation between the pixels of the learned pattern and the corresponding pixels of the image.
* **EasyMatch** supports both [`BW8`](../../../doxygen_cpp/classeVision_1_1EImageBW8.html) [<sub>.NET</sub>](../../../doxygen_cs/classeVision_1_1EImageBW8.html) [<sub>Python</sub>](../../../doxygen_python/classeVision_1_1EImageBW8.html) and [`C24`](../../../doxygen_cpp/classeVision_1_1EImageC24.html) [<sub>.NET</sub>](../../../doxygen_cs/classeVision_1_1EImageC24.html) [<sub>Python</sub>](../../../doxygen_python/classeVision_1_1EImageC24.html) images.

![](assets/images/easymatch/learningapattern.webp)![](assets/images/easymatch/matchingapattern.webp)

#### NOTE
In practice, you can assume an accuracy of 1/20<sub>th</sub> pixel in position and 1/10<sub>th</sub> of a degree in rotation.

<a id="easy-match-contents"></a>

## Contents

How to learn a pattern from an image.

How to find a learned pattern inside of an image.

<a id="easy-match-quick-links"></a>

## Quick Links

List of all Classes, Structs and Enumerations of the **EasyMatch** library.

Code snippets for the **EasyMatch** library.

#### SEE ALSO
The `Match` sample of **eVision Studio** illustrates how to use the **EasyMatch** library.
