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.9.tar.gz (17.4 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.9-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: stellarpolanalyzer-0.1.9.tar.gz
  • Upload date:
  • Size: 17.4 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.9.tar.gz
Algorithm Hash digest
SHA256 d2270ac27454ee4b4d0b082ae2d7564eaa30cc95da353c0fd7d9265141790cc2
MD5 e70e6cd0c5b307cb273c4ed552f52be5
BLAKE2b-256 23a2cd5f0481e882643b35bcef5888208f2728d3f8b325cc9776cd3e7ee4dfdd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for stellarpolanalyzer-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 e6d1579a01a7ed83eb06d2839981abe761c9515aa84f431c24b493183298a0f5
MD5 c497a88c62c09ee890158d9c7aecdfab
BLAKE2b-256 cdca2b964dd43c6d2090ac33119de046320044016d3aaf9efd4739d9c5e72483

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