3.3. Commandes en ligne

Quelques fonctions de calculs élémentaires peuvent être lancées depuis une ligne de commande, dans le style de ce que fait le logiciel de traitement d'images Iris. Du reste la syntaxe des commandes est fort voisine de celle de Iris. La ligne de commande est accessible depuis l'onglet "Outils 1" (version 1.00.3 et au-dessus de ISIS).

Par exemple, supposons que l'on veuille soustraire à l'image DSCO-1.FIT l'image DARK300.FIT, et que le résultat de la soustraction soit une nouvelle image de nom DIFF.FIT (par exemple). Entrer pour cela la commande :

Pour exécuter effectivement la commande, faire au clavier <Return> (ou que ce trouve le curseur d'édition dans la ligne, donc pas obligatoirement en bout de ligne).

Dans l'exemple, le nom proprement dit de la commande qui réalise l'opération est SUB. A la suite on trouve les paramètres séparés par au moins un espace. La syntaxe de SUB est simplement

SUB A B C

avec A - B = C.

Si vous avez oublié les paramètres d'une commande, taper simplement son nom, puis <Return>. La liste des paramètres apparait alors dans la zone de sortie des résultats de l'onglet "Utilitaires 1" :

Les anciennes commandes peuvent être rappelées en jouant avec les flèches haut et bas depuis la zone d'édition des commandes.

Dans l'exemple de la commande SUB, le résultat est sauvegardé dans le répertoire de travail. Il peut donc être visualisé depuis l'onglet "Image" :

Parmi les quelques commandes disponibles, on peut citer ADD, SUB, OFFSET, MULT, SAVE, L_ORI, SMILE, TILT, L-SKY, L_ADD, L_OPT ...

La commande SAVE permet de sauvegarder l'image 2D courante, actuellement en mémoire (après un chargement depuis l'onglet "Image" notamment et d'éventuelles modifications).

On va s'intéresser à titre d'illustration à la commande L_ADD qui permet d'extraire un profil spectral (1D) depuis un spectre en 2D (image). Le résultat de cet exercice nous sera particulièrement utile au paragraphe suivant, consacré à la mesure de la dispersion spectrale.

Chargeons en mémoire le spectre ALTAIR_NEON.FIT. Il s'agit d'une image du spectre de la lampe néon située dans le spectrographe Lhires III. L'instrument est équipée d'un réseau de 2400 trait/mm. La caméra CCD est un modèle QSI-532. Voici un extrait de ce spectre, chargé et visualisé depuis l'onglet "Image" :

Remarquer que le réticule horizontal a été affiché. Il marque la position des spectres stellaires acquis avec cette configuration (voir la première page de ce tutorial). Les raies présentent une inclinaison caractéristique. Avec l'outil "Slant" on relève que l'angle d'inclinaison (angle de slant) pour des raies voisines du centre de l'image est de -3,28°. Par ailleurs, l'analyse des spectres stellaires montre une erreur d'inclinaison de l'axe spectral (tilt) de l'ordre de -0,08°.

Nous allons extraire le profil de raie au voisinage immédiat du réticule horizontal en nous servant exclusivement de la ligne de commande.

Avant tout, nous retirons le signal d'offset de l'image ALTAIR_NEON-1.FIT. Dans notre cas, c'est offset est sauvegardé dans le répertoire de travail sous le nom OFFSET.FIT. L'opération va nous permettre d'amener le pied des raies d'émission au voisinage du niveau zéro (absence de signal donc - ce qui définit le zéro des intensités). Ici nous nous passons de soustraire le signal d'obscurité correspondant à une pose de 20 secondes. Au moins pour cette démonstration, le signal d'obscurité correspondant peut-être négligé. Alors donc, procédons à la soustraction du signal d'offset :

L'image résultat est un fichier de nom I.FIT (on choisit des noms courts, c'est plus expéditif !). Depuis le même onglet ("Outils 1"), il est possible d'obtenir un résultat identique en faisant :

Nous pouvons ensuite procéder aux deux corrections des distorsions géométriques des raies (angle de tilt et angle de slant). Dans la ligne de commande faire successivement :

tilt i j 1092 -0.08
slant j k 648 -3.28

