Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mars GeoAI

Automatic identification of geologically interesting regions on Mars using autoencoders and satellite imagery from HiRISE and CTX. This project processes large-scale mosaics from The Murray Lab, applies normalization and tiling strategies, trains autoencoders for unsupervised anomaly detection, and generates anomaly heatmaps to support planetary exploration and geological mapping.


📌 Overview

Planetary scientists rely on high-resolution imagery to study the Martian surface. This project automates the pipeline:

  1. Download & transform CTX mosaics (from The Murray Lab).
  2. Normalization and preprocessing of TIF mosaics into tiles.
  3. Autoencoder training for anomaly detection.
  4. Reconstruction & anomaly scoring per tile.
  5. Heatmap generation for visual exploration of anomalies.

The final outputs are geospatial heatmaps that highlight regions of potential geological interest.


🔄 Data Processing Pipeline

Data Flow

FASE 1. Data Download and Transformation

  • download_ctx.py → downloads CTX tiles in .zip format.
  • decompress_ctx.py → extracts ZIP archives into TIF mosaics.

FASE 2. Normalization and Processing

  • normalize_tif.py → histogram matching + normalization (z-score, min-max).
  • tile_single_mosaic.py → splits large mosaics into small PNG tiles.
  • tif_to_png_split.py → organizes tiles into train/val/test subsets.

Further stages (not shown in the diagram) handle:

  • Model training (advanced_cae.py, main.py)
  • Inference over tiles or passes (infer_* scripts)
  • Visualization (plain_overlay.py, heatmap_overlay.py)

✨ Features

  • Unsupervised anomaly detection with convolutional autoencoders.
  • End-to-end data preparation pipeline for CTX mosaics.
  • Heatmap generation for anomaly visualization.
  • Modular scripts for preprocessing, training, inference, and visualization.

🛠️ Technologies

  • Python 3.10+
  • TensorFlow / Keras (autoencoder training & inference)
  • Rasterio (geospatial raster handling)
  • OpenCV / NumPy (image processing)
  • scikit-image (histogram matching, SSIM)
  • tqdm (progress tracking)
  • QGIS (optional: for further geospatial visualization)

📂 Dataset Sources


📊 Results

The trained convolutional autoencoder was able to reconstruct CTX tiles and highlight anomalous regions. The following examples show how anomaly scores are transformed into visual overlays and heatmaps:

🔹 Example 1 – Global Heatmap Overlay N32

Original tile (left), heatmap (right):

Tile Comparison

🔹 Example 2 – Global Heatmap Overlay N52

Original tile (left), heatmap (right):

Heatmap Overlay


These results demonstrate the ability of the pipeline to support automatic geological feature discovery and provide scientists with prioritized regions for further exploration.

📜 License

This project is licensed under the MIT License. See the LICENSE file for details.


👤 Author: Enrique Ruiz Ruiz

🎓 Master’s Thesis – Universidad de Alcalá de Henares

About

Automatic identification of geologically interesting regions on Mars using autoencoders and analysis of HiRISE and CTX satellite imagery. The project generates heatmaps to support planetary exploration and mapping

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages