M.B, 17-MAR-1994 .1. IDL_USE.TXT -------------------------------------------------------------------------------- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ! INFORMATIONS RELATIVES A L'EXECUTION D'UNE SESSION SOUS IDL ! --------------------------------------------------------------- M.BOUT L.A.S V 2.0 MARCH,1994 1) ENTRER SOUS IDL : IDL 2) CHANGER DE REPERTOIRE : CD,'NOM DU REPERTOIRE' 3) DEFINIR LE REPERTOIRE DE PRISE ET DE DEPOT DES IMAGES : DEFSYSV,'!IMGDIR','NOM DU REPERTOIRE' .RUN SET_IMGDIR.PRO SET_IMGDIR,'NOM DU REPERTOIRE' NB : IL SEMBLE QUE CES PROCEDURES DE DEFINITION/AFFECTATION DE REPERTOIRES NE SOIENT PAS NECESSAIRES AU NRL. 4) COMPILER LES DIVERSES PROCEDURES : .RUN CALIB5.PRO ! visualisation,pre-traitement des images... .RUN ALIGN1.PRO ! stat_cursor, composer frange oe, masquage... .RUN GCURSOR.PRO ! curseur graphique .RUN DCURSOR.PRO (*) ! curseur sur images,simcircle est preferable .RUN LUX_DIFF.PRO (*) .RUN FCORONAIMA.PRO (*) .RUN KCORONAIMA.PRO (*) .RUN SOLARCORONA.PRO (*) .RUN POLM1M2.PRO ! sft/spt miroirs m1, m2 .RUN FILTGAUSS.PRO ! filtrage/convolution par gaussienne .RUN CROSSCORR.PRO ! correlation croisee, etude des marques .RUN UTILITIES.PRO ! fft, convolution, stats, masques, insert... .RUN CROSSCORRBIS.PRO ! correlation croisee, etude des marques bis .RUN PATTERN1.PRO ! sft/spt cal lamps & filters ===> pattern ccd .RUN SIMCIRCLE.PRO ! determiner centre/rayon de frange .RUN DRAWCIRCLE.PRO (*) .RUN VIGNETTAGE.PRO (*) (*) PROCEDURES PAS UTILES AU NRL ET/OU PAS DE GARANTIE DE FONCTIONNEMENT AU NRL REMARQUE : UNE PROCEDURE PERMET DE COMPILER TOUS LES PROGRAMMES ET DE "LANCER" UNE SESSION : POUR CELA TAPER SOUS IDL : @IDLSESSION.PRO ! a verifier au NRL par A.LL ou JP.L 5) OUVRIR DES FENETRES GRAPHIQUES : W512,n ! n, numero de la fenetre 512*512 pixels ( display ) WINDOW,n ! " " " " par defaut ( plotting ) 6) SELECTIONNER, EFFACER OU FERMER UNE FENETRE : WSET,n ! select ERASE ! clear WDELETE,n ! close WSHOW,n ! mettre par dessus une fenetre cachee sous les autres 7) CONSTRUIRE UN CATALOGUE DE DARKS DARK_CATA 8) CONSULTER LE CATALOGUE ET VOIR LE DARK ACTIF SHOW_CATALOG 9) DETERMINER ET CHOISIR LE BON DARK GET_DRK_NAME,'NOM_IMAGE.IMG',DARK PRINT,DARK ==> donne le fichier ".hdr" associe CHOOSE_DARK,'NOM_OBTENU.IMG',DARK,HDARK 10) VISUALISATION INITIALE D'UNE IMAGE VISU_CAL,'NOM_IMAGE.IMG',IMA,HIMA ! selection d'1 zone 512*512 ! et rotation VISU_IMA,'NOM_IMAGE.IMG',HIMA,IMA,KX,KY,cutmin,cutmax ! image brute echelonnable ex: kx=ky=1 ===> dimx = 562,dimy = 512 kx=ky=2 ===> dimx = 281,dimy = 256 11) VISUALISATION APRES CORRECTIONS VISU_CAL_CLEAN,'NOM_IMAGE.IMG',DARK,IMA,HIMA ! DARK selectionne 12) VISUALISATION/PRE-TRAITEMENT AUTOMATIQUE DES IMAGES PRO_CAL,'IMAGE.IMG',DARK,HDARK,IMA,HIMA DARK,HDARK sont respectivement des noms idl de files qui vont recevoir/se remplir a l'aide d'un ".hdr" et d'un ".img" 13) CONSULTER UN HEADER i) a partir d'une image idl SHOW_HDR,HIMA,/FULL ! pour les images SHOW_HDR,HDARK,/FULL ! pour les darks choisis ii) a partir d'une image ".img" SHOW_IMA_HDR,'NOM_IMAGE.IMG',/FULL 14) BALAYER L'IMAGE PROFILES,NOM_IMAGE 15) FAIRE UN ZOOM ZOOM,FACT = n,XSIZE = A,YSIZE = B,/INTERP,/CONTINUOUS Permet de faire un zoom sur une ROI d'une image tout comme VIEW/IMA dans MIDAS. n est le grandissement, A est la dim en x de la fenetre B est la dim en y de la fenetre ou ZOOM_24,FACT = n,xsize = A,YSIZE = B,right = 0 ou 1 suivant que l'on veuille que cela apparaisse a gauche ou a droite. Tandis que ZOOM permet de regarder dans l'image, ZOOM_24 permet des mesures d'intensite et de position dans la fenetre du zoom. 16) CHANGER LES CUTS VALUES ADJCT ou bien TVSCL,BYTSCL(NOM_IMAGE,MIN=***,MAX=***) 17) METTRE UNE TABLE DE COULEURS LOADCT NB : les tables se rapprochant de celles de MIDAS sont : les tables 0,3,6,12 18) FAIRE DES STATISTIQUES GLOBALES STAT_IMA,IMA,X1,Y1,X2,Y2 ! exemple, 0,0,511,511 19) FAIRE DES STATISTIQUES LOCALES STAT_CURSOR,IMA ! selection d'une ROI avec la souris 20) LECTURE D'IMAGE AVEC LE CURSEUR RDPIX,IMA,0,0 ! c'est l'equivalent de get/cursor 21) APPLIQUER UN FILTRE DE LA MEDIANE RESULT = MEDIAN(IMAGE, LARGEUR) 22) APPLIQUER UN FILTRE GAUSSIEN FILTGAUSS,IMAGE_IN,WIDTH,IMAGE_OUT 23) FAIRE UN PROFIL (IMAGE 1D) ! c'est l'equivalent de extract/trace RESULT = PROFILE(IMAGE, XSTART=0.,YSTART=0.) 24) ALIGNER ET RECONSTRUIRE UNE IMAGE DE FRANGE A PARTIR D'ARCS ALIGN1,'IMAGE1.IMG','IMAGE2.IMG',DARK,RESULTAT,'H' ! horizontal ou 'V' ! vertical ou BUILD_FRAOE,'IMAGE1.IMG','IMAGE2.IMG','IMAGE3.IMG','IMAGE4.IMG',IMA 25) REVENIR AU MAIN LEVEL SI UNE PROCEDURE EST INTERROMPUE RETALL 26) SORTIR : EXIT ************** * HELP * ************** Saved Procedures: ALIGN1 nom_image1 nom_image2 nom_dark imas itest ! construire BUILD_FRAOE image1 image2 image3 image4 oefringe ! la frange CHECK_FILENAME filename path extension CHECK_IMGDIR dummy CHOOSE_DARK dark_new_name drk hdrk CIRCCNTR ima tab_name xmoy ymoy r CLEAN_CAL ima hima itest iout hout COPY_DISP image minval maxval COPY_IMA_HDR header_in header_out ! copier 1 header CREVIG ima_name off_x off_y ! faire 1 vignettage CROSSCORR ima1_in ima2_in x1 x2 y1 y2 ima_out res ! etude des marques CROSSCORRBIS ima1_in ima2_in x1 x2 y1 y2 ima_out res ! et decalage DARK_CATA ! generer 1 catalogue de darks DATE_NUM_TEXT year month day hour DEFINE_CCD_HDR hdr DIAFRAI ima_name xc yc r intval extval ! appliquer 1 mask sur 1 image DRAWCIRCLE ima_in x_cntr y_cntr radius ptyp psiz color DVPT_FRA ima_in xc yc r1 delta_r1 ima_out ! dvpt polaire de frange EXTRACT_IMA2 iin hin x1 x2 y1 y2 iout hout FCORONAIMA ima_bf ! couronne F FILTGAUSS ima_in width ima_out ! filtre gaussien FILTMEDIAN ima_in kx ky ima_out ! filtre median + rebin FIND_IMA hdr ima_db ima_name GCURSOR table_name n_points ! curseur graph + table GENER_MASK ima_name npix xc yc r intval extval ! faire 1 mask circulaire GET_DRK_NAME ima_name ass_name ! trouver 1 dark dans le catalogue IMA_LIST template ima_db nfiles IPOLARFRA ima_in xc yc r1 delta_r1 ima_out KCORONAIMA ima_bk option ! couronne K LIST_IMA_PARAM template LUX_DIFF ima_name xc yc option a b ! modele d'indicatrice MAN_PROC request MEAN_2D_FRM ima_in kx ky ima_moy ima_std ! smooth + rebin MP_BASIC request PATTERN1 ima1 ima2 ima3 ima4 difres ! pattern PATTERN2 difres1 difres2 difres_out ! ccd a partir de pho PCIRCLE ima xmoy ymoy r imab PCURSOR ima tab_name POLM1M2 i1p i2p i3p kx ky p_moy p_std alpha_moy alpha_std !polar m1m2 PRO_CAL ima_name drk hdrk iout hout ! visu automatique READ_CAL ima_name itest iout hout REPLACIMA ima minval maxval selectval ! remplacer des pixels SEND_PLOT image col row minval maxval SET_CAL_HDR ima_header SET_CATALOG template db_dark ndarks drk_name SET_IMGDIR dir_path SHOW_CATALOG SHOW_HDR ima_hdr "FULL" ! lire les headers SHOW_IMA_HDR ima_name "FULL" ! SIMCIRCLE ima tab_name xmoy ymoy r imab ! centre et rayon d'1 objet SOLARCORONA ima_name option ! couronne solaire totale STAT_2D_FRM ima kx ky imb imc ! images de moyennes et sigmas STAT_CURSOR ima nx ny z "FIXED" ! stats locales STAT_IMA ima x1 y1 x2 y2 z ! stats globales UTILITIES VISU_CAL ima_name iout hout ! visualisation d'1 image VISU_CAL_CLEAN ima_name backg iout hout ! visualisation d'1 image-dark VISU_IMA ima_name hdr ima kx ky lcut hcut ! visualisation brute W512 n WRITE_HDR ima_name hdr WRITE_IMA ima_name image hdr ! sauver une image resultante WRITIMA ima val nx ny z "FIXED" ! ecrire dans/sur une image Saved Functions: ANTISYMMETRIZE array ARG x AUTOCORRELATE x BAND_MASK npix width CENTRE image CIRCLE_MASK npix radius CIS phi CLIP array ! garder que les valeurs positives COMPLEMENT_NYQU fx CONE_MASK npix r CONVOLVE x y ! convolution entre 2 images CORRELATE x y DATE_CAL date hour DECENTRE image DEFINE_BSC_HDR dummy DEFINE_C1_HDR dummy DEFINE_CAL_HDR dummy DEFINE_CATALOG nfiles DEFINE_IMA_HDR dummy DFT data ! fft directe DFTI ft ! fft inverse DOWNSAMPLE array step ELLIPSE_MASK npix a b theta EUCLID x y EVENP n EVEN_OR_ODD n EXTRACT image nx ny ! extraction d'image FILEPATH filename "SUBDIRECTORY" "TERMINAL" "TMP" FLOOR1 n base GAUSS x mu sigma GAUSS_MASK npix sigma GETTOK st char GRAD ima IMAGINARY_UNIT INSERT child parent ! insertion d'image LOAD_CAL ima hima lcut hcut itest hout LOAD_IMA ima lcut hcut kx ky LOG_POWER_SPECT x LUNULE r1 r2 d MAXPOS array MEAN array MIN_2D_FRM ima kx ky ! minimums locaux MOY ima x1 x2 y1 y2 ! moyenne faite sur une ROI MPB_SELTOPIC subject topic_array initial MPB_TM key topic_array found outunit MTF ima MY_ATAN x y MY_MOD n base NORMALIZE data NO_OF_PIXELS array ODDP n ORIGIN frame POWER_SPECTRUM x READ_IMA ima_name hdrima ichoice READ_IMA_FRAME name bitpix nx ny READ_IMA_HDR ima_name ima_header verbose REPLICATE_IMAGE image RESAMPLE image nx ny ! reechantillonner une image RINTER p x y dfdx dfdy ROLLOFF_MASK npix radius sigma ROUND1 var SGN x STATIMA ima x1 y1 x2 y2 STATISTICS array ! stats sur image + S/N ratio SYMMETRIZE array UNIT_PULSE nx ny UPSAMPLE array step VIGNETTAGE xc yc ! vignettage par convolution bidim ZERO_NYQUIST ft Pour avoir un help sur une procedure IDL i) procedure de l'utilisateur HELP,/ROUTINES ii) procedures de la librairie ? ROUTINES (NOM DE LA PROCEDURE EN OPTION) " USERLIB "" " STATLIB "" Pour connaitre sa zone memoire HELP,/MEMORY Pour connaitre les systemes de variables HELP,/SYS