Klassische Bildverarbeitung betrachtet das fertige Summenbild meist als reines zweidimensionales Endprodukt: eine Anordnung von RGB-Pixeln, optimiert für Schärfe, Rauscharmut und Kontrast. Doch sowohl in der extremen Makrofotografie als auch in der Mond- und Landschaftsbeobachtung geht dabei die entscheidende Dimension verloren: die räumliche Tiefe.

Mit dem TacticalMapper und der Integration in Agent Gregs Retro-Upgrade-Pipeline geht die MoonEngine einen Schritt weiter. Wir generieren aus scheinbar flachen 2D-Stacking-Ergebnissen topografische Höhenprofile – ein System, das wir als 2.5D-Pseudo-LIDAR bezeichnen.


1. Die Kernidee: Warum Pseudo-LIDAR?

Echtes LIDAR (Light Detection and Ranging) misst die Laufzeit von Laserimpulsen, um millimetergenaue Punktwolken im 3D-Raum zu erfassen. In unseren Szenarien ist dieser Ansatz aus zwei Gründen unmöglich:

Die Idee hinter unserem Pseudo-LIDAR: Wenn wir keine aktive Laufzeitmessung haben und keine echte Stereoparallaxe vorliegt, nutzen wir die physikalischen Gesetzmäßigkeiten des Lichts – insbesondere Shape-from-Shading (SfS), lokale Helligkeitsgradienten und den bekannten Einfallswinkel der Beleuchtungsquelle.


2. Der Unterschied: Warum 2.5D und kein volles 3D?

In der Computergrafik und Fernerkundung muss man transparent zwischen echtem 3D und 2.5D (Elevation Maps) unterscheiden:

Echtes 3D (Punktwolke / Mesh): 2.5D Pseudo-LIDAR (Elevation Map):
 /\ /\
 / \ <-- Hinterschneidung / \
 / /\ \ (verdeckter Raum) /____\ <-- Höhe pro Pixel Z(x,y)
 /_/ \_\ | | (Keine Hinterschneidung)

Trotz dieser physikalischen Grenze bietet ein 2.5D-Höhenmodell enorme algorithmische Vorteile gegenüber einem simplen RGB-Bild.


3. Einsatzdomänen: Wo das Höhenprofil den Unterschied macht

A. Mondfotografie: Kratermorphologie und Sonnenstand

Am Tag-Nacht-Terminator des Mondes werfen Kraterwände, Rillen und Zentralberge lange, kontrastreiche Schatten. Der TacticalMapper analysiert diese Schattenwürfe und Helligkeitsabfälle. Über die Geometrie des Lichteinfalls rekonstruiert das System die relativen Höhenunterschiede der Mondkruste. Das Resultat (Retro_*_Height.tif) visualisiert die Tiefe eines Einschlagkraters und lässt Erhebungen plastisch hervortreten.

B. Makrofotografie: Okklusionsgrenzen & Ebenentrennung

Im extremen Nahbereich (Abbildungsmaßstab 2:1 bis 5:1) überlagern sich Schärfeebenen extrem schnell. Borsten eines Insekts verdecken den Chitinpanzer; Sporenkapseln ragen vor den Stiel. Wenn die MoonEngine hieraus eine Pseudo-Tiefenkarte ableitet, können Artefakte an Kantenübergängen (sogenanntes Focus Halos) mathematisch segmentiert werden. Der Algorithmus weiß dank der 2.5D-Karte, welches Strukturelement vor welchem Hintergrund liegt.

C. Landschaftsfotografie: Taktische Verrechnung im Fokus-Stack

Bei weiten Landschaften mit extremem Nah-Fern-Kontrast (z. B. Felsblock 50 cm vor der Linse, Gebirgskette am Horizont) dient die topografische Analyse zur relativen Tiefensegmentierung. Beim Zusammenfügen der Belichtungsreihen verhindert die 2.5D-Maske Unschärfeübergänge und Geisterbilder an Kanten, da Vordergrund und Hintergrund als getrennte topografische Ebenen verrechnet werden.


4. Wie der TacticalMapper im Code arbeitet

In der Architektur der MoonEngine wird dieser Prozess von AgentGreg autonom angestoßen, sobald er alte Archive nachwertet:

# Auszug aus der Archiv-Routine von Agent Greg:
# Automatische Erkennung und Transformation alter 2D-Stacks
for file in files:
 if file.endswith(".tif") and any(tag in file for tag in ["Landscape_Result", "Macro_Training", "Recon"]):
 file_path = os.path.join(root, file)
 asset_dir = os.path.join(root, "3D_Map_Assets")
 base_name = os.path.splitext(file)[0]
 expected_height = os.path.join(asset_dir, f"Retro_{base_name_Height.tif")

 if not os.path.exists(expected_height):
 # Transformation via TacticalMapper zu topografischen Assets
 success = mapper.process_recon_or_landscape(file_path, root, prefix="Retro")
 if success:
 self.learn_from_image(file_path, "Retro_Archiv")

Die mathematische Höhenextrapolation basiert dabei auf der Integration von Helligkeitsgradienten senkrecht zur Lichtquelle:

Z(x, y) = ( ∂I / ∂x · cos(θ) + ∂I / ∂y · sin(θ) Albedoest ) norm

5. Das visuelle Gedächtnis: Wie L.U.N.A. die Reliefs nutzt

Die generierten Höhenkarten sind kein Selbstzweck. Agent Greg registriert jedes erfolgreiche Höhenrelief mit seiner MD5-Prüfsumme in der Tabelle visual_memory.

L.U.N.A. Prime greift auf diese Datenbank zurück:


Fazit: Die Tiefe hinter dem Pixel

Das 2.5D-Pseudo-LIDAR schließt die Lücke zwischen reinem Bild-Stacking und räumlicher Computer Vision. Es zeigt transparent die physikalischen Grenzen des Machbaren auf – kein künstliches Erfinden verdeckter Rückseiten, sondern ehrliche, deterministische Rekonstruktion aus Licht, Schatten und Gradienten.

Damit wird die MoonEngine von einem einfachen Bildverarbeitungswerkzeug zu einem taktischen Aufklärungssystem für Mikrokosmos und Himmelskörper.