Yolo Vision Shenzhen
Shenzhen
Jetzt beitreten
Glossar

Optischer Fluss

Entdecken Sie die Grundlagen des optischen Flusses in der Bildverarbeitung. Erfahren Sie, wie Bewegungsvektoren das Verständnis von Videos verbessern und die Verfolgung in Ultralytics optimieren.

Der optische Fluss ist das Muster der scheinbaren Bewegung von Objekten, Oberflächen und Kanten in einer visuellen Szene, das durch die relative Bewegung zwischen einem Beobachter und einer Szene verursacht wird. Im Bereich der Computervision ist dieses Konzept grundlegend für das Verständnis der zeitlichen Dynamik innerhalb von Videosequenzen. Durch die Analyse der Verschiebung von Pixeln zwischen zwei aufeinanderfolgenden Bildern erzeugen Optischer-Fluss-Algorithmen ein Vektorfeld, in dem jeder Vektor die Richtung und Größe der Bewegung für einen bestimmten Punkt darstellt. Dieser visuelle Hinweis auf niedriger Ebene ermöglicht es künstlichen Intelligenzsystemen, nicht nur zu erkennen, was sich in einem Bild befindet, sondern auch, wie es sich bewegt, wodurch die Lücke zwischen statischer Bildanalyse und dynamischem Videoverständnis geschlossen wird.

Kernmechanismen des optischen Flusses

Die Berechnung des optischen Flusses basiert im Allgemeinen auf der Annahme der Helligkeitskonstanz, die davon ausgeht, dass die Intensität eines Pixels auf einem Objekt von einem Bild zum nächsten konstant bleibt, selbst wenn es sich bewegt. Algorithmen nutzen dieses Prinzip, um Bewegungsvektoren mit zwei primären Ansätzen zu berechnen:

  • Sparse Optical Flow: Diese Methode berechnet den Bewegungsvektor für eine bestimmte Teilmenge eindeutiger Merkmale, wie Ecken oder Kanten, die durch Merkmalsextraktion erkannt wurden. Algorithmen wie die Lucas-Kanade-Methode sind recheneffizient und ideal für Echtzeit-Inferenzaufgaben, bei denen die Verfolgung bestimmter Punkte von Interesse ausreichend ist.
  • Dichter optischer Fluss: Bei diesem Ansatz wird für jedes einzelne Pixel im Bild ein Bewegungsvektor berechnet. Dies ist zwar deutlich rechenintensiver , liefert jedoch eine umfassende Bewegungskarte, die für fein abgestimmte Aufgaben wie Bildsegmentierung und Strukturanalyse unerlässlich ist. Moderne Deep-Learning-Architekturen übertreffen oft traditionelle mathematische Methoden bei der dichten Flussschätzung, indem sie komplexe Bewegungsmuster aus großen Datensätzen lernen.

Optical Flow vs. Objekterkennung

Obwohl sie oft zusammen verwendet werden, ist es wichtig, den optischen Fluss von der Objektverfolgung zu unterscheiden. Der optische Fluss ist ein Low-Level-Vorgang , der die momentane Pixelbewegung beschreibt; er versteht von Natur aus weder die Identität noch die Persistenz von Objekten.

Im Gegensatz dazu ist die Objektverfolgung eine anspruchsvolle Aufgabe, bei der bestimmte Objekte lokalisiert und ihnen eine über die Zeit hinweg konsistente ID zugewiesen wird . Fortschrittliche Tracker, wie sie beispielsweise in Ultralytics integriert sind, führen in der Regel eine Objekterkennung durch, um das Objekt zu finden, und verwenden dann Bewegungshinweise – die manchmal aus dem optischen Fluss abgeleitet werden –, um Erkennungen über mehrere Frames hinweg zuzuordnen. Der optische Fluss beantwortet die Frage „Wie schnell bewegen sich diese Pixel gerade?“, während die Verfolgung die Frage „Wohin ist Auto Nr. 5 gefahren?“ beantwortet.

Anwendungsfälle in der Praxis

Die Fähigkeit, Bewegungen auf Pixelebene zu schätzen, ermöglicht eine Vielzahl hochentwickelter Technologien:

  • Autonome Fahrzeuge und Robotik: Optischer Fluss wird für die visuelle Odometrie verwendet, wodurch ein Roboter oder ein Auto seine eigene Bewegung relativ zur Umgebung einschätzen kann. Er hilft auch bei der Tiefenschätzung und der Vermeidung von Hindernissen, indem er analysiert, wie schnell sich Objekte im Sichtfeld ausdehnen oder bewegen.
  • Videostabilisierung: Kameras und Bearbeitungssoftware verwenden Flussvektoren, um detect Verwacklungen der Kamera detect . Durch den Ausgleich dieser globalen Bewegung können Systeme das Filmmaterial digital stabilisieren. Dies ist eine Standardfunktion in modernen Unterhaltungselektronikgeräten wie Smartphones und Actionkameras.
  • Aktionserkennung: In den Bereichen Sportanalyse und Sicherheit hilft die Analyse des zeitlichen Pixelflusses den Systemen dabei, komplexe menschliche Aktionen zu identifizieren. Beispielsweise können Modelle zur Posenschätzung mit Flussdaten ergänzt werden , um anhand der Geschwindigkeit der Gliedmaßenbewegung zwischen einer gehenden und einer laufenden Person zu unterscheiden.
  • Videokompression: Standards wie die MPEG-Videokodierung stützen sich stark auf Bewegungsschätzungen. Anstatt jedes einzelne Vollbild zu speichern, speichert der Codec den optischen Fluss (Bewegungsvektoren) und die Differenz (Residual) zwischen den Bildern, wodurch die Dateigrößen für Streaming und Speicherung erheblich reduziert werden.

Beispiel für die Umsetzung

Das folgende Beispiel zeigt, wie man mit der OpenCV , einem Standardwerkzeug im Bereich Computer Vision, einen dichten optischen Fluss berechnet. Dieser Ausschnitt verwendet den Farneback-Algorithmus, um eine Flusskarte zwischen zwei aufeinanderfolgenden Frames zu generieren.

import cv2
import numpy as np

# Simulate two consecutive frames (replace with actual image paths)
frame1 = np.zeros((100, 100, 3), dtype=np.uint8)
frame2 = np.zeros((100, 100, 3), dtype=np.uint8)
cv2.rectangle(frame1, (20, 20), (40, 40), (255, 255, 255), -1)  # Object at pos 1
cv2.rectangle(frame2, (25, 25), (45, 45), (255, 255, 255), -1)  # Object moved

# Convert to grayscale for flow calculation
prvs = cv2.cvtColor(frame1, cv2.COLOR_BGR2GRAY)
next = cv2.cvtColor(frame2, cv2.COLOR_BGR2GRAY)

# Calculate dense optical flow
flow = cv2.calcOpticalFlowFarneback(prvs, next, None, 0.5, 3, 15, 3, 5, 1.2, 0)

# Compute magnitude and angle of 2D vectors
mag, ang = cv2.cartToPolar(flow[..., 0], flow[..., 1])

print(f"Max motion detected: {np.max(mag):.2f} pixels")

Für anspruchsvolle Anwendungen, die eher Objektpersistenz als reine Pixelbewegung erfordern, sollten Benutzer die in Ultralytics YOLO11 und YOLO26. Diese Modelle abstrahieren die Komplexität der Bewegungsanalyse und bieten robuste Objekt-IDs und Trajektorien für Aufgaben, die von der Verkehrsüberwachung bis zur Einzelhandelsanalyse reichen.

Werden Sie Mitglied der Ultralytics

Gestalten Sie die Zukunft der KI mit. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten