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.7.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.7-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: stellarpolanalyzer-0.1.7.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.7.tar.gz
Algorithm Hash digest
SHA256 8daa7544aa785ff007f104206b124ee6433e292a133d33cadf6a217e9acdb7dc
MD5 a6bf6c3b5f9d2827e9c7c35e6fb5cccf
BLAKE2b-256 5973659b44a66ac9cb081cbea2972faec3ceb7a171ac75fdd40b38a2fbfdf18f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for stellarpolanalyzer-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8a7f546d11b0454f5b952b958e8be20b3639013965c256f568769326ecfd8aca
MD5 70b3bca6677ae0a30502162ccb3ad2f2
BLAKE2b-256 091601ab5d9d1078dae94e74ab74c4d24347717157fb16ff4fe0cfdc935917a9

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