PSF Dynamique

Cette section décrit les deux étapes essentielles qui ont pour but de détecter les étoiles dans les images individuelles. La détection sur une seule image peut être lancée ou affinée à l'aide de Outils Analyse de l'image ‣ PSF dynamique ou avec le raccourci Ctrl + F6.

dialogue

PSF dynamique sur une image de ciel profond.

Le processus est le suivant :

  • réaliser une première détection des étoiles candidates potentielles

  • Ajuste un modèle PSF sur chaque candidat. Exécute des contrôles d'intégrité basés sur les paramètres d'ajustement du modèle pour vous assurer qu'il s'agit bien d'une étoile et rejetez les candidats qui ne le sont pas.

À la fin de ce processus, le résultat est une liste d'étoiles, avec les positions dans l'image par rapport au coin supérieur gauche et les quantités mesurées de toutes les étoiles de la liste.

Candidat étoiles initiale

Si l'emplacement des étoiles peut sembler évident lorsqu'on regarde une image, il est un peu plus difficile de traduire ce processus en opérations et critères mathématiques. Cette section décrit brièvement l'algorithme sous-jacent. Il est inspiré du manuel du logiciel DAOPHOT [Stetson1987], avec des simplifications apportées pour améliorer les performances. L'algorithme original visait à être exhaustif dans la détection de toutes les étoiles possibles, dans le but de construire des catalogues d'étoiles, alors que Siril a besoin de détecter des étoiles principalement comme élément pour l'alignement . Il doit également être résistant à la grande variété d'images qui lui sont soumises - la plupart d'entre nous n'ont pas un équipement astronomique de qualité professionnelle dans leur jardin - et nous avons dû faire des choix concernant la connaissance préalable des conditions d'imagerie (échantillonnage, qualité du ciel, etc.).

Au fil des ans, notre implémentation a évolué pour aboutir à ce qu'elle est aujourd'hui. Elle vise à ne pas manquer les étoiles très brillantes, qui sont importantes pour l'alignement, et à rejeter autant que possible les valeurs aberrantes, tout en restant raisonnablement rapide pour le faire.

