# Datensatz-Erfassung

Der schnellste Weg, ein leistungsfähiges KI-Modell zu erstellen, besteht darin, Daten gezielt zu erfassen. Diese Seite erklärt, wie Sie mit den nativen Werkzeugen von AugeLab Studio hochwertige Bilder und Videos sammeln.

{% hint style="info" %}
Sie können diesen Abschnitt überspringen, wenn Sie bereits einen Ordner mit Bildern/Videos zur Annotation bereit haben.
{% endhint %}

***

## Planung Ihres Datensatzes

Es ist wichtig, den Datensatz vor der Aufnahme zu planen. Ein gut strukturierter Datensatz führt zu besserer Modellleistung.

### 📊 Wie viele Daten benötigen Sie?

Die benötigte Anzahl an Bildern hängt davon ab, wie sehr sich die Umgebung verändert. Verwenden Sie diese Tabelle als Ausgangspunkt für Ihr Sammelziel.

| Projekttyp             | Umgebung                                              | Empfohlene Bilder pro Klasse\* |
| ---------------------- | ----------------------------------------------------- | ------------------------------ |
| **Einfach**            | Kontrollierte Beleuchtung, feste Kamera, 1–2 Klassen. | **50 - 150**                   |
| **Industriell**        | Fabrikumgebung, Schichtwechsel, Förderband.           | **200 - 500**                  |
| **Komplex**            | Variable Beleuchtung, viele Klassen, bewegte Kamera.  | **1.000+**                     |
| **Komplex Außen**      | Außenbereich mit Wetterwechsel.                       | **2.000+**                     |
| **Seltene Ereignisse** | Erkennung gelegentlicher Defekte oder Lecks.          | **50 Ziel / 100 Leer**         |

> \*Bilder pro Klasse bezieht sich auf die Anzahl annotierter Instanzen jeder Objektkategorie, nicht nur auf die Gesamtanzahl der Bilder.

{% hint style="info" %}
Für beste Ergebnisse streben Sie innerhalb Ihres Datensatzes nach **Vielfalt** in Blickwinkeln, Abständen und Beleuchtung.
{% endhint %}

{% hint style="warning" %}
Die Anzahl der Klassen sollte im Datensatz konsistent sein. Falls nicht, kann später durch **Augmentation** ausgeglichen werden.
{% endhint %}

***

### 🏗️ Grenzen definieren

Notieren Sie diese Punkte, bevor Sie das erste Foto machen, damit Ihr Datensatz **repräsentativ** und **konsistent** ist.

1. **Class List**: Welche spezifischen Objekte sollen erkannt werden?
2. **Camera Specs**: Welcher Montagewinkel, Abstand und Field of View (FoV) wird verwendet? Einzel- oder Mehrfachkameras?
3. **Variationen**: Gibt es Änderungen in der Beleuchtung (Reflexe/Schatten) oder Hintergrundunruhe?
4. **Negatives**: Wie sieht eine „leere“ Szene aus?
5. **Scope**: Welche Objekte soll das Modell absichtlich ignorieren?

***

## Kameraeinstellungen

Egal ob USB-Kamera, IP-Kamera oder Industriekamera: Stellen Sie vor der Aufnahme sicher, dass folgende Einstellungen optimiert sind:

* **Resolution**: Zielbereich 480p bis 720p (640x480 ist ein gängiger Standard). Höhere Auflösungen können später herunterskaliert werden.
* **Frame Rate**: 15–30 FPS sind für die meisten Objekterkennungsaufgaben ausreichend.
* **Focus**: Auf manuellen Fokus stellen, um Verschiebungen während der Aufnahme zu vermeiden.
* **Exposure**: Manuelle Belichtungseinstellungen verwenden, um konstante Lichtverhältnisse zu gewährleisten.
* **Save Settings**: Speichern Sie Ihr Kamera-Preset, viele Kameras erlauben das Speichern von Voreinstellungen, damit die Konfiguration über Sessions hinweg gleich bleibt.

## Datenerfassung

Sie können Bilder und Videos für Ihren Objekterkennungs-Datensatz direkt in AugeLab Studio mit integrierten Tools aufnehmen. Das sorgt für Kompatibilität und vereinfacht den Annotationsprozess.

> Eine Alternative ist das Herunterladen öffentlicher Datensätze oder die Nutzung externer Kameras/Software, was jedoch zusätzliche Formatierungsschritte erfordern kann.

### Aufnahme innerhalb von AugeLab Studio

