Zum Hauptinhalt springen
Lexikon

Computer Vision (für 3-D-Rekonstruktion)

Im Laufe der letzten Jahrzehnte hat sich ,,Computer Vision“ – im Deutschen oft mit den Begriffen Robotersehen, Computersehen oder Bildverarbeitung bezeichnet – von einem kleinen Nischenthema zu einem der aktivsten Forschungsgebiete der Informatik entwickelt. Die drei wichtigsten Tagungen – nämlich die International Conference on Computer Vision (ICCV), die European Conference on Computer Vision (ECCV) und die Conference on Computer Vision and Pattern Recognition (CVPR) wachsen Jahr für Jahr rapide an. Die CVPR hat beispielsweise aktuell den höchsten h-Index sämtlicher Konferenzen weltweit. Und Fachzeitschriften wie IEEE Transactions on Pattern Analysis and Machine Intelligence oder das International Journal of Computer Vision zählen zu den Informatikzeitschriften mit dem höchsten Impact. Die Computer Vision Community ist seit jeher eine hochgradig interdisziplinäre Community mit Wissenschaftlern aus Fächern wie Informatik, Mathematik, Elektrotechnik, Physik oder Psychologie.

Auch in der Öffentlichkeit spielt das Thema Computer Vision inzwischen eine zunehmend zentrale Rolle. Während man vor 10 Jahren dem Laienpublikum noch erklären musste, was Computer Vision oder Bildverarbeitung bedeutet und wozu das möglicherweise nützlich ist, liest man heute fast täglich etwas zu diesem Thema auf den Titelseiten der Zeitungen. Mal geht es um selbstfahrende Autos, die mithilfe von Kameras und anderen Sensoren ihre Umwelt erfassen und analysieren, um Hindernisse zu vermeiden und das Auto sicher durch den komplexen Verkehr zu bringen. Mal geht es um autonom fliegende Drohnen, die sich mit Kameras in ihrer Umgebung lokalisieren, um beispielsweise in Katastrophenszenarien nach Überlebenden zu suchen oder in der Landwirtschaft das Pflanzenwachstum zu kontrollieren. Mal geht es um bildbasierte Diagnostik in der Medizin, wo Computer-Vision-Algorithmen eingesetzt werden, um Tumore in Computertomografie(CT)-Bildern zu lokalisieren oder die Herzbewegung in Ultraschallvideos zu analysieren. Und mal geht es um Themen wie computerisierte Gesichts-,Mimik- oder Gestenerkennung für die Mensch-Maschine-Interaktion.

Warum die Community so wächst und woher das öffentliche Interesse an unserem Forschungsfeld kommt, hat viele Gründe. Erstens wird zunehmend deutlich, dass die Reproduktion der menschlichen Wahrnehmung im Computer eine der größten Hürden ist für die Unterstützung des menschlichen Alltags durch intelligente Maschinen. Während für Menschen Schachspielen schwierig und das Erkennen von Gesichtern leicht ist, ist es nämlich für Computer genau anders herum: Das Schachspiel folgt einer kleinen Zahl präzise definierter Regeln, die ein Computermit genug Rechenleistung problemlos auf viele Züge im Voraus berechnen kann. Bei der Gesichtserkennung dagegen, sind die Regeln oder Prinzipien nicht offensichtlichund damit im Computer nicht leicht reproduzierbar. Das Erkennen vertrauter Gesichter und das Erfassen der Gemütslage unseres Gesprächspartners, auf das wir Menschen über Jahrtausende der Evolution optimiert sind, ist aber auch für Maschinen unabdingbar, wenn sie mit Menschen sinnvoll interagieren sollen.

Zweitens hat die Computer Vision Community nach jahrzehntelanger Entwicklung der methodischen Grundlagen in den letzten Jahren wichtige Durchbrüche in der praktischen Umsetzung erzielt, mit denen relevante Technologien wie selbstfahrende Autos und intelligente Mensch-Maschine-Interaktion möglich werden. Diese praktischen Durchbrüche basieren auf enormen Fortschritten in der mathematischen und algorithmischen Modellierung, aber auch auf Entwicklungen in der Hardware von schnelleren und hochauflösenden Kameras bis hin zu schnelleren Rechenarchitekturen wie „multi-core“-CPU („central processing unit“) oder -GPU („graphic processing unit“). Für konkrete Fragestellungen lässt sich dieser Fortschritt genau quantifizieren: Während die Berechnung einer pixelgenauen Korrespondenz zwischen zwei Fotos – in der Fachwelt oft als optischer Fluss bezeichnet [5] – beispielsweise vor 20 Jahren noch eine ganze Nacht erfordert hat, lässt sich dasselbe Problem heute sehr viel präziser mit Geschwindigkeiten von 60 Bildpaaren pro Sekunde lösen.

