KĂŒnstliche Intelligenz

Erstellung von Neuralen Such- und RettungsflugdurchgÀngen mit Mega-NeRF

mm

Ein neues Forschungsprojekt zwischen der Carnegie Mellon und dem autonomen Fahrtechnologie-Unternehmen Argo AI hat eine wirtschaftliche Methode zur Erstellung dynamischer Flugdurchgänge auf der Grundlage von Neuralen Radiance-Feldern (NeRF) entwickelt, die auf Footage von Drohnen basiert.

"Mega-NeRF

Der neue Ansatz, der Mega-NeRF genannt wird, erreicht im Vergleich zum Durchschnittsstandard für NeRF-Renderings eine 40-fache Geschwindigkeitssteigerung und bietet etwas, das sich deutlich von den Standard-Tanks und Tempel unterscheidet, die in neuen NeRF-Artikeln immer wieder auftauchen.

Der neue Artikel trägt den Titel Mega-NeRF: Skalierbare Konstruktion von großmaßstäblichen NeRFs für virtuelle Flugdurchgänge und stammt von drei Forschern der Carnegie Mellon, von denen einer auch Argo AI vertritt.

Modellierung von NeRF-Landschaften für Such- und Rettungseinsätze

Die Autoren gehen davon aus, dass Such- und Rettungseinsätze (SAR) ein optimaler Anwendungsfall für ihre Technik sind. Wenn bei der Bewertung einer SAR-Landschaft Drohnen aufgrund von Bandbreiten- und Batterielebenszeit-Einschränkungen eingeschränkt sind, können sie normalerweise keine detaillierten oder umfassenden Aufnahmen vornehmen, bevor sie zur Basis zurückkehren müssen, wo ihre gesammelten Daten in statische 2D-Luftaufnahmen umgewandelt werden.

Die Autoren erklären:

‘Wir stellen uns eine Zukunft vor, in der neuronale Rendering diese Analyse in 3D hebt und es den Reaktionsteams ermöglicht, das Gelände zu inspizieren, als ob sie in Echtzeit mit einem Drohnen-Flug durch das Gebiet flogen, in einem Detailgrad, der weit über das hinausgeht, was mit klassischer Structure-from-Motion (SfM) erreichbar ist.’

Mit dieser Anwendungsaufgabe haben die Autoren versucht, ein komplexes NeRF-basiertes Modell zu erstellen, das innerhalb eines Tages trainiert werden kann, da die Lebenserwartung der Überlebenden in Such- und Rettungseinsätzen innerhalb der ersten 24 Stunden um bis zu 80 % abnimmt.

Die Autoren weisen darauf hin, dass die für die Ausbildung eines Mega-NeRF-Modells erforderlichen Drohnen-Aufnahmedaten “um Größenordnungen” größer sind als ein Standard-Datensatz für NeRF und dass die Modellkapazität deutlich höher sein muss als in einer Standard-Gabelung oder Ableitung von NeRF. Darüber hinaus ist Interaktivität und Explorierbarkeit in einer Such- und Rettungs-Terrainkarte unerlässlich, während Standard-NeRF-Renderings in Echtzeit einen viel begrenzteren Bereich vorberechneter möglicher Bewegungen erwarten.

Teilen und Erobern

Um diese Probleme zu lösen, haben die Autoren einen geometrischen Clustering-Algorithmus entwickelt, der die Aufgabe in Submodule unterteilt und effektiv eine Matrix von Sub-NeRFs erstellt, die gleichzeitig trainiert werden.

Bei der Wiedergabe implementieren die Autoren auch einen just-in-time-Visualisierungs-Algorithmus, der interaktiv genug ist, um eine vollständige Interaktivität ohne übermäßige Vorverarbeitung zu ermöglichen, ähnlich wie Videospiele Details auf Objekte erhöhen, wenn sie sich dem Benutzersichtfeld nähern, aber auf einer energiesparenden und rudimentären Skala bleiben, wenn sie in der Ferne sind.

