Audela |
![]() |
Les commandes qui suivent peuvent être appelées grâce aux commandes buf1, buf2, ... qui sont créées par "::buf::create". Ces sous-commandes permettent de formater une image, de manipuler les mots-clés FITS, et de réaliser certains traitements sur l'image portée par le buffer. Elles sont décrites avec la commande
buf1, mais sont valables pour toutes les autres commandes de buffer.
Dimensionne l'image du buffer à la taille précisée par les arguments largeur et hauteur : deux entiers représentant la largeur et la hauteur souhaitées de l'image. Si une image existait avant cette commande, elle est effacée. Les pixels sont initialisés à zéro.
Efface l'image et l'en-tête contenues dans le buffer, mais il n'est pas retiré de la liste des buffers.
Copie le contenu du buffer dans le buffer dont le numéro est passé en argument (destnum). Si le buffer de destination n'existe pas, il est créé, sinon il est écrasé (les données qui y étaient sont effacées et remplacées par celles du buffer source).
Renvoie le type des données de l'image : short, int, float, imag. Pour l'instant seules les images float sont gérées.
Retourne l'adresse du pointeur de l'image du buffer, qui peut être utilisé dans une librairie.
Indique le type de données à écrire dans le fichier FITS lors des sauvegardes. Par défaut, ushort. En interne, AudeLa manipule des images de type float mais il est possible de les contraindre à un autre type lors de l'enregistrement FITS avec cette fonction.byte : 8 bits non signés (0 à 255),short : 16 bits signés (-32768 à 32767),
ushort : 16 bits non signés (0 à 65535),
long : 32 bits signés (-2 147 483 648 à 2 147 483 647),
ulong : 32 bits non signés (0 à 4 294 967 295),
float : flottant codé sur 32 bits (3,4*10-38 à 3,4*10+38),
double : flottant codé sur 64 bits (1,7*10-308 à 1,7*10+308).
Indique le nom de l'extension par défaut à donner au fichier FITS qui sera lu ou écrit sur le disque (.fit par défaut).
Indique si l'enregistrement de l'image va générer un fichier compressé ou non (none par défaut). Si l'on souhaite une compression, indiquer gzip. Les fichiers FITS auront l'extension .gz. Ils peuvent être lus directement par la fonction buf1 load et peuvent être décompressé en dehors de Audela avec de nombreux logiciels de décompression.
Charge une image FITS stockée sur disque, ou sur un autre ordinateur relié en réseau. L'extension peut être donnée ou non, auquel cas elle est prise par défaut (cf. buf1 extension). Le nom de chemin peut être indiqué avec de / au lieu de \, sachant qu'avec des \, il faut les doubler
Exemple :
buf1 load images/totobuf1 load images\\totocharge l'image toto.fit contenue dans le sous-répertoire images du répertoire courant (peut être obtenu grâce à la commande TCL pwd).
Enregistre l'image au format FITS, avec les mots-clés contenus dans le buffer. Si l'extension est donnée, elle peut être différente de celle par défaut (cf. buf1 extension).
Enregistre l'image au format JPEG. Si l'extension est donnée, elle peut être différente de ".jpg". L'option quality fixe la qualité de l'image (de 5 pour une perte énorme à 100 pour une compression sans perte). La valeur par défaut de quality est 75. Locut et hicut sont les seuils de visualisation correspondant respectivement au noir et au blanc.
Retourne la liste des mots-clés FITS du buffer sous forme d'une liste TCL.
Retourne une liste de cinq éléments qui caractérise complètement le mot-clé FITS nom. Cette liste est composée du nom du mot-clé, de sa valeur, de son type (int, float, string), d'un commentaire, et de l'unité de la grandeur. Si le mot-clé n'existe pas alors la commande retourne la liste {"" "" none "" ""}. Le nom du mot-clé doit toujours être fourni dans la casse du mot-clé stocké. Par exemple, NAXIS est différent de naxis. La fonction getkwds permet de repérer cela.
Exemple :
buf1 getkwd NAXIS1retourne {NAXIS1 384 int "length of data axis 1" ""}.
Cette commande permet de modifier un mot-clé : l'argument donné doit être une liste de cinq éléments correspondant au nom du mot-clé, à sa valeur, à son type (string, int, float), au commentaire, et enfin à l'unité. Elle correspond au même format que le résultat de la commande précédente. Le nom du mot-clé doit contenir au plus 9 caractères.
Exemple :
buf1 setkwd [list "INSTRU" "T310" string "mon télescope" ""]
modifie ou créé le mot-clé INSTRU.
Copie les mots-clés du buffer source vers le buffer qui exécute cette sous-commande. L'argument est le numéro du buffer depuis lequel les mots-clés seront copiés.
Efface un mot clé de la liste de ceux présents dans l'en-tête FITS.
Efface tous les mots clé de la liste de l'en-tête FITS.
Les fonctions de traitement d'images proposées par Audela agissent au niveau du buffer.
Renvoie la valeur du pixel aux coordonnées (x,y) passée en paramètre sous la forme d'une liste à deux éléments [list $x $y]. Les coordonnées de l'image vont de (1,1) à (NAXIS1,NAXIS2).
Affecte la valeur du pixel aux coordonnées (x,y) passée en paramètre sous la forme d'une liste à deux éléments [list $x $y]. Les coordonnées de l'image vont de (1,1) à (NAXIS1,NAXIS2).
Réalise un offset sur l'image : tous les pixels de l'image sont décalés de valeur.
Soustrait l'image contenue dans fichier à l'image courante, et ajoute un offset de valeur. Le résultat est toujours stocké dans le buffer.
Ajoute l'image contenue dans fichier à l'image du buffer, et ajoute un offset de valeur.
Divise l'image du buffer par celle contenue dans fichier. et multiplie le résultat par valeur.
Multiplie l'image du buffer par une valeur constante.
Normalise le fond du ciel à la valeur donnée en argument, par un offset.
Normalise le fond du ciel à la valeur donnée en argument, par une multiplication (gain).
Retire la contribution apportée par le flux incident du ciel lors de la lecture du CCD lorsque la caméra n'est pas équipée d'un obturateur. Le coefficient à donner en paramètre est le rapport du temps de lecture d'une ligne sur le temps de pose total de l'image.
Optimise le noir sur le buffer : le noir qui sert à l'optimisation est le premier argument. C'est un noir qui est directement issu de l'acquisition, éventuellement issu d'une synthèse médiane des images de noir acquises. De même pour l'offset. Il est extrêmement important que l'offset soit présent dans l'image de noir.
Analyse l'image du buffer, et retourne une liste composée des éléments suivants :L'argument fenêtre est une liste de quatre valeurs numériques indiquant les coordonnées de deux des coins opposés : [list $x1 $y1 $x2 $y2].
- seuil haut convenant bien à la visualisation du fond de ciel,
- seuil bas associé,
- valeur maximale de l'image,
- valeur minimale de l'image,
- moyenne globale sur l'image,
- écart-type global de l'image,
moyenne du fond de ciel, - écart-type du fond de ciel.
Retourne l'image horizontalement, c'est à dire que ce sont les colonnes qui sont déplacées.
Retourne l'image verticalement : les lignes sont permutées.
Crée une nouvelle image de dimensions largeur*NAXIS2, dont toutes les colonnes sont identiques, et égales à la somme de toutes les colonnes comprises entre les abscisses x1 et x2 de l'image à laquelle est appliqué ce traitement. Cette commande est utile pour exploiter notamment les images d'occultations par des astéroïdes, observées par la méthode de filé.
Cette fonction de traitement est la transposition de la commande binx : elle crée une nouvelle image de dimensions NAXIS1*hauteur, dont toutes les lignes sont identiques, et égales à la somme de toutes les lignes comprises entre les ordonnées y1 et y2 de l'image à laquelle est appliqué ce traitement.
Extrait une sous-image de l'image à laquelle est appliquée ce traitement. L'argument est une liste de quatre valeurs numériques indiquant les coordonnées de deux des coins opposés : [list $x1 $y1 $x2 $y2].
Rotation de l'image autour du centre (x1,y1) et d'un angle angle exprimé en degrés décimaux (15.5 = 15°30'). Les pixels sont compris dans l'intervalle (1,1) - (NAXIS1,NAXIS2).
Applique la fonction suivante à tous les pixels de l'image : p' = coef * log10(p - offset), où p et p' sont respectivement l'ancienne, et la nouvelle valeur des pixels. Par défaut, offset vaut 0, et pour les pixels où (p - offset) < 0 alors p' = 0.
Crée une nouvelle image de dimensions largeur*NAXIS2, dont toutes les colonnes sont identiques, et égales à la somme de toutes les colonnes comprises entre les abscisses x1 et x2 de l'image à laquelle est appliquée ce traitement. Cette commande est utile pour exploiter notamment les images d'occultations par des astéroïdes, observées par la méthode de filé.
Effectue une commande de type IMA/SERIES de la librairie TT. Cette commande est extrêmement importante car elle permet d'exploiter toutes les richesses des fonctions IMA/SEIRES de libTT.
Ajoute une gaussienne sur l'image à la position (xc,yc), de largeur à mi hauteur fwhmx,fwhmy et d'intensité i0. L'option LimitAdu permet de fixer une valeur seuil au dessus de laquelle les valeurs auront la valeur du seuil (permet de reproduire l'effet d'une saturation).
Remplace toutes les valeurs inférieures à value par value (écrêtage).
Remplace toutes les valeurs supérieures à value par value (écrêtage).
Cicatrise les valeurs des pixels à l'intérieur de la fenêtre {x1 y1 x2 y2} par un réseau de lignes et colonnes interpolées à partir des pixels se situant sur le bord de la fenêtre.
Reéchantillonne (bilinéaire) l'image en tenant compte de facteurs d'échelles sur chaque axe. La valeur normaflux permet de fixer le facteur de "dilution" du flux après le reéchantillonnage. Si sx et sy sont les facteurs d'échelle, la valeur par défaut de normaflux est 1./(sx*sy). Une valeur de normaflux=1 permet de garder la dynamique initiale.
Conversion des coordonnées image en coordonnées célestes : il faut que l'image soit préalablement calibrée astrométriquement. Les coordonnées d'entrée sont sous la forme d'une liste de deux nombres, entiers ou décimaux. Le résultat est une liste composée de l'ascension droite, et de la déclinaison, exprimées en degrés décimaux.
Conversion de coordonnées célestes en coordonnées image : il faut également que l'image soit calibrée astrométriquement. L'ascension droite et la déclinaison doivent être exprimées en degrés décimaux. Le résultat est une liste des coordonnées x et y exprimées en pixels décimaux (rarement des valeurs entières).
Calcule la fwhm des pixels contenus dans la fenêtre dont les coordonnées sont passées dans la liste composant l'argument. Si la fenêtre est trop grande ou ne contient pas une seule étoile, le résultat n'est pas représentatif (!). Cette commande retourne une liste de deux éléments, respectivement la fwhm en x, et en y. L'argument fenêtre est une liste de quatre entiers qui indiquent les coordonnées des deux coins opposés de la fenêtre.
Renvoie une liste de deux éléments : le premier est le flux dans la fenêtre (somme de tous les pixels contenus dans la fenêtre), et le second est le nombre de pixels ayant servi à établir le flux.
Calcule le centroïde de la fenêtre décrite par le premier argument. Le second paramètre est optionnel : il s'agit du niveau de bruit en dessous duquel les pixels ne sont pas pris en compte dans le calcul. Sa valeur par défaut est 3 : les pixels en dessous de 3 fois le bruit sur le contour de la fenêtre sont éliminés pour le calcul. Les arguments de retour sont, dans l'ordre:
- Xc, le barycentre sur l'axe X.
- Yc, le barycentre sur l'axe Y.
- la distance entre le point (Xc,Yc) et le pixel de plus forte intensité dans la fenêtre. Cette distance doit rester petite si le calcul n'est pas affecté par la contamination d'une autre étoile dans la fenêtre.
Photométrie dans une fenêtre : la valeur renvoyée est la différence entre le flux total sur la fenêtre, et le flux du fond de ciel, évalué sur le contour de la fenêtre. Les arguments de retour sont, dans l'ordre:
- F, le flux intégré soustrait du fond de ciel
- N, le nombre de pixels entrant dans le calcul de F.
- B, Le flux estimé du fond de ciel.
Photométrie d'ouverture dans une fenêtre : la valeur renvoyée est la différence entre le flux total sur la fenêtre, et le flux du fond de ciel, évalué sur le contour de la fenêtre. Actuellement cette fonction ne fonctionne qu'avec une ouverture carrée (square). {x1 y1 x2 y2} est la fenêtre qui entoure le pixel l'astre à mesurer. Dans un premier temps, un calcul de barycentre photométrique est effectué pour définir le centre de mesure du photomètre. Les paramètres ?args? sont au nombre trois définis ainsi dans l'ordre:
Le résultat comporte 5 valeurs:
Rappelons que si G est le gain de la caméra CCD (exprimé en e/adu), alors l'incertitude de mesure totale rms à 1 sigma dF (exprimée en adu) peut être estimée statistiquement par:
dF = sqrt ( F5*F4*F4 + F1*G) / G
Calcule et retourne la valeur des seuils haut et bas de visualisation. Ces valeurs sont ajoutés aux mots clés MIPS-Hi et MIPS-LO de l'en-tête FITS de l'image.
Calcule les paramètres d'ajustement de deux gaussiennes à partir des profils des valeurs cumulées sur les côtés de la fenêtre définie par la liste {x1 y1 x2 y2}. L'ajustement est effectué aux moindres carrés. Les valeurs de retour sont dans une liste dans l'ordre suivant :L'option -sub va soustraire la gaussienne ajustée à l'image.
- intensité (adu) de la gaussienne sur l'axe X.
- position (pixels) du centre de la gaussienne sur l'axe X.
- largeur à mi hauteur, FWHM (en pixels) de la gaussienne sur l'axe X.
- valeur du fond (en adu) sur l'axe X.
- intensité (adu) de la gaussienne sur l'axe Y.
- position (pixels) du centre de la gaussienne sur l'axe Y.
- largeur à mi hauteur, FWHM (en pixels) de la gaussienne sur l'axe Y.
- valeur du fond (en adu) sur l'axe Y.
Retourne trois listes contenant les informations sur l'histogramme de l'image. Chaque liste définit :Liste du nombre de pixels dans l'intervalle [adumin;adumax]. Le nombre d'éléments de cette liste est fixé par la valeur de NbBins (10 par défaut). Les bornes de valeurs de l'histogramme sont fixées par min et max.
Liste des valeurs moyennes (en adu) des pixels. Cette liste contient NbBins éléments.
Liste des valeurs adumin;adumax (en adu) des pixels. Cette liste contient NbBins+1 éléments.