Vincent GODARD

Département de Géographie

Université de Paris 8


V.1.21 - Dernière mise à jour : 23/11/2009

 

Fiche Guide n°2.4 du cours de SIG :

(avec l'autorisation du Clark Labs - exercice librement inspiré du didacticiel d'Idrisi 15 - The Andes Edition, pp. 78-86)

 

 

Automatisation des analyses par macrocommandes

 

Objectifs : modélisation par processus itératifs

 

Fonctions décrites dans ce TD : Macro Modeler, SubModel, DynaLink, DynaGroups, Modélisation de processus itératifs,

 

Note : à ce point des exercices, nous avons utilisé les modèles graphiques essentiellement comme un outil d'organisation. Cependant, le concepteur de macros (Macro Modeler) est plus qu'un outil graphique pour réaliser des analyses successives. Ce que nous allons voir dans cet exercice.

 

1. Utilisation du concepteur de Macros pour explorer des scénarios

Une des activités les plus courantes dans la planification est l'exploration des scénarios du type "Que se passe-t-il si ...". Supposons que les planificateurs de l'exercice 2.3 estiment que le critère de pente de 2,5° est trop restrictif et qu'il faut étudier les conséquences d'une pente à 4 degrés comme apte à l'installation. Si l'on n'a pas construit de modèle graphique d'analyse, il faut tout recalculer ! Avec le modèle, il suffit de changer le critère et d'examiner instantanément le nouveau résultat.

a) S'il est fermé, ouvrir le concepteur de macros (Macro Modeler).

- Ouvrir le fichier modèle Exer2-3.

Si vous ne l'avez pas, il est dans le répertoire Introductory GIS dans un fichier ZIP nommé Exer2-3.zip. Décompressez-le dans le même répertoire avant usage.

- Exécutez la macro pour obtenir l'image SUITABLE.

 

b) Affichage du nouveau résultat quand sont considérées comme aptes des pentes de moins de 4 degrés (à la place de 2,5°).

- Avant toute modification, enregistrer le modèle graphique depuis le menu du Macro Modeler

File\Save As ...\Exer2-4b

- Examiner le modèle et localiser l'étape où le seuil (2,5°) de la pente est indiqué.

C'est une étape de RECLASS qui lie SLOPES et SLOPEBOOL.

1. Où trouve-t-on le paramètre à changer (dans quel type de fichiers) ?

Le modifie-t-on directement dans le modèle graphique ?

- Modifier le seuil de 2,5° en 4°

c) Changer le nom du fichier résultat final en SUITABLE2-4b.

- Enregistrer et exécuter le modèle.

2. Quelles différences y a-t-il entre SUITABLE et SUITABLE2-4b ?

 

2. Les sous-modèles

Un des outils les plus puissants du concepteur de macros (Macro Modeler) est sa capacité à sauver un modèle en sous-modèle. Un sous-modèle est un modèle "encapsulé" qui peut agir comme un nouveau modèle d'analyse.

Pour sauvegarder votre procédure de cartographie d'aptitude comme sous-modèle, sélectionner l'option Save Model as a SubModel depuis le menu File du Macro Modeler. Un menu décrivant les propriétés du sous-modèle apparaît.Celui-ci va vous permettre de légender les paramètres du sous-modèle. Dans le cas présent, les paramètres du sous-modèle seront les fichiers entrées et sorties nécessaires pour exécuter le modèle. Vous devez utiliser des titres évocateurs de la nature des fichiers entrés car le modèle va devenir une fonction générique.

Voici quelques suggestions :

Fichiers en entrée et ordre

Type de fichier

Légende (Captions)

Relief

Fichier image

Couche du relief

Reservoirs

Fichier attributs

Sélection des retenues d'eau

Landuse

Fichier image

Couche d'occupation du sol

Forestbool

Fichier attributs

Sélection des Forêts

Fichier en sortie

Type de fichier

Légende (Captions)

Suitable

Fichier image

Carte d'aptitude n°?

Modifier les légendes et valider par OK pour enregistrer le sous-modèle.

 

d) Pour utiliser le sous-modèle, sélectionner l'option IDRISI Explorer du File menu.

ou lancer le à l'aide de l'icône ci-dessous,

- Ajouter un répertoire des données (Resource Folder) additionnel

...\Idrisi Tutorial\Advanced GIS

qui contient des fichiers dont nous allons avoir besoin.

- Conserver le répertoire de travail (Working Folder) tel quel.

- Ouvrir un nouveau modèle de concepteur de macro depuis le menu du Macro Modeler

File\New

ou à l'aide de l'icône ci-dessous,

- Ajouter les deux fichiers suivants (contenus dans le répertoire Advanced GIS) sur votre modèle :

DEM

LANDUSE91

