Procédure de prétraitement d'images avec SIRIL
Cette page décrit la procédure correspondant à l'étape de prétraitement d'images avec SIRIL
- 1. But du prétraitement
- 2. Filtrage des captures
- 3. Recherche des séances candidates antérieures
- 4. Bibliothèque d'images
- 5. Création du projet de prétraitement
- 6. Lancement du prétraitement SIRIL (piloté par Sirilic)
1. But du prétraitement
Cette page décrit la procédure de prétraitement des images brutes qui est l'étape indispensable avant de procéder au traitement de l'image finale.
Le processus de prétraitement consiste à filtrer les images brutes sans défauts acquises avec l'aide de l'outil N.I.N.A., à créer les images de calibration et à traiter les images brutes avec des algorithmes de prétraitement, d'alignement et d'empilement essentiellement.
Pour rappel, la diminution du bruit dans l'image finale à traiter est obtenu en empilant un nombre important d'images brutes. En effet, le rapport signal / bruit (SNR) augmente avec la racine carrée du nombre d'images empilées. Ainsi, pour augmenter le SNR d'un facteur 1.4, il faudra doubler le nombre d'images.
Explication détaillée du rapport signal / bruit
Voici une comparaison entre une image réalisée à partir de 43 images brutes prétraitées, alignées et empilées avec SIRIL et une seule image brute (filtre H-Alpha, temps d'exposition de 480s, capteur refroidi à -20°C)

On remarque qu'il subsiste encore un peu de bruit dans l'image finale qui a un gain
du SNR de 6.5 : un gain du SNR de 8 soit 64 images empilées aurait été préférable.
2. Filtrage des captures
Cette étape de filtrage va permettre d'éviter de prendre en compte dans le processus de prétraitement des images avec des défauts importants visibles à l'oeil
2.1 Création des "quick look"
Afin de pouvoir trier toutes les images brutes créées au format "FITS" par défaut, il va falloir créer des images dites "quick look". Ces images seront des images compressées au format JPEG et avec un étirement de l'histogramme pour mieux voir les défauts.
J'utilise l'outil Nebulosity qui permet un traitement par lot des images brutes dont voici la procédure :
- Ouvrir une seule image brute pour un filtre choisi qui servira de référence aux autres images du même filtre et ajuster sa taille à l'écran

- Il faut décocher "auto" pour pouvoir modifier l'histogramme qui est trop sombre
avec les valeurs par défaut de Nébulosity de façon à bien voir l'objet.
2 réglages sont possibles : coupe des tons sombres et coupe des tons clairs
En général, seul l'écrêtage des ton blancs suffit à faire ressortir l'objet.

- Pour traiter par lot les images prises avec le même filtre et avec le même réglage d'histogramme qui vient d'être réalisé, il suffit d'aller dans le menu "Batch/Batch Conversion/FITS to JPG"
- Dans la fenêtre qui s'ouvre, il faut sélectionner toutes les images souhaitées puis cliquer sur "Open"
- Le traitement par lot commence avec un indicateur de suivi en bas de la fenêtre
- On peut poursuivre avec les autres images brutes prises avec d'autres filtres ainsi que les images de calibration "flat"
2.2 Filtrage des images brutes
Pour filtrer les images brutes, j'utilise l'outil "FastStone Image Viewer" qui permet de sélectionner et filtrer les images "quick look" facilement. Diverses fonctionnalités utiles sont présentes comme celle de l'affichage de l'histogramme ou de la comparaison de 2 images en affichage "côte à côte".
2.2.1 Filtrage manuel des "quick look" flats
Le filtrage des images "quick look" de calibration "flat" s'effectue uniquement au niveau de l'histogramme. En effet, celles-ci sont généralement prises à la suite et avec un éclairage constant mais il arrive que certaines soient un peu surexposées (histogramme écrêté vers les hautes lumières)

Chaque image "quick look" retenue est déplacée dans un dossier nommé "APERCUS/RETENU".
2.2.2 Filtrage manuel des "quick look" objets
Le filtrage des images "quick look" brutes des objets doit permettre de ne conserver que les images sans défaut majeurs et avec un histogramme le plus resséré possible vers les tons sombres.
- A exclure : médiane de l'histogramme > 64 (fond du ciel trop clair)

- A exclure : trainées d'avions ou de satellites trop brillantes

- A exclure : passages nuageux

- A exclure : problème de suivi

Ce dernier filtrage est moins important car nous verrons que les problèmes de suivi peuvent être filtrés directement au niveau de l'outil SIRIL en jouant sur le critère FWHM des étoiles qui excluera les étoiles trop allongées au delà de ce seuil.
Chaque image "quick look" retenue est déplacée dans un dossier nommé "APERCUS/RETENU".
2.2.3 Filtrage automatique des images brutes et des flats
Un script bash exécuté depuis WSL, qui est la Virtual Machine Linux de Windows, est chargé de faire la même action de filtrage mais de manière automatique pour les images brutes des objets et des flats en se basant sur le tri manuel des "quick look" déjà réalisé.
Ce script va déplacer les images brutes dans le répertoire "BRUTES/RETENU" à l'identique de ce que contient le répertoire des quick look "APERCUS/RETENU"
3. Recherche des séances candidates antérieures
Le but de cette étape est de trouver des images brutes antérieures du même objet et prises dans les mêmes conditions (focale, rotation du champ, imageur, filtre, ...) de façon à pouvoir les aligner.
L'objectif est d'augmenter le raport signal / bruit comme décrit précédemment : plus on empile d'images et meilleur sera le SNR.
A cet effet, je note dans un tableur toutes mes séances avec :
- Identifiant de séance (Année-Numéro)
- Imageur (télescope ou lunette)
- Nom de l'objet
- Filtre utilisé
- Correcteur de champ
Exemple avec un filtrage des séances sur l'objet "NGC7293" :

Un script écrit en Visual Basic permet de générer un onglet qui synthétise toutes les séances réalisées par objet avec ses caractéristiques (imageur, correcteur, filtre)

Ce tableur est donc très pratique pour identifier toutes les images d'un même objet prises dans les mêmes conditions et qui vont pouvoir être sélectionnées pour le procesus de prétraitement.
4. Bibliothèque d'images
La bibliothèque d'images brutes est stockées sur un disque local avec double sauvegarde (2ème disque local en miroir et Cloud)
4.1 Création de la bibliothèque d'offsets
Pour réaliser les images de calibration "offset" avec uniquement le courant d'obscurité du capteur, il suffit de :
- Couvrir la caméra
- Positionner le temps de pause au minimum
- Régler le même gain / offset de la caméra que pour les images brutes des objets
- Réaliser un nombre d'images important (50 à 100 environ) de façon à obtenir un offset maître qui soit représentatif de la série statistique (médiane)
Les images de calibration offset n'ont pas besoin d'être réalisées à chaque séance
d'acquisition mais tous les 1 à 2 ans environ avec le vieillissement du capteur.
On peut donc se constituer une bibliothèque d'offsets avec des réglages de
température du capteur et de gain différents pour correspondre aux différentes
images brutes des objets à prétraiter.
Exemple d'image de calibration de type "offset" :

4.2 Création de la bibliothèque de darks
Pour réaliser les images de calibration "dark" correspondant au bruit thermique, il faut :
- Placer la caméra dans une pièce sans lumière (le capot de protection de l'imageur n'est pas suffisant car il laisse passer un peu de lumière, surtout avec un diviseur optique déjà monté)
- Couvrir la caméra
- Régler le même gain / offset de la caméra que pour les images brutes des objets
- Réaliser un nombre d'images important (50 à 100 environ) de façon à obtenir un dark maître qui soit représentatif de la série statistique (médiane)
- Positionner le même temps de pause que pour les images brutes des objets
Les images de calibration dark n'ont pas besoin d'être réalisées à chaque séance
d'acquisition mais tous les ans environ avec le vieillissement du capteur. Si on
voit apparaitre de nouveaux pixels chauds après le prétraitement, alors il faudra
refaire la bibliothèque de darks pour la température concernée.
On peut se constituer une bibliothèque de darks avec des réglages de température du
capteur et de gain différents pour correspondre aux différentes images brutes des
objets à prétraiter.
Exemple d'image de calibration de type "dark" :

4.3 Création des images de calibration flats
Contrairement aux images de calibration "offset" et "dark", les images de calibration "flat" (dites de "flat field") doivent être réalisées dans les mêmes conditions que les images brutes des objets et donc à la fin de chaque séance car des poussières peuvent s'ajouter entre deux séances et la focalisation ne sera pas strictement identique.
Exemple d'image de calibration de type "flat" :

4.3.1 Conditions de prise de flats
- Conserver le même focus que pour les images brutes des objets
- Faire un flat par filtre utilisé lors de la séance
- La température du capteur est moins importante mais il faut s'assurer qu'elle ne soit pas trop haute afin de limiter le bruit dans l'image (inférieure à 0°C est préférable)
- Positionner une source lumineuse neutre, uniforme et stable devant l'imageur et régler le temps de pause de façon à avoir un histogramme rempli au 2/3 environ
- Réaliser un nombre d'images important (30 à 50 environ) de façon à obtenir un flat maître qui soit représentatif de la série statistique (médiane)
4.3.2 Calibration des flats
Concrètement, j'utilise un panneau luminescent dédié de marque Lacerta dont j'ai
volontairement réduit la puissance d'éclairage qui était beaucoup trop forte en
plaçant une résistance sur le circuit d'alimentation.
Il est très pratique à mettre en oeuvre car directement piloté par l'application
NINA via un contrôleur connecté en USB de la même marque.

Il suffit de sélectionner les filtres utilisés durant la séance pour lesquels on souhaite réaliser des flats via l'outil de calibration intégrés à l'application NINA.

Ainsi, le temps de pause de chaque filtre est calculé automatiquement :


4.3.3 Programmation des flats
Une fois l'étape de calibration des flats effectuée pour chacun des filtres, il
suffit d'ajouter la programmation dans l'application NINA.
(L'alerte indiquée en face de chaque programmation doit disparaitre si la
calibration a été réalisée car un temps de pause est bien présent dans le tableau de
calibration des flats)

4.4 Organisation des images de calibration offsets et de darks
Les offsets et les darks n'ont pas besoin d'être refaits à chaque séance car ces défauts evoluent très lentement avec le temps. Il sera par contre préférable de mettre à jour cette bibliothèque tous les ans.
La structure des dossiers de la bibliothèque des images brutes de calibration des offsets et des darks est la suivante :
Les images brutes sont triées par type de calibration (offset ou dark), par capteur,
puis par gain caméra, offset caméra et température.
Chaque série d'images brutes est stockée dans un répertoire "BRUTES" et les images
"quick look" associés dans un répertoire "APERCUS"
4.5 Organisation des images brutes flat et des objets
Cette bibliothèque contient à la fois les images brutes des objets mais également les images brutes des flats correspondants à chacune des séances. En effet, les images de calibration "flat" doivent être prises à la fin de chaque séance car il faut récupérer les défauts liés aux poussières et à la focalisation essentiellement qui peuvent changer à chaque utilisation du matériel.
La structure des dossiers de la bibliothèque des images brutes et des flats est la suivante :
Les images brutes sont triées par imageur (lunette, télescope, ...), par capteur (ASI1600MMPro, EOS450D, ...) et par séance.
Chaque répertoire "SEANCE_AA-XX" contient les répertoires principaux suivants :
- AUTOGUIDAGE : contient les données de qualité des autoguidages réalisés
- EP : données de l'erreur périodique de la monture si elle est réalisée
- FLATS :
- APERCUS / RETENUS : contient les images "quick look" des flats qui sont retenus lors du filtrage manuel
- BRUTES / RETENUS : contient les images brutes des flats qui sont retenus pour le prétraitement
- FOCUS : contient les données json des focus automatiques réalisés par NINA
- OBJETS :
- NOM_OBJET :
- APERCUS / RETENUS : contient les images "quick look" de l'objet qui sont retenus lors du filtrage manuel
- BRUTES / RETENUS : contient les images brutes de l'objet qui sont retenus pour le prétraitement
- NOM_OBJET :
5. Création du projet de prétraitement
5.1 Intérêt de Sirilic
L'outil de prétraitement que j'utilise se nomme SIRIL
Avant de lancer l'outil, il faut lui ajouter toutes les images brutes des objets et
des calibration. Cette étape est d'autant plus fastidueuse que l'on a un nombre
important d'images et réparties dans divers répertoires.
Afin de se rendre la tâche plus aisée, il existe un outil nommé Sirilic qui permet de générer un script directement utilisable par SIRIL.
Pour que ce script puisse être généré à partir de nos images brutes, 2 méthodes sont possibles :
- Charger les fichiers par catégorie d'images et par séance (ou session) depuis l'interface Sirilic mais assez fastidueux
- Générer automatiquement le fichier projet qui sera ensuite charger depuis l'interface de Sirilic.
C'est donc la 2ème solution que j'ai choisie.
5.2 Génération automatique du projet au format Sirilic
Afin de générer automatiquement le projet au format Sirilic, j'ai développé un script bash qui est lancé directement sous WSL, qui est la Virtual Machine Linux de Windows.
Le script est paramétré avec le formalisme du nom de l'image brute suivant
(modifiable dans les paramètres de NINA) :
LIGHT_Ha_0007_00-10-29_Bin1x1_480.00s__-20.00C_G75_O15.fits
- Type d'image : BIAS / DARK / LIGHT / FLAT
- Type de filtre : L, CLS, R, G, B, Ha, O3, S2
- Id : 0000 à 9999
- Date : AA-MM-JJ
- Binning : Bin1x1 ou Bin2x2
- Temps de pause (s) : XXX.00s
- Température du capteur (°C) : -XX.00C
- Gain de la caméra : GXXX
- Offset de la camera : OXX
Arguments du script :
- Nom de l'objet
- Filtres choisis pour les prétraitements parmis : L, CLS, R, G, B, L_Ha, Ha, L_O3, O3, S2 (L_Ha : Filtre Ha en Bin1x1, L_O3 : Filtre O3 en Bin1x1)
- Séances que l'on souhaite empiler (séparées d'un espace)
Exemple de lancement du script :
./creation_projet_sirilic_v3.sh NGC7293 L_Ha,L_O3,R,G,B SEANCE_19-19 SEANCE_19-23 SEANCE_19-24 SEANCE_21-18 SEANCE_25-10 SEANCE_25-11 SEANCE_25-12
Ce script va effectuer les étapes suivantes :
- Création de la liste de toutes les images à partir des bibliothèques des images de calibration et des images brutes des séances
- Pour chaque séances de la liste des arguments :
- Pour chaque filtre de la liste des filtres :
- Ajout des images brutes de l'objet au fichier projet
- Recherche du temps de pause
- Recherche de la température du capteur
- Recherche du gain de la caméra
- Ajout des images de calibration "offset" compatibles au fichier projet
- Ajout des images de calibration "dark" compatibles au fichier projet
- Ajout des images de calibration "flat" compatibles au fichier projet
- Pour chaque filtre de la liste des filtres :
- Contrôle de l'homogénéité des gains / offset / binning des images trouvées
Exemple de fichier projet Sirilic généré avec 5 filtres et à partir de 7 séances : NGC7293_L_Ha_L_O3_R_G_B.prj (Fichier de log)
Exemple de chargement d'un projet dans Sirilic :
On remarquera que l'affichage est trié par filtres puis par séances.
On peut contrôler dans la vue de droite que les types de fichiers sont bien rangés
dans les catégories Images, Offsets, Dark et Flat et qu'ils sont homogènes entre eux
en termes de temps de pause, température et binning.
6. Lancement du prétraitement SIRIL (piloté par Sirilic)
Le prétraitement des images brutes des objets consiste à retirer la plupart des défauts :
- Courant d'obscurité
- Bruit thermique (pixels chauds)
- Poussières, vignetage
La formule suivante est appliquée :
image_pretraitee = ( image_brute - offset_maitre - (dark_maitre - offset_maître) ) /
(flat_maitre - offset_maître)
6.1. Passe 1
Une fois que le projet Sirilic a été généré avec les séances souhaitées, il suffit de le charger dans l'application Sirilic.
Chaine de prétraitement par défaut pour chaque type d'images de calibration brutes :
- Soustraction de l'offset pour les images brutes darks et flats
- Empilement avec rejet de chaque série brute (offset / dark / flat)
- Normalisation de l'image de calibration prétraitée appelée image de calibration "maître"
Il faut ensuite vérifier et adpater le paramétrage souhaité => cocher dans les propriétés "Soustraire l'offset" pour les images, les offsets, les darks et les flats
Chaine de prétraitement des images brutes des objets :
- Soustraction de l'offset maître pour chaque image brute (les défauts liés au courant d'obscurité sont retirés)
- Soustraction du dark maître pour chaque image brute sans l'offset maître (les défauts liés au bruit thermique sont retirés)
- Division par le flat maitre pour chaque image brute sans l'offset maître et sans le dark maître (les défauts liés aux poussières, aux vignetages sont retirés)
- Alignement des images brutes (sans l'offset maître, sans le dark maître et divisé par le flat maître)
- Empilement avec rejet (ou registration) des images brutes alignées (sans l'offset maître, sans le dark maître et divisé par le flat maître)
- Normalisation de l'image prétraitée finale
Avant de lancer le processus de prétraitement pour la première fois, il faut ajuster le paramétrage au niveau du menu "Fichier/Préférences" :
- Indiquer le répertoire de travail
- Cocher "Enregistrer une copie au format tif" (si étape de traitement en dehors de l'outil PixInsight)
Pour lancer le processus de prétraitement, il faut :
- Lancer l'étape 1 : construction des dossiers
- Lancer l'étape 2 : construire et exécuter le script Siril
6.2. Passe 2
A la fin du prétraitement de la passe 1, l'application Siril s'ouvre.
Pour mieux voir les images prétraitées, il faut sélectionner dans le menu déroulant au niveau de l'histogramme en bas de l'application "Auto ajustement"
6.2.1 Filtrage des séances
Cette étape consiste à visualiser les images prétraitées intermédiaires par filtre et pour chaque séance afin d'éliminer celles qui ne sont pas satisfaisantes (défauts, fond du ciel trop lumineux, autre, ...) :
- Cliquer sur l'icône "Répertoire de travail" (en haut à gauche) et sélectionner le répertoire "Temp"
- Cliquer sur l'icône "Liste des images" (en bas à droite) pour faire apparaitre le menu correspondant
- Cliquer sur le menu "Séquence" (en haut à droite) et sélectionner à tour de rôle
la séquence corespondant au filtre "C0X-S.seq" avec X (dans mon cas) :
0 : Luminance
1 : Rouge
2 : Vert
3 : Bleu
4 : H-Alpha
5 : O3
6 : S2 - Dans le menu "Liste des images", sélectionner chacune des images correspondant à chaque séance afin de vérifier si le prétraitement est satisfaisant
- Si une séance pour un filtre donné ne donne pas satisfaction, il faut la retirer du projet Sirilic : il suffit de sélectionner la session correspondante et cliquer sur "détruit une image" au niveau du menu "Projet"

6.2.2 Filtrage du FWHM des étoiles pour les luminances
Afin d'obtenir une belle image prétraitée en entrée de l'étape du traitement, il est important de ne pas conserver les images brutes qui vont servir au traitement de la luminance et qui ont eu un problème de suivi.
Pour cela, Siril propose un graphique qui permet de voir la qualité des images au niveau des étoiles avec le critère "FWHM".
- Cliquer sur l'icône "Répertoire de travail" (en haut à gauche) et sélectionner le répertoire qui contient toutes les images en luminance (L ou H-Alpha) prétraitées : "<L ou Ha>/GROUP"
- Cliquer sur l'icône "Liste des images" (en bas à droite) pour faire apparaitre le menu correspondant
- Cliquer sur le menu "Séquence" (en haut à droite) et sélectionner la séquence "r_image_group_.seq"
- Sélectionner le menu "Graphique"
- Regarder la courbe verte "FWHM croissant = f ( nb images )" et regarder à partir de combien d'images le critère FWHM se dégrade
- Il faut conserver un minimum d'images pour obtenir un SNR (rapport signal / bruit) suffisant tout en éliminant les FWHM trop élevés.
Voici un exemple ou il apparait que converver 34 images prétraitées pour un FWHM max égal à 8.0 semble un bon compromis (il suffit de placer le curseur de la souris sur la courbe pour lire les valeurs) :

6.2.3 Relance du prétraitement
Afin de gagner un peu de temps au niveau du processus, on peut récupérer l'offset et
le dark maître déjà créé lors de la passe 1 d'une séance uniquement si ces derniers
sont bien identiques à toutes les séances prétraitées (binning compris)
Dans ce cas, il faut cocher au niveau du menu "Projet" : "Définir les maîtres offset
et darks pour tous les projets" et sélectionner le répertoire où l'on a copié les
images de calibration maître
Etapes restant à effectuer avant de relancer le processus de prétraitement depuis Sirilic :
-
Il faut s'assurer que toutes les séances (ou sessions) qui devaient être retirées suite au filtrage visuel l'ont bien été.
-
Lorsque le filtrage du FWHM max a été choisi, il faut le paramétrer au niveau de l'application Sirilic.
Pour chaque session corespondant au(x) filtre(s) de luminance, il faut appliquer le paramètre FWHM au niveau du menu "Propriété", onglet "IMAGES" dans la partie "Rejecting Filter" (exemple : "FWHM:8.0") -
Effectuer une sauvegarde du projet Sirilc : Menu "Fichier/Sauv"
-
Fermer l'application Siril qui ne sert plus et qui prend de la mémoire RAM pour rien
Pour relancer le processus de prétraitement, il faut :
- Lancer l'étape 1 : construction des dossiers (les données vont être effacées au préalable)
- Lancer l'étape 2 : construire et exécuter le script Siril
🔥Attention :le déroulement du script peut échouer si il n'y a pas au moins 2 images à prétraiter dans une session suite au filtrage FWHM (le message est clairement indiqué dans le log) Il faut supprimer la session dans ce cas.
6.2.4 Vérifications
A la fin de la passe 2 du processus de prétraitement, plusieurs points sont à vérifier au niveau du log de Sirilic :
- A la fin du fichier, on peut voir le nombre d'images qui ont été alignées par filtre
- Vérifier le nombre d'images retenues avec le critère FWHM en cherchant à partir de la fin du fichier vers le haut "Utilisation du filtre de FWHM". Le nombre se situe juste en dessous : "number of filtered-in images: 34"
- Dans le cas d'images prises avec un binning différent, il faut s'assurer que les images prétraitées finales ont bien toute la même taille de fichier et que leur dimension en pixels sont bien au maximum des capacités de la caméra (4656 x 3520 dans mon cas, SIRIL choisi la résolution la plus grande lors de la dernière étape d'alignement des filtres et extrapole les bin2x2 en bin1x1)
- Il se peut que SIRIL n'ait pas choisi l'image prétraitée en luminance en tant qu'image de référence pour l'alignement final des filtres entre eux : il est alors possible de le faire manuellement au niveau de SIRIL en créant une séquence spécifique avec les images prétraitées des filtres et en choisissant l'image de référence désirée pour procéder à l'alignement (il en va de même pour l'alignement des sessions corespondant à un même filtre)
Téléchargement de la procédure au format PDF
Copyright © 2025 Olivier Ravayrol - Tous droits réservés
