Aller au contenu
jeff

[retina] Développement d'un logiciel de traitement astro

Messages recommandés

Bonjour les amis,

Voila quelques mois que je ne me suis plus exprimé sur le forum, mais je ne suis pas mort :-p Un emploi du temps serré (jeune papa depuis 4 mois), changement de boulot, bref de bonnes excuses ^^ (et un télescope que j'ai acheté il y a plus d'un an et qui ne m'a toujours pas été livré...c'est une longue histoire (arnaque?) que je raconterai dans un autre post).

L'année dernière j'avais tripatouillé un peu IRIS avec des images que m'avait donné frédo, et je n'ai pas trouvé l'équivalent en opensource et multi-plateforme. J'aimerai bidouiller un truc équivalent (enfin, au moins essayer), et après quelques essais et recherches je pense avoir une base technique fiable pour faire quelque chose d'intéressant (entièrement scriptable en python). Le coté programmation de devrait pas me poser de problèmes, mais comme je n'ai aucune expérience de traitement d'images astro, j'aimerai savoir si ça intéresserait quelqu'un de définir les fonctionnalités / interfaces / outils utiles aux astrophotographes. J'ai déjà bien en tête une architecture, mais je ne sais pas si elle correspond vraiment aux besoins.

Pour l'instant j'ai un prototype qui ne fait pas grand chose (charger/afficher une image fits), mais il ne demande qu'à grandir :p Voici un screenshot : http://dl.dropbox.com/u/3042900/retina_img.png

Partager ce message


Lien à poster
Partager sur d’autres sites

Perso je suis partant,


Le gros souci de tous le soft astro c'est leur manque d'ergonomie. tous sauf un, mais il ne fait que le prétraitement c'est DSS.

a mon avis la fonction qui manque le plus dans tous les logiciel d'astro : c'est une fonction de visionnage des fichiers fit sous forme de vignette pour pouvoir le trier / renommer / classer

AUCUN ne le propose alors qu'a mon avis c'est fondamental.

L'idée est que ça pourrai ressembler à ce que fait bridge mais pour les fits

<IMGUR id="o7pxK"><a href=http://i.imgur.com/o7pxK.png' alt='IMGUR>'>


Ensuite, ben tu peux t'inspirer de DSS pour le prétraitement et enfin d'iris pour le traitement tout court.....


Je peux t'aider autant que je le pourrais même si j'ai pas de connaissance en programmation, l'ergonomie et design ça me connait.

Tu pourrais même appeler ton soft AVEX (genre Astronomical Valuable Experiment eXperience - je dis n'importe quoi ^^ )

Enfin bref, si tu te lances, je te suis avec armes et bagages ! :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui DDS est ergonomique mais c est vraiment parfait pour ne rien comprendre à ce que tu fais à tes images.


Pour le reste Jeff, je suis ok pour t'aider avec mes maigres competences.

Partager ce message


Lien à poster
Partager sur d’autres sites

Chouette !

Deja pour simplifier les choses, je ne compte utiliser que des images fits dans le logiciel : est-ce que ça pose problème ? Les autres formats ne seraient qu'un import/export (via imagemagick - qui peut convetir les formats raw des apn). Est-ce un bon choix ?

La première étape pour moi est de définir grosso-modo le fonctionnement global, pour ne pas rater un truc. L'idée est de tout pouvoir faire en ligne de commande (comme IRIS qui permet la même chose si j'ai bien compris), et de coller une interface graphique sympa par dessus. Pour ce qui est de la ligne de commande, j'embarque tout le langage python directement dans le logiciel : je pense que ça dépasse de loin les possibilités offertes par les scripts IRIS. Pour l'interface j'utilise QT : c'est un toolkit moderne et multiplateforme, dont tu peux voir la liste des widgets ici : http://qt-project.org/doc/qt-4.8/gallery-windowsxp.html


Ensuite, à partir de ce fonctionnement je dois créer un "modèle" ; la description des "choses" qu'on peut créer et modifier dans le logiciel. A ce sujet j'ai deux questions :