Diese Sparmaßnahmen, so argumentieren die Autoren, führen zu besseren Details als frühere Methoden, die sehr weite Themenbereiche in einem interaktiven Kontext zu bewältigen versuchen. In Bezug auf die Extrapolation von Details aus begrenzter Auflösung von Videoaufnahmen weisen die Autoren auch auf die visuelle Verbesserung von Mega-NeRF im Vergleich zur äquivalenten Funktionalität in UC Berkeley’s PlenOctrees hin.

Das Projekt verwendet eine Kette von Sub-NeRFs, die auf den Echtzeit-Renderfunktionen von KiloNeRF basiert, wie die Autoren anerkennen. Mega-NeRF weicht jedoch von diesem Ansatz ab, indem es tatsächlich während der Ausbildung “Sharding” (diskretes Umleiten von Szenenfacetten) durchführt, anstatt KiloNeRFs Post-Processing-Ansatz, der eine bereits berechnete NeRF-Szene nimmt und sie anschließend in einen explorable Raum umwandelt.

A discrete training set is created for submodules, comprised of training image pixels whose trajectory might span the cell that it represents. Consequently, each module is trained entirely separately from adjacent cells. Source: https://arxiv.org/pdf/2112.10703.pdf

Ein diskreter Trainingsdatensatz wird für Submodule erstellt, der aus Trainingsbildpixeln besteht, deren Traektorie die Zelle, die sie darstellt, umfassen kann. Folglich wird jedes Modul vollständig unabhängig von benachbarten Zellen trainiert. Quelle: https://arxiv.org/pdf/2112.10703.pdf

Die Autoren beschreiben Mega-NeRF als ‘eine Neuformulierung der NeRF-Architektur, die die Verbindungen zwischen den Schichten in einer räumlich bewussten Weise spart, was Effizienzverbesserungen bei der Ausbildung und Renderingzeit ermöglicht’.

Conceptual comparison of training and data discretization in NeRF, NeRF++, and Mega-NeRF. Source: https://meganerf.cmusatyalab.org/

Konzeptioneller Vergleich der Ausbildung und Daten-Discretisierung in NeRF, NeRF++ und Mega-NeRF. Quelle: https://meganerf.cmusatyalab.org/

Die Autoren behaupten, dass Mega-NeRFs Verwendung neuer temporaler Kohärenzstrategien den Bedarf an übermäßiger Vorverarbeitung vermeidet, die inhärenten Grenzen der Skalierbarkeit überwindet und ein höheres Detailniveau als frühere ähnliche Arbeiten erreicht, ohne Interaktivität zu opfern oder mehrere Tage Ausbildung zu erfordern.

Die Forscher stellen auch große Datensätze mit Tausenden von High-Definition-Bildern zur Verfügung, die aus Drohnen-Aufnahmen über 100.000 Quadratmeter Land um einen Industriekomplex herum gewonnen wurden. Die beiden verfügbaren Datensätze sind ‘Gebäude’ und ‘Schutt’.

Verbesserung gegenüber früheren Arbeiten

Der Artikel weist darauf hin, dass frühere Bemühungen in ähnlicher Richtung, einschließlich SneRG, PlenOctree und FastNeRF, alle auf eine Art von Zwischenspeicherung oder Vorverarbeitung angewiesen sind, die Rechen- und/oder Zeitüberhead hinzufügt, die für die Erstellung virtueller Such- und Rettungsumgebungen nicht geeignet sind.

Während KiloNeRF Sub-NeRFs aus einer bestehenden Sammlung von Multilayer-Perzeptronen (MLPs) ableitet, ist es architektonisch auf Innenräume mit begrenzter Erweiterbarkeit und Kapazität zur Bewältigung höherer Skalenebenen beschränkt. FastNeRF speichert eine “gebackene”, vorab berechnete Version des NeRF-Modells in einer speziellen Datenstruktur und ermöglicht es dem Benutzer, durch diese Datenstruktur zu navigieren, entweder durch ein spezielles MLP oder durch sphärische Basisberechnung.

