cissou8 le février 15, 2020, 05:17:53 17
Edit: y avait 2 bugs, je repartage une mise a jour avec 2-3 améliorations plus bas

Bonjour,

première contribution sur ce forum. Je partage même si ça ne couvre pas le cas général. Mais vu que j'ai écrit ce bout de Python pour me rendre les choses plus pratiques, je me dis que ça pourrait servir à d'autres.
Juste quelques précisions:
- je connais bien sur Sirilic, qui m'a bien aidé à mes débuts. Mais je suis vraiment une feignasse et j'aime quand tout se fait vraiment tout seul ;D. Donc pas de clics pour aller sélectionner et bouger des fichiers, pas de workflow a redéfinir a chaque fois alors qu'on fait toujours pareil etc...
- j'utilise APT comme soft d'acquisition. Et c'est lui qui s'occupe de bien ranger toutes mes photos dans les bons répertoires au cours de l'acquisition. Si ce n'est pas votre cas (avec APT, SGP ou autre), cela ne servira à pas grand-chose. Je vous conseille de vous tourner vers Sirilic qui est parfait pour à la fois générer des scripts ET organiser ses fits avec une arborescence adaptée aux séquences Siril.
- le coté "OSC refroidi" indique que le but est d'utiliser une bibliothèque de (master)darks.
- j'ai commencé avec un DSLR et j'adorais pouvoir lancer le script adapté avant d'aller me coucher grâce a tous les scripts fournis sans rien avoir à copier, sélectionner. Ce bout de python me permet juste de recréer la même chose en créant au besoin un workflow adapté à mon OSC.

Vous aurez besoin de Python (3.x) et du module astropy (doc: https://docs.astropy.org/en/stable/index.html)

Le script python prend en entrée un nom de répertoire (celui où sont stockés les sous-folders Lights/Flats/Bias etc...), et écrit un script .ssf dans le répertoire de votre choix.  Il suffit ensuite d'ouvrir Siril (il faudra avoir défini ce "répertoire de votre choix" comme un des endroits où se trouvent les scripts). Le script est listé avec les autres, il suffit de l’exécuter, pas même besoin de sélectionner le répertoire de travail (une feignasse je vous dis!)

Mais que fait-il exactement?:
- Pour les 3 répertoires Lights/Flats/Biases, il renomme tous les .fit à un format adéquat pour générer automatiquement une séquence. Il sauve dans chaque répertoire un log qui reprend la correspondance entre les anciens noms et les nouveaux.
- il crée un répertoire "result" un cran au-dessus dans l'arborescence pour stocker le résultat.
- il va chercher dans la bibliothèque le masterdark avec la bonne température, durée d'expo, binning et gain.
- il crée un script Siril avec un workflow classique: stack des bias, preprocess des flats avec le masterbias puis stack, preprocess des lights avec le masterdark et le masterflat, registrage et empilement. Pas correction cosmétique mais c'est pas très dur à changer.
- Le résultat sera stocké dans "result" avec le nom de l'objet et la date.

J'ai une arborescence comme suit:
Pictures->Nom de l'objet->Date->Lights/Flats/Biases (c'est ce qu'APT peut générer pour vous si correctement configuré)
Le résultat est stocké dans Pictures->Nom de l'objet->result->Objet_Date.fit

Pour cette première version, c'est un peu fait salement si vous voulez changer des paramètres, c'est au début du fichier:
lights='Lights' #Name of the lights subfolder
biases='Biases' #Name of the biases subfolder
flats='Flats'   #Name of the flats subfolder
darks='../../Libraries/Darks/' #darks library wrt to work folder
scripts=R'C:\SirilScripts' #path to store scripts
ext='fit' #extension of the fits files as saved by imaging software
flip=True #same as GUI option "Debayer fits file in up-bottom direction" (True if checked, False if unchecked)

Le dernier paramètre flip est important pour les utilisateurs d'APT puisque qu'il écrit les fichiers en up-bottom.
Dans une version suivante, tout ça pourrait être passé comme un fichier d'options.

Mes darks sont tous nommés comme çà: darks_G120_-10C_bin1_030s.fit. Je peux rendre le format paramétrable si quelqu'un y voit un intérêt.

Pour une première utilisation, je vous suggère de vous faire un répertoire test vu qu'il renomme les fichiers (c'est pas irréparable hein, vu que les anciens noms sont sauvés dans les logs).

Pour l’exécuter sans même avoir à taper sur le clavier, se faire un petit fichier .bat sur le bureau (Windows) avec cette ligne:
python "Le path où sera sauvé ce script\GenSirilScript.py" %1
On tire le répertoire sur l'icone du .bat et çà se lance tout seul ;)

Voilà, je suis ouverte aux suggestions si vous voyez des améliorations. Après, comme dit, c'est pas fait pour couvrir le cas général. Rien ne vous empêche non plus de l'adapter à vos besoins spécifiques.

Merci de m'avoir lue,

Cécile

« Modifié: février 17, 2020, 12:04:09 00 par cissou8 »

lock042 le février 15, 2020, 10:10:28 22
Merci beaucoup pour le partage !!

Argonothe le février 16, 2020, 08:13:09 08
Bonjour Cécile,

