GalMEx: Galaxy Morphology Extractor
GalMEx (Galaxy Morphology Extractor) is a Python package for robust, modular, and reproducible measurement of non-parametric galaxy morphology indicators. It includes implementations of the CAS and MEGG systems, along with complete image preprocessing, segmentation, and light profile analysis tools.
Now available as a command-line tool (galmex) and a graphical interface (GUI).
🚀 Installation
You can install GalMEx from PyPI:
pip install galmex
Alternatively, install the development version from GitHub:
git clone https://github.com/vitorms99/galmex.git
cd galmex
pip install .
Make sure the conda-forge channel is active if using conda:
conda config --add channels conda-forge
conda config --set channel_priority strict
💻 Usage Options
✅ Graphical User Interface (GUI)
To launch the GalMEx GUI:
galmex
Without any arguments, GalMEx will open the graphical interface for interactive configuration, inspection, and processing.
✅ Command Line Interface (CLI)
You can also run GalMEx from the command line using a config file:
galmex path/to/config.json
- If the specified CSV output file exists, you'll be asked whether to overwrite or rename.
- A progress bar and optional detailed logging are provided.
- A
.logfile and a copy of the final config are saved for each run.
📦 Features
- Background subtraction and noise estimation
- SExtractor- and SEP-based object detection
- Galaxy segmentation using Petrosian radius and surface brightness
- Measurement of:
- CAS (Concentration, Asymmetry, Smoothness)
- MEGG (M20, Entropy, Gini, G2 Asymmetry)
- Growth curve and characteristic radii (R50, R80)
- Optional GUI for visual inspection and customization
- Fully modular class structure (can be used as a library)
📄 Code Example
from galmex.Background_module import BackgroundEstimator
bkg = BackgroundEstimator("galaxy001", image)
bkg_median, bkg_std, bkg_map, img_clean = bkg.background_from_config({
"bkg_method": "frame",
"image_fraction": 0.1
})
🧪 Examples & Demos
The Examples/ folder includes:
Functions_description.ipynb: full demo of all public methods- Pre-generated example outputs used in the official manual
🛰️ SExtractor Integration (optional)
To use detection_mode="sex" in detection, install SExtractor:
conda install -c conda-forge astromatic-source-extractor
Make sure sex is callable from the terminal, or set an alias:
alias sex='path/to/sextractor'
📚 Documentation
- Full user manual (
GalMEx_Manual.pdf) included - Describes all classes, input parameters, example figures
🔗 Repository
📁 GitHub: https://github.com/vitorms99/GalMEx
👤 Author
Vitor Medeiros Sampaio
Universidad Técnica Federico Santa María — CHANCES Collaboration
📧 vitorms999@gmail.com
📝 License
MIT License
Metadata
Release files for galmex 1.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| galmex-1.1.1.tar.gz | 285.9 kB | Without provenance | Details |
Release files / galmex-1.1.1.tar.gz
| Download URL | galmex-1.1.1.tar.gz |
|---|---|
| Size | 285.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0f4e6320146122d1da1c331ceed238cedfc124d63d008983a8960a21ea90b9be
|
|
BLAKE2b-256 checksum How to use checksums |
8be24747fadff871107fbdfadc1413e0b769434f6d9e519122ff924f71637dd2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.21
|
Security for galmex 1.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.