F_VN_ReadBarcodeRoi
Detect and interpret a 1d barcode within the provided image. For best performance, the code should be horizontally aligned and in the image center.
Syntax
Definition:
FUNCTION F_VN_ReadBarcodeRoi : HRESULT
VAR_INPUT
ipSrcImage : ITcVnImage;
ipDecodedData : Reference To ITcVnContainer;
eBarcodeType : ETcVnBarcodeType;
hrPrev : HRESULT;
END_VAR
VAR_OUTPUT
fAngleDeg : REAL;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipSrcImage |
Source image (USINT, 1 channel) | |
ipDecodedData |
Reference To ITcVnContainer |
Returns the decoded data (ContainerType_String_SINT) |
eBarcodeType |
Type of the barcode (supported: CODE39, CODE128, EAN8, EAN13, ITF, UPCA, UPCE) | |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Outputs
Name |
Type |
Description |
---|---|---|
fAngleDeg |
REAL |
Returns the approximate clockwise rotation angle in degree |
Weiterführende Informationen
Die Funktion F_VN_ReadBarcodeRoi
ist für die Erkennung eines einzelnen Barcodes innerhalb eines definierten Bildbereiches (ROI) optimiert.
Algorithmus
Dafür nutzt die Funktion einen angepassten Algorithmus, der eine zentrierte Positionierung des Codes im übergebenen Bild voraussetzt. Die Funktion sucht zunächst nach horizontal ausgerichteten Codes und anschließend nach vertikal ausgerichteten Codes im Bild.
Parameter
Eingangsbild
Das Eingangsbild ipSrcImage
muss ein 1-kanaliges Bild mit Element-Typ USINT
(8-Bit) sein. Der Code muss sich horizontal oder vertikal ausgerichtet in der Bildmitte befinden.
Gelesene Daten
Die aus dem Code gelesenen Daten werden als String in dem Container ipDecodedData
zurückgegeben. Der Container ist dabei vom Typ ContainerType_String_SINT
. Wurde der Code erfolgreich gefunden und decodiert kann der Inhalt über die Funktion F_VN_ExportContainer_String in einen String exportiert werden.
hr := F_VN_ExportContainer_String(ipDecodedData, sText, nMaxLength, hr);
Barcode-Typ
Der Parameter eBarcodeType
definiert den Barcode-Typ, der gelesen werden soll. Es kann nur ein Barcode-Typ pro Funktionsaufruf übergeben werden. Die folgenden Barcode-Typen aus dem Enum ETcVnBarcodeType werden unterstützt:
TCVN_BT_CODE39
TCVN_BT_CODE128
TCVN_BT_EAN8
TCVN_BT_EAN13
TCVN_BT_ITF
TCVN_BT_UPCA
TCVN_BT_UPCE
Drehwinkel (Rückgabewert)
Der Rückgabewert fAngleDeg
gibt den Drehwinkel im Uhrzeigersinn in 90°-Schritten zurück.
Expert-Parameter
Die Expert-Variante F_VN_ReadBarcodeRoiExp enthält zusätzliche Parameter.
Verwandte Funktionen
Required License
TC3 Vision Code Reading
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 |