Contents — find the section you need

Wenn Merkmalserkennung der Prozess ist, festzulegen, „wo im Bild ein Landmarkenpunkt verwendet werden soll“, so ist Merkmalsverfolgung der Prozess, zu ermitteln, „wo sich diese Landmarke im nächsten Frame befindet“. Stabile Verfolgung ermöglicht die Schätzung von Kamerabewegungen, Objektgeschwindigkeiten oder der Selbstlokalisierung eines Roboters. Umgekehrt kann eine fehlerhafte Zuordnung dazu führen, dass die nachfolgende Pose-Schätzung und die Karte gleichzeitig zusammenbrechen. Dieser Artikel setzt den Unterschied zwischen Detektoren und Deskriptoren voraus und behandelt sowohl die lokale Optimierung der Pixelbewegung als auch den Deskriptorabgleich als ein einziges Designproblem.

0. Zusammenfassung (30 Sekunden)

  • Es gibt zwei Ansätze für die Verfolgung: „Suche im nächsten Frame nach dem umgebenden Bereich des vorherigen Frames“ und „Erkennen und Berechnen von Deskriptoren in jedem Frame und deren Abgleich“.

  • Die Lucas-Kanade-Methode setzt Helligkeitskonstanz, lokale Bewegung und eine gemeinsame Geschwindigkeit benachbarter Pixel voraus und löst ein 2×2-Normalengleichungssystem. Durch die Verwendung einer Pyramide kann sie auf große Verschiebungen erweitert werden.

  • Die Deskriptorübereinstimmung kann auch über große Bildlücken hinweg erneut suchen, allerdings auf Kosten höherer Rechenleistung und mehr Fehlzuordnungen. Überprüfen Sie dies geometrisch mit dem Verhältnis-Test, dem Vergleich der nächsten Nachbarn und RANSAC.

  • Die Tracking-Qualität sollte nicht nur anhand der Anzahl der Übereinstimmungen, sondern auch anhand der räumlichen Verteilung im Bild, des Reprojektionsfehlers, der Vorwärts-Rückwärts-Konsistenz und der Wiederherstellungsrate nach Verdeckung beurteilt werden.

Schwierige Fälle sind Bewegungsunschärfe, geringe Textur, Reflexionen, dynamische Objekte, Rolling-Shutter-Effekte und plötzliche Skalierungsänderungen. Ein Konfidenzwert und ein Mechanismus zur erneuten Erkennung sind unerlässlich.

1. Warum sich Punkte im Bild scheinbar bewegen

Diagram 1 · Use the button to switch views
Feature points linked by motion arrows between the previous and current frame

Abbildung 1 – Eine Korrespondenz ist eine Hypothese, bis ihre Bewegung mit benachbarten Punkten und dem Kameramodell übereinstimmt. Die räumliche Abdeckung ist genauso wichtig wie die Anzahl der Übereinstimmungen.

Ein 3D-Punkt X wird bei Kamerabewegung auf \mathbf{x}=(x,y) im Bild projiziert. Mit dem Bildintervall \Delta t besteht das Ziel der Verfolgung darin, die Verschiebung \mathbf{d}_k in

\mathbf{x}_{k+1}=\mathbf{x}_k+\mathbf{d}_k
zu finden.

Wenn sich die Kamera verschiebt, variiert die scheinbare Geschwindigkeit mit der Tiefe; wenn sie rotiert, bewegt sich das gesamte Bild in dieselbe Richtung. Die einfache Subtraktion aufeinanderfolgender Bilder ist anfällig für Lichtveränderungen und Belichtungsrauschen. Stattdessen wird die lokale Patch-Struktur verwendet.

2. Lucas-Kanade: Lösung eines kleinen Fensters auf einmal

Die Annahme der Helligkeitskonstanz lautet:

I(x,y,t)=I(x+u,y+v,t+\Delta t)

Die Linearisierung für kleine Verschiebungen (u,v) führt zur optischen Flussbedingungsgleichung.

I_xu+I_yv+I_t=0

Für ein einzelnes Pixel ergibt sich eine Gleichung mit zwei Unbekannten (das Aperturproblem). Daher werden die Pixel innerhalb eines Fensters W zusammengefasst und die Methode der kleinsten Quadrate

\begin{bmatrix}u\\v\end{bmatrix} =-\left(\sum_{W}w\begin{bmatrix}I_x^2&I_xI_y\\I_xI_y&I_y^2\end{bmatrix}\right)^{-1} \sum_Ww\begin{bmatrix}I_xI_t\\I_yI_t\end{bmatrix}

wird gelöst. Der Term in Klammern ist die lokale Strukturmatrix des Merkmalspunktes – je größer der Gradient in zwei Richtungen an einer Ecke ist, desto stabiler ist die Invertierbarkeit. An einer ebenen Wand oder einer einzelnen Kante lässt sich die Bewegung nicht eindeutig bestimmen.

