A collection of Python tools for astrophotography image processing.
This repository contains utilities for processing astrophotography images, including support for various image formats commonly used in astrophotography (FITS, TIFF, RAW, etc.).
- Clone this repository
- Install the package:
pip install -e .This will install all dependencies and make the command-line tools available.
Organize astrophotography files into a directory structure suitable for Siril processing.
Usage:
# Dry run to preview organization
siril-organize /path/to/images --dry-run
# Organize files into default 'organized' subdirectory
siril-organize /path/to/images
# Organize files into specific output directory
siril-organize /path/to/images -o /path/to/outputFrame type detection: Files are automatically sorted into subdirectories based on filename keywords:
- Lights: 'light', 'lights', 'subs', 'science'
- Darks: 'dark', 'darks'
- Flats: 'flat', 'flats', 'flatfield'
- Bias: 'bias', 'offset'
Files without a detected frame type are placed in the 'light' directory.
Supported formats:
- FITS (.fits, .fit, .fts)
- TIFF (.tif, .tiff)
- RAW formats (.cr2, .nef, .arw, .dng)
Organize Seestar S50 telescope files by object and prepare them for Siril processing. This tool understands the Seestar S50's native directory structure.
Usage:
# Dry run to preview organization
seestar-organize /path/to/seestar/files /path/to/output --dry-run
# Organize light frames only (copies sub-exposures, preserves originals)
seestar-organize /path/to/seestar/files /path/to/output
# Also copy stacked images
seestar-organize /path/to/seestar/files /path/to/output --copy-stacked
# Copy and remove originals (useful for moving from telescope to NAS)
seestar-organize /path/to/seestar/files /path/to/output --remove-originalsSeestar S50 Directory Structure: The Seestar S50 creates directories like:
<object>/- Contains stacked images<object>_sub/- Contains individual light frames<object>_mosaic/- Contains stacked mosaic images<object>_mosaic_sub/- Contains individual mosaic light frames
Output Structure:
output/
M 31/
lights/
Light_M 31_10.0s_IRCUT_....fit
NGC 281_mosaic/
lights/
Light_mosaic_NGC 281_10.0s_IRCUT_....fit
Features:
- Automatically detects all objects from directory structure
- Organizes by object name (M 31, NGC 281, IC 5146, etc.)
- Handles both regular and mosaic frames
- By default, copies files and preserves originals
- Optional
--remove-originalsflag to remove source files after successful copy - Groups all light frames by object for easy Siril processing
- Python 3.8+
- See
requirements.txtfor Python package dependencies
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.