-Dans le format FITS, en plus des images, il y a toute une flopée de champs optionnels (coordonnées, dates, etc, etc). Est-ce qu'ils sont utilisés par les astrophotographes ? Doit-on pouvoir les modifier/utiliser ?

-Toujours dans ce format, on peut embarquer plus d'une image dans un fichier : est-ce utilisé ? utile ?

-Le "modèle" que je comptais utiliser est à priori une simple liste d'images. Tous le boulot du logiciel étant de traiter cette liste d'images (opérations individuelles, ou impliquant plusieurs images). A priori tu me dis qu'il y a besoin d'un système de classement : est-ce qu'un une arborescence (avec hiérarchie, catégorie, etc...) serait plus judicieuse qu'une liste ?

-A part les images, y a t'il d autres choses à gérer ? Un des trucs qui me vient à l'esprit est par exemple la sélection de zones pour certains traitements, ou des fichier qui viendraient des montures/setup (coordonnées de centre de l'image, etc) ?


Ça tombe bien que ça soit la fonction de visionnage qui manque le plus, le chargement des images est le premier truc à programmer :) Si je comprends bien, tu voudrais une fenêtre qui charge toutes les vignettes d'un répertoire, que tu puisses ensuite classer par drag&drop dans une arborescence ?


Pour le nom, j'avais pensé a Retina (original par rapport à IRIS -taré- ), mais ça peut être autre chose oui ^^ Mais, avant de le baptiser, il faut d'abord qu'il fasse quelque chose :)


Enfin, j'ai toutes les docs d'IRIS sous la main, est ce que quelqu'un aurait les docs PixInsight ? J'aimerai savoir de quoi est capable ce logiciel et comment il fonctionne - j'ai regardé quelques vidéos et ça a l'air sympa non ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Spoutnick, toutes les compétences sont bienvenues :-) Tu maîtrises python ? De mon coté, je découvre, suis plutôt expérimenté en C++ ; j'avais commencé un prototype en C++/Qt/OpenCV (http://opencv.willowgarage.com/wiki/), mais j'ai laissé tombé devant la complexité à embarquer un interpréteur python et à le faire interagir avec OpenCV (dont la complexité du format d'image dépasse l'entendement) ^^

Je peux ouvrir un repository privé SVN si on veut bidouiller dans le code à plusieurs 8/ Mais vu que la je n'en suis qu'aux balbutiements, je ne sais pas si c'est déjà utile.

J'ai également téléchargé pas mal de bouquins expliquant les algos de traitement d'image ; je peux les partager s'il y a des intéressés 8/

Partager ce message


Lien à poster
Partager sur d’autres sites

perso je te repond plus en details qd je serais au bureau, mais perso je n'ai quasi aucune expérience en programmation, je ne te serai pas d'un grand secours sur ce sujet, remarque ça peut etre aussi l'occasion de se lancer !!!

Partager ce message


Lien à poster
Partager sur d’autres sites

Cela doit bien faire 10 ans que je n'ai plus fait de dev. Je dois quand même pouvoir donner un coup de main en C.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonne initiative car je partage l'avis de Frédo et spoutnick sur le fait que TOUS les logiciels de traitement astro sont des usines à gaz. Mon préféré Pixinsight en 1er d'ailleurs. Aussi, un visualisateur et classeur de documents FIT (en autres) serait TRES TRES utile.


Hélas je ne programme pas, je ne pourrai pas trop vous aider. :

Partager ce message


Lien à poster
Partager sur d’autres sites

Projet très intéressant mais malheureusement je n'ai pas suffisamment de connaissances en programmation pour t'aider.

Mais je peux peut-être être utile pour autre chose : beta test, ergonomie, ...

Partager ce message


Lien à poster
Partager sur d’autres sites
Chouette !

Deja pour simplifier les choses, je ne compte utiliser que des images fits dans le logiciel : est-ce que ça pose problème ? Les autres formats ne seraient qu'un import/export (via imagemagick - qui peut convetir les formats raw des apn). Est-ce un bon choix ?

je ne sais pas si c'est un bon choix : limiter les entrée c'est a mon avi d'utilisateur, _ limiter l'ergonomie