Le paramètre ayant la valeur 1092 dans la commande TILT correspond à la coordonnée horizontale du centre de l'image CCD en pixels (la matrice CCD KAF-3200 utilisée fait 2184 pixels de large, d'où 2184/2=1092). La rotation de l'image pour corriger le tilt se fait donc depuis son centre. Ce n'est pas obligatoire, mais c'est recommandé.

Le paramètre valant 648 dans la commande SLANT correspond à la coordonnée verticale de la trace du spectre en pixels.

Le nom des images de sortie est bien sur arbitraire. Vous vous pouvez en faire un autre.

Le résultat des opérations peut être observé depuis l'onglet "Image" :

A ce stade, le profil spectral peut être extrait. Le calcul consiste à additionner les pixels suivant l'axe vertical pour les projeter dans un vecteur. La position verticale de la zone dans laquelle est réalisée le calcul doit être défini. De manière naturelle, nous choisissons une zone à cheval sur la trace des spectres, matérialisée par la ligne rouge, située ici à la coordonnée Y = 648.  Nous choisissons d'utiliser une zone de +/-10 pixels, qui parait appropriée (conseil : ne pas prendre une largeur trop grande à cause des distorsions résiduelles des raies, qui peuvent provoquer des erreurs de position et de forme dans le profil spectral calculé). Donc, la zone verticale de sommation (ou de binning) est délimitée par Y1 = 638 et Y2 = 658.

Dans la ligne de commande, entrer :

l_add k p 638 658

Le premier paramètre est le nom de l'image 2D d'où on extrait le profil. Le second paramètre est le profil spectral calculé, qui va être écrit dans le répertoire de travail sous la forme d'un fichier ASCII de nom P.DAT (c'est un exemple). Enfin, on retrouve les coordonnées de la zone sélectionnée.

Toutes ces opérations un peu fastidieuses peuvent être réalisées de manière simple et efficace depuis l'onglet "Outils 3" :

Pour visualiser le profil spectral ainsi produit, aller à l'onglet "Profil", puis faire :

Attention ici à la mauvaise interprétation possible de la longueur d'onde en bas de la fenêtre. Le spectre n'est bien sur pas étalonné en longueur d'onde à ce stade (ce sera l'objet de la section suivante). L'information retournée est simplement ici une numérotation en pixels.

Lorsqu'il faut extraire le profil spectral du spectre 2D d'étoiles, il est recommandé d'employer la commande L_OPT plutôt que la commande L_ADD. La syntaxe est la même :

l_opt k p 638 658

La commande L_CORREL réalise l'intercorrelation de deux spectres (au format DAT) pour trouver le décalage spectral précis pouvant exister entre l'un et l'autre. Attention, les deux spectres doivent avoir la même taille pour que la commande puisse fonctionner.

Voici un extrait de spectre T1.DAT de l'étoile Delta Sco :

Voici un second spectre de cette même étoile, de nom T2.DAT :

