Bonjour à tous,

Je cherche à faire un script permettant de convertir une image FITS que je crée à partir d'un script C (issue d'une caméra CCD) en image compressée et réduite JPEG. J'ai validé le FITS généré par le script C ici donc l'info contenue dans le FITS semble correcte, à mois que...
Avec la librairie matplotlib, j'arrive à afficher l'image (très réduite et dégradée), à en extraire l'histogramme et deux ou trois autres bricoles de tests, donc ce qui veut dire que mon FITS semble exploitable.

Par contre je n'arrive pas à récupérer le tableau de pixels pour en créer un jpeg propre.

Image d'origine extraite du FITS et compressée en JPEG manuellement pour le forum (le flou est juste une absence mise au point pour les essais) :
Nom : ccd_image_brut_ok.jpg
Affichages : 158
Taille : 26,5 Ko

Image générée à l'aide de la librairie matplotlib :
Nom : testplot.png
Affichages : 163
Taille : 93,9 Ko
JPEG générée par mon script python :
Nom : jpeg_python.jpg
Affichages : 153
Taille : 240,9 Ko
Comme si le script ne prenait que 1/4 de l'image en l'étirant aux dimensions d'origine en remplissant les pixels vides par une info tirée des pixels environnants, d'où la dégradation importante.

Voici le dernier extrait de code utilisé, j'ai fait d'autres tentatives mais rendant quasiment le même résultat ou une image totalement noire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
    hdu_list = fits.open(image_file)
    image_data = fits.getdata(image_file)
    width=2056
    height=2062
    pimage = Image.fromarray(image_data.reshape((height,width)),'L')
    pimage.show()
Merci pour votre aide,
Olivier

EDIT :
Résolu grâce à :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
from scipy.misc import imsave
    imsave('test.jpg',image_data)