F_VN_DoubleThreshold

F_VN_DoubleThreshold 1:

Apply a double threshold (also called hysteresis threshold) using morphological reconstruction.
Can use available TwinCAT Job Tasks for executing parallel code regions.

Syntax

Definition:

FUNCTION F_VN_DoubleThreshold : HRESULT
VAR_INPUT
    ipSrcImage     : ITcVnImage;
    ipDestImage    : Reference To ITcVnImage;
    fLowThreshold  : LREAL;
    fHighThreshold : LREAL;
    fMaxValue      : LREAL;
    hrPrev         : HRESULT;
END_VAR

F_VN_DoubleThreshold 2: Inputs

Name

Type

Description

ipSrcImage

ITcVnImage

Source image (USINT, UINT, INT, REAL, or LREAL, 1 channel)

ipDestImage

Reference To ITcVnImage

Destination image (An appropriate destination image will be created if required.)

fLowThreshold

LREAL

Low threshold determinining the shape of found regions

fHighThreshold

LREAL

High threshold selecting found regions (Each region must at least contain a single pixel if the high threshold is applied.)

fMaxValue

LREAL

Maximum pixel value

hrPrev

HRESULT

HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.)

F_VN_DoubleThreshold 3: Return value

HRESULT

Weiterführende Informationen

Die Funktion F_VN_DoubleThreshold berechnet einen Doppelschwellwert mittels morphologischer Rekonstruktion. Die Funktion erwartet, dass die gesuchten Segmente heller sind als der Hintergrund und ermöglicht, im Vergleich zur Funktion F_VN_Threshold, eine zusätzliche Filterung der ermittelten Bildsegmente.

Parameter

Eingangsbild

Das Eingangsbild ipSrcImage muss ein 1-kanaliges Grauwertbild sein.

Ergebnisbild

Das binäre Ergebnisbild ipDestImage hat das gleiche Format wie das Eingangsbild. Die Pixel haben entweder den Wert 0 oder den Zielwert fMaxValue.

Unterer Schwellwert

Der untere Schwellwert bestimmt die Form der gefundenen Segmente wie die Funktion F_VN_Threshold.

Oberer Schwellwert

Der obere Schwellwert dient dazu, Bildsegmente zu markieren, deren Form dann auf der Basis des niedrigen Schwellwerts berechnet wird. Auf diese Weise können unerwünschte Segmente herausgefiltert werden, deren Grauwerte größer als die untere Schwelle und kleiner als die obere Schwelle sind.

Zielwert

Der Zielwert fMaxValue definiert, welchen Wert die Pixel bekommen sollen, die das jeweilige Schwellwert-Kriterium erfüllen. Wenn das Ergebnisbild nur aus schwarzen und weißen Pixeln bestehen soll, muss hier der Maximal-Wert des Element-Typs des Eingangsbilds eingestellt werden. Dies entspricht (2^d)-1, wobei d die Bittiefe des Element-Typs darstellt; z. B. (2^8)-1=255 bei 8-Bit-Bildern.

Anwendung

hr := F_VN_DoubleThreshold(
    ipSrcImage      := ipSrcImage,
    ipDestImage     := ipDestImage,
    fLowThreshold   := fLowThreshold,
    fHighThreshold  := fHighThreshold,
    fMaxValue       := 255,
    hrPrev          := hr);

Verwandte Funktionen

Required License

TC3 Vision Base

System Requirements

Development environment

Target platform

PLC libraries to include

TwinCAT V3.1.4024.59 or later

PC or CX (x64) with PL50, e.g. Intel 4-core Atom CPU

Tc3_Vision