tu devrai au moin pouvoir supporter en natif le TIF sous toute ses formes y compris compréssée, le PNG et pourquoi pas le PSD, le BMP et comme tu le souligne surtout le RAW, mais je serai toi je passerai par le open Raw, plus dynamique http://www.openraw.org/

 

La première étape pour moi est de définir grosso-modo le fonctionnement global, pour ne pas rater un truc. L'idée est de tout pouvoir faire en ligne de commande (comme IRIS qui permet la même chose si j'ai bien compris), et de coller une interface graphique sympa par dessus. Pour ce qui est de la ligne de commande, j'embarque tout le langage python directement dans le logiciel : je pense que ça dépasse de loin les possibilités offertes par les scripts IRIS.

bon simplement il faut faire trois chose

prétraiter, ( aussi bien voir mieu que DSS )

traiter un peut comme pixinsight, en plus ergonomique (pas difficile pour le coup)

ajuster, genre photoshop ou pixinsight, gestion des courbes, niveaux etc.


Tres important il faut que ton soft accepte d'entrée de jeux les formats 32 et 64 bits / couches !!!!!

Pour l'interface j'utilise QT : c'est un toolkit moderne et multiplateforme, dont tu peux voir la liste des widgets ici : http://qt-project.org/doc/qt-4.8/gallery-windowsxp.html


Ensuite, à partir de ce fonctionnement je dois créer un "modèle" ; la description des "choses" qu'on peut créer et modifier dans le logiciel. A ce sujet j'ai deux questions :

-Dans le format FITS, en plus des images, il y a toute une flopée de champs optionnels (coordonnées, dates, etc, etc). Est-ce qu'ils sont utilisés par les astrophotographes ? Doit-on pouvoir les modifier/utiliser ?

Oui, absolument, notamment parsqu'il y a les temps d’intégration (utile pour organiser les prétraitements par exemple ), les temperature de shoot les filtres utilisé, : d'ailleur si ton soft pouvais essayer de faire un prégroupement des images par types (dark, offset, flat)

-Toujours dans ce format, on peut embarquer plus d'une image dans un fichier : est-ce utilisé ? utile ?

 

oui car les fit couleur son composé ainsi il me semble , en outre comme toujours, il est préférable de voir large dés le departs ça facilite les évolutions ultérieures...

-Le "modèle" que je comptais utiliser est à priori une simple liste d'images. Tous le boulot du logiciel étant de traiter cette liste d'images (opérations individuelles, ou impliquant plusieurs images). A priori tu me dis qu'il y a besoin d'un système de classement : est-ce qu'un une arborescence (avec hiérarchie, catégorie, etc...) serait plus judicieuse qu'une liste ?

c'est carrement pas idiot !!! créer une sorte d'arbres du pretraitement jusqu'au traitement sous forme de noeud plus ou moin interactifs selon la criticité de l'opération, ce qui permettrai de traitements non linéaire donc extraordinairement souple

1146215745.png

-A part les images, y a t'il d autres choses à gérer ? Un des trucs qui me vient à l'esprit est par exemple la sélection de zones pour certains traitements, ou des fichier qui viendraient des montures/setup (coordonnées de centre de l'image, etc) ?

en voila une idée qu'elle bonne, des option de photométrie et de reconnaissance des champs pour les faire correspondre au catalogues d'etoiles par exemple, si on est capable de lire l'heure de création du fichier on serai grace a une sorte de Pinpoint a la maximdl de repère automatiquement les astéroïdes, planétéssimaux ou comètes éventuelles dans le champs !!

 

Ça tombe bien que ça soit la fonction de visionnage qui manque le plus, le chargement des images est le premier truc à programmer :) Si je comprends bien, tu voudrais une fenêtre qui charge toutes les vignettes d'un répertoire, que tu puisses ensuite classer par drag&drop dans une arborescence ?

par exemple, et poruqoi pas si ton soft est en mesure de le faire scanner automatiquement un répertoire pour trouver les images, les dark flat offset les filtres et éventuellement les température puis de proposer un classement, histoire d'etre rapide

