Dans cette partie, nous allons examiner la représentation d'une image.
Il ne faut perdre de vue que la seule chose que le programme connaît est une succession de chiffre ( image numérique ... ). Chaque chiffre est en rapport avec l'intensité lumineuse qu'a reçu le capteur durant la pose. Plus ce chiffre est important, plus le capteur aura reçu de lumière. Il faut donc trouver un moyen de représenter une image fidèlement à l'écran avec " une couleur " de plus en plus blanche que l'intensité reçue aura été importante.
Lorsqu'une image est affichée à l'écran, un pixel
de l'écran représente un pixel de l'image. La taille de l'écran est
défini à partir du menu " Affichage '" de Windows. Une image
très grande peut, suivant la défintion, ne pas rentrer entièrement
dans l'écran. Des barres de défilement horizontale et/ou verticale
seront alors proposées pour circuler sur l'image.
Il est à noter que les pixels de l'écran étant carrés, la
représentation d'une image obtenue à partir d'un capteur aux pixels
rectangulaires ne sera pas exacte. Il faudra alors utiliser le menu
"Transformation / Homothétie" pour agrandir ou diminuer
physiquement les pixels du capteur dans le rapport des cotés des
pixels du capteur.
La représentation Noir et Blanc :
La façon la plus simple de représenter une image est de l'afficher en Noir et blanc ( ou monochrome ) c'est-à-dire la représenter suivant différents niveaux de gris. PRiSM affiche les images monochromes ( Black and White en anglais ) suivant 256 niveaux ce qui est largement suffisant pour afficher une telle image, l'œil ne distinguant plus ensuite les niveaux supplémentaires!
Afin de représenter naturellement une image, on
utilise la technique suivante :
Les pixels qui ont des valeurs importantes en intensités sont ceux
qui ont reçu le plus de lumière. On les représente alors par des
pixels de " niveaux de gris " qui se rapproche d'autant plus du
blanc que l'intensité est importante. A l'inverse, plus l'intensité
du pixel est faible, moins il a reçu de lumière, et plus sa
représentation à l'écran sera noire.
Cependant, il ne faut pas oublier que les images astronomique du
ciel profond ont des pixels " intéressant " que sur une plage de
luminosité très faible. On défini alors deux paramètres importants
de la représentation :
On échelonne ensuite les 256
niveaux de gris entre ces deux seuils. Cet échelonnage se fait
suivant une table de transcodage encore appelée LUT ( Look Up
Table en anglais ). Comme le lecteur l'a compris maintenant,
cette LUT va servir à établir une correspondance entre la valeur de
l'intensité d'un pixel et sa représentation à l'écran.
Cette LUT peut être représentée sous forme linéaire ou sous une
tout autre forme comme logarithmique ou en dent de scie.
Afin de mieux comprendre la signification d ela
table de transcodage, prenons un exemple simple :
Considérons une représentation codées sur 8 bits ( 256 niveaux en
ADU ). Supposons que l'on ait à notre disposition 8 niveaux de gris
( 3 bits ) régulièrement échelonnés du noir vers le blanc :
Considérons une partie d'une image. On donne les valeurs en ADU des pixels ( que l'on obtient facilement avec le menu " Prétraitements / Voisinages " ), c'est-à-dire ce le programme retient de l'image en mémoire.
10 | 20 | 10 | 56 | 125 | 10 | 12 |
23 | 45 | 23 | 45 | 120 | 45 | 11 |
45 | 89 | 69 | 96 | 96 | 23 | 16 |
89 | 250 | 56 | 125 | 110 | 50 | 15 |
45 | 89 | 89 | 80 | 120 | 56 | 10 |
12 | 50 | 60 | 50 | 23 | 25 | 11 |
12 | 11 | 10 | 12 | 11 | 10 | 12 |
En considérant une LUT purement linéaire de 0 ADU à 255 ADU, on aurait 32 pas codeurs ( ADU ) entre chaque niveaux ( = 256 / 8 ) :
entre 0 ADU et 31 ADU : | |
entre 32 ADU et 63 ADU : | |
entre 64 ADU et 95 ADU : | |
entre 96 ADU et 127 ADU : | |
entre 128 ADU et 159 ADU : | |
entre 160 ADU et 191 ADU : | |
entre 192 ADU et 223 ADU : | |
entre 224 ADU et 255 ADU : |
Ce qui se traduirait par la courbe suivante :
En ordonnée, on a tracé les différents niveaux ( du noir au blanc ) et en abscisse, on recontre les différentes intensités représentées en mémoire par un nombre sur 8 bits ( de 0 à 256 ). L'image a alors l'apparence suivante et les détails dans l'objet ressortent peu; seule l'étoile apparaît surplombant le reste ...
Cependant, on voit en regardant l'extrait d'image
que l'information sur l'objet a lieu entre 45 ADU et 125 ADU. Il
faut donc faire apparaître un dégradé maximum sur les informations
qui nous intéresse ! L'utilité des seuils bas et haut apparaîssent
ici; suivant la définition des seuils, tous les pixels qui auront
une intensité en ADU inférieure à celle du seuil bas seront tous à
la même couleur, c'est-à-dire dans le cas d'une représentation noir
et blanc positive seront tous en noir. De même, tous les pixels qui
auront une intensité en ADU supérieure au seuil haut seront
représenté en blanc. On disposera maintenant toujours de 8 niveaux
de gris mais à échelonner, ici linéairement, entre le seuil bas et
le seuil haut ! Des détails apparaîtront alors visuellement, ce qui
n'était pas le cas pour un échantillonnage purement linéaire !
La LUT a alors l'apparence suivante :
Si on fixe le seuil bas à 44 et le seuil haut à 124, on obtient la LUT précise suivante :
entre 0 ADU et 44 ADU : | |
entre 45 ADU et 56 ADU : | |
entre 57 ADU et 69 ADU : | |
entre 70 ADU et 83 ADU : | |
entre 84 ADU et 96 ADU : | |
entre 97 ADU et 109 ADU : | |
entre 111 ADU et 123 ADU : | |
entre 124 ADU et 255 ADU : |
En effet, on doit loger 6 niveaux de gris entre
les seuils bas et haut ( du niveau 2 à 7 , le niveau 1 étant le
noir en-dessous du seuil bas et le niveau 8 étant le blanc
au-dessus du seuil haut ) ... soit loger 6 niveaux dans 80 ADU. Le
niveau 2 commencera donc au "seuil_bas+1" ADU et le niveau 7 se
terminera au seuil "seuil_haut-1" soit un niveau tous les 80/6 =
13,3 ADU. Mais comme on raisonne ici sur des images codées en
valeurs entières ( on peut les transformer en réels ... ), on prend
la valeur entière de ce que l'on obtient; la relation générale est
:
seuil_mini du niveau N = seuil_bas + Partie_Entiere ( [
(seuil_haut - seuil_bas ) / ( N - 2 ) ] * ( N - 1 ) ). ( en
commençant au niveau 1 ). [ (seuil_haut - seuil_bas ) / ( N - 2 ) ]
représente le nombre d'ADU entre chaque niveau.
De même, on obtient une relation du même style pour le seuil_maxi.
De toute façon, seuil_maxi( N ) = seuil_mini ( N + 1 ).
D'où l'image suivante beaucoup plus contrastée que précédemment ( révellant même des détails insoupsonnés ! ):
Le lecteur peut s'amuser à faire des essais sur des images pour mieux comprendre; en voici un exemple concret :
Les autres LUT classiques :
LUT négative :
Par définition, une LUT négative est l'inverse d'une LUT positive
... Prenons le cas d'une LUT linéaire avec un seuil bas et un seuil
haut. On connaît déjà la forme de la LUT :
Lorsqu'on prend la forme négative; on obtient la LUT suivante :
Les seuils bas et haut sont intervertis. Ensuite,
il suffit de tracer une droite entre les deux points correspondant
du graphe. Tous les pixels qui auront une intensité inférieure au
seuil bas seront représentés en blanc et tous ceux qui auront une
intensité supérieure au seuil haut seront représenté en noir. Entre
les deux, les niveaux se succéderont de façon inverse à la LUT
linéaire positive :
Cette LUT trouve son utilité dans l'observation d'objet très faible
qui se distinguent à peine du fond de ciel ( il est plus facile
pour l'oeil de repérer un niveau un peu foncé sur du blanc que de
repérer, par exemple, du gris foncé sur du noir ! ).
Cette LUT revient finalement, si on rapproche beaucoup les dents de scie à tracer une image en isophote ...
La LUT logarithmique a la forme suivante :
Comme on peut le voir, elle sert à accentuer les faibles amplitudes d'intensité ( objet ressortant à peine du fond de ciel ) et par contre diminue les différences d'amplitude pour les fortes intensités. Ceci permet de mettre en évidence des détails dans les bras spiraux de galaxies par exemple.
Il n'est pas prévu de tracer une LUT logarithmique sous PRiSM. Cependant, il existe toutes les fonctions pour y arriver. Il suffit de prendre conscience que la LUT logarithmique est la réunion d'une transformation physique logarithmique d'une image et d'une LUT linéaire. la transformation physique logarithmique s'atteind à partir du menu "Traitement / Logarithme". Par contre, il faut prendre soin de ne pas sauvegarder l'image à sa sortie si on ne veut pas qu'elle soit irrémédiablement modifiée.
On verra par la suite que PRiSM permet de créer les LUT que l'on désire ...
Réglage automatique des seuils dans PRiSM
:
PRiSM peut régler seul automatiquement les seuils bas et haut des
images. Suivant les images la technique est différentes :
La représentation d'une image couleur :
Il faut distinguer les " vraies " images couleurs
et les images monochromes affichées en fausses couleurs pour faire
ressortir certains détails par rapport à d'autres.
Avec PRiSM, il est possible d'utiliser ces deux possiblilités.
Pour les images en " fausses " couleurs, on définit de meêm une LUT et on verra comment réaliser ceci dans la partie suivante ( certains utilisateurs auront déjà remarqué que certaines LUT en fausses couleurs étaitent déjà prédéfinies mais la liste n'est nullement exhaustive ).
Une image en " vraies " couleurs est une
image dite trichrome c'est-à-dire, à la base, une réunion de trois
images R, V et B.
Le réglage de la LUT se fait de façon identique à une image
monochrome à la différence qu'il faut alors régler séparemment les
LUT pour chacune des couleurs R, V et B. PRiSM gère ceci
parfaitement et il est conseillé de se reporter à la partie
concernée.