- et les deux fichiers attributs suivants (du répertoire Introductory GIS) :

WESTRES

WESTFOR

 

e) Cliquer sur LANDUSE91 pour le sélectionner et cliquer sur l'icone d'affichage, du Macro Modeler, pour le visualiser

C'est une carte d'occupation du sol des environs de Westborough (aussi appelée Westboro), Massachusetts, en 1991. Vous pouvez aussi voir le MNT de la même façon. Le fichier attributs WESTRES contient une seule ligne indiquant que la classe 5 (lacs) doit prendre la valeur 1 pour indiquer que ce sont des retenues d'eau (en fait, ici, tous les lacs sont considérés comme des retenues d'eau). Le fichier attributs WESTFOR contient aussi une seule ligne indiquant que la classe 7 doit prendre la valeur 1 pour indiquer la forêt.

 

f) Cliquer sur l'icone des sous-modèles.

Notez que votre sous-modèle (Exer2-4b) est enregistré dans le répertoire de travail.

- Le sélectionner

- Faire un clic droit dessus

Notez que les légendes sont modifiées et leur ordre !

- Établir les connexions (dans l'ordre sus mentionné).

- Enregistrez le modèle sous Exer2-4f puis exécuter le modèle.

3. Combien y a-t-il de zones aptes ?

 

Les sous-modèles sont très utiles car ils permettent d'accroître les possibilités d'analyse de votre SIG. Une fois encapsulé, ils deviennent des outils génériques que vous pouvez utiliser dans des contextes variés. Ils vous permettent également d'encapsuler des processus qui seront exécutés indépendamment depuis d'autres éléments dans votre modèle.

 

3. Les liens et la modélisation dynamiques

Un DynaLink est un lien dynamique qui introduit une boucle de rétroaction, injectant ainsi à chaque fois un changement dans la modélisation dynamique.

g) Pour introduire les DynaLink, ouvrir le fichier modèle RESIDENTIAL GROWTH.

File\Open

ou à l'aide de l'icône ci-dessous,

Ce modèle permet de prévoir le développement résidentiel sur les zones de forêts du secteur de Westborough, Massachusetts.

- Commencer par faire tourner le modèle.

Sur l'image résultat (GROWTH) constater que :

- les zones résidentiels d'origine sont en bleu

- les zones d'extension résidentielle sont en vert vif

- La procédure de réalisation est la suivante (cliquer sur chaque couche mentionnée pour la sélectionner, puis l'afficher et l'analyser) :

- l'image RESIDENTIAL91 montre les zones résidentiels d'origine en 1991.

- l'image IDRESSUIT cartographie l'aptitude "naturelle" des terres pour un usage résidentiel. Elle est basée sur des facteurs comme la proximité des routes, la pente, etc.

- un filtrage est utilisé pour pondérer l'aptitude des terres à accueillir des usages résidentiels. Un filtrage sur l'image booléenne des zones résidentielles existantes est appliqué. Il produit l'image PROXIMITY (0 = pas de bâti ; 1 = du bâti). Cependant, au voisinage des limites des zones bâties, le filtrage crée une zone de transition de zéro à un. Le résultat est utilisé comme coefficient pour pondérer progressivement l'aptitude des zones à être gagnée par l'urbanisation (DOWNWEIGHT).

- le module RANDOM est utilisé pour introduire une part de hasard dans le passage du forestier au résidentiel (RANDOM SEED).

- l'accroissement se fait sous la contrainte de la présence des zones forestières (FOREST91).

- ensuite, les zones d'aptitudes sont pondérées, combinées et contraintes (FINAL SUITABILITY), puis les cellules ordonnées par ordre décroisant d'aptitude (RANKED SUITABILITY) en excluant les zones déjà bâties. Ce tri permet d'extraire les 500 cellules les plus pertinentes quant à l'accroissement résidentiel (BEST AREAS). Ces cellules sont combinées avec les secteurs résidentiels existants pour déterminer le nouveau stade des zones bâties (NEW RESID). La couche résultat montre simultanément les zones d'origine et d'accroissement (GROWTH).

 

h) Nous allons introduire un DynaLink pour enclencher un processus dynamique.

- Cliquez sur l'icone DynaLink

Il fonctionne comme l'outil de connexion.

- Déplacez-le sur l'image NEW RESID

- Enfoncez le bouton gauche de la souris, glissez et relâchez le au dessus de l'image RESIDENTIAL91 (Celle qui est en haut à gauche et pas juste au dessus !!! Il faut que NEWRESID soit injectée au début du modèle.).

- Réexécutez le modèle (Run).

- Acceptez d'écraser les images existantes ;

- Indiquez 7 itérations

- Cochez l'affichage des images intermédiaires (Display Intermediate Results)

 

i) Relancez le processus (Run) sans afficher les images intermédiaires