mais effectivement un simple visionnage des vignettes fit et la possibilité de les renommer par lot sera déjà formidable

quand on survolerai tel ou tel vignette il faudrait un encart qui affiche les metadata de l'image fit...

Pour le nom, j'avais pensé a Retina (original par rapport à IRIS -taré- ), mais ça peut être autre chose oui ^^ Mais, avant de le baptiser, il faut d'abord qu'il fasse quelque chose :)

certes certes !!

Enfin, j'ai toutes les docs d'IRIS sous la main, est ce que quelqu'un aurait les docs PixInsight ? J'aimerai savoir de quoi est capable ce logiciel et comment il fonctionne - j'ai regardé quelques vidéos et ça a l'air sympa non ?

oui il est puissants, mais comme tout les soft d'astro, linéaire....

y'a que photoshop qui commence a se sortir de la....

Partager ce message


Lien à poster
Partager sur d’autres sites

oui il est puissants, mais comme tout les soft d'astro, linéaire....

y'a que photoshop qui commence a se sortir de la....

 

Que veux-tu dire par linéaire ?

Car Pixinsight travaille aussi bien en linéaire qu'en "dynamique compressée". C'est juste un choix de fonctions à utiliser (certaines sont dédiées aux images linéaires, d'autres aux images "stretched" et d'autres aux 2 modes)


Que fait Photoshop dans ce sens ?

Partager ce message


Lien à poster
Partager sur d’autres sites

non je parle pas de la dynamique des images, mais du traitement, ou les opérations sont faites les une derrière les autres, ou l'on ne peut pas dynamiquement supprimer une opération de la chaîne de traitement sans avoir à refaire tout ce qui a suivi... 8/

Partager ce message


Lien à poster
Partager sur d’autres sites

oui, c'est vrai. Tu as tout à fait raison.


Mais vu les traitements spéciaux qu'on utilise en astro, je ne vois pas comment on pourrait éliminer une étape sans toucher au reste. Surtout que le traitement N+1 dépend du traitement N qui lui dépend du N-1...


Par contre on peut tout garder sous PI et sauver tout l'environnement de travail avec les fichiers temporaires inclus et aussi les traitements intermédiaires (tu peux refaire un "UNDO" 2 jours apres comme si tu venais de le faire.

Partager ce message


Lien à poster
Partager sur d’autres sites

je crois qu'on s'inspirer de l'historique dynamique de photoshop, c'est assez consommateur en ram + espace disque, mais c'est tellement souple ;]

Partager ce message


Lien à poster
Partager sur d’autres sites

Je trouve ce projet très excitant, et potentiellement très structurant pour le club.

Mais comme c'est avant tout ton bébé, je pense que le nom et les choix techniques doivent te revenir.


N'ayant aucune compétence dans l'un ou l'autre des domaines abordés, je me conterai de regarder grandir le bébé... 8/ (dit autrement, pour l'accouchement, tu te démerdes, je ne peux rien pour toi ! ;) )

Partager ce message


Lien à poster
Partager sur d’autres sites

je ne sais pas si c'est un bon choix : limiter les entrée c'est a mon avi d'utilisateur, _ limiter l'ergonomie

tu devrai au moin pouvoir supporter en natif le TIF sous toute ses formes y compris compréssée, le PNG et pourquoi pas le PSD, le BMP et comme tu le souligne surtout le RAW, mais je serai toi je passerai par le open Raw, plus dynamique http://www.openraw.org/

 

L'idée c'est que tout le traitement interne soit en FITS ; pour l'utilisateur ça ne change pas changer chose s'il peut importer un RAW qui est automatiquement converti en FITS via imagemagick ?

 

bon simplement il faut faire trois chose

prétraiter, ( aussi bien voir mieu que DSS )

traiter un peut comme pixinsight, en plus ergonomique (pas difficile pour le coup)

ajuster, genre photoshop ou pixinsight, gestion des courbes, niveaux etc.

 

D'un point de vue conceptuel, prétraiter, traiter, et ajuster...c'est un peu la même chose fonctionnellement non ? J'entends par la prendre des images, leur appliquer des opérations, et avoir d'autres images en sortie ? Ou il s'agit de phases vraiment différentes qui nécessitent des approches distinctes dans une interface ?

 

