Aller au contenu

m27trognondepomme

Membre
  • Compteur de contenus

    1431
  • Inscription

  • Dernière visite

  • Jours gagnés

    11

Tout ce qui a été posté par m27trognondepomme

  1. Bonjour, je viens de créer une librairie python étendant les capacités de script de SiriL. Elle se nomme "pySiril" et s'adresse aux personnes qui écrivent des scripts Siril et qui sont obligées de jongler avec des shells (ou bat sous windows). Elle permet dans un script Python d'appeler les commandes de SiriL. Elle offre donc : la possibilité de faire des tests et boucles ( if, else , for ... ) la possibilité de créer facilement des fonctions la possibilité de récupérer les valeurs retournées par des fonctions telles que stat, bg, cdg, bgnoise ... Cette librairie fonctionne sous les 3 OS : Windows , Linux et MAC OS ( à tester). Elle est disponible : https://gitlab.com/free-astro/pysiril/-/releases L'installation se fait en tapant : python -m pip install pysiril-0.0.4-py3-none-any.whl Et pour désinstaller la version précédente: python -m pip uninstall pysiril Astronomicalement, M27 trognon de pomme Un premier exemple récupérant les infos de quelques fonction de SiriL: import sys import os from pysiril.siril import * from pysiril.wrapper import * from pysiril.addons import * # ============================================================================== # Example of functions which return values # ============================================================================== app=Siril() try: cmd=Wrapper(app) fct=Addons(app) #app.Display(bLog=True,bInfo=False) #app.MuteSiril(True) app.Open() if sys.platform.startswith('win32'): app.Execute("cd 'D:/_TraitAstro/20-SiriL/work/TestSirilMono'") app.Execute("load result") app.Execute("load 'D:/_TraitAstro/20-SiriL/work/M101/M101_c.fit'") else: app.Execute("cd '/home/barch/siril/work'") app.Execute("load M31_DSLR") if False : cmd.help() cmd.help("stat") cmd.help("xxx") print("BG:" ,cmd.bg()) print("BGNOISE:" ,cmd.bgnoise()) print("STAT:" ,cmd.stat()) print("CDG:" ,cmd.cdg()) print("ENTROPY:" ,cmd.entropy()) app.Script("basic.ssf") except Exception as e : print("\n**** ERROR *** " + str(e) + "\n" ) app.Close() del app un second exemple de traitement: import sys import os from pysiril.siril import * from pysiril.wrapper import * from pysiril.addons import * # ============================================================================== # EXAMPLE DSLR with a functions wrapper # ============================================================================== def master_bias(bias_dir, process_dir): cmd.cd(bias_dir ) cmd.convert( 'bias', out=process_dir, fitseq=True ) cmd.cd( process_dir ) cmd.stack( 'bias', type='rej', sigma_low=3, sigma_high=3, norm='no') def master_flat(flat_dir, process_dir): cmd.cd(flat_dir ) cmd.convert( 'flat', out=process_dir, fitseq=True ) cmd.cd( process_dir ) cmd.preprocess( 'flat', bias='bias_stacked' ) cmd.stack( 'pp_flat', type='rej', sigma_low=3, sigma_high=3, norm='mul') def master_dark(dark_dir, process_dir): cmd.cd(dark_dir ) cmd.convert( 'dark', out=process_dir, fitseq=True ) cmd.cd( process_dir ) cmd.stack( 'dark', type='rej', sigma_low=3, sigma_high=3, norm='no') def light(ligth_dir, process_dir): cmd.cd(ligth_dir) cmd.convert( 'light', out=process_dir, fitseq=True ) cmd.cd( process_dir ) cmd.preprocess( 'light', dark='dark_stacked', flat='pp_flat_stacked', cfa=True, equalize_cfa=True, debayer=True ) cmd.register( 'pp_light') cmd.stack( 'r_pp_light', type='rej', sigma_low=3, sigma_high=3, norm='addscale', output_norm=True, out='../result') cmd.close() # ============================================================================== # run Siril Dev app=Siril("C:/awin/msys64/mingw64/bin/siril.exe", False) workdir = "D:/_TraitAstro/20-SiriL/work/TestSiril" try: cmd=Wrapper(app) app.Open() process_dir = '../process' cmd.set16bits() cmd.setext('fit') master_bias(workdir+ '/biases' ,process_dir) master_flat(workdir+ '/flats' ,process_dir) master_dark(workdir+ '/darks' ,process_dir) light( workdir+ '/lights' ,process_dir) except Exception as e : print("\n**** ERROR *** " + str(e) + "\n" ) app.Close() del app
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.