Zum Hauptinhalt springen

KI-GESTÜTZTE DOKUMENTATION

Was möchten Sie wissen?

Segmenter trainieren

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

Video-Anleitung

Sehen Sie sich dieses Thema in Aktion an: Wie Sie in wenigen Minuten ein Segmentierungs-Rezept erstellen

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

Bevor Sie beginnen​

Was Sie benötigen​

  • OV80i Kamerasystem eingerichtet und verbunden
  • Testteile mit Merkmalen, die Sie segmentieren möchten (z. B. Bögen mit Bleistiftmarkierungen)
  • Gute Lichtverhältnisse für Ihre spezifische Anwendung
  • 15–20 Beispielbilder für das Training

Schritt 1: Ein Segmentierungs-Rezept erstellen​

1.1 Neues Rezept starten​

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

New Recipe Schaltfläche

  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 dem Dropdown-Menü
  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

Activate Recipe Schaltfläche

✅ 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 Kamerablickfeld
  2. Drehen Sie den Fokusring des Objektivs, bis die Kanten scharf und klar sind
  3. Testen Sie mit verschiedenen Teilen, um einen konsistenten Fokus über Ihren Bereich hinweg sicherzustellen
tipp
  • Fokussieren Sie auf die Oberfläche, auf der Fehler/Merkmale erscheinen werden
  • Stellen Sie sicher, dass der gesamte relevante Bereich scharf im Fokus ist
  • Eine leichte Überschärfung ist für die Segmentierung besser als ein weicher Fokus

2.3 Optimale Belichtung einstellen​

Die richtige Belichtung sorgt für eine konsistente Merkmalserkennung:

  1. Passen Sie die Belichtung für eine ausgewogene Ausleuchtung an
  2. Vermeiden Sie überbelichtete Bereiche (rein weiße Regionen)
  3. Stellen Sie sicher, dass Merkmale sichtbar sind mit gutem Kontrast

Richtlinien zur Segmentierungsbelichtung:

  • Merkmale sollten einen klaren Kontrast zum Hintergrund haben
  • Vermeiden Sie Schatten, die als Fehler fehlinterpretiert werden könnten
  • Testen Sie mit verschiedenen Teilezuständen (sauber, verschmutzt, abgenutzt)

2.4 LED-Beleuchtungsmuster konfigurieren​

Wählen Sie die Beleuchtung basierend auf dem, was Sie segmentieren:

MerkmalstypEmpfohlene BeleuchtungWarum
OberflächenfehlerBright fieldGleichmäßige Ausleuchtung zeigt Oberflächenunregelmäßigkeiten
Kratzer/RisseSeitenbeleuchtungErzeugt Schatten, die lineare Fehler hervorheben
Erhabene MerkmaleDark fieldLässt erhabene Bereiche vom Hintergrund abheben
FlüssigkeitsspritzerSeitenbeleuchtungZeigt 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 in der Live-Vorschau überprüfen
  2. Klicken Sie auf Save Imaging Settings

Save Settings

✅ Checkpoint: Merkmale sollten mit gutem Kontrast klar sichtbar sein.

Schritt 3: Template und Ausrichtung einrichten​

3.1 Zum Template-Bereich navigieren​

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

3.2 Ausrichtung konfigurieren (Optional)​

Template and alignment

In diesem Beispiel überspringen wir die Ausrichtung:

  1. Wählen Sie Skip Aligner, wenn Teile konsistent positioniert sind
  2. Klicken Sie auf Save

Template image

Wann sollte der Aligner verwendet werden: Aktivieren Sie ihn, wenn Teile in unterschiedlichen Positionen oder Orientierungen ankommen, die die Segmentierungsgenauigkeit beeinträchtigen würden.

Schritt 4: Inspektionsbereich definieren​

4.1 Zur Inspektionseinrichtung navigieren​

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

4.2 Region of Interest (ROI) festlegen​