Tres important il faut que ton soft accepte d'entrée de jeux les formats 32 et 64 bits / couches !!!!!

 

C'est supporté dans le format FITS, donc si on fait tous les traitements dans ce format, pas de soucis 8/

 

-Dans le format FITS, en plus des images, il y a toute une flopée de champs optionnels (coordonnées, dates, etc, etc). Est-ce qu'ils sont utilisés par les astrophotographes ? Doit-on pouvoir les modifier/utiliser ?

Oui, absolument, notamment parsqu'il y a les temps d’intégration (utile pour organiser les prétraitements par exemple ), les temperature de shoot les filtres utilisé, : d'ailleur si ton soft pouvais essayer de faire un prégroupement des images par types (dark, offset, flat)

 

Ok pour les champs optionnels. Par contre comment faire un prégroupement par type de manière automatique ? Vos caméras CCD indiquent quelque part dans le fichier que c'est un dark/offset/flat ?

 

-Toujours dans ce format, on peut embarquer plus d'une image dans un fichier : est-ce utilisé ? utile ?

oui car les fit couleur son composé ainsi il me semble , en outre comme toujours, il est préférable de voir large dés le departs ça facilite les évolutions ultérieures...

 

Tu peux m'envoyer une image FITS couleur ? Je croyais que vos CCD étaient touts N&B ^^

 

par exemple, et poruqoi pas si ton soft est en mesure de le faire scanner automatiquement un répertoire pour trouver les images, les dark flat offset les filtres et éventuellement les température puis de proposer un classement, histoire d'etre rapide

mais effectivement un simple visionnage des vignettes fit et la possibilité de les renommer par lot sera déjà formidable

quand on survolerai tel ou tel vignette il faudrait un encart qui affiche les metadata de l'image fit...

 

Scanner un répertoire et afficher des vignettes avec metadata, pas de soucis, comment souhaites-tu automatiser le classement ?


Sinon pour la structure en arbre, il faudra qu'on en parle de vive voix ; ca implique tellement de choses (héritage de propriétés, traitement sur des lots, etc...) que c'est compliqué de brainstormer ici ^^

Pour ce qui est des idées d'ergonomie, et d'interface, toutes les idées sont bienvenues, je pourrai vous parler de ma petite idée vendredi, mais il y a certainement mieux à faire.


Enfin, est ce que quelqu'un utilise/connait PyRAF (http://www.stsci.edu/institute/software_hardware/pyraf) ? Je viens de passer ma matinée à l'embarquer dans le terminal de l'application, et il est d'ores et déjà possible de l'utiliser toutes les fonctions depuis la ligne de commande.

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai essayé de 'packager' cet embryon d'application dans un seul fichier exécutable (bien gros pour l'occasion)https://www.wuala.com/jromang/Partage/?key=1McFhUXLHykJ ; si quelqu'un est volontaire pour le télécharger et le tester sur son sytème (pour vérifier que ca fonctionne sans les centaines de dll que j'ai chez moi), je suis preneur d'un retour !

Ca prend du temps à se lancer, c'est normal :p

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité

Je regarde ca des que je serai a la maison....

Partager ce message


Lien à poster
Partager sur d’autres sites

alors j'ai téléchargé et essayé....

la première chose que j'ai fait, c'est d'essayé de charger un image.. les deux première ont échoué mais la troisième a marché. il faut que je regarde ce qui les distingue

le tableau indicateur de déroulement de script s'anime parfois tout seul... on se sait pas pourquoi...... lol

de ce que j'ai compris pour l'instant on ne peut pour ainsi dire que ouvrir des images seule ?


enfin pour etre tout a fait honnête je ne comprend presque rien....

tien puisque j'ai rien a foutre , je m'y recolle

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui, on ne peut faire qu'ouvrir une image (et seulement certaines) ; mais le test est concluant si ca se lance :) Tu remarqueras que l'archive est super-volumineuse, et pour cause, des dizaines de fonctions sont déjà dans le programme (accessibles par le shell). Je suis tombé hier sur une librairie qui semble faire beaucoup de choses utiles pour le traitement des images : http://www.aspylib.com/

