-
Notifications
You must be signed in to change notification settings - Fork 0
Overview
Saman Tabatabaeian edited this page Feb 18, 2026
·
2 revisions
AstroLens uses machine learning to automatically discover unusual astronomical objects in survey images. It operates in three modes:
- Galaxy Mode: Finds unusual galaxy morphologies (mergers, irregulars, compact objects) using a Vision Transformer + out-of-distribution detection ensemble.
- Transient Mode: Detects transient events (supernovae, variable stars) using YOLO object detection.
- Streaming Discovery (v1.1.0): Runs autonomously for days, downloading and analyzing images 24/7 with self-correcting intelligence.
Anomaly detection in action -- ViT classification, OOD scoring, and YOLO transient detection running on real survey images
astroLens/
├── api/ FastAPI backend (REST API)
├── inference/ ML models (ViT, OOD, YOLO, GPU utils)
├── features/ Feature extraction (morphology, PCA, export)
├── catalog/ Astronomical catalog queries
├── transient_detector/ YOLO transient pipeline
├── scripts/ Automation (discovery, data sources, batch)
├── ui/ Desktop app (PyQt5)
├── web/ Web interface (FastAPI + Jinja2)
├── build/ PyInstaller build pipeline
├── models/ Pre-trained models (Git LFS)
└── tests/ Test suite
| Source | Coverage | Bands | Type |
|---|---|---|---|
| DECaLS (DESI Legacy) | 14,000 sq deg | g, r, z | Deep imaging |
| SDSS (DR18) | 14,500 sq deg | u, g, r, i, z | Classic survey |
| Pan-STARRS (PS1) | 30,000 sq deg | g, r, i, z, y | Wide-field |
| Hubble Legacy | Pointed fields | Multi-band | High resolution |
| Galaxy Zoo | SDSS footprint | -- | Citizen science labels |
| ZTF | Northern sky | g, r, i | Transient alerts |
AstroLens automatically detects the best available compute:
| Device | Detection | Speedup |
|---|---|---|
| NVIDIA CUDA | torch.cuda.is_available() |
~5-10x |
| Apple MPS | Direct probe (macOS 14+) | ~3-5x |
| CPU | Fallback | Baseline |
Check your device:
python -c "from inference.gpu_utils import get_device_summary; print(get_device_summary())"