Version:

Last Modified: October 26, 2017

Searches for a template image in a rectangular search area of the input Image.

The node uses the location and orientation of the template found to create the reference position of a coordinate system or to update the current location and orientation of an existing coordinate system. The node has the capability to overlay on the returned image the position of the search area and the location and orientation of the coordinate system found.

Function that is performed by this node.

You can choose from the following values:

Name | Value | Description |
---|---|---|

Find Reference | 0 | Specifies that the location and orientation of the found edges set the reference system of |

Update CoordSys | 1 | Specifies that the location and orientation of the found edges set the measurement system of |

Cluster defining the parameters of the template location algorithm and the information that is overlaid on the result image.

Pattern matching algorithm used to find the template information.

**all** learns the template using all of the algorithms.

Name | Value | Description |
---|---|---|

all | 0 | Uses all of the algorithms, one after the other. |

low discrepancy sampling | 1 | Uses a low discrepancy sampling algorithm. This algorithm extracts the most significant information to represent an image. If the template contains large regions of similar grayscale information, a wide aspect ratio, or is very small, use one of the pyramidal matching algorithms instead. |

grayscale value pyramid | 2 | Uses a grayscale value pyramid algorithm. This algorithm uses normalized gray values as features, and is useful when the template does not contain structured information, but has intricate textures for dense edges. |

gradients pyramid | 3 | Uses a gradient pyramid algorithm. This algorithm uses filtered edge pixels as features. This algorithm is more resistant to occlusion and intensity changes compared to the |

Smallest score a match must have to be considered valid.

Boolean that specifies if the match results should be returned with subpixel accuracy.

Array of angle ranges where each range specifies how much you expect the template pattern to rotate in the image.

Each range is specified by a lower angle and an upper angle, both of which are expressed in degrees.

Boolean that pecifies if the centers and bounding rectangles of the patterns found are overlaid on the result image.

Boolean input that specifies whether the position and orientation of the coordinate system found are overlaid on the result image.

**coordinate system** found are overlaid on the result image.

Reference to the source image.

Reference to the image to locate during the match process.

The template image is the image obtained from the output of the Learn Pattern node. If the template has not been learned, this node first goes through the learning process.

Rectangular search area in an image.

The **left**, **top**, **right**, and **bottom** coordinates describe a non-rotated rectangle. The **rotation** specifies the rotation angle of the rectangle around its center.

X-coordinate of the upper left corner of the rectangle.

Y-coordinate of the upper left corner of the rectangle.

X-coordinate of the bottom right corner of the rectangle.

Y-coordinate of the bottom right corner of the rectangle.

Rotation angle in degrees of the rectangle with its center as point of rotation.

If the rotation angle does not equal zero, the **left**, **top**, **right**, and **bottom** coordinates are not the actual coordinates of the upper left and bottom right corner of the rectangle. Instead these coordinates are a position, if the rotation angle equals zero.

Coordinate system to update.

This input is required only when **mode** is set to **update CoordSys**. When **mode** is set to **find reference**, the node ignores this parameter.

Error conditions that occur before this node runs.

The node responds to this input according to standard error behavior.

Standard Error Behavior

Many nodes provide an **error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

**Default: **No error

Reference to the input image.

Cluster of two point coordinates specifying the coordinates of the edge that corresponds to the **main axis**.

The first point is the intersection of the two axes of the coordinate system. The second point is the result of the computation of the intersection of the **main axis** with the **primary rectangle**.

Cluster of two point coordinates specifying the coordinates of the edge that corresponds to the **secondary axis**.

The first point is the intersection of the two axis of the coordinate system. The second point is the result of the computation of the intersection of the **secondary axis** with the **secondary rectangle**.

Cluster returning the position of the coordinate system.

Cluster containing the following elements.

Point cluster that specifies the origin of the base-reference coordinate system.

X-coordinate of the point.

Y-coordinate of the point.

Angle that the base-reference coordinate system makes with the image coordinate system.

Direction of the y-axis of the base-reference coordinate system.

Cluster containing the following elements.

Point cluster that specifies the origin of the base-reference coordinate system.

X-coordinate of the point.

Y-coordinate of the point.

Angle that the base-reference coordinate system makes with the image coordinate system.

Direction of the y-axis of the base-reference coordinate system.

Error information.

The node produces this output according to standard error behavior.

Standard Error Behavior

**error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

**Where This Node Can Run: **

Desktop OS: Windows

FPGA: Not supported

Web Server: Not supported in VIs that run in a web application