- Notez les changements de noms pour RESIDENTIAL91, NEW RESID et GROWTH.

- À la première itération, RESIDENTIAL91 est une des couches d'entrée et sert à la production de NEW RESID_1 et GROWTH_1. Ensuite, avant que la seconde itération ne débute, NEW RESID_1 est substitué à RESIDENTIAL91 et devient un fichier entrée pour créer NEW RESID_2 et GROWTH_2. Cette production multiple de fichiers sortie NEW RESID est à l'origine du lien dynamique et permet la réalisation des fichiers résultats GROWTH successifs. Si un modèle contient plusieurs images finales résultats, alors chacune produira des fichiers sorties multiples.

- Finalement, notez que les fichiers ont repris leur nom d'origine. Pour les fichiers résultats finaux, il y a une implication supplémentaire ; une copie du fichier sortie final (ici GROWTH_7) porte le nom initialement spécifié pour le fichier (GROWTH).

Comme vous pouvez le constater, DynaLink est très puissant. En permettant à un fichier sortie de redevenir un nouvel intrant, les modèles dynamiques peuvent être rapidement créés , de cette façon, ils accroissent les capacités des SIG pour la modélisation environnementale.

 

4. Traitements par lots utilisant le DynaGroup

Le traitement par lots sert à traiter un groupe de fichiers en une fois. La plupart des SIG fournissent des scripts de macrocommandes pour faciliter le traitement par lots. Cependant, le Macro Modeler offre une manipulation plus aisée pour réaliser les traitements par lots.

 

j) Afficher à l'aide du Display launcher MAD82JAN

C'est un indice de végétation normalisée (NDVI, Normalized Difference Vegetation Index) de janvier 1982 produite par le capteur AVHRR du satellite météorologique NOAA (pour en savoir plus sur ce satellite cliquez ici). L'image d'origine a été recadrée sur Madagascar. Le NDVI est un ratio de la réflectance de l'énergie solaire réfléchie dans les longueurs d'onde du proche infra-rouge (IR) et du rouge (R) comme suit :

NDVI = (IR - R) / (IR + R)

Les valeurs d'indice vont de - 1 à + 1. Cependant, comme les réels nécessitent plus de mémoire que les entiers, ils sont convertis en octals (0 - 255). Avec le NDVI, les zones de végétation ont une réflectance habituellement comprise entre 0,1 et 0,6 selon la quantité de biomasse. Dans ce cas, les données sont étirées (étalement de la dynamique) pour que la valeur 0 représente un NDVI de - 0,05 et 255 un NDVI de - 0,67.

Vous noterez que MAD82JAN est une des 18 images du dossier, qui indique le NDVI de janvier pour 18 ans de 1981 à 1999. Dans ce chapitre, nous utiliserons le Macro Modeler pour reconvertir l'ensemble du jeu d'images vers les données NDVI d'origine (non étalées). La conversion inverse est la suivante :

NDVI = (Dn * 0.0028) - 0.05

où Dn est la donnée numérique étalée.

 

k) Création d'un modèle utilisant MAD82JAN

- Ouvrir un nouveau modèle de concepteur de macro depuis le menu du Macro Modeler

File\New

ou à l'aide de l'icône ci-dessous,

- Insérer l'image raster MAD82JAN depuis la barre de menu du Macro Modeler

Insert/Layer/Raster Layer

ou par l'icône ci-dessous,

- Insérer le module SCALAR depuis la barre de menu du Macro Modeler

Insert/Module/SCALAR

ou par l'icône ci-dessous,

- Avec un clic droit sur SCALAR :

- Paramétrer la multiplication (Operation) => Multiply

- Lui donner la valeur (Scalar value) => 0.0028

- Connecter MAD82JAN à SCALAR

- Réinsérer à nouveau le module SCALAR

- Paramétrer la soustraction (Operation) => Subtract

- Lui donner la valeur (Scalar value) => 0.05

- Connecter le fichier sortie du premier SCALAR (tmp00?) au second SCALAR

- Tester le modèle (Run) depuis la barre de menu du Macro Modeler

ou par l'icône ci-dessous,

Si tout est OK, vous devez avoir des valeurs de compte numériques (Dn) comprises entre - 0.05 et 0.56.

 

l) Pour étendre cette opération à tous les fichiers, il faut créer un fichier groupé de Raster Raster group file.

- Ouvrir l'IDRISI Explorer du File menu.

ou lancer le à l'aide de l'icône ci-dessous,

- Faire défiler les fichiers de la liste jusqu'à voir MAD82JAN ;

- Le sélectionner pour qu'il soit en surbrillance.[il doit être dans le répertoire de travail (Main working folder)]

S'il ne l'était pas c'est que votre projet n'est probablement pas organisé comme suit :

Main working folder :

