Zum Hauptinhalt springen

KI-GESTÜTZTE DOKUMENTATION

Was möchten Sie wissen?

Trainieren eines Segmenters

Diese Anleitung zeigt Ihnen, wie Sie die Segmentierungsfunktion des OV20i einrichten und konfigurieren, um bestimmte Merkmale oder Defekte in Ihren Teilen automatisch zu erkennen, zu vermessen und zu analysieren. Verwenden Sie die Segmentierung, wenn Sie unregelmäßige Formen identifizieren, Flächen messen oder bestimmte Muster erkennen müssen, die nicht durch eine einfache Klassifizierung erfasst werden können.

Video-Anleitung

Sehen Sie sich dieses Thema in der Praxis an: So erstellen Sie ein Segmentierungs-Rezept in wenigen Minuten

hinweis

OV10i verfügt nicht über Segmentierungsfunktionen.

Wann Segmentierung verwenden: Oberflächendefekte, Flüssigkeitsaustritte, unregelmäßige Formen, Flächenmessungen, Mustererkennung oder alle Merkmale, bei denen eine pixelgenaue Präzision erforderlich ist.

Bevor Sie beginnen

Was Sie benötigen

  • Eingerichtetes und verbundenes OV20i-Kamerasystem
  • Testteile mit Merkmalen, die Sie segmentieren möchten (z. B. Blätter mit Bleistiftmarkierungen)
  • Gute Beleuchtungsbedingungen für Ihre spezifische Anwendung
  • 15–20 Beispielbilder für das Training

Schritt 1: Segmentierungs-Rezept erstellen

1.1 Neues Rezept starten

  1. Navigieren Sie zur Seite All Recipes
  2. Klicken Sie auf + New Recipe (obere rechte Ecke)

Schaltfläche "New Recipe"

  1. Rezeptnamen eingeben: Verwenden Sie einen aussagekräftigen Namen wie „Pencil_Mark_Detection" oder „Surface_Defect_Segmentation"
  2. Rezepttyp auswählen: Wählen Sie „Segmentation" aus der Dropdown-Liste
  3. Klicken Sie auf OK, um es zu erstellen

