For the complete documentation index, see llms.txt. This page is also available as Markdown.

Background Subtractor

Dieser Funktionsblock erkennt bewegte bzw. Vordergrundbereiche, indem er aktuelle Frames mit einem erlernten Hintergrundmodell vergleicht. Verwenden Sie ihn, um Vordergrundobjekte (z. B. Personen, Fahrzeuge, bewegliche Teile) von einem stabilen Hintergrund zu trennen und eine binäre/skalare Vordergrundmaske für weitere Analysen zu erzeugen.

📥 Inputs (sockets)

Input Image Akzeptiert das Eingabebild oder Videoframe, das analysiert werden soll (Farbe oder Graustufen).

📤 Outputs (sockets)

Foreground Mask Gibt eine Graustufen-/binäre Maske aus, in der die Vordergrundpixel hervorgehoben sind.

🕹️ Controls

Method Wählen Sie den Hintergrundsubtraktionsalgorithmus (z. B. MOG2 oder KNN) aus dem Dropdown.

History Legt fest, wie viele vergangene Frames zum Aufbau des Hintergrundmodells verwendet werden. Höhere Werte führen zu einer langsameren Anpassung des Modells.

VarThreshold Steuert die Empfindlichkeit gegenüber Pixeländerungen. Niedrigere Werte machen den Subtraktor empfindlicher für kleine Änderungen; höhere Werte verringern die Empfindlichkeit.

⚙️ Ausführungsmechanismus

Jedes Mal, wenn der Block ausgeführt wird:

  • Verwendet er die ausgewählte Method und die aktuellen History- / VarThreshold-Einstellungen.

  • Wenn sich Einstellungen geändert haben, wird das interne Hintergrundmodell neu initialisiert, um die neuen Parameter zu berücksichtigen.

  • Verarbeitet er das eingehende Input Image und erzeugt die Foreground Mask, die die erkannten Vordergrundbereiche anzeigt.

Die Maske wird Frame-für-Frame aktualisiert und kann von anderen Blöcken für Zählungen, Tracking oder Speicherung verwendet werden.

🎯 Features

  • Schneller Wechsel zwischen Algorithmen über Method.

  • Echtzeit-Anpassung der Parameter mit den Schiebereglern History und VarThreshold, um Anpassungsgeschwindigkeit und Stabilität auszubalancieren.

  • Erzeugt eine sofort nutzbare Foreground Mask, die in Erkennungs- oder Analyseblöcke eingespeist werden kann.

📝 Usage

  1. Verbinden Sie einen bildproduzierenden Block (Kamera, Video oder Load Image) mit Input Image.

  2. Wählen Sie die gewünschte Method und justieren Sie History und VarThreshold, während Sie die Ergebnisse beobachten.

  3. Verwenden Sie die Foreground Mask mit nachgeschalteten Blöcken für Erkennung, Zählung oder Protokollierung.

💡 Tips and Tricks

  • Bei verrauschten Ergebnissen versuchen Sie, das Eingangsbild zuerst mit Blur zu glätten oder hochfrequentes Rauschen mit Denoising zu reduzieren, bevor Sie es an diesen Block geben.

  • Um kleine Sprenkel in der Maske zu entfernen, hängen Sie Morphological Transformations nach diesem Block an, um Opening/Closing durchzuführen.

  • Wenn Sie nur an einem bestimmten Bereich interessiert sind, schneiden Sie das Eingangsbild mit Image ROI Select oder Image ROI vor der Hintergrundsubtraktion aus, um die Verarbeitung zu beschleunigen.

  • Verwenden Sie Show Image, um die Foreground Mask in einem größeren Viewer zur Parametereinstellung anzuzeigen.

  • Für objektbezogene Analysen leiten Sie die Maske an Blob Detector oder Find Contour weiter, um erkannte Komponenten zu extrahieren und zu vermessen.

  • Um Erkennungen im Originalframe zu annotieren oder hervorzuheben, kombinieren Sie mit Draw Detections oder Draw Rectangle unter Verwendung der aus Kontur-/Blob-Analysen gewonnenen Koordinaten.

  • Sind Ihre Eingangsframes sehr groß, fügen Sie Image Resizer ein, um zuerst zu verkleinern und die Verarbeitung zu beschleunigen.

  • Speichern Sie wichtige Frames oder Masken mit Image Logger oder Image Write, wenn eine Auslösebedingung eintritt (z. B. Erkennungsanzahl überschreitet einen Schwellenwert).

  • Nutzen Sie Image Memory, um einen Frame einzufrieren und zu inspizieren, während die Live-Verarbeitung weiterläuft.

(Hinweise oben beziehen sich nur auf die verfügbaren Funktionsblöcke.)

🛠️ Troubleshooting

  • Wenn die Vordergrundmaske zu empfindlich ist (viele flackernde Pixel), erhöhen Sie VarThreshold oder History, damit sich das Modell langsamer anpasst.

  • Werden bewegte Objekte nicht zuverlässig erkannt, verringern Sie VarThreshold oder reduzieren Sie vorherige Glättung.

  • Enthält die Maske kleine isolierte Störungen, fügen Sie Morphological Transformations (Opening) hinzu oder führen Sie Blur auf dem Eingang aus.

  • Ändert sich der Hintergrund häufig (Beleuchtung, bewegter Hintergrund), reduzieren Sie History, damit sich das Modell schneller anpasst, oder beschränken Sie die Verarbeitung auf eine stabile ROI mit Image ROI Select.

  • Wenn Sie die Maske nicht klar sehen können, verwenden Sie Show Image, um die Maske im Bildbetrachter besser zu inspizieren.

🔗 Empfohlene Block-Kombinationen

  • Vorverarbeitung: BlurBackground SubtractorMorphological Transformations

  • Fokusierte Erkennung: Image ROI SelectBackground SubtractorBlob DetectorDraw Detections

  • Protokollierung und Überprüfung: Background SubtractorShow Image (Vorschau) und Image Logger oder Image Write (Masken/Frames speichern)

  • Nachanalyse: Background SubtractorFind Contour / Measure Object DistanceData to JSON oder CSV Export

Diese Kombinationen helfen beim Aufbau zuverlässiger Video-Analyse-Pipelines mit den verfügbaren Blöcken.

Zuletzt aktualisiert