Eine Vorlage erstellen

Eine Vorlage ist ein kleines Bild des Teils, das Sie finden wollen. Diese Operation schneidet eine Vorlage aus einem Live-Kamerabild aus und speichert sie; die Vorlage stammt also von der echten Kamera bei der echten Beleuchtung.

Die Operation gehört zur gesamten Anwendung, nicht zu einem Modul, und liegt deshalb auf dem Systemknoten:

hdvisionsystems/lumiscan-template-finder/system/create-template/

Eingaben

Knoten Typ Standard Beschreibung

input/input-image-address

string

(leer)

Data-Layer-Adresse des Bilds, aus dem ausgeschnitten wird. Erforderlich

input/crop/startX

int32

0

Linker Rand der Region, in Pixeln vom linken Bildrand

input/crop/startY

int32

0

Oberer Rand der Region, in Pixeln vom oberen Bildrand

input/crop/width

int32

0

Breite der Region in Pixeln. Muss größer als 0 sein

input/crop/height

int32

0

Höhe der Region in Pixeln. Muss größer als 0 sein

input/template-name

string

(leer)

Name, unter dem gespeichert wird. .png wird angehängt, wenn Sie keine Erweiterung angeben. Verwenden Sie einen Namen in Kleinbuchstaben: Nur .png-Dateien in Kleinbuchstaben erscheinen auf system/templates. Erforderlich

Die Vorlage wird in system/template-dir geschrieben, das sich die gesamte Anwendung teilt; sie ist also für jedes Modul nutzbar, sobald sie gespeichert ist.

Ausgaben

Knoten Typ Beschreibung

output/template-path

string

Pfad der geschriebenen Datei, relativ zum Konfigurationsverzeichnis

output/status-code

int16

Ausführungsstatus

output/status-text

string

Dasselbe Ergebnis in Worten

output/template-path ist so aufgeteilt, wie die Suche es erwartet: templates/screw.png bedeutet, das Vorlagenverzeichnis der Suche auf templates und ihren Vorlagennamen auf screw.png zu setzen.

Vorgehen

  1. Stellen Sie sicher, dass die Kameraanwendung ein Bild aufgenommen hat.

  2. Setzen Sie input/input-image-address.

  3. Setzen Sie die vier Werte unter input/crop/ auf die Region, die das Teil enthält.

  4. Setzen Sie input/template-name.

  5. Schreiben Sie auf system/create-template/execute.

  6. Lesen Sie output/status-code. Bei 1 benennt output/template-path die neue Vorlage.

Durchsuchen Sie sofort dasselbe Bild nach der eben ausgeschnittenen Vorlage. Sie muss genau in der Mitte der angegebenen Region gefunden werden, mit einer Konfidenz nahe 1. Ist das nicht der Fall, liegt das Problem an der Region oder der Bildquelle - nicht an den Suchparametern. Das dauert wenige Sekunden und erspart später viel Rätselraten.

Eine gute Region wählen

Nehmen Sie auf, was das Teil kennzeichnet, und lassen Sie weg, was variiert

Hintergrund, der sich von Teil zu Teil ändert, senkt jeden Score.

Halten Sie die Region klein, aber markant

Der Matching-Aufwand wächst mit der Fläche der Vorlage. Ein kleines, kontrastreiches Merkmal ist schneller und zuverlässiger als das ganze Teil.

Halten Sie Abstand zum Bildrand

Eine Vorlage, die den Bildrand berührt, kann nahe dem gegenüberliegenden Rand nicht gefunden werden, weil die Vorlage vollständig in das durchsuchte Bild passen muss.

Denken Sie an das Binning

Wenn die Suche mit Binning läuft, muss die Vorlage nach dem Herunterskalieren noch erkennbar sein. Bei einer Bin-Größe von 4 wird aus einem 20 Pixel breiten Merkmal eines mit 5 Pixeln.

Geschriebene Datei

Die Region wird als Standard-PNG mit 8-Bit-RGB geschrieben, unabhängig vom Pixelformat der Kamera - Bayer-Bilder werden vorher in Farbe umgewandelt und 12-Bit-Bilder herunterskaliert.

Das Zielverzeichnis wird angelegt, wenn es nicht existiert.

Eine vorhandene Datei mit demselben Namen wird ohne Warnung überschrieben. Verwenden Sie einen neuen Vorlagennamen, wenn Sie die alte Vorlage behalten wollen.