Skip to content

RobinGerster7/HyperFrame

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HyperFrame

A Modular Framework for Hyperspectral Detection

Overview | Datasets | Usage | Citation | Contact

HyperFrame Logo

🌞 Overview

HyperFrame is a modular and extensible framework for hyperspectral target detection. It is built to support rigorous and reproducible research, offering a flexible architecture for combining detection algorithms, spectrum adaptation methods, and evaluation routines.


📖 Datasets

Traditional hyperspectral target detection relies on benchmark datasets such as San Diego, ABU and HYDICE. However, these datasets are often small and evaluated on the same images used for training, leading to overly optimistic results.

To improve real-world robustness, we introduce cross-scene domain adaptation benchmarks, inspired by optical object detection setups. These benchmarks require models to extract target spectra from one scene and generalize to another, simulating real-world conditions where detectors must adapt to new environments.

📂 Dataset Downloads

Dataset Download Link
SanDiego Google Drive
Camo Upon Request
SSD Google Drive
SSDE Google Drive
ABU-Airport Google Drive

After downloading and extracting the ZIP files, ensure your dataset structure is as follows:

/datasets/
│── SanDiego/
│── Camo/
│── SSD/
...

Each folder contains all .mat files of the corresponding dataset.


🚀 Usage

1️⃣ Install Python

We recommend Python 3.13. You can download it from python.org.

2️⃣ Create a Virtual Environment (Recommended)

Setting up a virtual environment helps avoid dependency conflicts.

3️⃣ Install Dependencies

pip install -r requirements.txt

✅ Running the Demo

To quickly test your setup, run the demo script:

python demo.py

This script will:

  • Load datasets from datasets/ with user-defined source → test folders.
  • Perform a detection test using a selectable detector and target spectrum generator.
  • Compute and print evaluation metrics, including AUC scores and inference time.
  • Visualize detection maps.

🛠 Customizing the Demo

Modify demo.py to:

  • Change datasets: Update source_folders and test_folders in the DemoConfig.
  • Use different detectors: Replace detector=CEM() with detector=ACE() or another detection model.
  • Disable domain adaptation: Replace target_spectrum_generator=TASR() with target_spectrum_generator=MeanGenerator().

For advanced modifications, edit the DemoExperiment class in scripts/experiments/demo_experiment.py or update the config in scripts/experiments/configs/demo_config.py.


🧩 Research Modules

HyperFrame includes implementations of several research papers focusing on robust hyperspectral target detection. For more information visit:

Method Paper Title Readme
TASR Towards Robust Hyperspectral Target Detection via Test-Time Spectrum Adaptation TASR
MACEM Multi-Source Adaptive Constrained Energy Minimization for Hyperspectral Target Detection on Lightweight Platforms MACEM

⭐ Citation

If TASR proves useful to your work, please consider starring this repository ⭐ and citing:

@article{gerster2025multi,
  title={Multi-Source Adaptive Constrained Energy Minimization for Hyperspectral Target Detection on Lightweight Platforms},
  author={Gerster, Robin and St{\"u}tz, Peter},
  journal={IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing},
  year={2025},
  publisher={IEEE}
}

📬 Contact

For inquiries, please contact Robin Gerster at:


Visitor Badge

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages