banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

State Of The Map 2024

#1 Tue 17 June 2008 15:06

sawn
Juste Inscrit !
Date d'inscription: 17 Mar 2008
Messages: 3

ENVI 4.3 ou 4.4 Creation d'imagettes

Bonjour,
il est possible de créer des "imagettes" à partir d'une image grâce à des ROIs en faisant "subset data via rois" (dans "basic tools") en choisissant la ROI et en choisissant de masquer les pixels à l'extérieurs de la ROI...
Cependant, cette méthode devient vite contraignante lorsqu'on possède un très grand nombre de ROIs...
Quelqu'un connaitrait-il une méthode automatique pour créer des "imagettes" à partir de ROIs ?

Merci pour votre aide!

Hors ligne

 

#2 Tue 01 July 2008 16:16

Dam1en
Participant occasionnel
Date d'inscription: 12 Jun 2008
Messages: 13

Re: ENVI 4.3 ou 4.4 Creation d'imagettes

Bonjour,

Lorsque tu as besoin de repeter un traitement de nombreuses fois, tu peux utiliser ENVI en mode batch. Pour decouper une image en plusieurs zones, tu peux utiliser la fonction RESIZE_DOIT (voir la documentation pour un exemple et plus de details). Le choix de la zone a decouper se fait via le mot cle DIMS qui peut egalement faire reference a une ROI.

Si tu n'es pas familier avec la programmation dans ENVI, je te conseille de commencer par le tutoriel suivant: http://geotrouvetout.files.wordpress.co … h_envi.pdf

Bonne chance !

Damien

Hors ligne

 

#3 Thu 03 July 2008 11:03

sawn
Juste Inscrit !
Date d'inscription: 17 Mar 2008
Messages: 3

Re: ENVI 4.3 ou 4.4 Creation d'imagettes

Bonjour Dam1en,

Merci pour l'aide et pour le tutoriel!! j'y vois déjà plus clair.
Cependant , après avoir restauré mais ROIs, comment faire le mot clé DIMS y faire référence?

Merci encore
Sawn

Hors ligne

 

#4 Tue 08 July 2008 10:08

Dam1en
Participant occasionnel
Date d'inscription: 12 Jun 2008
Messages: 13

Re: ENVI 4.3 ou 4.4 Creation d'imagettes

Bonjour,

Lorsque tu as restaure tes ROIs, tu peux recuperer l'adresse des pixels correspondants pour les passer au mot cle DIMS:

1/ Recuperer l'adresse des ROIs disponibles:
roi_ids = ENVI_GET_ROI_IDS(fid=fid, roi_names=roi_names) 
2/ puis les adresses des pixels correspondants:
adresses_roi_1=ENVI_GET_ROI(roi_ids(0))
3/ convertir ces adresses en coordonnees (ligne,colonne)
roi_lignes=adresses_roi_1 MOD ns
roi_colonnes=adresses_roi_1/ns
ou ns est le nombre de colonnes

Puis, recuperer les coordonnees des pixels en haut-a -gauche et en bas-a-droite du rectangle qui englobe la ROI:
Pixel_en_haut_gauche= [min(roi_lignes), min(roi_colonnes)]
Pixel_en_bas_droite=[max(roi_lignes), max(roi_colonnes)]

Tu peux donc construire la variable DIMS de la maniere suivante:
DIMS=[-1, Pixel_en_haut_gauche(0), Pixel_en_bas_droite(0), Pixel_en_haut_gauche(1), Pixel_en_bas_droite(1)]
que tu passes a la fonctions resize_doit:
envi_doit, 'resize_doit',  fid=fid, pos=0, dims=dims, interp=0, rfact=[1,1], in_memory=1, r_fid=r_fid 

Pour plus de details concernant la manipulation des ROIs en mode programmation, je te conseille de consulter le chapitre suivant de la documentation: ENVI Programmer's Guide -> Additional Topics en ENVI Programming -> Regions of Interest

Damien

Hors ligne

 

Pied de page des forums

Powered by FluxBB