Im Szenario von KiloNeRF ist die maximale Auflösung jedes Facets in der Szene bereits berechnet, und keine höhere Auflösung wird verfügbar, wenn der Benutzer sich entscheidet, “hineinzuzoomen”.

Im Gegensatz dazu kann NeRF++ native nicht begrenzte, externe Umgebungen bewältigen, indem es den potenziell explorable Raum in Vordergrund- und Hintergrundbereiche unterteilt, von denen jeder von einem speziellen MLP-Modell überwacht wird, das vor der endgültigen Zusammensetzung Strahlencasting durchführt.

Schließlich verbessert NeRF in der Wildnis, das nicht direkt unbegrenzte Räume anspricht, die Bildqualität im Phototourism-Datensatz und seine Erscheinungsbindungen wurden in der Architektur für Mega-NeRF übernommen.

Die Autoren räumen auch ein, dass Mega-NeRF von Structure-from-Motion-(SfM)-Projekten inspiriert ist, insbesondere von der Building Rome in a Day-Projekt der Washington University.

Temporale Kohärenz

Ähnlich wie PlenOctree berechnet Mega-NeRF vorab eine grobe Cache von Farbe und Opazität in der Region der aktuellen Benutzerfokussierung. Allerdings berechnet Mega-NeRF anstelle von PlenOctree, das Pfade berechnet, die in der Nähe des berechneten Pfades liegen, diese Informationen, indem es den berechneten Baum unterteilt und einer wachsenden Tendenz folgt, NeRFs eng miteinander verbundene Verarbeitungsetikette zu entflechten.

On the left, PlenOctree's single-use calculation. Middle, Mega-NeRF's dynamic expansion of the octree, relative to the current position of the fly-through. Right, the octree is reused for subsequent navigation.

Links, PlenOctrees Einmalberechnung. Mitte, Mega-NeRFs dynamische Erweiterung des Octrees im Verhältnis zur aktuellen Position des Flugdurchgangs. Rechts, der Octree wird für die nachfolgende Navigation wiederverwendet.

Diese Rechenökonomie, so argumentieren die Autoren, reduziert den Rechenaufwand erheblich, indem sie On-the-Fly-Berechnungen als lokalen Cache verwendet, anstatt sie vorab zu schätzen und zu cachen, wie es in der jüngsten Praxis üblich ist.

Geleitetes Sampling

Nach der anfänglichen Sampling, in Übereinstimmung mit Standardmodellen bis heute, führt Mega-NeRF eine zweite Runde von geleitetem Ray-Sampling nach Octree-Verfeinerung durch, um die Bildqualität zu verbessern. Dazu verwendet Mega-NeRF nur einen Durchgang basierend auf den bestehenden Gewichten in der Octree-Datenstruktur.

Wie aus dem Bild oben hervorgeht, verschwenden Standard-Sampling-Rechnen Ressourcen, indem sie einen übermäßigen Teil des Zielgebiets auswerten, während Mega-NeRF die Berechnungen auf der Grundlage von Kenntnissen über die Anwesenheit von Geometrie einschränkt und Berechnungen über einem vordefinierten Schwellenwert drosselt.

Daten und Ausbildung

Die Forscher testeten Mega-NeRF auf verschiedenen Datensätzen, einschließlich der beiden oben erwähnten, handgefertigten Datensätze, die aus Drohnen-Aufnahmen über industriellen Boden gewonnen wurden. Der erste Datensatz, Mill 19 – Gebäude, enthält Aufnahmen, die über ein Gebiet von 500 x 250 Quadratmetern aufgenommen wurden. Der zweite, Mill 19 – Schutt, stellt ähnliche Aufnahmen dar, die über einem angrenzenden Baugelände aufgenommen wurden, auf dem die Forscher Dummys darstellende potenzielle Überlebende in einem Such- und Rettungsszenario platzierten.

