List Handling Tool

By Brian Robertson on Fri, Aug 19, 2011

One of the most unique and powerful features of IMPACT software is the ability to work with lists of data.  When performing image analysis, inspection locations can sometimes be numerous and data sets can be lengthy.  In this case, the IMPACT list handling tools can be very useful and efficient.

The primary list handling tools are the List Sorter, List Loop, Data Instance and Data Set tools. 

List Sorter

The List Sorter, as the name implies, sorts the incoming data by the selected Sort Feature.  Incoming data can be a Blob, Point, Integer, or Real list.  The corresponding Sort Features are Blob Features (area, height, width, etc), X or Y point value, Integer value, or Real Value.  The output of this tool is a Sorted List.

List Loop

The List Loop tool can “step through” a list while doing an operation at each step.  For example, you might want to step through a Centroid List, and, at each centroid point, execute another vision tool to inspect a feature.  The List Loop tool makes this implementation much simpler, since you can use one tool and move it to many locations to do the same inspection, rather than adding many duplicate tools.

Data Instance and Data Set

The Data Instance tool is used to store values in a list, which can then be added using the Data Set tool.

The example below demonstrates all of these list handling tools.  The goal of the inspection is to determine the internal radius for each pair of tabs in each hole.


Determine the Radius

To determine the radius of a pair of tabs, a Circle Gauge tool is used.  But, rather than adding forty circle gauge tools, we will use one tool, which will be moved to each of the holes, executed, and the radius value will be stored.

The complete tool set is described below (the number in the graphic below corresponds to the detail in the bulleted list that follows.)

  1. Blob tool - finds the centroid of each of the forty holes and creates a centroid (point) list.  These centroids will be used to position a Circle Gauge tool at each hole.
  2. List Sort - puts the centroids in Y-order direction.
  3. Data Set tool - clears the previous result (from tool 8), the list of Radii.
  4. List Loop tool - steps through the centroid list.  The tools inside the loop execute for every element in the list.
  5. Data Instance - uses the current centroid list element (as the List Loop tool steps through them) to create an Origin (x, y, and angle).
  6. Circle Gauge - finds the internal radius of the tabs in each hole.
  7. Data Set tool - adds the current radius value to the final list of radii.
  8. Data Instance - stores the list of radii for all the holes.

The final result is the list of 40 radius values as shown in the Data Instance tool property tab below.


In summary, IMPACT software is very efficient at working with list data from vision algorithms.  The List Sorter, List Loop, Data Instance, and Data Set tools can easily manipulate and step through list data to facilitate repeated operations.


An innovative leader in machine vision and laser integration deploying systems using advanced sensor technologies servicing industrial automation, scientific and military partners.