F_VN_SobelFilter

F_VN_SobelFilter 1:

Calculates the first, second, or mixed image derivatives using an extended Sobel filter.

Syntax

Definition:

FUNCTION F_VN_SobelFilter : HRESULT
VAR_INPUT
    ipSrcImage  : ITcVnImage;
    ipDestImage : Reference To ITcVnImage;
    eDestDepth  : ETcVnElementType;
    nXOrder     : UDINT;
    nYOrder     : UDINT;
    hrPrev      : HRESULT;
END_VAR

F_VN_SobelFilter 2: Inputs

Name

Type

Description

ipSrcImage

ITcVnImage

Source image

ipDestImage

Reference To ITcVnImage

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

eDestDepth

ETcVnElementType

Destination image depth

nXOrder

UDINT

Order of the x-derivative (0, 1, 2)

nYOrder

UDINT

Order of the y-derivative (0, 1, 2)

hrPrev

HRESULT

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

F_VN_SobelFilter 3: Return value

HRESULT

Weiterführende Informationen

Die Funktion F_VN_SobelFilter wendet einen Sobel-Filter auf das Eingangsbild an. Der Sobel-Filter dient zur Kantendetektion. Kanten im Eingangsbild werden als helle Linien auf dunklem Hintergrund im Ergebnisbild hervorgehoben.

Algorithmus

Der erweiterte Sobel-Filter kann verwendet werden um Kanten zu detektieren, indem die n-te Ableitung der Übergänge benachbarter Pixelintensitäten approximiert wird. Da die Ableitung auch negative Werte hat, empfiehlt es sich einen vorzeichenbehafteten Elementtyp für das Ergebnisbild zu verwenden (z. B. TCVN_ET_INT).

Der Kernel des Filters wird durch die Parameter der Funktion bestimmt. Typischerweise wird die Funktion mit nXOrder = 1, nYOrder = 0, nKernelSize = 3 oder nXOrder = 0, nYOrder = 1, nKernelSize = 3 aufgerufen. Diese Parameter führen zu den Kerneln Gx und Gy.

F_VN_SobelFilter 4:

Für diese Kernel kombiniert der Filter die Gaußsche Glättung mit der Berechnung der ersten Ableitung, so dass das Ergebnis recht rauschresistent ist. Gx betont vertikale Kanten, Gy betont horizontale Kanten.

Parameter

Originalbild

Das Originalbild ipSrcImage kann jedes verfügbare Format haben.

Ergebnisbild

Das Ergebnisbild ipDestImage liefert das Filter-Ergebnis zurück und besitzt das gleiche Format wie das Originalbild ipSrcImage.

Ergebnistiefe

Die Ergebnistiefe eDestDepth definiert, welchen Element-Typ das Ergebnisbild ipDestImage hat. Ein größerer Element-Typ kann mehr Informationen darstellen.

Ableitungsordnung

Die Ableitungsordnungen nXOrder und nYOrder definieren, die wievielte Ableitung in X- und Y-Richtung verwendet werden soll, um den Filter zu erstellen.

Expert-Parameter

Weitere Parameter finden Sie in der Expert-Variante F_VN_SobelFilterExp.

Anwendung

hr := F_VN_SobelFilter(
    ipSrcImage  :=  ipImageIn,
    ipDestImage :=  ipImageRes,
    eDestDepth  :=  TCVN_ET_USINT,
    nXOrder     :=  1,
    nYOrder     :=  1,
    hrPrev      :=  hr,
);

Originalbild

Ergebnisbild

F_VN_SobelFilter 5:

F_VN_SobelFilter 6:

Beispiele

Required License

TC3 Vision Base

System Requirements

Development environment

Target platform

PLC libraries to include

TwinCAT V3.1.4024.54 or later

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

Tc3_Vision