Im Studio-Umfeld können Sie Trigger (Buttons, PLC-Signale oder Timer) nutzen, um die Erfassung zu automatisieren.

### 1. Starten Sie mit dem Beispielprojekt

AugeLab enthält eine vorkonfigurierte Vorlage für diese Aufgabe.

* Path: `File` → `Example Projects` (oder "Example Scenarios")
* Project: **"Data Collection for AI Training"**

### 📸 Einzelbilder: Der `Image Write` Block

Verwenden Sie diesen Block für hochwertige, statische Frames. Gut geeignet für „gleiche Szene, viele Positionen“.

| Input/Setting      | Erklärung                                                                                                   |
| ------------------ | ----------------------------------------------------------------------------------------------------------- |
| **Folder Path**    | Ordner, in dem die Bilder gespeichert werden.                                                               |
| **Save (Trigger)** | Auf `True` setzen, um einen Frame zu speichern. Kombinieren Sie diesen Trigger mit einem Button oder Timer. |
| **Compress Image** | **Checked** = `.jpg` (kleiner)                                                                              |

### 🎥 Bewegung: Der `Record Video` Block

Ideal für Förderbänder oder schnell bewegte Inspektionen, bei denen Sie später Frames extrahieren wollen.

| Input/Setting              | Erklärung                                    |
| -------------------------- | -------------------------------------------- |
| **Video Quality**          | **Compressed** = `.mp4`                      |
| **Trigger Mode: Spacebar** | Drücken der Leertaste zum Start/Stop.        |
| **Trigger Mode: Once**     | `Record=True` schaltet die Aufnahme ein/aus. |

> Planen Sie kurze, fokussierte Clips (10–60s) statt einer einzigen großen Datei. Das erleichtert die Frame-Extraktion.

***

## 📉 Erfassen von Hintergrund- (Negative) Bildern

Ein robustes Modell muss wissen, was nicht erkannt werden soll. Erfassen Sie daher gezielt „leere“ Szenen.

* Was erfassen: Leere Förderbänder, leere Arbeitsplätze oder häufige Nicht-Ziel-Objekte (Einrichtungen, Werkzeuge).
* **Empty**: Es existiert eine Annotationsdatei, aber ohne Bounding-Boxen.
* **Excluded**: Es existiert keine Annotationsdatei für das Bild.

***

## Öffentliche Datensätze

Wenn Sie Ihren eigenen Datensatz ergänzen möchten, ziehen Sie diese öffentlichen Datensätze in Betracht:

* [COCO Dataset](https://cocodataset.org/#home) — Großes Dataset für Objekterkennung, Segmentierung und Captioning.
* [Pascal VOC](http://host.robots.ox.ac.uk/pascal/VOC/) — Standarddatensatz für Objekterkennung und Segmentierung.
* [Open Images Dataset](https://storage.googleapis.com/openimages/web/index.html) — \~9 Millionen Bilder mit Bild-Level-Labels und Bounding Boxes.
* [ImageNet](http://www.image-net.org/) — Große Bilddatenbank für Forschungszwecke im Bereich visuelle Objekterkennung.
* [Kaggle Datasets](https://www.kaggle.com/datasets) — Verschiedene Datensätze für Machine Learning, inklusive Objekterkennung.

## 📂 Ordnerstruktur & Vorbereitung

AugeLab Studio lädt Datensätze per Ordner. Stellen Sie sicher, dass Ihre Struktur so aussieht:

```
my_dataset/
  ├── 000001.jpg
  ├── 000002.jpg
  ├── background_01.png
  └── classes.names  <-- (Optional, wird während der Annotation erstellt)
```

***

## 🏁 Erfassungs-Checkliste

| Check          | Anforderung                                                                                  |
| -------------- | -------------------------------------------------------------------------------------------- |
| **Qualität**   | Vermeiden Sie starke Bewegungsunschärfe oder Überbelichtung, bei der Kanten verschwinden.    |
| **Abdeckung**  | Erfassen Sie Objekte zentriert, in den Ecken und an den Bildrändern.                         |
| **Skalierung** | Stimmen Sie den realen Kamerabstand auf die Objektgröße ab.                                  |
| **Unruhe**     | Nehmen Sie die unordentlichen Hintergründe mit auf, die die Kamera tatsächlich sieht.        |
| **Auflösung**  | Die meisten KI-Modelle arbeiten am besten zwischen 480p und 720p (durchschnittlich 640x480). |