Drittens eröffnet die Omnipräsenz von Kameras im Alltag – in Smartphones, Laptops, Tablets, Fahrzeugen oder kommerziellen Drohnen – eine Vielzahl von spannenden Computer-Vision-Anwendungen. Während man als Computer-Vision-Forscher in den 1980er-Jahren noch mühsam nach geeigneten Fotos suchen musste und anschließend tausende Verfahren an ein und demselben Testbild evaluiert wurden, quillt das Internet heutzutage über von Bildern und Videos. 

3-D-Rekonstruktion und SLAM

Beispielhaft soll hier die Entwicklung im Bereich 3-D-Rekonstruktion skizziert werden, einem der heiligen Grale der Computer Vision. Wie schafft man es, aus den typischerweise nur zweidimensionalen Kameraabbildern die dreidimensionale Welt möglichst originalgetreu im Computer zu rekonstruieren? Und wie kann man sowohl die Bewegung einer Kamera als auch die 3-D-Struktur der beobachteten Welt berechnen? Diese Herausforderung bezeichnet man im Englischen mit Simultaneous Localization and Mapping (SLAM).

Manche dieser Fragestellungen sind bereits seit über hundert Jahren erforscht worden. So zeigte der österreichische Mathematiker Erwin Kruppa beispielsweise schon 1913 [7], dass man – gegeben sind fünf Paare korrespondierender Punkte in zwei Kamerabildern – deren dreidimensionale Position und die Bewegung der Kamera (bis auf endlich viele Lösungen) eindeutig rekonstruieren kann. Auf Basis dieser und ähnlicher Arbeiten ist seit den 1980er- Jahren eine Vielzahl von Algorithmen entstanden, um Kamerabewegung und 3-D-Punktwolken aus Kamerabildern zu rekonstruieren [4].

In den letzten Jahren zeichnet sich hier allerdings ein Paradigmenwechsel ab. Denn die Arbeit von Kruppa ist in zweierlei Hinsicht irreführend: Erstens sehe ich beim Einschalten einer Videokamera nicht eine kleine Anzahl von Punkten, sondern eine große Menge von Farben. Aus diesen Farben eine endliche Menge Punkte zu extrahieren, ist ein zwangsläufig heuristisches und fehleranfälliges Unterfangen. Zweitens ist auch die Korrespondenz dieser Punkte zu entsprechenden Punkten in anderen Kamerabildern keineswegs gegeben. Diese Korrespondenz zuverlässig zu berechnen, ist schwierig und oftmals sehr rechenaufwendig. Im Gegensatz zu klassischen Rekonstruktionsverfahren, die in einer Vorverarbeitung Merkmalspunkte extrahieren und diese in Korrespondenz bringen [4], setzen sich zunehmend direkte Methoden durch, die 3-DGeometrie und Kamerabewegung unmittelbar aus den Kamerabildern bestimmen.

So haben Faugeras und Keriven beispielsweise 1997 zeigen können [3], dass sich direkt aus mehreren Bildern (bei bekannter Kameraposition) mithilfe von Level-Set-Methoden dichte Geometrie (nicht nur eine Punktwolke)mit berechnen lässt.

Während die Rekonstruktionen von Faugeras und Keriven nur lokal optimal waren und daher eine geeignete Initialisierung erforderlich war, basieren die Rekonstruktionen in Abb. 1 auf konvexen Relaxationsverfahren, die keine Initialisierung erfordern und darauf abzielen, die beweisbar besten Rekonstruktionen zu berechnen [8]. Kernidee dieser Verfahren ist es, das ursprünglich nicht konvexe Optimierungsproblemdurch ein konvexes Problem so zu approximieren, dass die Lösung des konvexen Problems möglichst nah an der Lösung des ursprünglichen Problems liegt. Die Ergebnisse in Abb. 1 belegen, dass man aus Kameradaten inzwischen selbst solch filigrane Strukturen wie das Seil eines seilspringenden Kindes zuverlässig und über die Zeit rekonstruieren kann.

Auch wenn Laserscanner weiterhin höhere Genauigkeiten in der 3-D-Rekonstruktion ermöglichen, liegen die Vorteile kamerabasierter Verfahren auf der Hand: Kameras sind deutlich günstiger, sie sind omnipräsent, sie sind kleiner und leichter und sie ermöglichen zeitlich hochaufgelöste 3-DRekonstruktionen wie die in Abb. 1 gezeigten. Klein, leicht und schneller bedeutet beispielsweise, dass sie geradezu ideal geeignet sind, um auch kleinere Drohnen autonom fliegen zu lassen: Nanocopter mit Nutzlasten von wenigen Gramm können beispielsweise problemlos mit einer Kamera ausgestattet autonom geflogen werden.

