F_VN_SalientFeatures
Compute salient features from the input image using the specified method.
Syntax
Definition:
FUNCTION F_VN_SalientFeatures : HRESULT
VAR_INPUT
ipSrcImage : ITcVnImage;
ipDestImage : Reference To ITcVnImage;
eMethod : ETcVnSalientFeaturesMethod;
hrPrev : HRESULT;
END_VARInputs
|
Name |
Type |
Description |
|---|---|---|
|
ipSrcImage |
Source image (USINT elements, 1 or 3 channels; 3 channel input is expected to be RGB and internally converted to Gray). | |
|
ipDestImage |
Reference To ITcVnImage |
Destination image (1 channel image of type TCVN_ET_UINT, an appropriate destination image will be created if required.) |
|
eMethod |
Method to compute salient features. | |
|
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Weiterführende Informationen
Die Funktion F_VN_SalientFeatures berechnet aus dem Eingangsbild eine Saliency-Karte, die Bildbereiche mit besonders hohem Informationsgehalt hervorhebt. Typischerweise sind das Kanten, Übergänge und periodische Strukturen. Das Ergebnis ist ein Ausgabebild, in dem hohe Pixelwerte auf auffällige Bildregionen hinweisen.
Mithilfe von F_VN_FindRois können aus dem Ausgabebild relevante Regionen extrahiert werden, um große Eingangsbilder auf mehrere interessante Bereiche zu reduzieren. Durch diese Reduzierung auf interessante Bildbereiche wird ebenfalls die notwendige Rechenzeit reduziert, da nicht mehr das vollständige Bild analysiert werden muss. Zum Beispiel können so Bildbereiche mit Codes ermittelt werden, die dann der F_VN_DetectCodesNeuralNetwork für die genauere Detektion der Coderegion übergeben werden. Durch die Reduzierung der Bildgröße auf einzelne Regionen mit einem kleineren Bildbereich können so auch kleinere Modelltypen verwendet werden.
Das Saliency-Bild kann nachträglich noch weiterverarbeitet werden, bevor es der F_VN_FindRois übergeben wird. Dadurch können die Merkmale applikationsspezifisch weiter gefiltert und angepasst werden, so dass sich die Erkennung und Stabilität der ROI-Extraktion erhöhen.
Parameter
Eingangsbild
Das Eingangsbild ipSrcImage muss vom Typ USINT sein und entweder 1 oder 3 Kanäle aufweisen. Bei einem 3-kanaligen Bild wird dieses intern als RGB interpretiert und automatisch in ein Graustufenbild konvertiert. Um diesen internen Konvertierungsschritt und die damit verbundene zusätzliche Rechenzeit zu vermeiden, empfiehlt es sich, das Bild bereits als 1-kanaliges Graustufenbild zu übergeben.
Ergebnisbild
Das Ergebnisbild ipDestImage ist ein 1-kanaliges Bild vom Typ UINT. Hohe Pixelwerte im Ausgabebild markieren saliente (auffällige) Bildregionen.
Die Saliency-Werte sind methoden- und bildabhängig zu interpretieren. In der Praxis sollte daher mit relativen Kriterien gearbeitet werden statt mit starren absoluten Grenzwerten.
Das Ausgabebild kann direkt an F_VN_FindRois übergeben werden. In Anwendungen mit störendem Bildinhalt empfiehlt es sich, das Saliency-Bild vorab zu filtern, um falsche Regionen zu unterdrücken. Geeignete Methoden sind beispielsweise eine Schwellwertoperation mit F_VN_Threshold oder das Filtern mit morphologischen Operatoren F_VN_MorphologicalOperator. Falls dieses Ausgabebild angezeigt werden soll, kann die F_VN_NormalizeImageForDisplay verwendet werden.
Methode zur Merkmalberechnung
Der Parameter eMethod vom Typ ETcVnSalientFeaturesMethod bestimmt das interne Verfahren zur Berechnung der Saliency-Karte. Die Wahl der Methode hängt vom Bildinhalt und dem gewünschten Ergebnis ab. Es stehen folgende Methoden zur Verfügung:
TCVN_SFM_WALSH_CODE: Berechnung auf Basis der Walsh-Transformation. Die Walsh-Transformation reagiert gezielt auf alternierende Helligkeitsmuster und periodische Balkenstrukturen, wie sie für 1D-Barcodes charakteristisch sind. Die Methode kann auch Regionen mit 2D-Codes hervorheben, ist jedoch primär auf 1D-Codes ausgelegt.TCVN_SFM_SOBEL: Berechnung auf Basis von Sobel- und Robinson-Kompass-Filtern. Diese Filter reagieren auf Kantenpräsenz in mehreren Richtungen und eignen sich damit für Bildregionen, deren Salienz primär durch ausgeprägte Kanteninformation definiert ist, wie sie häufig bei 2D-Codes (z. B. DataMatrix, QR-Code) vorkommt.
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 min. PL50, e.g. Intel 4-core Atom CPU | Tc3_Vision |