Overlays
Ein Overlay ist eine feste Form, die das Cockpit über ein Bild zeichnet - eine Region von Interesse, eine Ausrichtmarke, eine Grenze, an der der Bediener ein Teil beurteilen soll. Es wird auf Einzelbilder und auf die Frames einer Live-Ansicht gleichermaßen gezeichnet. Anders als die Funde in Ergebnisse ansehen stammt ein Overlay von Ihnen und nicht von einer Anwendung, und es ändert sich nicht von Frame zu Frame.
Overlays werden in einer JSON-Datei konfiguriert, der Einstellungsdatei des Cockpits:
Auf ctrlX OS: Die Datei ist über die Dateiansicht auf dem ctrlX-Startbildschirm erreichbar.
Auf einem PC: Die Datei ist lumiscan-cockpit.json in dem Ordner, aus dem das Cockpit seine
Einstellungen liest. Unter Windows ist das %APP_RESOURCE_DIR%\etc\lumiscan-cockpit, wenn die
Umgebungsvariable APP_RESOURCE_DIR gesetzt ist, andernfalls
C:\ProgramData\HD Vision Systems GmbH\LumiScan Vision Suite\lumiscan-cockpit\etc\lumiscan-cockpit.
Öffnen Sie sie in einem beliebigen Texteditor, am besten in einem, der JSON gegen das Schema im Ordner
schemas prüft. Das Cockpit schreibt auf Wunsch ein Beispiel der Datei, siehe
Mit einem Beispiel beginnen.
|
Die Datei wird einmal, beim Start gelesen. Sie zu bearbeiten ändert ein laufendes Cockpit nicht -
starten Sie die Anwendung neu, damit ein geändertes Overlay übernommen wird. Dieselbe Datei enthält die
Einstellungen der Live-Ansicht ( |
Wählen, wofür ein Overlay gilt
Jedes Overlay ist nach der Anwendung und dem Bild, zu dem es gehört, in der Form appName/imageName
benannt.
Jede der beiden Hälften kann der Platzhalter * sein, der auf jeden Wert passt:
| Schlüssel | Gilt für |
|---|---|
|
dieses eine Bild dieser einen Anwendung |
|
das Ergebnisbild jeder Anwendung |
|
jedes Bild, das diese Anwendung veröffentlicht |
Eine Form definieren
Jedes Overlay-Element ist eine Form mit diesen Eigenschaften:
- Color
-
Die Farbe der Form. Entweder eine benannte Farbe -
red,green,blue,black,white,yellow,cyan,magenta- oder sechs Hexadezimalziffern,RRGGBB, wobei dasweggelassen werden darf. Eine Farbe, die nicht gelesen werden kann, wird weiß gezeichnet statt abgelehnt; ein Tippfehler zeigt sich also als weiße Form. - Shape
-
Die Art der zu zeichnenden Form:
rectangle,circleodercross. - Center position (
centerX,centerY) -
Die Position des Mittelpunkts der Form auf dem Bild.
- Width und height
-
Die Größe der Form. Bei Kreisen wird die Breite als Durchmesser verwendet.
Relative und absolute Koordinaten
Position und Größe folgen einer gemeinsamen Regel, die erlaubt, ein Overlay auf beide Arten zu schreiben:
-
Werte unter
1.0sind relativ zu den Bildabmessungen -0.0ist der linke oder obere Rand,0.5die Mitte,0.99fast der gegenüberliegende Rand. -
Werte von
1.0und darüber sind absolute Pixel-Koordinaten.
Ein relatives Overlay behält seinen Platz, wenn sich die Kameraauflösung ändert; ein absolutes bleibt auf denselben Pixeln.
|
Dieselbe Falle gilt für die Größe: Eine |
Beispiel
Diese Konfiguration fügt ein grünes Rechteck in der Bildmitte hinzu und einen roten Kreis, der einen bestimmten Bereich hervorhebt:
{
"overlay": {
"lumiscan-cam-driver/resultImage": [
{
"color": "green",
"shape": "rectangle",
"centerX": 0.5,
"centerY": 0.5,
"width": 0.4,
"height": 0.3
},
{
"color": "red",
"shape": "circle",
"centerX": 75,
"centerY": 25,
"width": 100,
"height": 100
}
]
}
}
Das grüne Rechteck wird mit relativen Koordinaten in der Bildmitte zentriert - 50 % von links, 50 % von oben, vier Zehntel der Breite und drei Zehntel der Höhe. Der rote Kreis verwendet absolute Pixelkoordinaten: Sein Mittelpunkt liegt 75 Pixel vom linken Rand und 25 Pixel vom oberen Rand entfernt, und er ist 100 Pixel groß.
Vollständige Referenz
Alle Einstellungen dieser Datei, wie sie ihr JSON-Schema lumiscan-cockpit.schema.json festlegt, erzeugt für Version 1.2.0 (Beschreibungen aus dem Schema, auf Englisch):
| Einstellung | Typ | Standard | Zulässige Werte | Beschreibung |
|---|---|---|---|---|
|
object |
Pflichtangabe. Overlay settings for image annotations |
||
|
object[] |
Array of overlay elements to be drawn on the image. The name of this should follow the format appName/imageName it is possible to use a * as a wildcard for either part |
||
|
string |
Muster |
Pflichtangabe. Color of the overlay element. Can be a named color (red, green, blue, black, white, yellow, cyan, magenta) or hex format (#RRGGBB or RRGGBB) |
|
|
string |
|
Pflichtangabe. Shape type of the overlay element |
|
|
number |
Pflichtangabe. X-coordinate of the shape center. Values < 1.0 are relative to image width (0.0-1.0), values >= 1.0 are absolute pixel coordinates |
||
|
number |
Pflichtangabe. Y-coordinate of the shape center. Values < 1.0 are relative to image height (0.0-1.0), values >= 1.0 are absolute pixel coordinates |
||
|
number |
Pflichtangabe. Width of the shape. Values < 1.0 are relative to image width (0.0-1.0), values >= 1.0 are absolute pixel values. For circles, this is the diameter |
||
|
number |
Pflichtangabe. Height of the shape. Values < 1.0 are relative to image height (0.0-1.0), values >= 1.0 are absolute pixel values |
JSON-Schemas
Die Anwendung legt die JSON-Schemas ihrer Einstellungsdateien in ihrem Ordner schemas ab; diese Kopien passen immer zur installierten Version.
Die Schemas von LumiScan Cockpit 1.2.0 stehen außerdem zum Download bereit: JSON-Schemas von LumiScan Cockpit 1.2.0.
Damit ein Editor wie Visual Studio Code eine Kopie einer Einstellungsdatei prüft, die Sie auf Ihrem PC bearbeiten, lassen Sie deren Eintrag $schema auf das veröffentlichte Schema zeigen:
{
"$schema": "https://docs.hdvisionsystems.com/schemas/lumiscan-cockpit/1.2.0/lumiscan-cockpit.schema.json",
...
}
Lassen Sie den Eintrag $schema der Dateien auf dem Gerät so, wie die Anwendung ihn geschrieben hat.