Collapse
CollapsingX
  • - or -

Customizing edge extraction


When adding a feature using the Metrology step, you can adjust several inputs from the Configuration pane to better define the edges or edgels of the required feature. This typically applies to most physically measured features. Note that some edge extraction settings are available for constructed features. For example, you can modify Polarity and Data angle tolerance inputs for a constructed best-fit segment feature.

Polarity

When searching for edge candidates, you can use the Polarity input to select only edges with a certain polarity. The edge's polarity indicates whether edges were established as a transition from light to dark, or vice versa. By selecting (from the dropdown list) either BrightToDark or DarkToBright, only those edges that fulfill this constraint will be selected. Selecting Any will select edges with both transitions. In the following image, the solid gray line represents BrightToDark polarity, while the dotted gray line represents DarkToBright.

Smoothing

The Metrology step's Smoothness input allows you to control the degree of smoothness applied in the edge extraction. The smoothing operation evens out rough edges and removes noise; in effect, the smoothness factor affects which edges are extracted.

The range of this input varies from 0 (no smooth) to 100 (a very strong smooth). The default setting is 50.0.

Increasing the smoothness value does not affect the processing time. However, a very high smoothness level can result in a loss of important detail and a decrease in precision. Note that the range of smoothness is not linear; that is, the higher the smoothness factor, the greater the difference between settings. For example, changing the smoothness from 30.0 to 50.0 is less significant than changing the smoothness from 50.0 to 70.0.

Advanced smoothing

You can access more smoothness settings from the Properties pane. Note that the Smoothness input is only relevant if the FilterType input is set to Deriche or Shen. Note also that if you are using a Finite Impulse Response (FIR) filter, the smoothness value is ignored. For more information about FIR and other filters, see the Filtering subsection of the ImageProcessing step operations section in Chapter 9: ImageProcessing step.

Data angle tolerance

The Data angle tolerance input specifies the angular range within which an edgel can qualify, when building a feature. Qualifying edgels are called active edgels. Edgels with an incorrect polarity are rejected first. Then, remaining edgels are considered active if they align with the search region's scan direction, and lie within the specified Data angle tolerance.

The following example shows how the Data angle tolerance input affects a measured segment feature.

Thresholding

Thresholding determines which edges are extracted from the source image based on the magnitude of each edgel.

The Threshold input provides several predefined thresholds that affect edge extraction. Note that lower thresholds result in more extracted edgels. For example, a Low threshold extracts more edgels than Medium, Medium extracts more edgels than High, and so on.

The default setting High is typically sufficient since it offers a robust extraction of pertinent edgels, even in images presenting some contrast variations, noise, and non-uniform illumination. However, for multi-contrast images, or for images with a lot of noise or non-uniform illumination, some edges can be missed. In these cases, the Medium threshold setting should be used. If all relevant edges are still not being extracted, then use Low, which will get all edges over a minimum noise-based estimated threshold. Note that Low should be used carefully since a large number of unnecessary edgels might be extracted.

For images that have strong contrast, little noise, and consistent illumination, you can use the VeryHigh threshold input, since it extracts only the strongest edges. Note that VeryHigh should also be used carefully, since pertinent edgels might not be extracted.

The Metrology step uses a hysteresis thresholding when locating edges or edgels of an object. That is, the extracted edge chains are built such that the magnitude values of all connected edgels are stronger than a lower bound threshold value, and at least one edgel in each edge chain has a magnitude that is stronger than an upper bound threshold value. Each threshold setting automatically selects appropriate values for the lower and the upper bound threshold, based on an internal image evaluation and noise estimation.

Edgel selection rank

The Edgel selection rank refers to which edgels to select when scanning from the beginning to the end of a search region. For example, if there are several possible edgels in the search region, the rank will determine whether the first edgel found, as opposed to the second or any subsequent edgel, is selected. Setting the rank to 1 selects the edgels closest to the beginning of the search region; selecting Last will select the edgels furthest from the beginning of the search region. Setting Edgel selection rank to Disable or Default will select all edgels in the search region.

In the following example, there are multiple edges in the search region. The solid gray line illustrates the edgels selected when Edgel selection rank is set to 1; the dotted gray line illustrates the edgels selected when Edgel selection rank is set to 2. Setting Edgel selection rank to Last will select the entire upper row.