- Introductory GIS

Ressource folder :

- Advanced GIS

- Sélectionner tous les fichiers du groupe de MAD82JAN à MAD99JAN

Ils apparaissent tous en surbrillance !

- Faire un clique droit dessus et sélectionner Create / Raster Group

Un nouveau Raster Group est créé => Raster Group.rgf

- Faire un clique droit dessus et sélectionner Rename

le renommer MADNDVI

- il devient => MADNDVI.rgf

 

m) Sélectionner la vignette du fichier MAD82JAN dans le modèle graphique

- La détruire

- La remplacer à l'aide du DynaGroup par le groupe de fichiers rasters MADNDVI

- Le connecter au premier module SCALAR

- Donner le nom NEW+<madndvi>

au fichier résultat après le deuxième SCALAR

C'est une convention spéciale de nommage de fichiers. La spécification <madndvi> dans le nom indique que le Macro Modeler doit former le nom des fichiers de sortie avec les noms en entrée du DynaGroup nommés MADNDVI. On indique, dans ce cas que l'on veut que les nouveaux noms doivent être identiques aux anciens, mais avec le préfixe NEW ajoutés devant.

 

n) Faire tourner le modèle.

Vous êtes informez que 18 itérations sont nécessaires (non modifiable, c'est figé par le Group file)

- Notez :

- les changements de nom pendant l'exécution.

- la création d'un Raster group file +NEWMADNDVI

- N'oubliez pas :

- de sauvegarder votre modèle avant de fermer ;

- détruire les fichiers +NEWMADNDVI82 à 99 et +NEWMADNDVI (passez par le IDRISI File Explorer) pour ne pas encombrer le disque dur.

 

5) Modélisation de processus itératifs utilisant les DynaGroups avec les DynaLinks

L'exécution de processus itératifs est un autre rôle important pour les DynaGroups et DynaLinks. Dans ce dernier chapitre, nous allons voir comment les utiliser ensembles.

 

o) Ouvrir le modèle nommé MEAN.

Il a été développé pour fonctionner sur vos données. Notez qu'il contient un DynaGroup et un DynaLink.

Pour calculer la moyenne (mean) des images de Madagascar, il faut sommer la valeur des pixels des 18 images NDVI puis la diviser par 18. La combinaison du DynaGroup et du DynaLink va permettre d'accomplir la sommation, alors que le dernier SCALAR effectuera la division.

 

p) Afficher l'image BLANK_NDVI. Elle ne contient que des zéros.

À la première itération, le modèle prend la première image du DynaGroup (MAD82JAN) et l'ajoute à BLANK_NDVI (à l'aide d'OVERLAY) et met le résultat dans SUM_1. Le DynaLink substitue alors SUM_1 à BLANK_NDVI et lui ajoute la seconde image du groupe (MAD83JAN), etc. À la fin de la séquence, une image finale est créée, SUM, contenant la somme des 18 mois de janvier. Elle est divisée par 18 dans SCALAR.

- Activer le modèle (Run) et regarder le fonctionner.

- Ne pas cocher l'option d'affichage intermédiaire, car les images intermédiaires sont fausses. Elles sont divisées par 18 et pas encore incrémentées 18 fois !!!

- Notez aussi que le fichier sortie du DynaGroup ne possède pas un nom "conventionnel". Les fichiers résultats intermédiaires comportent juste un suffixe numérique (mean_1, mean_2, etc.).

4. Comment faire un modèle graphique avec lequel on ne risque pas d'afficher les images intermédiaires ?

- Il existe plusieurs possibilités, en voici une :

- Faire un sous modèle (SubModel) de la partie gauche du modèle contenant OVERLAY et les fichiers qui lui sont attachés ;

- Faire un nouveau modèle contenant le sous modèle précédent auquel on accrochera le module SCALAR pour effectuer la division par 18.

- Vous rendrez une impression (procédez par copie d'écran insérée dans votre traitement de texte favorit) de votre nouveau modèle contenant le sous modèle "détaillé" à l'aide d'un clic droit !

 

q) Comme exemple final, ouvrez le modèle STANDEV.

Il calcule l'écart-type (standard deviation) des images. Il est structuré pour les fichiers de cet exercice.

- Activer le modèle (Run) et essayez de l'imaginer fonctionner. Les principes de base sont les mêmes que pour l'exercice précédent.

 

N'oubliez pas de détruire les fichiers :

- mean_1 à 18 ;

- standev_1 à 18 ;

- sum _1 à 18 ;

- sum_sq _1 à 18 ;

pour ne pas encombrer le disque dur.

 

 

Retour au début de la fiche Guide

 

Fiche Guide suivante

 

NB : les mots suivis de "*" font partie du vocabulaire géographique, donc leur définition doit être connue. Faites-vous un glossaire.