Skip to main content

Librería para análisis de imágenes polarimétricas y detección de parejas de estrellas

Project description

StellarPolAnalyzer

StellarPolAnalyzer es una librería de Python para el análisis de imágenes polarimétricas en astronomía. La herramienta permite detectar automáticamente estrellas en imágenes FITS, identificar parejas de estrellas (que corresponden a las dos proyecciones polarimétricas de la misma fuente) y visualizar los resultados. Está pensada para facilitar el análisis de datos polarimétricos y servir como base para desarrollos y análisis adicionales.

Características

  • Detección de estrellas:
    Utiliza DAOStarFinder para detectar estrellas en imágenes FITS con parámetros ajustables (FWHM y threshold).

  • Identificación de parejas:
    Emplea un algoritmo basado en NearestNeighbors para encontrar y filtrar parejas de estrellas según la moda de la distancia y el ángulo, usando tolerancias ajustables.

  • Visualización:
    Muestra la imagen con:

    • Centros de las estrellas marcados.
    • Líneas que conectan las parejas encontradas.
    • Círculos diferenciados: azul para la estrella de menor X y rojo para la de mayor X.
    • Una leyenda externa con estadísticas (número de estrellas, parejas, etc.).
  • Interfaz gráfica:
    Incluye una GUI (basada en Tkinter) para ajustar parámetros y ejecutar el pipeline de forma interactiva.

Instalación

Desde PyPI

Instalar el paquete con:

pip install StellarPolAnalyzer

Instalación de Desarrollo

Para instalar la versión de desarrollo, clona el repositorio y usa el modo editable:

git clone https://github.com/oscarmellizo/StellarPolAnalyzer.git
cd StellarPolAnalyzer
pip install -e .

Uso Básico

Usando la API

La API te permite procesar una imagen FITS y obtener las parejas de estrellas. Por ejemplo:

from StellarPolAnalyzer import process_image, draw_pairs

image_path = 'ruta/a/tu_imagen.fits'
fwhm = 3.0
threshold_multiplier = 5.0
tol_distance = 1.44
tol_angle = 1.20
max_distance = 38.0

# Procesa la imagen
image_data, sources, candidate_pairs, final_pairs, mode_distance, mode_angle = process_image(
    image_path,
    fwhm=fwhm,
    threshold_multiplier=threshold_multiplier,
    tol_distance=tol_distance,
    tol_angle=tol_angle,
    max_distance=max_distance
)

# Visualiza el resultado
draw_pairs(image_data, sources, final_pairs, len(sources), mode_distance, mode_angle, tol_distance, tol_angle)

Contribución

Las contribuciones son bienvenidas. Si deseas colaborar:

  1. Haz un fork del repositorio.
  2. Crea una rama para tus cambios:
git checkout -b feature/nueva-funcionalidad
  1. Realiza tus cambios y envía un Pull Request con una descripción de las modificaciones.

Licencia

StellarPolAnalyzer se distribuye bajo la Licencia Apache License 2.0. Consulta el archivo LICENSE para más detalles.

Contacto

Para preguntas, sugerencias o reportar problemas, por favor abre un issue en este repositorio o contacta a omellizo@gmail.com.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stellarpolanalyzer-0.1.6.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stellarpolanalyzer-0.1.6-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

Details for the file stellarpolanalyzer-0.1.6.tar.gz.

File metadata

  • Download URL: stellarpolanalyzer-0.1.6.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for stellarpolanalyzer-0.1.6.tar.gz
Algorithm Hash digest
SHA256 5dedfd6aef57ede2b760972c29225151fcc401828a516ae1f59a0ccf9fc6fd93
MD5 52a1768ef3e1902e8341f3366d2c8394
BLAKE2b-256 2f32e0914e44a6781dfcdcd49b5837f9bb77b08a6cb0778e6372570e6682522a

See more details on using hashes here.

File details

Details for the file stellarpolanalyzer-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for stellarpolanalyzer-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 57c13eed8c7c227fea83f6842d1923b6a1ba634c45e5034f91f94724b212520c
MD5 c2c00fd671e7332deb2db2d56fa102cb
BLAKE2b-256 aab85f694e07af93360594585d04882453723ce1986bcf99b9b912141405753d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page