[S1] Was ist Bildfolgenauswertung? (immer die erste Frage, wörtlich)
Bildfolgenauswertung bezeichnet die automatische Ableitung inhaltsbezogener Aussagen über die in einer Bildfolge abgebildete Szene und deren zeitliche Entwicklung. Die abgeleiteten Aussagen können einem menschlichen Benutzer bereitgestellt oder in einem technischen System zur Auslösung von Aktionen genutzt werden.
[S1] Was ist eine Bildfolge?
Eine in einem bestimmten zeitlichen Takt erzeugte Projektion einer realen Szene (3D nach 2D, Framerate). Rechnerintern ein 3D-Feld g(x,y,t).
[S1] Was passiert mit den Aussagen weiter? Unterschied Mensch vs. technisches System?
Mensch: braucht Visualisierung oder Textbeschreibung und denkt sich selbst etwas dazu. Technisches System: bekommt nur Zahlen oder ein Signal über ein festes Protokoll und reagiert direkt. Beispiel Selbstschussanlage: Objektdetektion liefert einen Wahrheitswert, kein Bild.
[S1] Welche Verfahrensgruppen zur Bewegungsdetektion gibt es?
1. Differenzbildverfahren (festes Referenzbild, letztes Bild, gleitender Mittelwert), ein Schwellwert. 2. Statistische Verfahren (Gauß, Gauß-Mischverteilung pro Pixel), Schwellwert pro Pixel aus der Varianz. 3. Frequenz- bzw. Raum-Zeit-basierte Verfahren (nur erwähnen, wenn du sie erklären kannst, er fragt dann nach).
[S1] Differenzbild zu festem Referenzbild: Formel, Maske, Nachteile?
|g(x,y,t) − B(x,y)| > T. Maske: gefülltes Rechteck (ganzes Objekt). Nachteile: Referenzbild veraltet, keine Anpassung an Helligkeitsänderungen und Szenenänderungen (geparktes Auto), bewegter Hintergrund (Bäume) wird detektiert. Nur sinnvoll für dunklen Raum ohne Bewegung und Helligkeitsschwankung (Tresor).
[S1] Differenzbild zum letzten Bild: Maske und Nachteile?
B = g(t−1). Maske: nur Kanten, dort wo Hintergrund verdeckt oder aufgedeckt wird und wo das Objekt Struktur hat. Nachteile: Schwellwertwahl, ständige Änderungen bleiben, Objektinneres fehlt.
[S1] Differenzbild zum gleitenden Mittelwert: Formel, Maske, Nachteile?
B(t) = α·g(t) + (1−α)·B(t−1), α etwa 0,05. Maske: Objekt plus Schweif dort, wo es vorher war. Nachteile: Lernrate wählen, weiterhin ein globaler Schwellwert, stehende Objekte wandern ins Hintergrundbild.
[S1] Was ist das Schwellwertproblem der Differenzbildverfahren?
Ein globaler Schwellwert für das ganze Bild. Ungünstig, weil der Sensorchip für denselben Grauwert unterschiedliche Werte liefert (Bildrauschen) und jeder Pixel anders rauscht (Bäume, Gewässer schwanken stark, Wand kaum). Lösung: statistische Verfahren mit eigenem Schwellwert pro Pixel.
[S1] Statistisches Verfahren mit einer Gauß-Verteilung pro Pixel: Wie funktioniert es?
Jeder Pixel ist ein stochastischer Prozess mit Mittelwert μ und Varianz σ². Hypothesentest: Erklärt die Verteilung den Messwert? |g − μ| < 2σ (je nach Genauigkeit 1σ bis 3σ) → Hintergrund, sonst Änderung. μ und σ² werden mit Lernrate aktualisiert. Vorteil: Schwellwert pro Pixel aus dessen eigener Varianz.
[S1] Warum reicht eine Gauß-Verteilung pro Pixel nicht immer?
Manche Pixel springen zwischen zwei oder mehr Werten (wackelnder Ast vor hellem Himmel, Wasser, Diskretisierung). Eine Gaußkurve kann zwei Helligkeiten nicht modellieren, es entsteht eine sehr breite Glocke. Lösung: Gauß-Mischverteilung mit K Komponenten.
[S1] Gauß-Mischverteilung (Stauffer und Grimson): Ablauf bei neuem Messwert?
1. Match-Test gegen alle K Komponenten (innerhalb 2σ, höchste Wahrscheinlichkeit gewinnt). 2. Treffer: Gewicht dieser Komponente erhöhen, Mittelwert und Varianz aktualisieren, andere Gewichte senken, normalisieren. 3. Kein Treffer: Komponente mit kleinstem Gewicht durch neue mit dem Messwert als Mittelwert und hoher Varianz ersetzen. 4. Hintergrund: nach Gewicht/Varianz sortieren, die ersten B Komponenten mit Gewichtssumme über T sind Hintergrund. Match zu einer davon → Hintergrund, sonst Vordergrund.
[S1] Was ist allen Änderungsdetektionsverfahren gemeinsam und welche Einschränkung haben sie?
Alle detektieren Änderungen (Intensität), keine Bewegungen. Pixelweise Binärentscheidung. Nachbearbeitung: Morphologie, Zusammenhangskomponenten, Mindestgröße. Sie setzen eine statische Kamera voraus: bei Schwenk oder bewegtem Sensor ist überall Änderung.
[S1] Die Kamera schwenkt oder die Szene ist größer als das Blickfeld. Funktioniert Änderungsdetektion noch?
Nein, beim Schwenk wird überall Bewegung erkannt. Lösung: virtuelles Panoramabild erstellen. Korrespondenzen zwischen den Bildern finden (SIFT), Transformation schätzen (RANSAC), Bilder zusammensetzen und den aktuellen Kameraausschnitt im Panorama lokalisieren. Dann Änderungsdetektion wie gewohnt auf dem stabilisierten Bild.
[S1] Korrespondenzverfahren: Wie kommt man von einem Bild zum nächsten?
Bildmerkmale mit genügend Struktur suchen (Ecken, SIFT-Keypoints), ähnliche Merkmale im Folgebild finden (Deskriptor-Matching) → Korrespondenzen. Daraus die Transformation zwischen den Bildern schätzen (Least Squares oder besser RANSAC). Dann weiß man, wie sich die Kamera bewegt hat.
[S1] Warum ist reines Least Squares bei Korrespondenzen ungeschickt?
Ausreißer (falsche Zuordnungen) reißen die Regression raus, weil Fehler quadratisch ins Gewicht gehen. Least Squares versucht, allen Punkten recht zu machen. Ausreißer haben mit dem wahren Wert nichts zu tun, sind also kein normalverteiltes Rauschen.
[S1] RANSAC: Ablauf?
1. Zufällig minimale Punktmenge (Seedgruppe) wählen. 2. Daraus Modell (Transformationsmatrix) berechnen, innerhalb der Seedgruppe per Least Squares. 3. Für alle Punkte Fehler berechnen, Inlier zählen. 4. Wiederholen (Anzahl Iterationen statistisch bestimmbar). 5. Modell mit den meisten Inliern nehmen, genauer: das Modell mit dem geringsten Fehler über seinen Inliern, und auf allen Inliern neu schätzen.
[S1] Bewegungsdetektion vs. Bewegungsschätzung: Was ist der Unterschied?
Detektion: Ist g(x,y,t) eine Veränderung gegenüber früher? Ja/Nein. Schätzung: Woher kommt der Grauwert? Richtung und Betrag der Verschiebung (u,v). Nötig bei bewegter Kamera, Panorama, SfM, Videokodierung.
[S1] Was ist Optischer Fluss und was ist das Grundproblem?
Die scheinbare Bewegung von Strukturen im Bild, für jeden Pixel eine Richtung. Energieterm: quadratische Abweichung mit Zeitkomponente minimieren. Mit Taylor-Entwicklung (kleine Bewegungen!) wird daraus die OFCE: g_x·u + g_y·v + g_t = 0. Eine Gleichung, zwei Unbekannte → unterbestimmt. Nur der Normalfluss (senkrecht zur Bildstruktur) ist bestimmbar: Blendenproblem.
[S1] Was ist das Blendenproblem?
Bei lokaler Betrachtung durch eine kleine Blende sieht man nur den Anteil der Bewegung senkrecht zur Bildstruktur (entlang des Gradienten). Eine Kante, die sich entlang ihrer selbst bewegt, zeigt keine Bewegung. Deshalb braucht man zusätzliche Annahmen: lokale oder globale Glattheit.
[S1] Lokale Glattheitsforderung (Lucas-Kanade): Idee und Grenzen?
Annahme: Im kleinen Fenster ist der OF gleich. Dann mehrere Gleichungen, nach u und v ableiten und nullsetzen, Matrixform mit Strukturtensor. Lösung nur, wenn beide Eigenwerte größer null (Ecke). Homogen (Rang 0) und Kante (Rang 1): nicht invertierbar, keine Lösung → kein dichter OF. Vorteil: lokal lösbar, stabil gegen Störungen, Eigenwerte sind ein Zuverlässigkeitsmaß.
[S1] Globale Glattheitsforderung (Horn-Schunck): Idee, Vor- und Nachteile?
Über das ganze Bild minimieren: OFCE-Term plus Bestrafungsterm mit Gewicht α für Nachbarn mit unterschiedlichem Fluss. Nur iterativ lösbar (so oft drübergehen, bis es glatt ist). Vorteil: dichter OF überall, Fill-in in homogene Bereiche. Nachteil: Fehler breiten sich aus, kein Zuverlässigkeitsmaß pro Vektor. In der Praxis meist Kombination (Bruhn, Weickert, Schnörr 2005).
[S1] Bag of Words: Wie funktioniert die Objektdetektion?
Training: Merkmale (SIFT) in Trainingsbildern extrahieren, im Deskriptorraum clustern, jeder Clustermittelpunkt ist eine Vokabel (Codebuch). Pro Objektklasse ein Histogramm über alle Vokabeln. Erkennung: Merkmale im neuen Bild, Histogramm bilden, mit den Klassenhistogrammen vergleichen (Nearest Neighbour).
[S1] BoW: Welche Einträge enthält das Histogramm einer Klasse? (Arens' Lieblingsnachfrage: Tun wir da alle Augen rein?)
Alle Codebucheinträge, auch die anderer Objektklassen und auch die mit Anzahl 0. Das Codebuch ist für alle Klassen gemeinsam. Stichwort, das er hören will: Generalisierung des Klassifikators, ein Standard-Auge statt jedes einzelne Auge.
[S1] Warum clustert man bei BoW, statt pro Trainingsbild ein Histogramm zu speichern?
Sonst wird das Modell zu spezifisch und das Dictionary riesig (10.000 Trainingsbilder). Man will die abstrakte Idee des Objekts, um neue Instanzen derselben Klasse zu erkennen. Ähnliche Merkmale werden zu einem Cluster zusammengefasst, nur der Mittelpunkt kommt ins Dictionary.
[S1] Nachteil von BoW und wie man ihn umgeht?
Keine räumliche Position: BoW sagt, dass ein Auto im Bild ist, nicht wo. Lösung: Sliding Window über das Bild schieben und in jedem Fenster das Histogramm bilden. Alternative: ISM, das Offsets zum Objektzentrum speichert.
[S1] ISM: Was ist der Unterschied zu BoW?
Zusätzlich zu jeder Vokabel wird der Offset zum Objektmittelpunkt gespeichert, skaliert mit der Skalierungsstufe des SIFT-Detektors. Bei der Detektion geben gematchte Merkmale Stimmen im Voting-Raum ab, Maximumsuche (Mean-Shift) liefert Objektmittelpunkte. Also lokale Merkmale plus räumliche Anordnung.
[S1] Tracking-by-Detection: Wie funktioniert es?
Detektor auf jedem Einzelbild, Detektionen werden im Raum-Zeit-Würfel mit adaptiven Suchkegeln zu physikalisch plausiblen Trajektorien verbunden, dann die Trajektorienmenge wählen, die die Detektionen am besten erklärt. Die Detektion selbst ist die Position. Nachteile: instabiler Detektor → kein Tracking, keine Historie, versagt bei Verdeckung.
[S1] Detection-by-Tracking: Wie funktioniert es?
Ein Bewegungsmodell sagt vorher, wo das Objekt im nächsten Bild sein wird. Prädiktion und Messung werden nach ihrer Unsicherheit gewichtet zur korrigierten Position fusioniert (Kalman-Filter). Vorteile: glattere Trajektorien (Messrauschen wird ausgeglichen), gleiche Objekte lassen sich auseinanderhalten, kurze Verdeckungen überbrückbar. Nachteil: Bewegungsmodell nötig, oft nicht flexibel genug.
[S1] Kalman-Filter: Welche Voraussetzungen müssen gelten? (kommt in 10 von 12 Prüfungen)
1. Lineares Bewegungs- und Messmodell (Zustandsübergangs- und Messmatrix). 2. Prozess- und Messrauschen normalverteilt mit Erwartungswert 0 (sonst Drift, sonst wäre das Modell falsch). 3. Markov-Eigenschaft: der aktuelle Zustand hängt nur vom direkt vorherigen Zustand (und der Steuerung) ab, die Messung nur vom aktuellen Zustand.
[S1] Arens schreibt x_t = D·x_(t−1) + ε hin und fragt: Was ist hier normalverteilt, und wie muss der Mittelwert sein?
Das ε, das Rauschen. Sein Mittelwert muss 0 sein. Bei beliebigem Mittelwert wäre das Modell falsch und die Schätzung driftet.
[S1] Kalman: Wie werden Prädiktion und Messung gewichtet?
Nach ihren Varianzen. Ist die Varianz der Prädiktion größer, wird die Prädiktion weniger gewichtet. Ist die Varianz der Detektion größer, wird die Messung weniger gewichtet. Grenzfälle: keine Prädiktionsunsicherheit → Messung ignoriert, keine Messunsicherheit → Prädiktion ignoriert.
[S1] Was tun, wenn das Bewegungsmodell nicht linear ist, man aber Kalman nutzen will?
Um den aktuellen Arbeitspunkt linearisieren (Taylor-Entwicklung erster Ordnung, Jacobi-Matrix): Extended Kalman Filter. Einmal reicht nicht, man linearisiert in jedem Schritt neu: iterierter EKF. Einschränkung bleibt: Normalverteilung, unimodal. Alternative: Partikelfilter.
[S1] Partikelfilter: Warum braucht man ihn?
Er stellt die Verteilung durch gewichtete Samples dar und kann beliebige, insbesondere multimodale Verteilungen modellieren. Damit mehrere Hypothesen gleichzeitig (mehrere Objekte, Weggabelung, Verdeckung) und nichtlineare Modelle. Kalman kann nur eine Hypothese.
[S1] Online-Tracker: Grundidee und Nachteil?
Detektor als Klassifikator verstehen. Modell mit der initialen Detektion trainieren (positives Patch, negative Patches aus der Umgebung), im nächsten Bild per Sliding Window die stärkste Stelle finden, dort Patches ausschneiden und das Modell nachtrainieren (Online-Boosting). Adaptiv, nicht fest wie ISM. Nachteil: Drift, wenn der Klassifikator etwas daneben liegt. Lösung: MIL, positive Bag mit mehreren Patches.
[S1] Structure from Motion: Was ist das Grundproblem und wie geht man vor?
Aus mehreren Aufnahmen aus verschiedenen Richtungen die 3D-Struktur der Szene und die Kameras rekonstruieren. Vorgehen: Merkmale extrahieren, über die Bilder tracken bzw. Korrespondenzen bilden, initiale Schätzung für Intrinsics, Extrinsics und 3D-Punkte, dann per Bundle Adjustment (nichtlineare kleinste Quadrate, Levenberg-Marquardt) den Rückprojektionsfehler minimieren.
[S1] SfM: Wie viele Unbekannte pro 3D-Punkt, pro Kamera, und was sind die intrinsischen Parameter?
Pro 3D-Punkt drei (x, y, z). Pro Kamera sechs (Position und Orientierung bzw. drei Winkel). Intrinsisch: Brennweite, Hauptpunkt (principal point), Pixelgröße, dazu Verzeichnung.
[S1] Was ist der Rückprojektionsfehler, in eigenen Worten? (Achtung, Falle)
Ich habe die geschätzten 3D-Punkte und Kameras. Ich projiziere die Punkte in die Kameras (virtuelles Bild) und vergleiche mit den tatsächlich beobachteten Bildpositionen. Die Abweichung ist der Rückprojektionsfehler. Er ist die Zielfunktion, die im Bundle Adjustment minimiert wird. NICHT sagen: dient nur zur Kontrolle. Das kostete einen Prüfling die Note.
[S1] Warum ist SfM ein nichtlineares Problem und wie löst man es?
Die Projektion ist nichtlinear (Division durch z, Rotationen). Deshalb Taylor-Entwicklung erster Ordnung um die aktuelle Schätzung (Jacobi-Matrix) und iterativ lösen mit Levenberg-Marquardt oder einem anderen nichtlinearen Solver. Das ist der Bündelblockausgleich.
[S1] Von 2D-Spuren zu 3D-Bewegungen: Welche zwei Wege gibt es?
Entweder bessere Messwerkzeuge (Stereo, Kamera-Array, Laser, Kinect) oder mehr Annahmen (alle Objekte auf einer Ebene, bekannte Objektgröße, feste Entfernung, gelernte Tiefe). Mit der Ebenenannahme braucht man die Transformation von Kamera zu Ebene (Homographie).
[S2] Wann würde man welches Differenzbildverfahren einsetzen?
Festes Referenzbild: wenn sich der Hintergrund nie oder sehr selten ändert und die Beleuchtung konstant ist (Tresorraum, dunkler Raum). Letztes Bild: wenn nur Alarm bei Bewegung nötig ist, Kanten reichen. Gleitender Mittelwert: Außenszenen mit langsamer Beleuchtungsänderung. Statistisch: schwankende Pixel (Bäume, Wasser), Überwachung im Freien.
[S2] Wie könnten frequenzbasierte Verfahren zur Änderungsdetektion funktionieren?
Jeden Pixel entlang der Zeitachse als Signal betrachten und ins Frequenzspektrum transformieren (Fourier, Haar-Wavelets). Rauschen und Blätter im Wind sind hochfrequent, Tag-Nacht-Änderung sehr niederfrequent. Beides herausfiltern, die Frequenzen dazwischen entsprechen Bewegung (Bandpass). Arens malt dazu Graphen von Frequenz und Amplitude.
[S2] Wie berechnet man die zeitliche Ableitung einer Bildfolge und wie kombiniert man sie mit einer Mittelung?
Differenz zweier Bilder, als Faltung mit dem Filter [−1, 1]. Mittelung über mehrere Bilder ist ebenfalls eine Faltung. Da beides linear ist, kann man die Filter miteinander falten, zum Beispiel [−1 −1 −1 −1 1 1 1 1]. In der Praxis nimmt man die Ableitung einer Gaußfunktion als Filter.
[S2] Wie berechnet man Bildgradienten und gibt es etwas Besseres als das Rechteckfenster?
Differenzenquotient bzw. Gradientenfilter wie [−1 0 1]. Besser: Gauß-Filter zur Glättung kombiniert mit dem Gradientenfilter (Ableitung der Gaußfunktion). Zentrale Pixel werden stärker gewichtet, Rauschen wird unterdrückt. Ein Prüfling nannte Laplacian of Gaussian, das ging in die richtige Richtung.
[S2] Lokaler OF: Warum ist er stabiler gegen Störungen als der globale?
Jedes Fenster wird für sich gelöst, ein Fehler bleibt im Fenster. Beim globalen Verfahren koppelt der Glattheitsterm alle Pixel, Fehler und Rauschen werden über das ganze Bild verteilt. Dafür hat der lokale OF Lücken in homogenen Bereichen.
[S2] Strukturtensor: Welche drei Fälle gibt es?
Homogen: beide Eigenwerte 0, Rang 0, nicht invertierbar. Kante: ein Eigenwert größer 0, Rang 1, nicht invertierbar, nur Normalfluss. Ecke: beide Eigenwerte größer 0, Rang 2, invertierbar, Fluss bestimmbar. Dieselbe Matrix wie beim Harris-Eckendetektor.
[S2] Globaler OF: Wie rechnet man das konkret aus? (Er fragte dreimal nach)
Iterativ. Man kann nicht alles auf einmal lösen, weil jeder Pixel von seinen Nachbarn abhängt und diese wieder von ihren. Also so lange über das Bild gehen und die Werte an die Nachbarn angleichen, bis man zufrieden ist. Das Wort, das er hören will: iterativ.
[S2] Was bestraft der Bestrafungsterm beim globalen OF genau? (Arens: Sicher?)
Unterschiede im Fluss zwischen benachbarten Pixeln, also den Gradienten des Flussfelds (|∇u|² + |∇v|²). Nicht große OF-Werte an sich, sondern große Änderungen des OF von Pixel zu Pixel. α gewichtet, wie stark Glattheit gegenüber der OFCE zählt.
[S2] Wie findet man die Transformation zum virtuellen Panoramabild?
Entweder über einen Rotations-Encoder der Schwenkvorrichtung, der ist aber nicht pixelgenau. Oder über Bildmerkmale: Features erkennen, Korrespondenzen matchen, Transformation mit RANSAC schätzen. Für eine PTZ-Kamera ohne Translation vereinfacht sich das auf eine Rotation bzw. Homographie.
[S2] Die Transformation ist nicht exakt, ein Pixel landet auf der Grenze zwischen zwei Pixeln. Was tun?
Zwischen den Pixeln interpolieren (bilinear). Ein Prüfling brauchte dafür eine Weile, Arens wollte nur das Wort interpolieren hören.
[S2] Welche Transformation bewirkt eine reine Drehbewegung der Kamera zwischen zwei Bildern?
Streng eine Homographie (projektive Abbildung, 8 Freiheitsgrade, bei reiner Rotation 3). Bei einer idealen Kamera ohne Verzerrung und kleinem Winkel näherungsweise eine Translation der Bilder. Arens akzeptierte Translation unter der Annahme einer perfekten Kamera.
[S2] Wie schätzt man eine Homographie aus Korrespondenzen mathematisch?
Jede Korrespondenz liefert lineare Gleichungen in den Homographie-Parametern. Lineares homogenes Gleichungssystem, mindestens 4 Korrespondenzen, Lösung per Singulärwertzerlegung (SVD). Bei mehr Korrespondenzen überbestimmt, Ausreißer mit RANSAC behandeln. Verwandt: Essential- und Fundamentalmatrix für allgemeine Kamerabewegung.
[S2] Warum gibt es Least Squares überhaupt, wenn RANSAC besser ist?
Least Squares funktioniert sehr gut, wenn alle Messwerte nur normalverteilt um den wahren Wert rauschen. Dann ist es optimal und schnell. Ausreißer wie falsche Korrespondenzen haben mit dem wahren Wert nichts zu tun, dafür ist es nicht gemacht. RANSAC nutzt Least Squares intern auf den Inliern.
[S2] RANSAC mit größeren Seedgruppen als minimal nötig liefert schneller bessere Ergebnisse. Warum?
Auch die Inlier sind verrauscht. Mit der minimalen Anzahl ist der Fit zwar unbeeinflusst von Ausreißern, aber wegen des Rauschens oft schlecht. Mit mehr Seedpunkten und Least Squares darüber ist die Wahrscheinlichkeit eines guten Schätzwerts deutlich größer, solange keine Ausreißer in der Seedgruppe sind.
[S2] Wie vergleicht man bei BoW zwei Histogramme?
Einfach: euklidische Distanz zwischen den Histogrammvektoren, Match bei kleiner Distanz, eventuell vorher kleine Einträge per Schwellwert auf 0. Nicht nach Größe sortieren, die Position im Vektor trägt die Information (vierter Eintrag = Schnauze). Wenn benachbarte Bins voneinander abhängen (Orientierungshistogramme im SIFT-Deskriptor), ist die Earth Mover's Distance sinnvoller. Histogramme sind vermutlich normalisiert.
[S2] Kann BoW damit umgehen, dass ein Objekt mehrfach im Bild vorkommt?
Die Bins werden höher. Da das Histogramm aber normalisiert wird, geht die Anzahl verloren, man erkennt nur die Klasse, nicht wie oft. Für Anzahl und Position braucht man Sliding Window oder ISM.
[S2] Ist BoW invariant gegen Translation, Skalierung, Rotation? Und mit Sliding Window?
Ja, das hängt vom Detektor ab, mit SIFT ist es invariant, und das Histogramm ignoriert Positionen. Mit Sliding Window nicht mehr skalierungsinvariant: Bei falscher Fenstergröße ist nicht das ganze Objekt im Fenster und das Histogramm ist falsch. Abhilfe: verschiedene Fenstergrößen probieren (Bildpyramide) oder die Fenstergröße aus der SIFT-Skala ableiten.
[S2] ISM: Ist es invariant gegen Translation, Skalierung, Rotation? (Arens: Sicher?)
Translation ja, Skalierung ja (Offsets werden mit der SIFT-Skala skaliert), Rotation wegen SIFT im Prinzip ja, ABER der Offset zum Objektmittelpunkt muss mitgedreht werden. Arens: In der Praxis funktioniert das nicht, haben wir ausprobiert.
[S2] Was sagt der Suchkegel bei der Spacetime-Trajektorienbestimmung aus?
Die Unsicherheit. Seine Breite modelliert die Lokalisierungsgenauigkeit des Detektors, die Geschwindigkeit des Objekts und weitere Faktoren. Er kann gekippt werden, wenn man aus der Historie weiß, dass sich das Objekt schräg bewegt.
[S2] Was ist der entscheidende Unterschied zwischen TbD und DbT? (Falle: Suchraum)
TbD nimmt die Detektion direkt als Position, Unsicherheit nur im Suchkegel. DbT fusioniert Prädiktion und Messung nach ihren Unsicherheiten (Kalman State Update). Vorteile DbT: glattere Trajektorien, kurze Verdeckungen und kreuzende Pfade besser. NICHT sagen: DbT verkleinert den Suchraum. Man muss trotzdem das ganze Bild scannen, um neu auftauchende Objekte zu finden.
[S2] Warum ist Rauschen im Trackingpfad ein Problem, wenn man feststellen will, ob ein Auto schnell fährt?
Gemessen wird die Position. Geschwindigkeit ist die Ableitung. Ableiten verstärkt Rauschen, bei Beschleunigung (zweite Ableitung) noch viel schlimmer. Deshalb glatte Trajektorien aus DbT.
[S2] Wird die Kovarianz im Kalman-Filter aus den Messungen adaptiv geschätzt?
Nein. Die Mess- und Prozessrauschkovarianzen sind für den Detektor fest vorgegeben (man müsste den wahren Wert kennen, um sie zu schätzen). Nur die Zustandskovarianz wird im Filter fortgeschrieben. Ein Prüfling nahm Adaption an, das war sein Fehler.
[S2] Der Detektor findet das Objekt einige Bilder lang nicht. Was macht der Kalman-Filter?
Er prädiziert weiter ohne Korrektur, die Unsicherheit wächst mit jedem Schritt. In der Praxis erlaubt man etwa 10 Zeitschritte ohne Messung, danach gilt die Spur als verloren.
[S2] Warum ist die Anwendung des Kalman-Filters in der Bildauswertung von vornherein kritisch?
Die perspektivische Projektion ist nichtlinear. Beobachtete Abstände und Größen im Bild stehen nicht linear mit den tatsächlichen in Zusammenhang, ein Objekt mit konstanter Geschwindigkeit in 3D bewegt sich im Bild nicht linear. Rein mathematisch gilt Kalman nur für lineare Systeme. Deshalb EKF oder Tracking im 3D-Zustand.
[S2] Online-Tracker vs. ISM-Tracker: Wo liegt der Unterschied im Modell?
ISM: generisches, festes Modell, einmal aus Beispielbildern gelernt, Spurbildung durch Datenassoziation bzw. modellbasierte Filterung. Online-Tracker: generisches Startmodell, danach adaptiv an das individuelle Objekt angepasst (Boosting, SVM). Drift gibt es nur beim adaptiven Modell, nicht beim festen.
[S2] Mehrere Personen in der Bildfolge: Welchen Vorteil hat ein Online-Tracker?
Pro Person wird ein eigener Klassifikator trainiert (rote Jacke und blaue Hose vs. gelbes T-Shirt). Laufen die Personen aneinander vorbei, bleiben die IDs über die unterschiedlichen Klassifikatoren der richtigen Person zugeordnet.
[S2] SfM mit einer festen Kamera, die nur geschwenkt wird?
Nein. Reiner Schwenk hat keine Basislinie, Triangulation ist nicht möglich, es gibt keine Tiefeninformation (nur eine Homographie zwischen den Bildern). Außerdem findet man nur in wenigen Bildern überlappende Korrespondenzen.
[S2] SfM mit fester Kamera, aber das Objekt rotiert?
Ja, vor homogenem Hintergrund ist es egal, ob das Objekt oder die Kamera sich dreht (Relativbewegung). Aber der absolute Maßstab ist nicht bestimmbar, dafür braucht man eine externe Vergleichsgröße.
[S2] SfM aus einem Video (mit der Kamera um das Objekt laufen) vs. aus Einzelfotos: Vor- und Nachteile?
Video: Intrinsics sind für alle Bilder gleich, nur einmal zu schätzen, weniger Unsicherheit. Korrespondenzen in benachbarten Frames leicht, per Optischem Fluss statt SIFT in jedem Bild neu. Nachteil: Bilder kurz nacheinander haben fast parallele Strahlen (kleine Basislinie), der Schnittpunkt ist schlecht konditioniert, Fehler. Einzelfotos aus dem Internet: verschiedene Kameras, erst Clustering, welche Bilder sich überlappen.
[S2] Wie kann man das SfM-Ergebnis verbessern?
Global-Shutter-Kamera statt Rolling Shutter, Aufnahmen vom Stativ, mehr Merkmale pro Bild, bessere Linse ohne Barrel- oder Pincushion-Verzeichnung bzw. Verzeichnung kalibrieren, größere Basislinie zwischen den Ansichten.
[S2] Alle Objekte liegen auf einer Ebene. Was muss man dann noch wissen, um von 2D nach 3D zu kommen?
Die Transformation von der Kamera zur Ebene (Homographie bzw. Kameraposition relativ zur Ebene). Dann lässt sich jede Bildposition auf der Ebene zurückrechnen. Alternativ bekannte Objektgröße: Entfernung aus der Skalierungsstufe (ISM-Tracker, Person 1,8 m).
[S2] Könnte man 3D-Trajektorien auch mit SfM bestimmen?
Im Prinzip ja, aber die Vorlesung ging von einem unbewegten Objekt und verschieden positionierten Kameras aus. Bewegte Objekte verletzen die Starrheitsannahme, man müsste sie separat behandeln (Dynamic SfM).
[S2] Aktionserkennung: Single-Layered vs. Hierarchical, und warum generalisieren Lernverfahren über Blickwinkel?
Single-Layered: Aktion direkt aus Merkmalen (zum Beispiel LSTM, Ende-zu-Ende). Hierarchisch: Primitive zu Aktionen zu Aktivitäten, besser für komplexe Abläufe. Dass eine Aktion im Bahnhof (flacher Winkel) und im Flughafen (von oben) erkannt wird, liegt an Trainingsdaten aus beiden Perspektiven, die helfen zu generalisieren.
[S3] Transfer: Grauwerthistogramm eines Pixels mit zwei Peaks, links Baum, rechts Himmel. Gleitender Mittelwert liegt dazwischen. Wie müsste man den Schwellwert wählen, damit es klappt?
So groß, dass um den Mittelwert herum sowohl der Baumwert als auch der Himmelwert noch hineinpassen. Dann ist das Verfahren an diesem Pixel praktisch blind. Und beim statistischen Modell? Hypothesentest mit 2σ, aber eine einzelne Gaußkurve wird sehr breit. Richtig ist die Mischverteilung mit zwei Komponenten.
[S3] Transfer: Kann eine einfache Gauß-Verteilung das Problem Baum vor hellem Himmel lösen?
Nein. Eine Gaußkurve kann nicht beide Helligkeitswerte modellieren, es entsteht eine sehr breite Glocke, die alles als Hintergrund akzeptiert. Mischverteilung: zwei schmale Komponenten mit hohem Gewicht, alles andere ist Vordergrund.
[S3] Transfer: Mischverteilung mit drei Glocken, die mittlere ist niedrig mit hoher Varianz. Ein Messwert liegt in der mittleren Glocke. Wie klassifizieren?
Die beiden hohen, schmalen Glocken modellieren den Hintergrund (hohes Gewicht, geringe Varianz). Vorgehen aus der Vorlesung: Komponenten nach Gewicht/Varianz sortieren, Gewichte aufsummieren, bis der Schwellwert T überschritten ist, diese Komponenten sind Hintergrund. Die mittlere Glocke gehört nicht dazu, der Messwert ist Vordergrund.
[S3] Transfer: Mittelwertbild, ein Auto steht im Bild, Hintergrundbild ist leer. Das Auto würde ins Hintergrundbild integriert. Wie das Update verbessern?
Selektives Update: In den Bereichen, wo gerade Bewegung bzw. Vordergrund erkannt wurde, kein Update des Hintergrundbilds machen. Nur Hintergrundpixel fließen in den Mittelwert ein.
[S3] Transfer: Die Pixelverteilung ist weder eine noch mehrere Normalverteilungen. Wie trotzdem Änderungen detektieren?
Pro Pixel ein Histogramm der erwarteten Werte speichern (nichtparametrisch) und einen statistischen Test machen, wie wahrscheinlich der Messwert unter dieser Verteilung ist. Alles unter einer Wahrscheinlichkeitsschwelle ist Änderung. Arens: Das geht in Richtung Partikelfilter bzw. Kerndichteschätzung.
[S3] Transfer: Statische Kamera filmt einen unterirdischen Tresor, jede Bewegung soll erkannt werden. Bestes Verfahren?
Differenz zu einem festen Referenzbild. Keine Beleuchtungsänderung, kein bewegter Hintergrund, nichts kommt hinzu. Das einfachste Verfahren ist hier das beste, die Nachteile greifen nicht.
[S3] Transfer: Vor dem Tresor ein langer Gang, die Kamera schwenkt links und rechts. Was nun, und welche Transformation?
Verfahren versagt. Virtuelles Panoramabild über Korrespondenzen, Kameratransformation schätzen (RANSAC), Ausschnitt lokalisieren, dann Referenzbildvergleich im Panorama. Transformation: nicht Translation der Bilder, sondern Rotation der Kamera, also Homographie (bei idealer Kamera näherungsweise Translation).
[S3] Transfer: Farbkamera statt Graukamera beim Differenzbild. Was ändert sich? Und: Roter Teppich, die Schatten der Stars sollen nicht detektiert werden.
Drei Kanäle, Differenz pro Kanal, eventuell drei Schwellwerte oder Abstand im Farbraum. Schatten: HSV-Farbraum nutzen, die Helligkeit V herausfiltern und nur Farbton und Sättigung vergleichen, ein Schatten ändert vor allem die Helligkeit. Farbraum der menschlichen Wahrnehmung: CIE-XYZ.
[S3] Transfer: Wie überwacht man den Baufortschritt einer Baustelle?
Change Detection statt Motion Detection: jeden Tag ein Bild aufnehmen und schauen, was sich geändert hat (Differenz zu einem Referenzbild über lange Zeit). Bewegung in kurzen Abständen interessiert hier nicht.
[S3] Transfer: Parkplatzszenario, Überwachungskamera, wo bewegt sich etwas?
Die Verfahren aufsteigend erklären: statisches Referenzbild mit globalem Schwellwert (Referenz veraltet), gleitender Mittelwert (immer noch globaler Schwellwert), statistisch mit uni- oder multimodaler Verteilung pro Pixel (Schwellwert pro Pixel aus der Varianz). Dann kommt sicher: Szene größer als Blickfeld, Kamera schwenkt → Panorama.
[S3] Transfer: Lokaler OF mittelt über die Nachbarschaft, alle Pixel mit gleichem Gewicht (Rechteckfilter). Was könnte man besser machen?
Diskretisierte Gauß-Glocke als Fenster: Pixel in engerer Nachbarschaft haben mehr Einfluss, entferntere weniger. So kann man das Fenster vergrößern, ohne weit entfernte Pixel stark zu gewichten.
[S3] Transfer: An einer Kante möchte man entlang der Kante mitteln und homogene Bereiche weniger beachten. Wie? Und an einer Ecke?
Die Kovarianzmatrix der Gauß-Glocke anpassen: Ellipse mit der langen Achse entlang der Kante (senkrecht zur Kante kann man die Bewegung ohnehin bestimmen). An einer Ecke zieht sich die Glocke wieder zum Kreis zusammen und bewegt sich von der Ecke weg. Anisotrope Gewichtung nach dem Strukturtensor.
[S3] Transfer: Warum vergrößert man das Fenster beim lokalen OF nicht einfach beliebig?
Die lokale Glattheitsannahme sagt, dass sich alles im Fenster gleich bewegt. Ein großes Fenster enthält Objekte mit verschiedenen Bewegungsrichtungen, die Annahme ist verletzt und der geschätzte Fluss ist ein Mischmasch. Deshalb klein, aber nicht zu klein (Blendenproblem).
[S3] Transfer: Video mit statischem Hintergrund und einem fahrenden LKW, globaler OF. Was passiert bei sehr großem α?
α = 0: nur OFCE, scharfe Kante im Flussfeld zwischen LKW und Hintergrund. Wachsendes α: die Kante verwischt, der Übergang wird weicher, Fluss leckt in den Hintergrund. α gegen unendlich: das ganze Bild bekommt denselben Flussvektor.
[S3] Transfer: Mehrere Objekte bewegen sich in verschiedene Richtungen, nicht die ganze Szene gleichförmig. Was nimmt man zur Bewegungsschätzung?
Nicht eine globale Transformation aus Korrespondenzen, sondern Optischen Fluss (lokal oder global), weil er pro Pixel eine Richtung liefert. Nachfrage: Wie bekommt man ohne Klassifikation die Form der bewegten Objekte? Region Growing: Pixel mit ähnlichem Flussvektor zu einer Region zusammenfassen (bewegungsbasierte Segmentierung).
[S3] Transfer: Kamerabewegung mit OF stabilisieren. Lokal oder global, und wie weiter?
Lokal (Lucas-Kanade), weil präziser und Fehler sich nicht ausbreiten. Nicht global, obwohl man eine einheitliche Bewegung erwartet (das war die falsche Antwort). Dann schauen, welche Verschiebung am häufigsten vorkommt (dominante Bewegung), und diese zur Stabilisierung auf das ganze Bild anwenden.
[S3] Transfer: BoW mit Fahrrad und Hund trainiert. Ein Bild zeigt beide, das Histogramm ist überall 1. Wie erkennt man beide Objekte?
Lösung 1: Sliding Window, in kleineren Fenstern ist jeweils nur ein Objekt. Lösung 2: Kombinatorik: Vom erkannten Histogramm das Fahrradhistogramm abziehen und prüfen, ob die Person noch hineinpasst, oder umgekehrt Fahrrad hinzufügen. Histogramme sind normalisiert.
[S3] Transfer: Hunde in verschiedenen Entfernungen und Größen, BoW mit Sliding Window. Muss man die Größe vorher wissen?
Nein, man iteriert mehrfach mit unterschiedlich großen Fenstern über das Bild (Bildpyramide) oder leitet die Fenstergröße aus der Skala der SIFT-Merkmale ab. In der Praxis verschiedene Fenstergrößen.
[S3] Transfer: Zwei Histogramme vergleichen, Vorschlag: nach Häufigkeit sortieren und Reihenfolgen vergleichen. Richtig?
Nein. Die Position im Histogramm trägt Information (welche Vokabel). Richtig: euklidische Distanz der Vektoren, eventuell kleine Einträge nullen. Nur wenn benachbarte Bins zusammenhängen (Orientierungen im SIFT-Deskriptor, Rundung verschiebt Anteile in Nachbarbins), ist die Earth Mover's Distance besser.
[S3] Transfer: TbD, mehrere Personen im Suchkegel. Wie zuordnen?
1. Kegel anhand der bisherigen Trajektorie krümmen oder kippen. 2. Wenn trotzdem mehrere drin sind: Heuristik, wer näher am Kegelmittelpunkt ist. 3. Dünner vs. dicker Mensch: Erscheinungsmerkmale mitverfolgen wie beim ISM-Tracker (einzelne Merkmale prädizieren, gewichten) oder die Merkmalsmengen der Hypothesen vergleichen.
[S3] Transfer: Polizeihubschrauber verfolgt ein Auto, hinter einem Baum liegt eine Weggabelung, das Auto ist verdeckt. Was macht Kalman, was der Partikelfilter?
Kalman: unimodal, entscheidet sich für einen Zweig, versagt, wenn der Detektor nichts findet. Man prädiziert einige Schritte (etwa 10) ohne Messung, dann ist die Spur verloren. Die Kovarianz ist fix, nicht adaptiv. Partikelfilter: multimodal, verfolgt beide Zweige als Hypothesen, bis eine Messung entscheidet. Arens' Ergänzung: Bei heutigen Bildraten sind Gabelungen kein Problem mehr, bei Verdeckung helfen mehrere Hypothesen. Zusätzlich 2D-zu-3D und Straßenwissen nutzen.
[S3] Transfer: Wie kann man den Kalman-Filter trotz nichtlinearer Projektion (Division durch z) anwenden?
Um den aktuellen Arbeitspunkt linearisieren (Taylor erster Ordnung, Jacobi-Matrix): Extended Kalman Filter. Und reicht es, das einmal zu machen? Nein, in jedem Schritt neu linearisieren: iterierter EKF. Oder gleich Partikelfilter.
[S3] Transfer: Wann helfen mehrere Hypothesen im Tracking wirklich?
Nicht so sehr an Weggabelungen (bei heutigen Bildraten sieht man die Entscheidung früh genug), sondern bei Verdeckungen: Während das Objekt nicht sichtbar ist, bleiben mehrere mögliche Positionen offen, bis eine Messung sie auflöst.
[S3] Transfer: Sie schauen eine fixe Welt an und ein Würfel dreht sich während der Aufnahmen. Geht SfM noch?
Nicht mehr so gut. Die Bildmerkmale des Würfels befinden sich zu verschiedenen Zeitpunkten an unterschiedlichen echten 3D-Positionen, die Korrespondenzen passen nicht mehr zu einer starren 3D-Welt. Ausnahme: homogener Hintergrund ohne Merkmale, dann ist es egal, ob Würfel oder Kamera sich dreht.
[S3] Transfer: Pyramide vor homogenem Hintergrund dreht sich, SfM? Und wenn sich die Kameras auch bewegen?
Vor homogenem Hintergrund: ja, Relativbewegung, es ist egal, ob sich Objekt oder Kamera dreht. Wenn sich Kamera und Objekt bewegen: geht nicht, man kann nicht unterscheiden, welche Bewegung von wem kommt, die Korrespondenzen stimmen nicht mehr mit einer starren 3D-Welt überein.
[S3] Transfer: Die Kirche, die Sie fotografieren, bekommt Beine und bewegt sich. Was passiert mit SfM?
Die Kirchenmerkmale liegen zu jedem Zeitpunkt an anderen 3D-Positionen, Hintergrundmerkmale bleiben. Die Korrespondenzen der Kirche widersprechen der starren Welt, das Bundle Adjustment bekommt große Rückprojektionsfehler. Nicht sagen: kein Problem, wenn alle Kameras mitfahren (Arens: dann gibt es keine Varianz mehr, die Bilder bleiben gleich). Ausnahme: homogener Hintergrund.
[S3] Transfer: Sie laufen mit der Kamera durch eine Allee mit viel Struktur, ein Fahrradfahrer fährt vorbei. Funktioniert SfM?
Wie gelernt nicht ganz, die Fahrradmerkmale liegen an unterschiedlichen echten 3D-Positionen. Aber: Der Rückprojektionsfehler ist für die wenigen Fahrradmerkmale groß und für die vielen Alleemerkmale klein. Also die Fahrradmerkmale als Ausreißer abtrennen (RANSAC), nur die Allee rekonstruieren. Mit den Fahrradmerkmalen kann man dann ein eigenes Fahrrad-3D-Modell bauen: Dynamic Structure from Motion.
[S3] Transfer: Berlin aus Internetfotos vs. GoPro-Video durch Berlin. Unterschiede für SfM?
GoPro: Intrinsics einmal fest für alle Bilder, weniger Unsicherheit. Aufnahmen hängen zusammen, Korrespondenzen in benachbarten Frames leicht (OF). Aber kleine Basislinie, fast parallele Strahlen, Tiefe schlecht konditioniert, und Rolling Shutter. Internetfotos: verschiedene Kameras und Intrinsics, erst Clustering, welche Bilder sich korrespondenzweise überlappen, dafür große Basislinien.
[S3] Transfer: Ich baue eine Selbstschussanlage. Was brauche ich, und was wird an die Waffe übertragen?
Objektdetektion (Personen erkennen). An die Waffe geht nur ein Signal oder Wahrheitswert über ein festes Protokoll, die Maschine reagiert direkt. Ein Mensch dagegen bräuchte eine Visualisierung oder textuelle Beschreibung und denkt sich etwas dazu.
[S3] Transfer: Wie würden Sie außer mit Änderungsdetektion noch erkennen, ob sich etwas bewegt hat? Und noch allgemeiner?
Korrespondenzen an Keypoints (SIFT) zwischen zwei Bildern, Optischer Fluss. Allgemeiner: Objektdetektion in beiden Bildern und dann Tracking (Arens' Ergänzung: dann benutzt man Tracking).
[S3] Transfer: Erwähnen Sie Raum-Zeit-Verfahren, wenn Sie sie nicht erklären können?
Nein. Ein Prüfling erwähnte sie nebenbei und wurde genau dazu abgefragt. Regel: Nur erwähnen, was man erklären kann. Wenn gefragt: Pixel entlang der Zeitachse als Signal, Frequenzanalyse, Bandpass zwischen Rauschen (hoch) und Beleuchtung (niedrig), oder MotionOrbits (räumlich-zeitliche Varianz).
[S3] Transfer: Ihre Trajektorie ist verrauscht und Sie wollen am Ende Begriffe wie schnell oder langsam ableiten. Was ist das Problem und die Lösung?
Geschwindigkeit ist die Ableitung der Position, Ableiten verstärkt das Rauschen, die Begriffe flackern (mal schnell, mal langsam um die Grenze). Lösung: geglättete Trajektorien aus DbT (Kalman), Hysterese oder unscharfe Zugehörigkeit bei den Begriffen.
[S3] Transfer: Was würden Sie sich für eine Note geben? (kommt am Ende immer)
Ehrlich und knapp: Nenne, was gut lief, und was du falsch oder unsicher beantwortet hast. Nicht prahlen, ein Protokoll nennt ausdrücklich, dass Arens das positiv fand. Beispiel: Irgendwas zwischen 2,0 und 3,0, weil ich beim Thema X unsicher war.
Last changed19 days ago