F_VN_LaplacianFilterExp
Apply a Laplacian filter to an image. (expert function)
Syntax
Definition:
FUNCTION F_VN_LaplacianFilterExp : HRESULT
VAR_INPUT
ipSrcImage : ITcVnImage;
ipDestImage : Reference To ITcVnImage;
eDestDepth : ETcVnElementType;
nKernelSize : UDINT;
fScale : LREAL;
fDelta : LREAL;
eBorderType : ETcVnBorderInterpolationMethod;
hrPrev : HRESULT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipSrcImage |
Source image | |
ipDestImage |
Reference To ITcVnImage |
Destination image (An appropriate destination image will be created if required.) |
eDestDepth |
Destination image depth | |
nKernelSize |
UDINT |
Aperture size used to compute the second-derivative filters (1, 3, 5, ..., 31) |
fScale |
LREAL |
Scale factor for the computed derivative values |
fDelta |
LREAL |
Delta value that is added to the results before storing them |
eBorderType |
Image border handling | |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Weiterführende Informationen
Die Funktion F_VN_LaplacianFilterExp
ist die Expert-Variante von F_VN_LaplacianFilter. Sie enthält zusätzliche Parameter.
Parameter
Eingangsbild
Das Eingangsbild ipSrcImage darf, außer den grundsätzlich nicht unterstützen Datentypen SINT und DINT, jedes verfügbare Format haben.
Ergebnisbild
Das Ergebnisbild ipDestImage hat die gleiche Größe wie das Eingangsbild ipSrcImage, das Pixelformat wird allerdings durch die Ergebnistiefe eDestDepth
bestimmt.
Ergebnistiefe
Die Ergebnistiefe eDestDepth
definiert, welchen Element-Typ das Ergebnisbild ipDestImage
hat. Ein größerer Element-Typ kann mehr Informationen darstellen.
Hinweis | |
Kombination von Eingangsbild und Ergebnistiefe Als Ergebnistiefe kann immer nur der gleiche oder ein größerer Datentyp wie der des Eingangsbildes verwendet werden, da sonst Daten verloren gehen würden. Z. B. kann ein UINT nicht in ein USINT gewandelt werden. Weiterhin bestehen noch zwei Einschränkungen, so dass ein UINT nicht in ein INT und ein REAL nicht in ein LREAL gewandelt werden können. |
Kernel-Größe
Der Parameter nKernelSize
definiert die Größe des Filter-Kernels zur Approximation der 2. Ableitung. Es sind nur ungerade Werte zwischen 1
und 31
erlaubt.
Skalierung
Das Ergebnis der Laplace-Operation wird mit dem Skalierungsfaktor fScale
multipliziert.
Delta
Das konstante Delta fDelta
wird auf das Ergebnis der Scharr-Operation nach Skalierung mit fScale
dazuaddiert.
Rand-Extrapolation
Die Art der Rand-Extrapolation eBorderType
definiert, wie nichtexistente Pixel über die Bildgrenze hinaus extrapoliert werden, um die Filterwerte an den Bildgrenzen auszurechnen. Für weitere Details siehe ETcVnBorderInterpolationMethod.
Anwendung
Das Anwenden eines Laplace-Filters mit einer Kernel-Größe von 3×3
sieht z. B. so aus:
hr := F_VN_LaplacianFilterExp(
ipSrcImage := ipImageIn,
ipDestImage := ipImageRes,
eDestDepth := TCVN_ET_USINT,
nKernelSize := 3,
fScale := 1,
fDelta := 0,
eBorderType := TCVN_BIM_DEFAULT,
hrPrev := hr
);
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 |