IMAQ Vision Algorithms

Updated Oct 18, 2022

Reported In


  • Vision Development Module

Issue Details

What are some common IMAQ Vision algorithms?


  • Pattern Matching:
Pattern matching quickly locates regions of grayscale images that match a known reference pattern, also referred to as a model or a template.
Common Errors and Issues When Using Pattern Matching with NI Vision
  • Geometric Matching:
Geometric matching locates regions in a grayscale image that match a model, or template, of a reference pattern. Geometric matching is specialized to locate templates that are characterized by distinct geometric or shape information. When using geometric matching, you create a template that represents the object for which you are searching. Your machine vision application then searches for instances of the template in each inspection image and calculates a score for each match. The score relates how closely the template resembles the located matches.
  • Region of Interest:
Region of interest is an area of image in which you want to focus your image analysis. This area can be used to focus further processing.
Region of Interest Frequently Asked Questions (FAQ)
  • IMAQ Vision Calibration:
IMAQ Vision has two algorithms for calibration: perspective and nonlinear. The perspective algorithm corrects for perspective errors.  Nonlinear is generally used for lens distortion and other nonlinear effects, such as an image on a curved surface. The nonlinear algorithm computes pixel to real-world mappings in a rectangular region centered around each dot in the calibration grid.
IMAQ Vision Calibration Information
  • Line Profile:
A line profile plots overlay enables you to annotate the display of an image with useful information without actually modifying the image. You can overlay text, lines, points, complex geometric shapes, and bitmaps on top of your image without changing the underlying pixel values in your image; only the display of the image is affected.
Common Questions and Issues with the IMAQ Overlay Functions
  • Histogram:
A histogram counts and graphs the total number of pixels at each grayscale level. From the graph, you can tell whether the image contains distinct regions of a certain gray-level value. A histogram provides a general description of the appearance of an image and helps identify various components such as the background, objects, and noise.
  • Line Profile:
A line profile plots the variations of intensity along a line. It returns the grayscale values of the pixels along a line and graphs it. The line profile utility is helpful for examining boundaries between components, quantifying the magnitude of intensity variations, and detecting the presence of repetitive patterns.
  • Thresholding:
Thresholding segments an image into a particle region, which contains the objects under inspection, and a background region based on the pixel intensities within that region. The resulting image is a binary image. The user sets a particular pixel value as the threshold, and any pixel value below the threshold will be replaced by a pixel value of 0, and any pixel value equal to or above the threshold will be replaced by a 1 (or a user-specified value).
  • Binary Image:
A binary image is an image containing particle regions with pixel values of 1 and a background region with pixel values of 0. Binary images are the result of the thresholding process. Because thresholding is a subjective process, the resulting binary image may contain unwanted information, such as noise particles, particles touching the border of images, particles touching each other, and particles with uneven borders. By affecting the shape of particles, morphological functions can remove this unwanted information, thus improving the information in the binary image.
  • Binary Morphology:
Binary morphological operations extract and alter the structure of particles in a binary image. You can use these operations during your inspection application to improve the information in a binary image before making particle measurements, such as the area, perimeter, and orientation. Basic morphology operations include erosion, dilation, open and close.
  • Edge Detection:
Edge detection is an effective tool for many machine vision applications. It provides your application with information about the location of object boundaries and the presence of discontinuities. The discontinuities are typically associated with abrupt changes in pixel intensity values that characterize the boundaries of objects in a scene.
  • Golden Template Comparison:
Golden template comparison compares the pixel intensities of an image under inspection to a golden template. A golden template is an image containing an ideal representation of an object under inspection. A pixel in an inspection image is returned as a defect if it does not match the corresponding pixel in the golden template within a specified tolerance.
  • Optical Character Recognition (OCR):
OCR provides machine vision functions you can use in an application to perform OCR. OCR is the process by which the machine vision software reads text and/or characters in an image.

More detailed information on these concepts, along with many more, can be found in the Vision Concepts Manual, linked below.