Ceci peut être décomposée selon les étapes suivantes :

  • calcule les statistiques de l'image pour le niveau du fond, comme la médiane de l'image, et son bruit. Cela suppose que l'image est relativement uniforme. Par conséquent, la détection aura tendance à être moins efficace dans les coins si un vignettage important est présent après le pré-traitement.

  • Calculez également une plage dynamique, définie comme le maximum de l'image moins son arrière-plan. Cela sera utile par la suite pour détecter les étoiles saturées.

  • lisser l'image avec un noyau gaussien. Le lissage idéal serait d'utiliser le noyau qui a la même FWHM que l'image. Au lieu de cela, nous avons choisi une taille arbitraire qui a donné des résultats satisfaisants dans une très large gamme de conditions. Cela permet d'être "aveugle" aux paramètres de l'imagerie.

  • sur la version lissée de l'image, détecte les maxima locaux sur un niveau défini comme le niveau du fond plus X fois le bruit (X peut être modifié en utilisant la valeur threshold dans l'interface graphique). Assurez-vous que ce soit un maximum sur une certaine zone (définie par le paramètre radius).

  • Exécution d'un contrôle d'intégrité pour s'assurer que le maximum et ses voisins sont bien au-dessus des pixels environnants (pour rejeter les taches dans les parties lumineuses de la nébuleuse par exemple).

  • exécute un contrôle d'intégrité pour déterminer si le cœur au centre des maxima est saturé, c'est-à-dire s'il est proche de la limite supérieure de la plage dynamique. Si c'est le cas, exécute un algorithme pour détecter la limite de la partie saturée.

  • Utilise les dérivées premières et secondes le long d'une ligne horizontale et verticale passant par le centre pour calculer le fond du ciel autour de l'étoile, son amplitude et sa largeur dans toutes les directions (haut, bas, gauche et droite).

  • Si les paramètres sont suffisamment symétriques dans toutes les directions (jusqu'au paramètre rondeur), confirmez l'étoile comme un candidat potentiel.

Une fois que la liste des candidats potentiels a été définie, ils sont triés par amplitudes décroissantes et introduits dans l'algorithme d'ajustement du PSF décrit dans la section minimisation.

Modèles

Deux modèles sont utilisés dans la fenêtre Dynamic PSF. En général, le modèle Moffat est beaucoup plus adapté à l'ajustement d'objets tels que les étoiles.

  1. Une fonction d'ajustement gaussienne elliptique définie comme suit

    (1)\[ G(x,y) = B+Ae^{-\left(\frac{(x-x_0)^2}{2\sigma^2_x}+\frac{(y-y_0)^2}{2\sigma^2_y}\right)}.\]
  2. Une fonction d'ajustement PSF elliptique de Moffat définie comme suit

    (2)\[ M(x,y) = B+A\left(1+\frac{(x-x_0)^2}{\sigma^2_x}+\frac{(y-y_0)^2}{\sigma^2_y}\right)^{-\beta},\]

où :

  • \(B\) est le fond du ciel local moyen.

  • \(A\) est l'amplitude, c'est-à-dire la valeur maximale de la PSF ajustée.

  • \(x_0\), \(y_0\) sont les coordonnées du centroïde en pixel.

  • \(\sigma_x\), \(\sigma_y\) sont la déviation standard de la distribution Gaussienne sur l'axe horizontale et verticale, mesurées en pixels.

  • \(\beta\) est l'exposant de la formule de Moffat qui contrôle la forme globale de la fonction d'ajustement. La limite supérieure de ce paramètre a été fixée à 10. Une valeur supérieure n'a pas de sens et signifie que la gaussienne est suffisamment bonne pour s'adapter à l'étoile.

D'autres paramètres sont dérivés de ces variables ajustées :

  • \(\text{FWHM}_x\) et \(\text{FWHM}_y\) : Le Full Width Half Maximum sur l'axe X et Y en pixels. Ces paramètres sont calculés comme suit :

    • \(\text{FWHM}_x = 2\sigma_x\sqrt{2\log 2}\).

    • \(\text{FWHM}_y = 2\sigma_y\sqrt{2\log 2}\).

    • Il est possible d'obtenir les paramètres FWHM en secondes d'arc. Pour cela, vous devez remplir tous les champs correspondant à votre caméra et à la focale de votre lentille/télescope dans la fenêtre de réglage des paramètres du menu, puis Informations de l'image et Information. Si les mots-clés standards FITS FOCALLEN, XPIXSZ, YPIXSZ, XBINNING et YBINNING sont lus dans l'en-tête FITS, le PSF calculera également l'échelle de l'image en secondes d'arc par pixel.

  • \(r\) : Le paramètre de rondeur. Il est exprimé par \(\text{FWHM}_x/\text{FWHM}_y\), avec \(\text{FWHM}_x > \text{FWHM}_y\) comme condition de symétrie.

  • Un autre paramètre est également ajusté dans les modèles gaussien et de Moffat. Il s'agit de l'angle de rotation \(\theta\), défini dans l'intervalle \([-90°,+90°]\). L'ajout de ce paramètre implique un changement de coordonnées où les variables \(x\) et \(y\) exprimées dans (1) et (2) sont remplacées par \(x'\) et \(y'\) :

    (3)\[\begin{split} x' &= +x \cos\theta+y \sin\theta \\ y' &= -x \sin\theta+y \cos\theta.\end{split}\]
Profil d'étoile

Affichage de deux PSFs circulaires selon un profil gaussien et un profil de Moffat. Les deux modèles utilisent les mêmes paramètres et le profil de Moffat utilise \(\beta = 1.4\).

Profil d'étoile

Les fonctions de rotation Gaussienne et de Moffat ont \(\sigma_x=2\sigma_y\), \(\theta=45°\). Pour la fonction de Moffat, \(\beta = 1.4\).

Profil Moffat de l'étoile

Profil des étoiles avec les modèles gaussien et de Moffat. Plusieurs valeurs de \(\beta\) sont essayées. \(\beta = 10\) donne un profil très proche du modèle gaussien.

Minimisation

La minimisation est effectuée avec un algorithme non linéaire Levenberg-Marquardt grâce à la très robuste GNU Scientific Library. Cet algorithme est utilisé pour trouver le minimum d'une fonction qui fait correspondre un ensemble de paramètres à un ensemble de valeurs observées. C'est une combinaison de deux techniques d'optimisation : la méthode de descente du gradient et la méthode inverse-hessienne.

L'algorithme de Levenberg-Marquardt ajuste le compromis entre ces deux méthodes en fonction de la courbure de la fonction à minimiser. Lorsque la courbure est petite, l'algorithme utilise la méthode de descente du gradient, et lorsque la courbure est grande, l'algorithme utilise la méthode inverse-hessienne.

Depuis la version 1.2.0, la partie saturée de l'étoile est retirée du processus d'ajustement, permettant de capturer beaucoup plus précisément la partie non saturée. C'est ce qui permet de "reconstruire" le profil de l'étoile lorsqu'on utilise l'option de menu Désaturer ou la commande unclipstars.

Utiliser

La PSF dynamique peut être appelée de deux manières différentes, selon ce que vous voulez :

Il se peut que vous ne souhaitiez ajuster qu'une ou quelques étoiles. Dans ce cas, après avoir dessiné une sélection autour d'une étoile non saturée (ceci est important pour la précision du résultat), vous pouvez soit faire un clic droit et choisir l'élément Pointer l'étoile, soit cliquer sur le bouton + dans le dialogue Dynamic PSF, soit taper Ctrl + Espace. Une ellipse est alors dessinée autour de l'étoile. Pour ouvrir la boîte de dialogue, il est également possible d'utiliser le raccourci Ctrl + F6.

Vous pouvez analyser autant d'étoiles que possible en cliquant sur l'icône chercheur, ou en utilisant la ligne de commande findstar. Toutes les étoiles détectées sont entourées d'une ellipse : orange si l'étoile est correcte, magenta si l'étoile est saturée. Il est également possible de montrer la moyenne des paramètres calculés comme illustré ci-dessous, en cliquant sur le bouton bouton dynPSF.

dialogue

Moyenne des étoiles ajustées dans le modèle gaussien.

La détection des étoiles a un certain nombre d'utilisations :

  • Siril l'utilise en interne à des fins astrométriques lors de l'alignement de la séquence d'images. Cette opération est automatique et ne nécessite aucune intervention de l'utilisateur.

  • Les étoiles étant très lumineuses par rapport à des objets de faible intensité tels que les nébuleuses ou les galaxies, il est très fréquent que certaines étoiles d'une image soient saturées, ce qui signifie que leur profil de luminosité est écrêté. Cela peut poser des problèmes pour certaines fonctions de traitement d'image, en particulier la déconvolution, et entraîne une perte d'informations chromatiques et un gonflement légèrement plus important des étoiles lors de l'application des étirements. L'analyse de toutes les étoiles vous montrera lesquelles sont saturées, et vous pourrez alors utiliser l'option de menu Désaturer ou la commande unclipstars pour résoudre le problème par synthèse de la partie écrêtée du profil.

    Ligne de commande Siril

    unclipstars
    
    Reprofile les étoiles coupées de l'image chargée pour les désaturer, en mettant à l'échelle la sortie de manière à ce que toutes les valeurs de pixels soient <= 1,0
  • Idéalement, toutes les étoiles d'une image devraient être parfaitement rondes, mais des problèmes tels que la coma, l'astigmatisme et un mauvais suivi, ainsi que des problèmes tels qu'une back focus incorrect des aplanisseurs de champ, peuvent donner lieu à des modèles d'étoiles elliptiques dans une image. Les ellipses produites par l'outil Dynamic PSF peuvent donner une bonne illustration visuelle de ces problèmes.

  • L'examen des paramètres moyens de l'étoile, en particulier la FWHM et le paramètre bêta de la fonction d'ajustement de Moffat, peut fournir des informations sur la qualité du seeing dans une image.

  • La détection de toutes les étoiles est la première étape de l'utilisation de l'outil Traitement des étoiles ‣ Resynthèse intégrale. Celui-ci synthétise des profils de luminosité corrigés pour toutes les étoiles détectées, et peut être utilisé pour créer un masque d'étoiles synthétique qui peut ensuite être mélangé avec une image sans étoiles générée par Starnet++. Dans ce cas, la détection des étoiles à l'aide du profil Moffat peut donner un résultat plus réaliste et peut également faciliter le filtrage des galaxies incorrectement détectées comme des étoiles en utilisant le paramètre Minimum beta.

  • Le bouton Actif/inactif Étoile sélectionnée au centre peut être utilisé pour trouver rapidement et facilement une étoile particulière de la liste dans l'image, en la centrant dans la fenêtre d'affichage. Ceci est utile si vous avez détecté toutes les étoiles et que vous souhaitez vérifier des solutions spécifiques pour vous assurer qu'il s'agit bien d'une étoile et non d'une galaxie ou d'un rayon cosmique.

  • De même, un clic sur une ellipse d'étoile orange ou magenta dans la fenêtre principale mettra en surbrillance l'étoile dans la boîte de dialogue Dynamic PSF. Cela peut être utile si vous souhaitez voir les paramètres d'une étoile individuelle.

  • Les fonctions de déconvolution de Siril permettent d'utiliser les mesures de l'outil PSF dynamique pour synthétiser une fonction de déconvolution qui correspond aux paramètres des étoiles mesurés directement à partir de l'image.

Configuration

Le PSF dynamique peut être configuré à l'aide des paramètres de la boîte de dialogue Dynamic PSF :

  • Rayon définit la demi-taille de la boîte de recherche. Si vous avez des difficultés à détecter des étoiles particulières, vous pouvez essayer de modifier cette valeur, mais la valeur par défaut convient généralement.

  • Seuil modifie le seuil au-dessus du bruit pour la détection des étoiles. Si vous augmentez cette valeur, moins d'étoiles faibles seront détectées. Cependant, vous pouvez toujours le faire pour les images très bruitées. Diminuer cette valeur peut détecter plus d'étoiles faibles, mais rendra l'algorithme plus susceptible de mal identifier les pics de bruit aléatoires comme des étoiles.

  • Rondeur définit l'ellipticité admissible pour que les détections soient acceptées comme des étoiles. Les étoiles très elliptiques peuvent être dues à un suivi imparfait ou à des aberrations, mais il arrive aussi que des étoiles trop proches les unes des autres soient détectées comme une seule étoile très allongée. Pour mettre en évidence tous ces problèmes, il est possible d'activer une limite supérieure pour la rondeur. Une valeur maximale de 1 équivaut à désactiver la plage, ne laissant que la valeur minimale. Cette plage de rondeur doit être désactivée pour l'alignement ou l'astrométrie.

  • Convergence définit un critère utilisé par le solveur. L'augmenter permet au solveur d'avoir plus d'interations pour converger et peut potentiellement détecter des étoiles supplémentaires, mais peut augmenter son temps d'exécution.

  • Le type de profil permet de choisir entre la résolution de profils Gaussienne ou Moffat pour les étoiles.

  • Beta minimum définit une valeur minimale admissible de bêta pour qu'une détection soit acceptée comme une étoile. Les galaxies peuvent parfois être détectées comme des étoiles de profil Moffat, mais elles ont des profils diffus et la valeur de beta est généralement très faible, inférieure à environ 1,5.

  • Assouplir les contrôles PSF permet de relâcher plusieurs des vérifications de qualité des étoiles candidates. Cela est susceptible d'entraîner une augmentation significative des détections d'étoiles faussement positives, souvent avec des paramètres aberrants.

  • Une gamme d'amplitude minimum et maximum peut être définie pour limiter l'amplitude (paramètre nommé "A" dans les rapports) des étoiles détectées. Cela est utile si seules les étoiles non saturées doivent être sélectionnées, par exemple pour l'ajustement de PSF dans la déconvolution. Notez que le retrait des étoiles saturées de la détection peut perturber l'alignement et l'astrométrie.

Astuce

Les paramètres définis dans cette fenêtre peuvent être testés sur l'image actuellement chargée. Cependant, vous devez garder à l'esprit qu'ils seront également utilisés pour toutes les images de la séquence, notamment pour de l'alignement global.

La commande findstar obéit aux mêmes paramètres entrés dans la boîte de dialogue PSF dynamique, mais elle peut également être configurée à l'aide de la commande setfindstar.

Ligne de commande Siril

findstar [-out=] [-layer=] [-maxstars=]
Détecte les étoiles dans l'image actuellement chargée, dont le niveau est supérieur à un seuil calculé par Siril.
Ensuite, une PSF est appliquée et Siril rejette toutes les structures détectées qui ne répondent pas à un ensemble de critères de détection prescrits, qui peuvent être ajustés avec la commande SETFINDSTAR.
Enfin, une ellipse est dessinée autour des étoiles détectées.

Le paramètre optionnel -out= permet d'enregistrer les résultats dans le chemin d'accès donné.
L'option -layer= spécifie la couche sur laquelle la détection est effectuée (pour les images en couleur uniquement).
Vous pouvez également limiter le nombre maximum d'étoiles détectées en passant une valeur à l'option -maxstars=.


Voir aussi la commande CLEARSTAR

Ligne de commande Siril

setfindstar [reset] [-radius=] [-sigma=] [-roundness=] [-focal=] [-pixelsize=] [-convergence=] [ [-gaussian] | [-moffat] ] [-minbeta=] [-relax=on|off] [-minA=] [-maxA=] [-maxR=]
Définit le paramètre de détection d'étoiles pour les commandes FINDSTAR et REGISTER.

Si vous ne passez aucun paramètre, vous obtiendrez la liste des valeurs actuelles.
Passer reset réinitialise toutes les valeurs aux valeurs par défaut. Vous pouvez alors toujours passer des valeurs après ce mot-clé.

Valeurs paramétrables :

-radius= définit le rayon de la boite de recherche initiale et doit être compris entre 3 et 50.
-sigma= définit le seuil au-dessus du bruit et doit être supérieur ou égal à 0,05.
-roundness= définit la rondeur minimale des étoiles et doit être comprise entre 0 et 0,95. -maxR permet de définir une limite supérieure à l'arrondi, pour visualiser uniquement les zones où les étoiles sont significativement allongées, ne pas utiliser pour l'alignement.
-minA et maxA définit la limite du minimum et maximum de l'amplitude des étoiles à conserver, normalisé entre 0 et 1.
-focal= définit la longueur focale du télescope.
-pixelsize= définit la taille des pixels du capteur.
-gaussian et -moffat configure le modèle de solveur utilisé (Gaussian par défaut).
Si Moffat est sélectionné, -minbeta= définit la valeur minimale de beta pour laquelle les étoiles candidates seront acceptées et doit être supérieure ou égale à 0,0 et inférieure à 10,0.
-convergence= définit le nombre d'itération réalisée pour ajuster la PSF et doit être compris entre 1 et 3 (plus tolérant).
-relax= relâche les vérifications qui sont faites sur les étoiles candidats pour évaluer s'ils sont des étoiles ou non, pour permettre aux objets qui n'ont pas la forme d'une étoile d'être quand même acceptés (désactivé par défaut)

Références

[Stetson1987]

Stetson, P. B. (1987). DAOPHOT : A computer program for crowded-field stellar photometry. Publications of the Astronomical Society of the Pacific, 99(613), 191.