Um große Verschiebungen zu behandeln, wird die Verschiebung von der groben Ebene einer verkleinerten Pyramide bis zur feinen Ebene propagiert. Auf jeder Ebene werden mehrere Iterationen durchgeführt, bevor… Neuberechnung an der nächsten Position. In der Implementierung passen Sie die Pyramidentiefe, die Fenstergröße, die Abbruchkriterien, den minimalen Eigenwert und den Vorwärts-Rückwärts-Trackingfehler an.

3. Wahl zwischen dieser Methode und Deskriptor-Matching

Deskriptoren wie ORB oder SIFT wandeln den umgebenden Bildausschnitt in einen Vektor oder eine Bitfolge um und verwenden den Kandidaten mit dem geringsten Abstand als Korrespondenz. Bei kleinen Bewegungen zwischen aufeinanderfolgenden Frames ist Lucas-Kanade schnell, aber Deskriptor-Rematching ist sinnvoll, wenn Verdeckungen behoben, Frames übersprungen oder die Kamera sich stark bewegt hat.

Methode Eingabe Stärken Schwächen Typische Anwendung
LK-Tracking Punkt des vorherigen Frames und Bild des nächsten Frames Schnell, subpixelgenau Schwach bis große Verschiebungen, Verdeckungen, geringe Textur VO, Echtzeit-Tracking
ORB-Matching Deskriptoren aus 2 Bildern Leichtgewichtig, Rotationskompatibilität Fehlzuordnungen durch Reflexionen/Unschärfe SLAM Initialisierung/Wiedersuche

SIFT-Matching | Deskriptoren aus 2 Bildern | Robust gegenüber Skalierung/Rotation | Rechenaufwand, Speicherbedarf | SfM, Bildabruf |

Lernbasiert | Punkte, Deskriptoren, Matcher | Potenziell robust gegenüber großen Erscheinungsbildänderungen | Außerhalb der Trainingsdaten, hohe GPU-Last | Anspruchsvolle Umgebungen, Forschung |

Die alleinige Verwendung des Deskriptorkandidaten mit dem geringsten Abstand führt zu Fehlzuordnungen ähnlicher Muster. Die Anwendung des d_1/d_2\lt\tau-Quotiententests zwischen dem nächstgelegenen d_1 und dem zweitnächsten d_2 sowie die zusätzliche Prüfung gemeinsamer nächster Nachbarn von A→B und B→A sind hilfreich. Abschließend kann die Überprüfung mit RANSAC unter Verwendung des Reprojektionsfehlers einer Fundamentalmatrix, Homographie oder PnP, geschätzt aus den Korrespondenzen, erfolgen.

4. Quantifizierung der Tracking-Konfidenz

In der Implementierung ist die Beurteilung „Tracking erfolgreich“ als bloße „ein Punkt wurde zurückgegeben“ nicht ausreichend. Ausreichend. Die Protokollierung der folgenden Daten ermöglicht es Ihnen, die Ursache eines Fehlers zu isolieren:

  • Minimaler Eigenwert und Residuum von LK
  • Die Differenz zwischen Vorwärts- und Rückwärtsverfolgung (Vorwärts-Rückwärts-Fehler)
  • Die Verteilung des Deskriptorverhältnisses und der Distanz
  • RANSAC-Inlierverhältnis und Reprojektionsfehler
  • Die räumliche Verteilung der Punkte im Bild (sind sie nur in der Mitte konzentriert?)
  • Mittlere Verschiebung zwischen den Frames, Unschärfemetrik, Belichtung/Verstärkung

Selbst bei einem hohen RANSAC-Inlierverhältnis verschlechtert sich die Pose-Schätzung, wenn sich alle Punkte in einer Ecke des Bildes konzentrieren. Die Begrenzung der maximalen Punktanzahl pro Rasterzelle und die Verteilung der Merkmalspunkte über das gesamte Sichtfeld verbessern die Erkennbarkeit von Rotation und Translation. Manchmal ist es besser, eine kleine Anzahl von Korrespondenzen über verschiedene Richtungen und Distanzen zu verteilen, anstatt einfach die Punktanzahl zu erhöhen.

5. Bewegte Objekte und Rolling Shutter

Die visuelle Odometrie geht von einer statischen Umgebung aus, um die Kamerabewegung zu schätzen. Wenn viele Fußgänger, Autos oder ein sich drehender Ventilator im Bild erscheinen, … Korrespondenzen werden zu Ausreißern, die nicht mit dem Kamerabewegungsmodell übereinstimmen. Wenn zu viele dynamische Objekte vorhanden sind, als dass RANSAC allein sie entfernen könnte, sollten semantische Maskierung, optisches Fluss-Clustering, Hintergrundmodellierung und Tiefenkonsistenz kombiniert werden.

Der Rolling Shutter einer CMOS-Kamera belichtet das Bild zeilenweise von oben nach unten zu leicht unterschiedlichen Zeitpunkten. Bei schneller Rotation oder Vibration ändert sich die Kameraposition zeilenweise, selbst innerhalb eines einzelnen Frames, wodurch die Annahme eines einheitlichen Projektionsmodells verletzt wird. Abhilfemaßnahmen umfassen die Korrektur der Zeilenzeitabweichungen mithilfe der IMU-Winkelgeschwindigkeit, Global Shutter, kurze Belichtungszeiten und die Kalibrierung der Auslesezeit.

