---
title: "Objektspeicher"
product: "LumiScan Object Finder"
component: "lumiscan-object-finder-de"
version: "1.1.0"
display_version: "1.1.0.7"
latest_version: true
language: "de"
url: "https://docs.hdvisionsystems.com/de/lumiscan-object-finder-de/1.1.0/lumiscan-object-finder/object-storage.html"
---

# Objektspeicher – LumiScan Object Finder

## Eine Datei pro Objekt

Ein Objekt **ist** sein Bild: eine `.png`-Datei auf der obersten Ebene des Objektverzeichnisses, benannt nach dem Objekt.

```
<configuration directory>/objects/
├── screw-m6.png
└── bracket.png
```

was die Anwendung veröffentlicht als

```
system/objects = ["bracket", "screw-m6"]
```

Es gibt keine zweite Liste, weil es nichts anderes aufzulisten gibt - die Objekt-ID und das Bild sind dasselbe. Ein Detektor wird um genau ein Bild herum aufgebaut, sodass eine zweite Ansicht eines Objekts nirgends hingehört: Ein Objekt, das in zwei Orientierungen erkannt werden muss, ist zwei Objekte, `screw-m6-front` und `screw-m6-tilted`, nach denen nacheinander gesucht wird.

Alles, was keine `.png`-Datei auf der obersten Ebene des Verzeichnisses ist, wird übersprungen, Unterverzeichnisse eingeschlossen.

Nur kleingeschriebenes `.png` wird aufgelistet. `.PNG` wird bewusst ignoriert: Ein Abgleich ohne Berücksichtigung der Groß-/Kleinschreibung ließe `screw.png` und `screw.PNG` zu einem Eintrag zusammenfallen, und die Liste würde nicht mehr sagen, auf welche Datei ein Name verweist.

## Objekte auf das Gerät bringen

Entweder lernen Sie sie mit [create-object](https://docs.hdvisionsystems.com/de/lumiscan-object-finder-de/1.1.0/lumiscan-object-finder/creating-an-object.html) von der Kamera ein, oder Sie legen `.png`-Dateien in der obigen Struktur in das Konfigurationsverzeichnis der Anwendung: auf ctrlX OS hochladen, auf einem PC hineinkopieren. Das Konfigurationsverzeichnis und sein Standardordner `objects` werden beim Start angelegt, sodass es direkt nach der Installation einen Ort dafür gibt.

| Plattform | Konfigurationsverzeichnis |
| --- | --- |
| ctrlX OS | `/var/snap/rexroth-solutions/common/solutions/activeConfiguration/lumiscan-object-finder`, Teil der aktiven Solution |
| PC (Windows) | `%APP_RESOURCE_DIR%\etc\lumiscan-object-finder`; ohne `APP_RESOURCE_DIR` `C:\ProgramData\HD Vision Systems GmbH\LumiScan Vision Suite\lumiscan-obj-find\etc\lumiscan-object-finder` |

## Das Verzeichnis wechseln

`system/object-dir` nennt das verwendete Verzeichnis. Es ist **schreibgeschützt**, und `system/set-object-dir` ist das Einzige, was es ändert:

```
system/set-object-dir/input/object-dir = production-parts
write system/set-object-dir/execute
```

Die Methode prüft zuerst und veröffentlicht `object-dir` und `objects` gemeinsam, sodass ein abgelehnter Aufruf beide genau so lässt, wie sie waren, und die Listen immer das tatsächlich verwendete Verzeichnis beschreiben. Die Wahl wird gespeichert und übersteht einen Neustart.

Das Verzeichnis muss im Konfigurationsverzeichnis bereits existieren. Es wird bewusst nicht für Sie angelegt: Das Standardverzeichnis wird beim Start erzeugt, ein fehlendes bedeutet also einen Tippfehler, und das stille Anlegen eines leeren Ordners würde ihn verbergen.

> [!NOTE]
> Der Data Layer erzwingt den Schreibschutz der eigenen Knoten einer Anwendung nicht. Ein Client, der direkt auf `system/object-dir` schreibt, ändert also den angezeigten Wert. Er ändert **nicht**, welches Verzeichnis die Anwendung liest, und die Listen beschreiben dann einen anderen Ordner, als der Knoten behauptet. Verwenden Sie `set-object-dir`.

## Pfadregeln

`object-dir` und `object-id` werden beide relativ zum Konfigurationsverzeichnis interpretiert. Absolute Pfade und jeder Pfad, der mit `..` hinausführt, werden mit Status `-2` abgelehnt. Die Anwendung kann Vorlagen daher nur innerhalb ihres eigenen Konfigurationsbereichs lesen und schreiben, was auch immer ein Client verlangt.

## Wann Änderungen bemerkt werden

`system/objects` wird beim Start aktualisiert, wenn `set-object-dir` das Verzeichnis wechselt und wenn `create-object` eine Vorlage speichert.

Dateien, die auf anderem Weg hinzugefügt oder entfernt werden - ein Upload oder eine SSH-Sitzung auf ctrlX OS, auf einem PC von Hand hineinkopierte oder gelöschte Dateien -, werden beim nächsten dieser Ereignisse oder beim nächsten Neustart übernommen. Jede Aktualisierung lässt außerdem jedes Modul seinen Detektor neu aufbauen, sodass eine vom Datenträger entfernte Vorlage nicht mehr gefunden werden kann.
