Siril es una excelente aplicación para el registro y preprocesado y procesado de imágenes de astrofotografía. Su facilidad de uso, rapidez, multi-plataforma y el que sea gratuita lo hace especialmente interesante para los que nos apasiona la astrofotografía.
Pero una de las funciones más interesantes que proporciona son los scripts.
Siril tiene de forma nativa una serie de herramientas que permiten procesar las imágenes que hemos capturado, pero además ofrece un mecanismo para añadir complementos en forma de scripts, ampliando así su funcionalidadIntroducción
En Siril, podemos añadir scripts que Siril u otras personas han creado, e incluso editar o crear nuestros propios scripts.
Si abrimos un script de ejmplo, veremos algo así:
def main():try:app = QApplication(sys.argv)window = PreprocessingInterface()# Only show window if initialization was successfulif window.initialization_successful:window.show()sys.exit(app.exec())else:# User canceled during initialization - exit gracefullysys.exit(0)except Exception as e:print(f"Error initializing application: {str(e)}")sys.exit(1)if __name__ == "__main__":main()
Como puede apreciarse, no es nada más -y nada menos- que texto en el que se definen y llama a ciertas funciones para que realicen determinadas acciones.
Y aquí reside la potencia de los scripts de Siril. Simplemente con un editor de texto y ciertos conocimientos, podemos crear scripts muy potentes que permitan realizar o automatizar ciertos procesos o funciones.
Tipos de scripts
En Siril tenemos dos tipos de scripts
SSF
Los archivos SSF (Siril Script Files) son los primeros scripts -nativos- que se implementaron en Siril. Como se indica en el post de Introducción de Siril, en la pestaña de consola, tenemos una línea en la parte inferior desde la que podemos ejecutar comandos.
Básicamente cuando realizamos una acción como el apilado o la extracción del ruido de fondo, Siril ejecuta un comando que procesa la imagen. Pues bien, los scripts de tipo ssf lo que permiten es poder llamar a diferentes comandos para así automatizar funciones individuales. Esto permite, por ejemplo, crear un script que automáticamente calibre nuestras imágenes con los flats, darks y biases, las registre y alinee y las apile. Y todo ello de forma automática.
Este es un extracto de un script de tipo ssf:
requires 1.3.4
# Convert Bias Frames to .fit files
cd biases
convert bias -out=../process
cd ../process
# Stack Bias Frames to bias_stacked.fit
stack bias rej 3 3 -nonorm -out=../masters/bias_stacked
cd ..
# Convert Flat Frames to .fit files
cd flats
convert flat -out=../process
cd ../process
Como se aprecia, hay una serie de comandos como convert, stack que realizan ciertas funciones a partir de los parámetros pasados.
Python
Este lenguaje es relativamente sencillo de usar y potente. Además, con las librerías gráficas de Qt, podemos crear una inetrfaz de usuario muy visual y atractiva.
import sirilpy as ss.ensure_installed("PyQt6", "numpy", "requests", "platform", "scipy")onnx_helper = s.ONNXHelper()onnx_helper.install_onnxruntime()from PyQt6.QtWidgets import (QApplication, QMainWindow, QVBoxLayout, QHBoxLayout,QWidget, QLabel, QPushButton, QLineEdit, QMessageBox, QFileDialog, QSlider, QCheckBox,QGroupBox, QFrame)from PyQt6.QtCore import Qt, QThread, pyqtSignalfrom PyQt6.QtGui import QFont
def _start_processing_thread(self, use_cached_prediction=False):# Disable all UI components except the Calculate buttonself._set_ui_enabled(False)# Change button text to "Cancel process"self.calc_btn.setText("Cancel process")# Start the processing threadself.processing_thread = ProcessingThread(self, use_cached_prediction=use_cached_prediction)self.processing_thread.finished.connect(self._processing_finished)self.processing_thread.progress.connect(self._update_progress_ui)self.processing_thread.error.connect(self._processing_error)self.processing_thread.cancelled.connect(self._processing_cancelled)self.processing_thread.start()
Instalación
En la parte superior nos encontramos con las carpetas donde Siril buscará los scripts.
Los que él descargue los guardará en las carpetas por defecto, pero nosotros podemos añadir escribiendo directamente otras carpetas por si creamos nuestros propios scripts o los descargamos de otros sitios -ver más abajo el apartado Manualmente-
Y en este otro tenéis el repositorio desde el que Siril se descarga los scripts.
Solución de problemas
Scripts recomendables
- Workflow_Summarizer: Siril registra todas las acciones realizadas en un log. Este script analiza dicho log y crea un resumen -utilizando la IA de Gemini- que puede resultar útil a la hora de registrar y guardar el proceso realizado
- Satellite_Trail_Remover: utilizando IA, permite identificar las trazas que dejan los satélites artificiales y 'borrarlas' utilizando diferentes algoritmos.
- Patch_Impainting_Tool: permite generar máscaras en las imágenes para un tratamiento selectivo de la señal
- Image_Window: a diferencia como ocurre en PixInsight, Siril no tiene la opción de mostrar varias imágenes y compararlas. Esta herramienta cubre esa carencia e inlcuye la sincronización de movimiento y zoom.
- Hertzsprung-Russell: genera un diagrama con astrometría a partir de la infomación facilitada por Gaia DR3 y la fotometría de Siril
- Galaxy_Annotations: identifica las galaxias que aparecen en la imagen -por tenues que sean- y genera una composición donde se muestra nuestra imagen, con las coordenadas así como un detalle de cada uno de los objetos identificados con su nombre
- Blink_Browse_Filter_Sort: permite ver, filtrar y ordenar las imágenes sin necesidad de tener que registrarlas antes.
- Statistical_Strech: realiza un estiramiento automático con algunos ajustes manuales
- HDR_multiscale: permite realzar detalles de la imágen
- Graxpert_AI: herramienta imprescindible. En realidad son 4 módulos -si instalas la versión de pruebas- y todos ellos utilizan modelos basados en IA. Requieren la instalación de la aplicación GraXpert como se detalla en este post.
- Background extraction
- Denoise
- Stellar deconvolution
- Objects deconvolution
- Cosmic Clarity: es una suite de scripts pero no están recogidos bajo un único script si no que se ofrecen de foma individual. Al igual que GraXpert utilizan modelos basados en IA.
También necesitan tener instalada la suite de Cosmic Clarity tal y como se indica aquí.
La primera vez que ejecutemos el script nos pedirá la ubicación del archivo ejecutable que realiza esa función - Dark star: permite eliminar las estrellas de una imagen. Perfecto para poder procesar el resto de la imagen de forma más precisa. El ejecutable necesario es: setiastrocosmicclarity_darkstar
- Denoise: permite eliminar ruido de la imagen. El ejecutable es SetiAstroCosmicClarity_denoise
- Sharpen: permite perfilar y acentuar los detalles de la imagen. El ejecutable es SetiAstroCosmicClarity
- Satellite removal: como su nombre indica, permite eliminar de la imagen las trazas dejadas por satélites artificiales. Se requiere tener el ejecutable setiastrocosmicclarity_satellite
- AutoBGE: elimina y corrige la luz de fondo de forma automática
- AberrarionRemover: corrige la aberración estelar de una forma rápida y efectiva
- Naztronomy-OSC_PP: es una herramienta de preprocesado que permite automatizar la calibración de las imágenes (con darks, biases y flats) obteniendo así la imagen alineada y apilada.
El script está preparado para poder trabajar con varias sesiones - VeraLux: como ocurre en Cosmic Clarity, en realidad se trata de una suite de scripts individuales aunque recientemente se ha añadido a la lista un script lanzador llamado Veralux_Starting_Point desde el que se puede llamar al resto de scrpts
Ninguno de sus scripts utiliza IA: - Vectra: permite ajustar los colores de la imagen, tanto la saturación como el matiz
- StarComposer: la alternativa al Star Recomposition ofrecido por Siril solo que la imagen con estrellas no tiene que estar previamente estirada.
- Silentium: permite eliminar ruido en la imagen
- Revela: resalta los detalles de la imagen
- Nox: reduce el gradiente de la imagen
- HyperMetric_Strech: auto estirado de imagen basado en el sensor con el que se han realizado las tomas
- Curves: ajuste de curvas fotométrico. Tiene opciones interesantes como la creación de máscara para aplicar el resultado
- SyQon_Starless: utiliza IA para eliminar las estrllas de una imagen
No hay comentarios:
Publicar un comentario