6. Ablauf einer minimalen Implementierung

  1. Kamerakalibrierung zusammen mit intrinsischen Parametern, Verzerrung und Zeitstempeln.

  2. Erkennung von FAST/ORB oder Shi-Tomasi im ersten Frame und räumliche Angleichung mithilfe eines Rasters.

  3. In jedem neuen Frame Tracking mit pyramidalem LK, Überprüfung des Vorwärts-Rückwärts-Fehlers und der Bildgrenzen.

  4. Verwerfen von Punkten mit geringer Konfidenz und Erkennung neuer Punkte in Unterbesetzte Rasterzellen.

  5. Führen Sie den Deskriptorabgleich im erforderlichen Intervall durch und entfernen Sie Ausreißer mit RANSAC.

  6. Übergeben Sie die verbleibenden Korrespondenzen an einen Fusionsschritt mit der Essentiellen Matrix, PnP oder IMU.

  7. Bei kontinuierlichem Punktverlust initialisieren Sie das Tracking neu und protokollieren Sie den Tracking-Status und die Ursache.

Entscheidung über die Wiederaufnahme des Trackings

Wenn Verdeckung oder Belichtungsänderungen die Anzahl der Punkte vorübergehend reduzieren, kann die Extrapolation jeder alten Position eine fehlerhafte Korrespondenz in ein scheinbar stabiles Tracking verwandeln. Überprüfen Sie zunächst Frame-Nummer, Zeitstempel, Bildgrenzen und Vorwärts-Rückwärts-Fehler und entfernen Sie dann Kandidaten außerhalb des Arbeitsbereichs. Selbst eine ausreichende Anzahl ist unsicher, wenn alle verbleibenden Punkte einen kleinen Bildbereich belegen; stoppen Sie die Pose-Schätzung, erkennen Sie erneut pro Rasterzelle und trennen Sie statischen Hintergrund von bewegten Objekten, bevor Sie das geometrische Modell neu anpassen. Die Aufzeichnung dieses Vorgangs als Zustandsautomat mit den Zuständen „Tracking“ und „Reinitialisierung“ ermöglicht die Unterscheidung fehlender Daten von einem fehlerhaften Abgleich.

In der Implementierung fügen Sie jeder Korrespondenz eine Frame-Nummer und einen Beobachtungszeitstempel hinzu, um die Verarbeitung zu beschleunigen. Verzögerungen verhindern, dass alte Punkte in neuere Frames integriert werden. Bei abrupten Kamerabewegungen ist zu prüfen, ob die Verschiebung noch zum gröbsten Pyramidenniveau und Fenster passt. Ist dies nicht der Fall, ist die erneute Deskriptorsuche sicherer als die Erweiterung des Fensters, bis ein anderes Muster gefunden wird. Erneut gesuchte Kandidaten müssen weiterhin Epipolar- oder Homographie-Residualprüfungen sowie Vorwärts-Rückwärts-Konsistenz bestehen. Werden bewegte Objekte gezielt verfolgt, sind Kamerabewegungspunkte und Objektverfolgungspunkte in separaten Datensätzen zu speichern; Ausreißerentscheidungen des einen Datensatzes dürfen nicht für den anderen verwendet werden. Um die Wiederherstellung an diesen Grenzen zu testen, sollten Protokolle mit Lichtänderungen, Verdeckung und Kommunikationsverzögerungen erneut abgespielt werden.

7. Fazit

Feature-Tracking ist eine Technologie, die Detektor, lokale Optimierung, Deskriptorabgleich und geometrische Verifizierung als ein einziges Problem der Vertrauensentwicklung behandelt. LK verbindet aufeinanderfolgende Frames nahtlos, Deskriptoren erholen sich von großen Änderungen, und RANSAC filtert geometrische Diskrepanzen heraus. Anstatt sich auf einen einzelnen dieser Faktoren zu verlassen, verbessert die Speicherung von Protokollen, die Punktverteilung, Zeitsynchronisation, dynamische Objekte und Rolling-Shutter-Effekte berücksichtigen, die Genauigkeit erheblich. Reproduzierbarkeit von Visual SLAM und VIO.

Überprüfen Sie Ihr Verständnis
Ist ein erfolgreich verfolgter Punkt immer eine korrekte Übereinstimmung?

Die Verfolgung kann zu einem ähnlichen Muster springen. Überprüfen Sie die Vorwärts-Rückwärts-Konsistenz, die Residuen und die Geometrie, anstatt nur die Spuren zu zählen.

Referenzen

Verfolge diese Punkte zwischen zwei Bildern im Optischer-Fluss-Lab.

What to read next

Review the backgroundLabor zur Merkmalszuordnung — Deskriptorfilter, geometrische Inlier und ReferenzContinue the seriesOptischer-Fluss-Lab: Bewegung zwischen zwei BildernExplore another aspect of this fieldLab für Bildhelligkeit und Leuchtdichte — Belichtung, Gamma und Clipping