From the paper's supplemental material: Left, the quadrants to be covered by the Parrot Anafi drone (pictured center, and in the distance in the right-hand photo).

Aus dem Supplementalmaterial des Artikels: Links, die Quadranten, die von der Parrot Anafi-Drohne (abgebildet in der Mitte und im Hintergrund auf dem rechten Foto) abgedeckt werden sollen.

Darüber hinaus wurde die Architektur gegen mehrere Szenen aus UrbanScene3D getestet, von der Visual Computing Research Center an der Shenzhen University in China, die aus HD-Drohnen-Aufnahmen von großen städtischen Umgebungen besteht; und der Quad 6k-Datensatz, von der IU Computer Vision Lab der Indiana University.

Die Ausbildung fand über 8 Submodule statt, jedes mit 8 Schichten von 256 versteckten Einheiten und einer nachfolgenden 128-Kanal-ReLU-Schicht. Im Gegensatz zu NeRF wurde dasselbe MLP verwendet, um grobe und verfeinerte Proben abzufragen, was die Gesamtmodellgröße reduziert und die Wiederverwendung von groben Netzwerkausgaben auf der nachfolgenden Renderingstufe ermöglicht. Die Autoren schätzen, dass dies 25 % der Modellabfragen für jeden Strahl spart.

1024 Strahlen wurden pro Batch unter Adam bei einem Startlernalgorithmus von 5×104 abgetastet, der auf 5×10-5 abfiel. Die Erscheinungsbindungen wurden auf die gleiche Weise wie im oben genannten NeRF in der Wildnis behandelt. Mixed-Precision-Sampling (Training bei niedrigerer Genauigkeit als 32-Bit-Gleitkomma) wurde verwendet, und die MLP-Breite wurde auf 2048 versteckte Einheiten festgelegt.

Testen und Ergebnisse

In den Tests der Forscher konnte Mega-NeRF robust NeRF, NeRF++ und DeepView nach 500.000 Iterationen über die oben genannten Datensätze überbieten. Da das Mega-NeRF-Zielszenario zeitlich begrenzt ist, erlaubten die Forscher den langsameren vorherigen Frameworks extra Zeit über die 24-Stunden-Grenze hinaus und berichten, dass Mega-NeRF sie auch dann übertraf, wenn man ihnen diese Vorteile gewährte.

Die verwendeten Metriken waren Peak-Signal-Rausch-Verhältnis (PSNR), die VGG-Version von LPIPS und SSIM. Die Ausbildung fand auf einer einzelnen Maschine mit acht V100-GPUs statt – effektiv auf 256 GB VRAM und 5120 Tensor-Kernen.

Sample results from the Mega-NeRF experiments (please see the paper for more extended results across all frameworks and datasets) show that PlenOctree causes notable voxelization, while KiloNeRF produces artifacts and generally more blurry results.

Beispielergebnisse aus den Mega-NeRF-Experimenten (siehe den Artikel für weitere Ergebnisse über alle Frameworks und Datensätze) zeigen, dass PlenOctree eine bemerkenswerte Voxelisierung verursacht, während KiloNeRF Artefakte erzeugt und im Allgemeinen unschärfere Ergebnisse liefert.

Die Projektseite ist unter https://meganerf.cmusatyalab.org/ zu finden, und der veröffentlichte Code ist unter https://github.com/cmusatyalab/mega-nerf verfügbar.

Erstveröffentlicht am 21. Dezember 2021.

Autor ĂŒber maschinelles Lernen, DomĂ€nen-Spezialist in der menschlichen Bildsynthese. Ehemaliger Leiter der Forschungsinhalte bei Metaphysic.ai.