1.2 Rezept aktivieren

  1. Suchen Sie Ihr Rezept in der Liste (wird als „Inactive" angezeigt)
  2. Klicken Sie auf Activate
  3. Klicken Sie auf Activate and go to editor, um zu bestätigen und den Recipe Editor zu starten

Schaltfläche zum Aktivieren des Rezepts

Ergebnis: Das Rezept ist nun „Active" und der Recipe Editor wird angezeigt.

Schritt 2: Kameraeinstellungen konfigurieren

2.1 Imaging-Konfiguration öffnen

  1. Klicken Sie auf Configure Imaging (unten links)

Configure Image

2.2 Fokus für die Segmentierung optimieren

Der Fokus ist entscheidend für eine genaue Kantenerkennung:

  1. Positionieren Sie Ihr Testteil im Sichtfeld der Kamera
  2. Stellen Sie den Fokus ein, bis die Kanten scharf und klar sind
  3. Testen Sie mit verschiedenen Teilen, um einen konsistenten Fokus über Ihren gesamten Bereich sicherzustellen
tipp
  • Fokussieren Sie auf die Oberfläche, auf der Defekte/Merkmale erscheinen werden
  • Stellen Sie sicher, dass der gesamte interessierende Bereich scharf ist
  • Eine leichte Überschärfe ist besser als ein weicher Fokus für die Segmentierung

2.3 Optimale Belichtung einstellen

Eine korrekte Belichtung gewährleistet eine konsistente Merkmalserkennung:

  1. Belichtung anpassen für eine ausgewogene Beleuchtung
  2. Vermeiden Sie überbelichtete Bereiche (reinweiße Flächen)
  3. Stellen Sie sicher, dass Merkmale sichtbar sind mit gutem Kontrast

Richtlinien zur Belichtung bei der Segmentierung:

  • Merkmale sollten einen deutlichen Kontrast zum Hintergrund aufweisen
  • Vermeiden Sie Schatten, die mit Defekten verwechselt werden könnten
  • Testen Sie mit verschiedenen Teilezuständen (sauber, verschmutzt, abgenutzt)

2.4 LED-Beleuchtungsmuster konfigurieren

Wählen Sie die Beleuchtung basierend darauf, was Sie segmentieren:

MerkmalstypEmpfohlene BeleuchtungBegründung
OberflächendefekteBright fieldGleichmäßige Ausleuchtung zeigt Oberflächenunregelmäßigkeiten
Kratzer/RisseSide lightingErzeugt Schatten, die lineare Defekte hervorheben
Erhabene MerkmaleDark fieldHebt erhabene Bereiche vom Hintergrund ab
FlüssigkeitsaustritteSide lightingZeigt Unterschiede in der Oberflächentextur

2.5 Gamma zur Merkmalsverbesserung anpassen

  1. Gamma erhöhen, um den Kontrast zwischen Merkmalen und Hintergrund zu verstärken
  2. Verschiedene Werte testen, während Sie Ihre Zielmerkmale betrachten
  3. Einstellung finden, bei der die Merkmale am besten unterscheidbar sind

2.6 Konfiguration speichern

  1. Einstellungen überprüfen in der Live-Vorschau
  2. Auf Save Imaging Settings klicken

Save Settings

Checkpoint: Merkmale sollten mit gutem Kontrast deutlich sichtbar sein.

Schritt 3: Template und Ausrichtung einrichten

3.1 Zum Template-Bereich navigieren

Klicken Sie auf "Template Image and Alignment" im Breadcrumb-Menü

3.2 Ausrichtung konfigurieren (Optional)

Template and alignment

Für dieses Beispiel überspringen wir die Ausrichtung:

  1. Skip Aligner auswählen, wenn Teile konsistent positioniert sind
  2. Auf Save klicken

Template image

Wann der Aligner zu verwenden ist: Aktivieren Sie ihn, wenn Teile in unterschiedlichen Positionen oder Ausrichtungen ankommen, die die Segmentierungsgenauigkeit beeinträchtigen würden.

Schritt 4: Inspektionsbereich definieren

4.1 Zum Inspection Setup navigieren

Klicken Sie auf "Inspection Setup" im Breadcrumb-Menü

4.2 Region of Interest (ROI) festlegen

Die ROI definiert, wo die Segmentierung erfolgt:

  1. Ein Testteil positionieren im Kamerabild
  2. ROI-Ecken ziehen, um den Inspektionsbereich einzurahmen
  3. ROI angemessen dimensionieren:
    • Alle Bereiche einschließen, in denen Merkmale auftreten könnten
    • Unnötige Hintergrundbereiche ausschließen
    • Kleinen Puffer um erwartete Merkmalspositionen lassen

ROI Setup

4.3 Best Practices für ROI bei der Segmentierung

TunNicht tun
Gesamte Inspektionsfläche abdeckenIrrelevante Hintergrundobjekte einschließen
Pufferbereich an den Rändern lassenROI zu klein für Merkmalsvariationen machen
Variationen der Teilepositionierung berücksichtigenMit Vorrichtungen oder Werkzeugen überlappen
Mit den größten erwarteten Merkmalen testenBereiche mit dauerhaften Markierungen einschließen

4.4 ROI-Einstellungen speichern

  1. Überprüfen, ob die ROI alle Zielbereiche abdeckt
  2. Auf Save klicken

Schritt 5: Trainingsdaten labeln

5.1 Zu Label And Train navigieren

Klicken Sie auf "Label And Train" im Breadcrumb-Menü

5.2 Inspektionsklasse konfigurieren

  1. Auf Edit klicken unter Inspection Types
  2. Klasse umbenennen, um Ihr Merkmal abzubilden (z. B. "Pencil Mark", "Surface Defect", "Spill Area")
  3. Klassenfarbe wählen zur visuellen Identifikation
  4. Änderungen speichern

5.3 Trainingsbilder erfassen und labeln

Sie benötigen mindestens 10 gelabelte Bilder, empfohlen werden jedoch 15–20:

Bildaufnahmeprozess

Label and Train

  1. Erstes Testteil platzieren im Inspektionsbereich
  2. Bild aufnehmen über die Kameraoberfläche
  3. Brush-Werkzeug verwenden, um Zielmerkmale zu übermalen
  4. Genau malen:
    • Gesamten Merkmalsbereich abdecken
    • Innerhalb der Merkmalsgrenzen bleiben
    • Keine Hintergrundbereiche bemalen
    • Konsistenten Labeling-Ansatz verwenden
  5. Auf Save Annotations klicken
  6. Mit dem nächsten Teil wiederholen

Best Practices für das Labeling

Gutes LabelingSchlechtes Labeling
Präzise MerkmalsgrenzenUnsaubere Kantenmarkierung
Konsistente MerkmalsdefinitionInkonsistente Kriterien
Vollständige MerkmalsabdeckungFehlende Merkmalsbereiche
Sauberer Hintergrund (unmarkiert)Versehentliche Hintergrundmarkierung

5.4 Vielfalt der Trainingsdaten

Stellen Sie sicher, dass Ihr Trainingsdatensatz Folgendes enthält:

  • Unterschiedliche Merkmalsgrößen
  • Verschiedene Merkmalsintensitäten
  • Mehrere Positionen innerhalb der ROI
  • Unterschiedliche Lichtverhältnisse (falls zutreffend)
  • Grenzfälle und Randbeispiele

5.5 Qualitätsprüfung der Trainingsdaten

  1. Überprüfen Sie alle gelabelten Bilder
  2. Verifizieren Sie einen konsistenten Labeling-Ansatz
  3. Entfernen Sie alle falsch gelabelten Beispiele
  4. Fügen Sie bei Bedarf weitere Beispiele hinzu

Schritt 6: Segmentierungsmodell trainieren

6.1 Trainingsprozess starten

  1. Klicken Sie auf Return to Live, wenn das Labeling abgeschlossen ist
  2. Klicken Sie auf Train Segmentation Model

Start Training

6.2 Trainingsparameter konfigurieren

  1. Anzahl der Iterationen festlegen:
    • Schnelles Training: 50–100 Iterationen (5–10 Minuten)
    • Produktionsqualität: 200–500 Iterationen (15–30 Minuten)
    • Hohe Präzision: 500+ Iterationen (30+ Minuten)
  2. Klicken Sie auf Start Training

6.3 Trainingsfortschritt überwachen

Der Trainingsfortschritt zeigt:

  • Aktuelle Iterationsnummer
  • Trainingsgenauigkeit in Prozent
  • Geschätzte Restzeit

Training

Trainingssteuerung:

  • Abort Training: Beenden, wenn Probleme auftreten
  • Finish Training Early: Beenden, wenn die Genauigkeit ausreicht

Training 2

tipp
  • 85 % Genauigkeit sind typischerweise ausreichend für die Produktion
  • Das Training stoppt automatisch bei Erreichen der Zielgenauigkeit
  • Mehr Trainingsdaten sind oft besser als mehr Iterationen

Schritt 7: Segmentierungsleistung testen

7.1 Live-Vorschau aufrufen

  1. Klicken Sie auf Live Preview, nachdem das Training abgeschlossen ist
  2. Testen Sie mit verschiedenen Teilen:
    • Bekannt gute Teile (sollten keine/minimale Segmentierung zeigen)
    • Bekannt fehlerhafte Teile (sollten Defekte hervorheben)
    • Grenzfälle und Randbeispiele

Live preview

7.2 Ergebnisse bewerten

Prüfen Sie die Segmentierungsqualität:

MetrikGute LeistungVerbesserungsbedarf
GenauigkeitFindet reale Merkmale konsistentÜbersieht offensichtliche Merkmale
PräzisionWenige FehlalarmeViele Hintergrundbereiche hervorgehoben
KantenqualitätSaubere, präzise GrenzenRaue oder ungenaue Kanten
KonsistenzÄhnliche Ergebnisse bei WiederholungstestsStark variierende Ergebnisse

7.3 Fehlerbehebung bei schlechten Ergebnissen

ProblemWahrscheinliche UrsacheLösung
Fehlende MerkmaleUnzureichende TrainingsdatenWeitere gelabelte Beispiele hinzufügen
FehlalarmeSchlechte Beleuchtung/KontrastBildaufnahme-Einstellungen verbessern
Raue KantenSchlechte BildqualitätFokus/Beleuchtung verbessern
Inkonsistente ErgebnisseUnzureichende TrainingsvielfaltVielfältigere Beispiele hinzufügen

Schritt 8: Pass/Fail-Logik konfigurieren

8.1 Zugriff auf IO-Block

  1. Sicherstellen, dass das KI-Modell grün angezeigt wird (Status „trainiert")
  2. Zum IO-Block navigieren über das Breadcrumb-Menü

8.2 Standardlogik entfernen

  1. Classification Block Logic-Node löschen
  2. Vorbereitung zum Aufbau einer benutzerdefinierten Segmentierungslogik

8.3 Segmentierungs-Flow aufbauen

Node-RED-Flow mit diesen Komponenten erstellen:

  1. Nodes aus dem linken Bereich ziehen:
    • Function-Node (für die Logik)
    • Debug-Node (zum Testen)
    • Finaler Pass/Fail-Node
  2. Nodes mit Verbindungen verknüpfen

NodeRed

8.4 Logik nach Bedarf konfigurieren

Option A: Pass, wenn keine Defekte erkannt wurden

Anwendungsfall: Qualitätsprüfung, bei der jedes erkannte Merkmal als Fail gilt

Code für Function-Node:

const allBlobs = msg.payload.segmentation.blobs;
const results = allBlobs.length <1; // Pass if no features found
msg.payload = results;
return msg;

Option B: Pass nur bei kleinen Defekten

Anwendungsfall: Akzeptanz kleinerer Defekte unterhalb eines Größenschwellwerts

Code für Function-Node:

const threshold = 500; // Adjust pixel count threshold
const allBlobs = msg.payload.segmentation.blobs;
const allUnderThreshold = allBlobs.every(blob => blob.pixel_count < threshold);
msg.payload = allUnderThreshold;
return msg;

Option C: Pass, wenn die gesamte Defektfläche klein ist

Anwendungsfall: Akzeptanz von Teilen mit begrenzter gesamter Defektfläche

Code für Function-Node:

const threshold = 5000; // Adjust total pixel threshold
const allBlobs = msg.payload.segmentation.blobs;
const totalArea = allBlobs.reduce((sum, blob) => sum + blob.pixel_count, 0);
msg.payload = totalArea < threshold;
return msg;

8.5 Function-Node konfigurieren

  1. Doppelklick auf den Function-Node
  2. Geeigneten Code aus den obigen Beispielen kopieren
  3. In den Tab „On Message" einfügen
  4. Schwellwerte an Ihre Anwendung anpassen
  5. Auf Done klicken

8.6 Logik bereitstellen und testen

  1. Auf Deploy klicken, um die Logik zu aktivieren
  2. Zum HMI navigieren zum Testen
  3. Mit bekannten guten und schlechten Teilen testen
  4. Pass/Fail-Ergebnisse mit den Erwartungen abgleichen

Schritt 9: Produktionsvalidierung

9.1 Umfassende Tests

Segmentierungssystem testen mit:

TestfallErwartetes ErgebnisMaßnahme bei Fehler
Saubere TeilePass (keine Segmentierung)Schwellwerte anpassen oder neu trainieren
Kleinere DefektePass/Fail gemäß Ihren KriterienLogikparameter verfeinern
Schwere DefekteFail (deutliche Segmentierung)Modellgenauigkeit prüfen
GrenzfälleKonsistentes VerhaltenTrainingsdaten ergänzen

9.2 Leistungsvalidierung

Diese Kennzahlen überwachen:

  • Verarbeitungszeit pro Prüfung
  • Konsistenz über mehrere Tests hinweg
  • Genauigkeit bei Produktionsbeleuchtung
  • Zuverlässigkeit im Langzeitbetrieb

9.3 Finale Anpassungen

Wenn die Leistung nicht zufriedenstellend ist:

  1. Weitere Trainingsdaten für Grenzfälle hinzufügen
  2. Schwellwerte in der Logik anpassen
  3. Bildaufnahmebedingungen verbessern
  4. Modell neu trainieren mit zusätzlichen Iterationen

Erfolg! Ihr Segmentierungssystem ist einsatzbereit

Sie verfügen nun über ein funktionierendes Segmentierungssystem, das:

  • Automatisch bestimmte Merkmale oder Defekte erkennt
  • Flächen mit pixelgenauer Präzision misst
  • Benutzerdefinierte Pass/Fail-Logik nach Ihren Anforderungen anwendet
  • Über I/O-Steuerungen in Produktionssysteme integriert werden kann

Erweiterte Konfigurationsoptionen

Benutzerdefinierte Schwellenwert-Logik

Für komplexe Akzeptanzkriterien können mehrere Bedingungen kombiniert werden:

const smallThreshold = 200;
const largeThreshold = 1000;
const maxTotalArea = 3000;

const allBlobs = msg.payload.segmentation.blobs;
const smallBlobs = allBlobs.filter(blob => blob.pixel_count < smallThreshold);
const largeBlobs = allBlobs.filter(blob => blob.pixel_count > largeThreshold);
const totalArea = allBlobs.reduce((sum, blob) => sum + blob.pixel_c