Egalement, j'ai embarqué multidrizzle (http://www.stsci.edu/hst/HST_overview/documents/multidrizzle/multidrizzle.pdf) ; mais c'est un peu mettre la charrue avant les boeufs. Dans l'immédiat, j'aurai surtout besoin de savoir à quoi de ressembler le chargement (avec des vignettes), le classement (automatique?), et l'arbre d'images dont nous parlions plus haut. Il y aura de quoi discuter ce soir :D

Partager ce message


Lien à poster
Partager sur d’autres sites

Si tu pouvais me faire un petit pack d'images fits variées (surtout celles qui ne se chargent pas), ça pourra m'aider pour la suite :)

Partager ce message


Lien à poster
Partager sur d’autres sites

ok.. mais la pour ce soir ça va etre cours...

idealement il faudrait un tableau

des vignette a gauches puis avec plusieurs colonnes

la première colone : durée exposition

seconde colone type (dark flat images offset)

3e , filtre

4e température

5e le nom actuelle du fichier

6 une vignette recdarée a 100% du centre de l'image ;)

j'essaye de te faire une simu

Partager ce message


Lien à poster
Partager sur d’autres sites

Après la brève discussion lors de la dernière réunion et le concept de frédo, voici ce que ca donne avec les fonctionnalités du moment : "En cliquant sur un répertoire à gauche, les vignettes s'affichent à droite" -taré-

screen001.png


Et j'ai déjà des questions : l'affichage des flat/dark n'est pas probant ; pour l'instant j'ai mis une échelle de gris (comme frédo me l'a envoyé dans son concept). Je peux utiliser très facilement les colormaps suivantes :

colormaps3.png


Dois-je conserver le gris ? Mettre une autre colormap ? Mettre une combobox avec des choix ?

Pour ceux qui veulent télécharger, c'est toujours sur : https://www.wuala.com/jromang/Partage/?key=1McFhUXLHykJ

Partager ce message


Lien à poster
Partager sur d’autres sites

va pour l'echel de gris, mais a la limite propose en option

1 une échelle de couleur parmi un choix possible

2 et / ou des niveaux de visualisation automatique

le but etant que le user ne se fasse pas imposer des choix !


sinon bien joué pour ton interface de visu ! ça ressemble à qques chose, ça commence à a voir une jolie gueule

simple suggestion : sur les courriel que je t'ai envoyé la disposition était en ligne : est ce que tu pense que l'on pourrais faire une bascule entre un affichage en ligne / mosaïque ?


autre chose, est ce que tu as put voir si tu pouvais recuperer les metadata pour les afficher dans la colone ???

Partager ce message


Lien à poster
Partager sur d’autres sites

Je vais essayer de mettre en oeuvre une combobox pour le choix des couleurs. En revanche, j'avais pensé au seuils manuels mais il y a un problème de taille : si je fixe un seuil unique pour toutes les images du répertoire, ça n'a pas vraiment de sens non ?

Je peux faire une mosaique (mais c'est un peu plus compliué :D:P - possible de faire ça dans un deuxième temps ?) ; et dans ce cas ou s'affichent toutes les infos (que je n'ai pas encore mises) que tu m'as demandées dans les colonnes ?

Au sujet de ces données il y en a ou j'ai des doutes :

concept.png

parafits.PNG


Le champ 'filtre' correspond bien au champ 'filter' du fichier FITS ? (à quoi correspond la valeur 'clair' dans ton schema?)

Je n'arrive pas à lire le nom du champ au dessus de '600s'

A quoi correspond le champs etiquette/binx1 ? Ou est-il dans le fits ?

Meme question pour le champs 'mots clés' 8/


Enfin, au niveau du design, je me suis insipré de ce que tu m'as envoyé, en effet c'est plus joli en sombre 8/

Partager ce message


Lien à poster
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.


  • En ligne récemment   0 membre est en ligne

    Aucun utilisateur enregistré regarde cette page.

×
×
  • Créer...

Information importante

Conditions générales