Bravo!!! et merci pour ce partage ;-) Si tu le permets, j'aimerai en parler avec ton accord dans une news sur notre site siril.org.
Je t'envoie en mp mon adresse mail pour que nous puissions échanger.

Bon ciel,

Laurent
Siril, logiciel de traitement d'images astro open-source.
                                                                        

cissou8 le février 17, 2020, 12:21:51 00
Rebonjour,

l'enthousiasme sans doute, j'ai laissé passer des bêtises (grossières :o):
- je n'appelais pas les flats mais les bias dans le preprocess des lights
- le masterdark n’était pas appelé correctement non plus!

C'est corrigé dans la version jointe, avec en plus qqs améliorations:
- le chemin vers la bibliothèque de darks peut être absolu ou relatif (*)
- son existence, ainsi que celui du fichier dark qui va bien, est vérifié avant de commencer a tout renommer
- Un nom générique des fichiers darks est maintenant spécifiable. Il faut donner des clefs de l’entête de FITS (valides hein, c'est vérifié aussi!) et un format, par exemple: 'darks_G[GAIN:d]_[SET-TEMP:d]C_bin[XBINNING:d]_[EXPTIME:03d]s.fit'
- si certains fichiers ont déjà été renommés, ils ne le sont pas à nouveau (ça évite d’écraser le log qui sauve la correspondance avec les vrais noms originaux si on lance une nouvelle fois le bout de python)

(*): petite question aux développeurs: Dans la commande preprocess, je n'arrive pas à passer un chemin vers un dark (ou autre) dans lequel il y aurait un espace. J'ai essayé de les mettre entre cotes, guillemets etc...j'ai pas trouvé.

Bonne nuit a tous,

C.

lock042 le février 17, 2020, 07:33:28 07
Citer
(*): petite question aux développeurs: Dans la commande preprocess, je n'arrive pas à passer un chemin vers un dark (ou autre) dans lequel il y aurait un espace. J'ai essayé de les mettre entre cotes, guillemets etc...j'ai pas trouvé.

Il y a fort a parier que nous n’ayons pas prévu ce cas. Avoir des espaces dans un filename ... beurk ;).

Sinon, dans la version dev de siril, dans les scripts j'ai remplacé biases par bias. Etant donné que c'était une belle faute d'anglais de ma part.

cissou8 le février 17, 2020, 12:19:37 12
Il y a fort a parier que nous n’ayons pas prévu ce cas. Avoir des espaces dans un filename ... beurk ;).
Je suis 100% d'accord! Mais, vivant avec un original qui met des espaces (et des accents ::)!) dans ses noms de fichiers, je me suis dit que, quite a rendre le code un peu plus étanche, j'allais ratisser large... Pas grave, je vais juste faire un check et renvoyer un message, pour que ca monte pas un script qui sera pas executable dans Siril.

Citer
Sinon, dans la version dev de siril, dans les scripts j'ai remplacé biases par bias. Etant donné que c'était une belle faute d'anglais de ma part.
Pourtant on le trouve au pluriel écrit Biases dans plusieurs dicos en ligne (pas Cambridge/Oxford evidemment)... APT genere aussi ce nom de folder par defaut. Mais bon Ivo, son dev, n'a pas non plus un anglais natif... En tout cas, merci pour l'info. Je crois que ca posera pas de probleme dans mon module, et au pire, ca s'adaptera vite fait!

lock042 le février 17, 2020, 02:09:56 14
Citer
Pourtant on le trouve au pluriel écrit Biases dans plusieurs dicos en ligne (pas Cambridge/Oxford evidemment).

Ah ca m'interesse. Je dis ca car j'ai vu des anglophones insister sur ce points ... Mais si tu dis que biases existe .... ca change tout ....

cissou8 le février 17, 2020, 09:50:49 21
Ca m'a collé le doute. Du coup, je viens de vérifier dans le dico Oxford Hachette de ma grande, la forme au pluriel c'est bien -es.
C'est aussi indiqué comme forme au pluriel dans wiktionary (https://en.wiktionary.org/wiki/bias#English)

Et c'est un mot qui est beaucoup utilisé sous cette forme au pluriel en psycho (https://en.wikipedia.org/wiki/List_of_cognitive_biases). On peut bien sur discuter pour savoir si ces pages ont été écrites par des anglophones, mais pour sur, les vrais se seraient indignés si c'était une forme absolument pas correcte.  Cambridge University Press a d'ailleurs publié des bouquins avec cette forme dans le titre (https://www.cambridge.org/fr/search?query=biases&iFeelLucky=false&site=&searchSubmitProducts=Academic&currentTheme=Academic_v1)

Dans le domaine de l'astro, c'est aussi repris sous cette forme dans l'aide de Nebulosity (https://www.stark-labs.com/help/nebulositytutorials/files/Processing_HowTo.pdf) écrite par un certain Craig Stark, ce qui sonne relativement anglophone.

Je vais arrêter là la biblio...je pense que tu as de quoi défendre le folder Biases  ;)

A+,

C.

lock042 le février 17, 2020, 09:58:54 21
Ah ben merde !!

1000 mercis, je vais faire machine arrière.