Die gleichzeitige Berechnung von Geometrie und Kamerabewegung (SLAM) ist vergleichsweise schwierig, weil es eine Art Henne-Ei-Problem ist: Die Rekonstruktion erfordert die Kamerapositionen und die Kamerapositionen erfordern die Geometrie. Auch für dieses gekoppelte Optimierungsproblem haben sich direkte Methoden wie LSD(Large-Scale Direct Monocular)-SLAM [2] und dessen Nachfolger DSO (Direct Sparse Odometry) [1] als deutlich leistungsstärker durchgesetzt. Quantitative Vergleiche mit State-of-the-Art- Verfahren zeigen, dass sich durch die direkte Nutzung der gesamten verfügbaren Farbinformation sowohl die Genauigkeit als auch die Robustheit von SLAM-Verfahren annähernd verdoppeln lassen [1]. Die entstehenden Algorithmen erlauben das echtzeitfähige Verfolgen einer frei bewegten Kamera mit einer Genauigkeit im Promillebereich (Abb. 2).

Derartige Verfahren werden eine zentrale Komponente der selbstfahrenden Autos bilden, denn sie erlauben eine präzise Lokalisierung des Autos und eine detailgenaue Kartierung der 3-DUmgebung in Echtzeit direkt aus dem Auto heraus (Abb. 3).

Ausblick

Derartige Technologien werden zunehmend in unserem Alltag Einzug finden. Wir werden sie im Smartphone in Form von Apps antreffen, die uns innerhalb von Gebäudekomplexen wie Bahnhöfen oder Flughäfen mithilfe der eingebauten Kamera zu einem gewünschten Laden oder Treffpunkt navigieren. Sie erlauben uns, mithilfe des Smartphones Objekte unserer Umwelt zu erfassen und als 3-D-Modell zu virtualisieren – beispielsweise, um sie in Computerspiele zu integrieren oder um sie auf 3-D-Druckern zu kopieren. Oder in Form von Komponenten eines selbstfahrenden Autos: Sie können sich selbst lokalisieren, die 3-DUmgebung erfassen, Hindernisse vermeiden und auf diese Weise die Passagiere sicher durch den Verkehr befördern. Auch was die methodische Umsetzung angeht, tun sich neue Alternativen auf. So stellt sich beispielsweise die Frage, ob 3-D-Rekonstruktion und SLAM auch mit tiefen neuronalen Netzen berechenbar sind. Diese Verfahren feiern in vielen Bereichen der Computer Vision Community seit gut fünf Jahren große Erfolge, denn für Herausforderungen wie Objekterkennung, Klassifikation und semantische Segmentierung sind sie deutlich leistungsstärker als bisherige Verfahren [6]. Es zeichnet sich ab, dass zumindest gewisse Aspekte der 3-D-Rekonstruktion sich mit diesen Verfahren lösen lassen. Hauptvorteil solcher Verfahren ist es, dass sie mithilfe großer Mengen von Trainingsdaten in großem Umfang Wissen über die uns umgebende 3-D-Welt in die Verfahren einbringen können.

Literatur

  1. Engel J, Koltun V, Cremers D (2017) Direct Sparse Odometry. IEEE T Pattern Anal. To appear
  2. Engel J, Schöps T, Cremers D (2014) LSD-SLAM: Large-scale direct monocular SLAM. In: European Conference on Computer Vision (ECCV)
  3. Faugeras O, Keriven R (1998) Complete dense stereovision using level set methods. In: European Conference on Computer Vision (ECCV)
  4. Hartley R, Zisserman A (2003) Multiple View Geometry in Computer Vision. Cambridge University Press, Cambridge
  5. Horn BK, Schunck BG (1981) Determining optical flow. Artif Intell 17(1–3): 185–203
  6. Krizhevsky A, Sutskever I, Hinton GE (2012) Imagenet classification with deep convolutional neural networks. In: Advances in Neural Information Processing Systems (NIPS)
  7. Kruppa E (1913) Zur Ermittlung eines Objektes aus zwei Perspektiven mit innerer Orientierung. Hölder
  8. Oswald MR, Stühmer J, Cremers D (2014) Generalized connectivity constraints for spatio-temporal 3D reconstruction. In: European Conference on Computer Vision (ECCV) Informatik

Autor und Copyright

Daniel Cremers
Department of Informatics, TUM, München
E-Mail

© Springer-Verlag Berlin Heidelberg 2017