Die ROI definiert, wo die Segmentierung stattfindet:

  1. Positionieren Sie ein Testteil im Sichtfeld der Kamera
  2. Ziehen Sie die ROI-Ecken, 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 belassen

ROI Setup

4.3 Best Practices für die ROI zur Segmentierung​

DoDon't
Gesamte Inspektionsfläche abdeckenIrrelevante Hintergrundobjekte einschließen
Pufferbereich an den Kanten belassenROI zu klein für Merkmalsvariationen wählen
Positionsvariation der Teile berücksichtigenÜberlappung mit Vorrichtungen oder Werkzeugen
Mit größten erwarteten Merkmalen testenBereiche mit permanenten Markierungen einbeziehen

4.4 ROI-Einstellungen speichern​

  1. Überprüfen Sie, dass die ROI alle Zielbereiche abdeckt
  2. Klicken Sie auf Save

Schritt 5: Trainingsdaten labeln​

5.1 Zu Label And Train navigieren​

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

5.2 Inspektionsklasse konfigurieren​

  1. Klicken Sie unter Inspection Types auf Edit
  2. Klasse umbenennen, um Ihrem Merkmal zu entsprechen (z. B. "Pencil Mark", "Surface Defect", "Spill Area")
  3. Klassenfarbe wählen zur visuellen Identifikation
  4. Änderungen speichern

5.3 Trainingsbilder aufnehmen und labeln​

Sie benötigen mindestens 10 gelabelte Bilder, empfohlen sind jedoch 15-20:

Ablauf der Bildaufnahme​

  1. Platzieren Sie das erste Testteil im Inspektionsbereich
  2. Nehmen Sie ein Bild über die Kameraoberfläche auf
  3. Verwenden Sie das Brush-Tool, um über die Zielmerkmale zu malen
  4. Präzise malen:
    • Gesamten Merkmalsbereich abdecken
    • Innerhalb der Merkmalsgrenzen bleiben
    • Keine Hintergrundbereiche bemalen
    • Konsistenten Labeling-Ansatz verwenden
  5. Klicken Sie auf Save Annotations
  6. Mit dem nächsten Teil wiederholen

Label and Train

Best Practices für das Labeling​

Gutes LabelingSchlechtes Labeling
Präzise MerkmalsgrenzenNachlässiges Malen der Kanten
Konsistente MerkmalsdefinitionInkonsistente Kriterien
Vollständige MerkmalsabdeckungFehlende Merkmalsbereiche
Sauberer Hintergrund (unbemalt)Versehentliches Bemalen des Hintergrunds

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. Alle gelabelten Bilder überprüfen
  2. Konsistenten Labeling-Ansatz verifizieren
  3. Falsch gelabelte Beispiele entfernen
  4. Bei Bedarf weitere Beispiele hinzufügen

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 Fertigstellungszeit

Training

Trainingssteuerung:

  • Abort Training: Anhalten, falls Probleme auftreten
  • Finish Training Early: Anhalten, wenn die Genauigkeit ausreichend ist

Training 2

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

Schritt 7: Segmentierungsleistung testen​

7.1 Zugriff auf Live Preview​

  1. Klicken Sie nach Abschluss des Trainings auf Live Preview
  2. Testen Sie mit verschiedenen Teilen:
    • Bekannte Gutteile (sollten keine/minimale Segmentierung zeigen)
    • Bekannte defekte Teile (sollten Defekte hervorheben)
    • Grenzfälle und Randbeispiele

Live preview

7.2 Ergebnisse auswerten​

Segmentierungsqualität überprüfen:

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

7.3 Fehlerbehebung bei schlechten Ergebnissen​

ProblemWahrscheinliche UrsacheLösung
Fehlende MerkmaleUnzureichende TrainingsdatenWeitere gelabelte Beispiele hinzufügen
False PositivesSchlechte Beleuchtung/KontrastBildgebungseinstellungen 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. Stellen Sie sicher, dass das AI-Modell grün angezeigt wird (Status: trainiert)
  2. Navigieren Sie zum IO Block über das Breadcrumb-Menü

8.2 Standardlogik entfernen​

  1. Löschen Sie den Node Classification Block Logic
  2. Bereiten Sie den Aufbau einer benutzerdefinierten Segmentierungslogik vor

8.3 Segmentierungs-Flow erstellen​

Erstellen Sie einen Node-RED-Flow mit folgenden Komponenten:

  1. Ziehen Sie Nodes aus dem linken Bereich:
    • Function Node (für die Logik)
    • Debug Node (für Tests)
    • Finaler Pass/Fail Node
  2. Verbinden Sie die Nodes mit Wires

NodeRed

8.4 Logik nach Ihren Anforderungen konfigurieren​

Option A: Pass, wenn keine Defekte erkannt werden​

Anwendungsfall: Qualitätsprüfung, bei der jedes erkannte Merkmal ein Fail bedeutet

Function Node Code:

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: Geringfügige Defekte unterhalb eines Größenschwellenwerts akzeptieren

Function Node Code:

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 Gesamt-Defektfläche klein ist​

Anwendungsfall: Teile mit begrenzter Gesamt-Defektfläche akzeptieren

Function Node Code:

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. Doppelklicken Sie auf den Function Node
  2. Kopieren Sie den passenden Code aus den obigen Beispielen
  3. Fügen Sie ihn in den Tab "On Message" ein
  4. Passen Sie die Schwellenwerte an Ihre Anwendung an
  5. Klicken Sie auf Done

8.6 Logik bereitstellen und testen​

  1. Klicken Sie auf Deploy, um die Logik zu aktivieren
  2. Navigieren Sie zur HMI für Tests
  3. Testen Sie mit bekannten Gut- und Schlechtteilen
  4. Überprüfen Sie, ob die Pass/Fail-Ergebnisse den Erwartungen entsprechen

Schritt 9: Produktionsvalidierung​

9.1 Umfassende Tests​

Testen Sie das Segmentierungssystem mit:

TestfallErwartetes ErgebnisMaßnahme bei Fehlschlag
Saubere TeilePass (keine Segmentierung)Schwellenwerte anpassen oder neu trainieren
Geringfügige DefektePass/Fail gemäß Ihren KriterienLogikparameter verfeinern
Größere DefekteFail (klare Segmentierung)Modellgenauigkeit prüfen
GrenzfälleKonsistentes VerhaltenTrainingsdaten hinzufügen

9.2 Leistungsvalidierung​

Überwachen Sie diese Kennzahlen:

  • Verarbeitungszeit pro Inspektion
  • Konsistenz über mehrere Tests
  • Genauigkeit unter Produktionsbeleuchtung
  • Zuverlässigkeit im Dauerbetrieb

9.3 Letzte Anpassungen​

Falls die Leistung nicht zufriedenstellend ist:

  1. Fügen Sie weitere Trainingsdaten für Grenzfälle hinzu
  2. Passen Sie die Schwellenwerte in der Logik an
  3. Verbessern Sie die Bildaufnahmebedingungen
  4. Trainieren Sie das Modell neu mit zusätzlichen Iterationen

Erfolg! Ihr Segmentierungssystem ist einsatzbereit​

Sie verfügen nun über ein funktionierendes Segmentierungssystem, das folgende Möglichkeiten bietet:

  • Automatische Erkennung spezifischer Merkmale oder Defekte
  • Flächenmessung mit pixelgenauer Präzision
  • Anwendung benutzerdefinierter Pass/Fail-Logik basierend auf Ihren Anforderungen
  • Integration in Produktionssysteme über I/O-Steuerungen

Erweiterte Konfigurationsoptionen​

Benutzerdefinierte Schwellenwertlogik​

Für komplexe Akzeptanzkriterien kombinieren Sie mehrere Bedingungen:

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