Création d'un FLAT

La création d'un flat est une moyenne des images flats.

Le programme charge l'offset et les flats bruts.

Pour chaque image, on soustrait l'offset.

Pour des raisons de performance, les images sont toutes chargées en mémoire. Le traitement se fait et le résultat est stocké dans un fichier flat.tiff.

for(count = 0; count < images[0]->bufferSize/2  ; count++)
	{
	  m=0;
	  off = offset.buffer[count*2]+256*offset.buffer[count*2+1];
	  for (j=0;j<i;j++)
	    {
	      v = images[j]->buffer[count*2]+256*images[j]->buffer[count*2+1];
	      v -= off;
	      if (v< 0)
		v = 0;
	      m+=v;
	    }
	  m = m/i;
	  flat.buffer[count*2+1]=m/256;
	  flat.buffer[count*2]=m-flat.buffer[count*2+1]*256;
      	}

Algorithme

L'algorithme est identique à l'offset.

On vérifie que la soustraction de l'offset ne donne pas un pixel négatif.

Création par médiane

La création d'un flat par médiane, ne consiste pas à faire la moyenne des darks bruts mais de prendre la valeur médiane de l'ensemble des valeurs d'un point de l'image.

Voir l'offset

Améliorations à réaliser

Voici des idées d'améliorations de ces algorithmes :

  • Vérifier les tailles des images et la durée d'exposition.
  • Prévoir une moyenne pondérée par les temps d'exposition
  • Vérifier la taille de la variable m pour éviter des débordements de capacité de variable.
  • Le tableau des images est statique et limité à 16. Prévoir une version dynamique de ce tableau.
  • Garder l'offset en mémoire en cas de réutilisation au sein du programme.
 
apa/theorie/flat.txt · Dernière modification: 2008/01/08 17:30 par davidl
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki