F_VN_TrainImageColorExp_ITcVnMlModel
Create a new color model, describing the image color. (expert function)
Can use available TwinCAT Job Tasks for executing parallel code regions.
Can return partial results when canceled by Watchdog.
Syntax
Definition:
FUNCTION F_VN_TrainImageColorExp_ITcVnMlModel : HRESULT
VAR_INPUT
ipSrcImage : ITcVnImage;
ipColorModel : Reference To ITcVnMlModel;
nDifferentColors : UDINT;
eMethod : ETcVnColorTrainingMethod;
ipMask : ITcVnImage;
nSkipPixels : UDINT;
hrPrev : HRESULT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipSrcImage |
Source image (3 channels (RGB) of type USINT) | |
ipColorModel |
Reference To ITcVnMlModel |
Returns the color model |
nDifferentColors |
UDINT |
Number of different colors to distinguish |
eMethod |
Color training method | |
ipMask |
Optional image mask (1 channel of type USINT, set to 0 if not required) | |
nSkipPixels |
UDINT |
Number of pixels to skip between each evaluated color sample (to achieve a better performance). 0 takes every pixel into account and tends to be more accurate. |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Weiterführende Informationen
Die Funktion F_VN_TrainImageColorExp_ITcVnMlModel
ist die Expert-Variante von F_VN_TrainImageColor_ITcVnMlModel. Sie enthält weitere Parameter. Das Farbmodel kann mit den entsprechenden Funktionsbausteinen auf der Festplatte gespeichert und geladen werden.
Parameter
Referenzbild
Das Referenzbild ipSrcImage
muss 3 Kanäle im RGB-Format und den Element-Typ USINT
(8 Bit) haben.
Farbmodell
Der Parameter ipColorModel
gibt das trainierte Farbmodell zurück. Dieses ist ein Interface Pointer vom Typ ITcVnMlModel.
Anzahl zu unterscheidender Farben
Die Anzahl nDifferentColors
definiert die Anzahl an zu trainierenden Farben. Achten Sie darauf, der Bildhintergrund z. B. auch eine eigene Farbe sein kann.
Expert-Parameter
Zusätzliche Parameter finden Sie in einer weiteren Expert-Variante F_VN_TrainImageColorExp2_ITcVnMlModel.
Trainingsmethoden
Bei der Auswahl der Trainingsmethode stehen die Farbräume LAB und RGB zur Verfügung.
Maske
Die Maske ipMask
definiert, welche Pixel des Eingangsbilds ipSrcImage
in der Berechnung berücksichtigt werden. Sie wird durch ein 1-kanaliges Bild mit Element-Typ USINT beschrieben, dass dieselbe Größe wie das Eingangsbild ipSrcImage
besitzt. Alle Pixel, die im Maskenbild einen Wert <> 0 haben, werden bei der Berechnung der Cluster berücksichtigt.
Pixel-Lücke
Zur Performance Optimierung kann eine Anzahl von Pixeln übersprungen werden, so dass weniger Pixel bei der Aufteilung in die einzelnen Cluster berücksichtigt werden müssen.
Anwendung
VAR
ipColorModel : ITcVnMlModel;
END_VAR
hr := F_VN_TrainImageColorExp_ITcVnMlModel (
ipSrcImage := ipImageRef,
ipColorModel := ipColorModel,
nDifferentColors:= 5, // 4 colors + 1 background = 5
eMethod := TCVN_CTM_LAB,
ipMask := 0,
nSkipPixels := 3,
hrPrev := hr);
Verwandte Funktionen
Es gibt drei Möglichkeiten die Referenzfarbe an die entsprechende F_VN_ReferenceColorSimilarity
Funktion zu übergeben:
- Als trainiertes Farbmodell vom Typ
ITcVnColorModel
- Als trainiertes Farbmodell vom Typ
ITcVnMlModel
- Direkt mit Werten in einem
TcVnVector3_LREAL
Für die Farbmodelle gibt es entsprechende Funktionen zum Trainieren und für alle drei Datentypen jeweils eine Funktion zur Ausführung:
- F_VN_TrainImageColor zum Trainieren eines Farbmodells
- F_VN_ReferenceColorSimilarity zur Segmentierung mittels Farbmodell
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 |