Le décalage spectral entre T1 et T2 est de de 1.0 A. Voici comment trouver cette valeur avec la commande L_CORREL (en nombre d'échantillons et en valeur absolu en cohérence avec l'unité de l'axe spectral) :

La commande L_SHIFT peut être utilisée pour recentrer les spectres l'un sur l'autre :

Le spectre T2.DAT recentré a le nom T3.DAT.

La commande L_ERASE est utilisée pour effacer une partie de spectre. Ce sera le cas lorsque cette partie contient au préalable une information non valide (artefact, bruit, etc). Par exemple, supprimons la rais Halpha dans le spectre T1.DAT de l'exemple précédent (ce n'est qu'un exemple !) :

Voici le résultat (T4.DAT) :

 

3.4. Etalonnage spectral

ISIS utilise deux techniques pour effectuer l'étalonnage spectral. L'une repose sur une liste de raies prédéfinie, l'autre sur un polynôme de dispersion prédéfini.

La première technique a été exploitée dans la première partie de ce tutorial. Elle est spécifique au spectrographe Lhires III et correspond à des configurations adaptées. Ces configurations sont entourées de rouge dans la vue suivante :

Avec un réseau 1200 traits/mm, ISIS détecte la position de 7 raies du néon pour étalonner un spectre couvrant la partie rouge. Les raies du néon en question doivent impérativement se trouver dans le champ du détecteur. Voici les longueurs d'onde de ces raies en angströms :

6382.992 A
6402.246 A
6506.528 A
6532.882 A
6598.953 A
6678.276 A
6717.043 A

ISIS détecte automatiquement la position de ces raies dans l'image d'étalonnage du néon, puis ajuste un polynôme du troisième ordre. Cependant, pour que l'opération soit possible il faut indiquer au logiciel la position horizontale en pixel (X) d'une raie du néon de référence. Il suffit de connaître cette coordonnée à quelques pixels près. La raie en question est facile à localiser à la longueur d'onde de 6506.528 A. Le graphique suivant est là pour vous faciliter la tâche :

Il est par ailleurs important de bien renseigner le champ concerné par la taille du pixel détecteur depuis l'onglet "Traitement" :

Avec un réseau de 2400 traits par mm, deux choix sont offerts. L'un correspond à la présence de 3 raies du néon dans l'image d'étalonnage, l'autre correspond à la disponibilité de 4 raies.

Dans le mode à 3 raies, les raies du néon sont situées à

6506.528 A
6532.882 A
6598.953 A

Dans le mode à 4 raies, les longueurs d'onde sont :

6506.528 A
6532.882 A
6598.953 A
6678.276 A

Ici encore, vous devez fournir la position approximative de la raie à 6507 A. ISIS ajuste un polynôme du second ordre dans ces modes.

Lors du traitement du spectre (ici, de l'étoile Altair), ISIS indique dans les résultats intermédiaires les coefficients du polynôme de dispersion ajustés (a0, a1, a2, ...) :

 

La paramètre a1 est un bon indicateur de la dispersion (inverse) moyenne. Ici elle est de 0,090 A/pixel environ. Le paramètre a2 du deuxième ordre indique l'écart à une loi de dispersion linéaire. Enfin, le paramètre a0 donne la longueur d'onde du premier point de votre spectre (du coté gauche). Il est important d'examiner l'erreur RMS d'ajustement (Root Mean Square error). Elle n'est dans l'exemple que de 0,0068 A, ce qui indique que ISIS à bien détecter les raies du néon prédéfines et que par voie de conséquence, l'étalonnage en longueur d'onde du spectre est précis. Un erreur supérieure à 1 A serait le signe manifeste d'un problème en revanche (absence d'une raie du néon dans le champ du détecteur, valeur incorrecte de la taille du pixel, ...).

L'utilisation de la technique des raies prédéfinies est la méthode la plus précise et la plus expéditive. Si vous avez la prudence d'acquérir un spectre du néon à très peu d'intervalle de temps de celui de l'étoile, vous augmentez encore la précision (une bonne habitude est d'associer au moins un spectre d'étalonnage à chaque séquence d'acquisition d'étoile, ce qui réduit les erreurs liées aux flexions mécaniques). Le fin du fin est de réaliser deux images d'étalonnage qui encadrent les acquisitions stellaires. L'image d'étalonnage effectivement utilisée lors du traitement est alors la moyenne de ces deux étalonnages encadrant. Par exemple depuis l'onglet "Images d'étalonnage" faire :

On fait ici la moyenne des images ALTAIR_NEON-1.FIT et ALTAIR_NEON-2.FIT. Le résultat est l'image ALTAIR_NEON.FIT. C'est cette dernière que l'on utilisera de préférence pour effectuer la réduction des spectres de l'étoile Altair.

Dans certaines circonstances, la technique des raies prédéfinies ne fonctionne pas. Par exemple, si on veut exploiter une zone spectrale autre que la partie rouge (proche de Halpha)  ou si on utilise une autre configuration de réseau que celles actuellement prévues (150 t/mm, 300 t/mm, etc). Dans ces conditions, vous allez devoir établir vous-même le polynôme de dispersion correspondant à votre équipement. Il faut pour cela disposer d'un spectre dans lequel il est possible d'identifier des raies dont on connait les longueurs d'onde. A titre d'exemple nous allons utiliser le spectre du néon P.DAT (non étalonné) calculé à la section précédente.

Depuis l'onglet "Profil", après avoir chargé le profil P.DAT, cliquer sur le bouton "Dispersion" :

La boite qui s'ouvre propose jusqu'à 7 raies spectrales dont les longueurs d'onde s'affichent dans la première colonne. Vous pouvez modifier à loisir ces longueurs d'onde en fonction du type de spectre à étalonner. La seconde colonne va contenir la position des raies correspondantes en pixels dans le spectre à étalonner. Nous allons utiliser dans cet exemple les 5 raies disponibles dans la partie rouge d'un spectre du néon acquis avec le réseau de 2400 traits/mm et un grand capteur CCD. Comme les raies sont en émission, choisir cette option en haut de la boite de dialogue.

Sélectionnons la première raie (située à la longueur de 6506 A environ). Pour cela faire un premier double clic à gauche de la raie (avec le bouton gauche de la souris), puis un second double clic à droite de la raie :

La position précise de la raie sélectionnée (X = 49.303) apparait alors dans la boite de dialogue (celle dont le bouton est activée) :

Dans la boite de dialogue sélectionner la seconde raie de la  liste en cliquant sur le bouton, puis, sélectionner la raie en question dans le profil spectral comme précédemment. A chaque raie, il faut penser à changer la sélection dans la boite de dialogue. Vous pouvez bien sur recalculer la position d'une raie donnée en cas d'erreur. Au final, voici le résultat du travail de sélection :

Les champs non rempli en longueur d'onde correspondent à des données non utilisées pour le calcul (dans l'exemple les raies 5, 6 et 7).

Evaluons le polynôme de dispersion en cliquant sur le bouton "Calcul du polynôme" :

On a choisi un ajustement à l'ordre 2. Remarquer la similitude avec le calcul effectué à partir de raies prédéfinies. C'est normal, les données de cet exemple sont identiques pour les deux modes d'étalonnage.

Tout en bas de la boite de dialogue on trouve la longueur d'onde des raies calculé avec l'aide du polynôme et l'écart avec la position catalogue en ansgtröms. L'erreur RMS est aussi affichée.

L'essentiel du travail est réalisé. Lorsque nous allons étalonner des spectres stellaires à partir de l'option "Polynôme prédéfini" (voir plus loin), ISIS va chercher les coefficients dans la boite de dialogue qui nous occupe, même si celle-ci est fermée. Ces coefficients sont aussi conservés lors de la fermeture du programme. Ce sont pratiquement des constantes de la configuration, réutilisables. Il faut tout de même vérifier de temps à autre que ces coefficients n'ont pas trop évolué au fil des démontages du spectrographe. Le fait de modifier l'angle du réseau à diffraction demande en général de re-calculer les coefficients.

Les coefficients peuvent être édité à la main, ce qui signifie que vous pouvez parfaitement entrer les coefficients issus d'un logiciel tiers si vous le désirez.

A titre de vérification, vous pouvez étalonner en longueur d'onde le spectre brut qui a servi à trouver les coefficients en cliquant sur le bouton "Etalonner". Vous allez constater à partir de ce moment que les longueurs d'onde réelles s'affichent lorsque l'on déplace le curseur dans le spectre :

Si la dispersion est fortement non linéaire, vous pouvez employer un polynôme de dispersion de degré 3. Ce sera parfois la cas si le spectre est très étendu spectralement. Pour calculer un polynôme de degré 3, il faut sélectionner au minimum 4 raies (3 raies minimum au degré 2).

Vous pouvez à présent fermer la boite de dialogue d'étalonnage.

Toujours pour des contrôles, rappelez-vous que vous pouvez utiliser la commande "FWHM" pour trouver la longueur d'onde précise d'une raie (double cliquer de part et d'autre de la raie choisie) :

Vous pouvez également trouver les coefficients d'étalonnage sur des raies en absorption, par exemple en utilisant des raies stellaires ou telluriques (H2O, O2).

A présent, il est simple d'étalonner un spectre stellaire quelconque. Lors du traitement, sélectionner le mode "Général" d'étalonnage. Penser à choisir une raie de référence (fournissez la longueur d'onde précise, en revanche, la position X en pixel peut être approximative) :

Noter que ISIS utilise les coefficients de dispersion que nous avons prédéfini (ils sont recopiés de la boite de dialogue "Dispersion").


<PRECEDENT>                    <SUITE>                              <DEBUT>