Projet d'astronomie pour le traitement des images CCD

MalaMala Membre, Modérateur
08:19 modifié dans Vos applications #1
Aller hop, on continue avec une nouvelle avant première.

Faire des images astro sous Mac OS X avec des caméras Starlight c'est bien mais après... ...il faut pouvoir les traiter. :why?:

En astro, on utilise un format un peu spécial nommé FITS. Il permet d'ajouter des infos spécifiques à  l'astro (télescope, focale, temps d'exposition, etc...) et surtout d'encoder les pixels dans une résolution supérieure à  la normale (en général: 16 bits pour le N&B et entre 40 à  64 bit pour les images LRVB couleur).

De plus, en astro on traite généralement tout un lot d'images que l'on vient recentrer et moyenner afin d'obtenir une image brute finale ayant un rapport signal/bruit bien meilleur.

Ayant une idée bien précise du logiciel de mes rêves, j'ai donc décidé de me relever les manches une deuxième fois et j'ai maintenant le plaisir de vous présenter StarLabX (alias SLX)...
SLX.jpg

Le logiciel est relativement différent de ses homologues PC de par son concept. Les softs d'astro ressemblent bien souvent à  des logiciels du genre de photoshop. Le problème c'est que dès que l'on commence à  travailler sur un gros lot d'images (genre 100 ou 200 images brutes) cela peut vite devenir le bazar si toutes les images sont chargées en même temps.
Dans SLX, pas de problème. Le logiciel fonctionne sur le principe d'un diaporama. On peut alors :
- Se balader très rapidement dans le lot d'images.
- Supprimer à  la volée les mauvaises images.
- Lancer des filtres sur l'ensemble des images ou sur une seule.
- Recentrer et moyenner un lot d'images en quelques cliques.
- Appliquer les opérations de prétraitement de base (flat, dark, etc...).
- Etc...

Ici on peut voir un lot d'images lunaires chargé dans SLX...
SLX_Clavius.jpg

Et ici, le résultat du centrage/compositage/filtrage d'un lot de 78 images de Saturne (les images brutes datent un peu)...
SLX_Sat_Coul.jpg

Désolé, ce logiciel ne sera pas disponible pour PC.  :'(

Il me reste encore à  finir quelques développements et à  faire la doc mais cela ne devrait plus être long. :D

Bon ciel,
Mala.

Réponses

  • overmacovermac Membre
    08:19 modifié #2
    Chapeau bas.....

    Juste un truc, tu devrais peut-être remplacer le X bleu de Mac OS X par celui en métal pour être dans la mode. Enfin c'est juste une question de gout.

    Sinon, lorsque je pourrais me mettre à  l'astro, je pourrais utiliser tes softs car ils ont l'air pas mal.

    Encore merci et bon courage pour la suite...
  • MalaMala Membre, Modérateur
    08:19 modifié #3
    Merci overmac.

    Juste un truc, tu devrais peut-être remplacer le X bleu de Mac OS X par celui en métal pour être dans la mode. Enfin c'est juste une question de gout.

    Remarque judicieuse. :o

    Now, I'll surf on the wave... O0
    SLX_2.jpg

    Sinon, lorsque je pourrais me mettre à  l'astro, je pourrais utiliser tes softs car ils ont l'air pas mal.

    Le contraire m'offusquerait.  ;D ;D ;D
  • mpergandmpergand Membre
    08:19 modifié #4
    Moi, j'aime bien le look aqua, qu'Apple semble de plus en plus délaisser, d'ailleurs, au profit d'un look plus Windowsien(pouah !)

    J'aime bien l'interface de tes progs, elle semble bien pensée, originale tout en restant dans les standards  C'est plutôt rare, les programmeurs n'ayant que peu le sens de l'ergonomie, en général.

    Bon, c'est bien beau tout ça, mais ça va nous inciter à  acquérir un téléscope, et tu crois que de mon balcon dans ma banlieue polluée, ça sera bon ??? :D

    Désolé, ce logiciel ne sera pas disponible pour PC

    Trop dommage pour eux :'( ;D

    Encore bravo pour ton travail  ;)
  • Eddy58Eddy58 Membre
    08:19 modifié #5
    Salut Mala ! :)

    Encore du bien beau boulot que ce soft apparemment !

    Juste une question, combien de temps as tu mis pour développer (en gros) StarLightDriver et StarLabX ?
  • MalaMala Membre, Modérateur
    08:19 modifié #6
    Désolé pour le retard.

    Moi, j'aime bien le look aqua, qu'Apple semble de plus en plus délaisser, d'ailleurs, au profit d'un look plus Windowsien(pouah !)

    Oui, je me suis aussi fait la même réflexion.

    J'aime bien l'interface de tes progs, elle semble bien pensée, originale tout en restant dans les standards.
    Alors c'est que je me suis pas trop loupé en tant que designer en herbe. ;)
    Si j'avais pas fait programmeur, je pense que j'aurais adoré faire des études de design.

    C'est d'ailleurs un des trucs qui m'a scotché quand j'ai découvert OS X: c'est beau et bien pensé!!!

    Avec tout ça, j'en arrive même à  me prendre pour un artiste (là  si je me fais pas rire au nez par la légion de graphistes qui existe sur Mac, j'aurais de la chance  o:) )...
    www.poisson-lune.com/pages/astro/pages_francais/divertissement.html
     
    C'est plutôt rare, les programmeurs n'ayant que peu le sens de l'ergonomie, en général.

    Il est vrai que les programmeurs vont bien souvent au plus simple (pour eux). Pour moi, essayer de concevoir une interface conviviale et agréable c'est un peu la cerise sur le gateau. J'aime qu'un logiciel me fasse rêver et me donne envie de l'utiliser. Mais cela a bien sûr un coup indéniable en terme de temps de conception.

    Bon, c'est bien beau tout ça, mais ça va nous inciter à  acquérir un téléscope, et tu crois que de mon balcon dans ma banlieue polluée, ça sera bon

    Pour le ciel profond ce sera pas top, par contre pour le planétaire et le lunaire cela ne gène pas. Contre toute attente, les villes polluées sont même réputées pour avoir un ciel plus stable que les cieux de campagne.

    Trop dommage pour eu

    Je voulais tout de même le spécifier car on m'a poser la question pour SLDriver hors forum. ;)

    Juste une question, combien de temps as tu mis pour développer (en gros) StarLightDriver et StarLabX ?

    En tenant compte de la phase de réflexion et de la doc, je dirais grosso-modo 3 semaines à  temps plein pour SLDriver et 8 semaines pour StarLabX (SLDriver bénéficie du même noyau d'affichage et de traitement des images FITS).
  • MalaMala Membre, Modérateur
    08:19 modifié #7
    Comme j'ai pris un peu de retard (fin des vacances oblige), j'en profite pour continuer la présentation.

    Chargement des images :

    En astro, les techniques de prises de vues les plus répendues sont le N&B pur et dur, la trichromie (on utilise une caméra N&B avec un jeu de filtres rouge, vert et bleu. On va alors réaliser des séries d'images avec chaque filtre), la quadichromie (c'est un peu le même principe que la trichro sauf que l'on va en plus utiliser une image N&B comme référence pour la luminosité) et l'imagerie couleur directe (le capteur CCD est équipé de micro filtres colorés de type CYMG ou RVB).
    SLX_load.jpg

    SLX permet de reconstruire des images couleurs en fournissant les fonctions de chargement suivantes :
    • Chargement d'images FIT N&B 16bits ou FIT LRVB 40 ou 64 bits (le format FIT LRVB n'est pas très standard à  ma connaissance).
    • Chargement d'une image couleur à  partir de 3 fichiers N&B réalisés avec des filtres rouge, vert et bleus.
    • Chargement d'une image couleur à  partir de 4 fichiers N&B réalisés avec des filtres rouge, vert, bleus et une pose complémentaire pour la luminance.
    • Chargement d'image bitmap classiques (tif, jpg, etc...) pour ceux qui voudraient travailler des images réalisées avec un appareil photo numérique.

    SLX fonctionne pour le moment uniquement avec un moteur quadrichromique. Les images réalisées en trichro sont donc automatiquement converties au chargement.

    Extraction colorimétrique :

    Cette phase sert uniquement pour les caméras couleur. Elle permet, à  partir des images brutes, d'extraire les valeurs colorimétriques de chaque pixel en fonction des filtres disposés sur les  photosites du capteur.
    SLX_CYMG_matrix.jpg

    Pour le moment, je ne fais que le capteur CYMG (filtres à  matrice secondaire de type cyan, jaune, magenta,vert équipant la MX5c et la MX7c) mais je vais ajouter le RVB dès que j'aurais des images brutes de CCD utilisant ce type de filtre.

    Prétraitement :

    Ca c'est un truc assez peu connu en imagerie numérique sauf en astronomie (ou d'autres domaines scientifiques où la précision est de rigueure). En fait, on prétraite les images afin d'obtenir des brutes les plus parfaites possibles. Cela permet entre autre de :
    • Supprimer les pixels " chauds " qui saturent trop vite pendant de longues poses.
    • Limiter voir supprimer les traces de poussières pouvant se déposer sur le capteur CCD.
    • Egaliser la sensibilité des photosites les uns par rapport aux autres.

    SLX_calibration.jpg

    Pour réaliser le prétraitement, il faut disposer de différentes images de référence. Je ne rentrerais pas ici dans le détail mais pour en savoir plus c'est par là ...
    www.poisson-lune.com/pages/astro/pages_francais/pretraitement.html

    Pour la tri et la quadrichromie avec filtres on réalise le prétraitement de chaque composante indépendamment. La recomposition de l'image couleur ne se faisant généralement qu'en fin de compositage des différentes couches.

    La prochaine fois, je présenterais le centrage/compositage des images prétraitées.

    Mala
  • MetjoMetjo Membre
    08:19 modifié #8
    Bonjour,
    Je suis astronome amateur dans les Pyrénées-Orientales et je voudrais faire des photos au foyer d?un Celestron 8 et 11 avec un Canon 300D. L?un de  notre groupe, sur PC, réussit très bien avec le même APN  et?Iris? comme logiciel. Je suis un amateur aussi bien en astronomie qu?en photographie et sur Mac... Il me semble que la réponse à  ma recherche est dans le produit que vous développez et, pour ce que j?ai pu lire sur ce site, me laisse admiratif.
    Est-ce possible?
  • MalaMala Membre, Modérateur
    08:19 modifié #9
    Bonjour Metjo,

    faute de temps, j'ai un peu délaissé StarLabX depuis l'année dernière mais je compte bien m'y remettre. Néanmoins, il n'est pas adapté au traitement d'images APN. En effet, son principe est de charger un lot d'images en mémoire pour le traiter mais les images des APN sont beaucoup plus imposantes que celles des caméra CCD.  B)

    Je me suis moi même équipé d'un Canon cette année (un EOS 20D pour être précis). Avec des images 16 bits de 48Mo, impossible de compositer mes clichés dans de bonnes conditions avec SLX. J'ai donc travaillé sur un logiciel spécialisé pour le traitement des images APN afin de palier ce problème.

    Ce logiciel, nommé DCProcess (Digital Camera Process), est optimisé afin de limiter l'utilisation mémoire et travaille en RVB 8 bits ou 16bits par couche. Il m'a ainsi été possible de compositer sans encombre, avec 512 mo de RAM, plusieurs giga d'images brutes. Voici un aperçu sans prétention des images que j'ai fait cette année avec le Mac et l'APN...
    http://www.poisson-lune.com/astro20d
    Les acquisitions ont été faites avec le logiciel Canon (limitation à  30s de pose max), le compositage avec DCProcess et éventuellement quelques ajustements sous photoshop pour finir.

    DCProcess n'est pas encore achevé mais j'ai mis en fichier joint la version alpha que j'utilise pour le moment.

    Important: Cette version de DCProcess n'est pas encore compatible Tiger du fait de modifications réalisées par Apple sur certaines fonctions de manipulation d'image. Grâce à  mpergand, j'ai maintenant identifié l'origine du problème mais il faut encore que je fasse les modifications adéquates quand j'aurais un peu de temps.

    Le principe de DCProcess est assez simple:
    Lors du lancement, on accède à  la fenêtre principale qui permet de créer un projet, d'ajouter des images (Tiger permettra de charger directement des images RAW mais j'ai constaté que le logiciel canon fournit des images moins bruitées lorsqu'on fait une conversion RAW=> TIFF 48 bits)au lot à  traiter et de choisirs ses images de prétraitement si il y en a...
    dcp_main_window.jpg
    La capture d'écran ci-dessus n'est pas tout à  fait à  jour mais cela donne une idée.
    Une fois les images chargées, il suffit de sélectionner chacune d'entre elle dans le tableau pour qu'elle s'affiche dans la fenêtre. On doit alors choisir une étoile en cliquant dessus. Puis on passe à  l'image suivante et on fait de même. Et ainsi de suite sur toutes les images. Une fois terminé, cliquer sur "Average all" et aller prendre un café s'il y a beaucoup d'images... ;)
    A la fin du traitement, la panel d'ajustement apparait avec l'image finale issue du compositage de toutes nos images...
    dcp_adjust_window.jpg
    On peut alors régler les seuils afin de mettre en valeur la nébuleuse ou la galaxie et sauvegarder le résultat (si l'on modifie les réglages, ne pas oublier de faire "Apply lum and color" avant de sauvegarder afin que l'image soit réellement modifiée car par défaut seule la visualisation est affectée).

    Voilà  pour une présentation rapide.

    DCProcess n'est vraiment qu'au stade alpha et possède encore de nombreuses limitations de jeunesse:
    - Pas compatible Tiger.
    - Lorsqu'on pointe une étoile il n'y a pas encore de fonction "magnétisme" qui affine le clique de l'utilisateur pour bien se centrer pile poil sur le centre de l'étoile.
    - Eviter de charger des images de taille ou de résolution différentes car je n'ai pas encore implémenter de contrôle de compatibilité des données.
    - La sauvegarde d'un projet sauvegarde les chemins absolus des images. Si on les déplace par la suite, cela risque de poser problème voir plantage pour le moment.
    - Et sans doute d'autres petits bugs à  découvrir.


    Mala.



    [Fichier joint supprimé par l'administrateur]
Connectez-vous ou Inscrivez-vous pour répondre.