Vincent GODARD

Département de Géographie

Université de Paris 8


V.1.3 - Dernière mise à jour : 12/10/2004

 

Fiche Guide n°2.2 du cours de SIG :

(avec l'autorisation du Clark Labs - exercice librement inspiré du didacticiel d'Idrisi32)

 

Interrogation de la base de données

 

Objectifs : déterminer l'aptitude d'une zone par requêtes multicritères

 

Fonctions décrites dans ce TD : RECLASS, ASSIGN, Edit, OVERLAY, AREA, GROUP, EXTRACT, Macro Modeler, Image Calculator

 

Dans cet exercice nous allons étudier une opération de base pour tout SIG : la recherche dans la base de données. Ce type de recherche peut se traduire par deux questions. La première est spatiale :

- Qu'y a-t-il à cet endroit ?

La seconde est une requête par attribut :

- Quelles sont les zones qui ont cet attribut ?

L'utilisation du curseur (Cursor inquiry) est une requête spatiale. Dans un prochain exercice, nous examinerons une méthode de recherche spatiale plus élaborée (utilisant les modules EXTRACT et CROSSTAB) qui peut interroger interactivement et simultanément un groupe d'images. Dans cet exercice, nous allons réaliser des requêtes par attributs.

Dans les requêtes par attributs, il faut spécifier une condition au SIG pour qu'il délimite les régions qui répondent favorablement à cette requête. Si la condition ne concerne qu'un attribut (requête univariée), on peut utiliser les modules RECLASS ou ASSIGN. Si la condition concerne plusieurs attributs (requête multivariée), on utilisera OVERLAY en plus des modules RECLASS ou ASSIGN. On aura tout intérêt avant de démarrer cet exercice à lire la section sur les Database Query dans la chapitre Introduction to GIS dans le IDRISI Guide to GIS and Image Processing Volume 1.

 

a) Dans le gestionnaire d'environnement (Data path), sélectionner comme répertoire de travail (Working folder), le répertoire qui porte Votre_Nom

- Ajouter dans le Resource Folder :

...\Idrisi32 Tutorial\Introductory GIS

- Utiliser les boutons :

Add ... (ajouter)

- Enregistrer cet environnement sous votre nom ;

- Valider par OK.

 

b) Afficher (DISPLAY Launcher) le fichier raster DRELIEF.

- Choisir la palette standard d'Idrisi ;

- Cocher le titre et la légende.

Le contrastage automatique (Autoscaling) est automatiquement mis car les données DRELIEF sont des réels.

- Valider par OK.

Ce fichier contient un modèle numérique de terrain d'une région en Mauritanie le long du fleuve Sénégal. La partie située au sud du fleuve (en forme de fer à cheval) est au Sénégal et n'a pas été renseignée. Elle est dotée d'une altitude arbitraire de 10 mètres.

Tous les ans, cette région est soumise à des inondations à la saison des pluies. Cette région sahélienne est aride et les agriculteurs pratiquent quelques cultures de mil pluviales mais surtout des cultures de sorgho de décrue, en plantant après le retrait des eaux.

Un projet a été élaboré pour construire un barrage le long de la rive nord du fleuve, dans la partie nord de la courbure du fleuve. Le but est de laisser la crue pénétrer comme à son habitude mais de la retenir plus longtemps grâce au barrage. De cette manière, l'eau percolera dans le sol, accroissant la production de sorgho. Selon les enregistrements des limnigraphes, l'inondation atteint la cote des 9 mètres.

En plus du disponible en eau, la qualité des sols est importante à prendre en considération dans la culture du sorgho de décrue, en raison des capacités différentielles de sols à retenir l'humidité et en raison du différentiel de fertilité. Dans ce secteur, seuls les sols argileux sont nettement adaptés à ce type d'agriculture.

 

c) Afficher DSOILS.

La palette Qualitative est directement affichée.

- Contrôler que le titre et la légende sont cochés.

C'est la carte des sols de la zone d'étude.

Pour déterminer l'impact du barrage, il faut évaluer combien d'hectares de terre sont aptes aux cultures de décrue. Si la plupart des terres ont un sol impropre à cette culture le gain de production en sorgho sera minime, et il faut choisir un autre lieu de construction. En revanche, si la plupart des zones inondées contiennent des sols argileux, le projet de barrage aura un impact majeur sur la production de sorgho.

Notre objectif est de cartographier et déterminer la surface (en hectares) des régions adaptées à la culture du sorgho de décrue. C'est un classique de l'interrogation de base de données combinant plusieurs conditions.

On doit trouver toutes les zones qui sont situées :

dans la zone normale d'inondation et sur des sols argileux.

 

1. Construction du modèle graphique d'analyse et algèbre booléenne

- Pour construire le modèle graphique de cette analyse, il faut spécifier le résultat final sur la droite du modèle.

fig. 1 - Le résultat à obtenir

Sources : EASTMAN 2001, p.44

BESTSORG est l'image qui donne les zones où la production de sorgho de décru sera la meilleure. Elle est obtenue en combinant les images des meilleurs sols (BESTSOIL) et des zones inondables (FLOOD).

fig. 2 - Obtention de BESTSORG

Sources : EASTMAN 2001, p.44

BESTSORG est le résultat d'une requête multicritère*, alors que FLOOD et BESTSOIL sont le résultat de requêtes monocritères.

 

- La meilleure façon de traiter ce problème, produire BESTSORG, est de réaliser des images booléennes* :

Les requêtes multicritères sont réalisées par l'utilisation de l'algèbre booléenne.

Les images booléennes (encore appelées images binaires ou logiques contiennent des 0 et des 1).

Dans cet exercice, on veut obtenir une image BESTSORG constituée de :

- 1 là où les sols sont :

- les plus aptes à la culture de sorgho ;

et

- inondables.

- 0 ailleurs.

Donc :

- FLOOD contient des :

1 sous la cote des 9 m ;

0 ailleurs.

- BESTSOIL contient des :

1 où il y a des argiles (clays) ;

0 ailleurs.

 

- L'opération logique ET (AND) est une multiplication qui donne le résultat suivant :

tab. 1 - Opération booléenne avec l'opérateur logique ET

FLOOD

BESTSOIL

BESTSORG

0

X

0

=

0

0

X

1

=

0

1

X

0

=

0

1

X

1

=

1

- Pour produire FLOOD, les zones inondables de moins de 9 m, il faut utiliser le modèle numérique de terrain DRELIEF.

- Pour produire BESTSOIL, les zones argileuses, il faut utiliser la carte des sols DSOILS.

On ajoute ces étapes au modèle graphique d'analyse.

fig. 3 - Obtention de FLOOD et BESTSOIL

Sources : EASTMAN 2001, p.46

Maintenant que le modèle est complet, du résultat aux données sources, il faut remplir les "blancs" (cf. fig. 4) avec le nom des modules à utiliser.

 

2. Création de l'image d'inondation

Constitution de l'image FLOOD en isolant les pixels de l'image DRELIEF de moins de 9 m avec le module RECLASS.

 

d) Examiner DRELIEF à l'aide de Propriété des couches (Layer Properties).

1. Quelles sont les altitudes minimales et maximales ?

 

e) S'assurer que les préférences de l'utilisateur (File/User Preferences) sont paramétrées pour afficher automatiquement les traitements effectués.

- Sélectionner l'onglet Display Settings

- Choisir la palette

- qualitative => QUAL256

- quantitative => IDRIS256

- d'afficher automatiquement :

- le titre ;

- la légende.

- Valider par OK.

 

f) Lancer RECLASS depuis le menu :

GIS Analysis/Database Query/RECLASS

ou par l'icône ci-dessous,

- Renseigner les boîtes de dialogue comme suit :

Input file => DRELIEF

Output file => FLOOD

Pour les paramètres de reclassement (Reclass parameters) :

- 1ère ligne

Assign a new value of => 1

To values from => 0

To just less than => 9

- 2e ligne

Assign a new value of => 0

To values from => 9

To just less than => 999

- Sélectionner le bouton Save as .RCL file ...

- Indiquer FLOOD

C'est un fichier ASCII de paramètres pour le concepteur de macros (Macro Modeler)

- Sélectionner le bouton de documentation du fichier résultat (Output Documentation)

- Mettre :

- un titre ;

- booléenne comme unité (Value units).

- Valider par OK.

- Quel est l'intérêt d'avoir mis 999 comme valeur maximale à mettre à 0 ?

 

g) Inspection de FLOOD

- Que représente les zones à 0 ?

 

3. Création de l'image des sols les plus propices

Constitution de l'image BESTSOIL en isolant les pixels "argileux" de l'image DSOILS avec le module ASSIGN.

h) Rechercher dans DSOILS la valeur de la classe "argile"

2. Quelle est la valeur numérique de la classe des sols argileux ?

On pourrait utiliser à nouveau RECLASS avec les paramètres suivants :

- 1ère ligne

Assign a new value of => 0

To values from => 0

To just less than => 2

- 2e ligne

Assign a new value of => 1

To values from => 2

To just less than => 2

- 3e ligne

Assign a new value of => 0

To values from => 3

To just less than => 999

Noter que dans RECLASS :

- une valeur non spécifiée reste inchangée ;

- une valeur en sortie est toujours entière (les valeurs réelles sont arrondies).

C'est la fonction ASSIGN qui va être explorée maintenant.

Noter que dans ASSIGN, contrairement à RECLASS :

- une valeur non spécifiée est transformée en 0 ;

- une valeur en entrée est toujours entière (ou en octal) ;

- il faut d'abord créer un fichier d'attributs .

 

i) Création du fichier attributs (Attribute values file) avec Edit depuis le menu

GIS Analysis/Database Query/Edit

ou par l'icône ci-dessous,

- Écrire les valeurs sur deux colonnes (ancienne valeur, blanc, nouvelle valeur) comme suit :

1 0

2 1

3 0

4 0

5 0

En fait comme cela a été écrit précédemment, il suffisait juste d'écrire

2 1

- Depuis le menu de la boîte de dialogue d'Edit,

Enregistrer sous ... (Save As...)

- Nom => CLAYSOIL ;

- Type => Attribute values file ( .avl).

Cliquer sur sauver

- choisir comme Data type => Integer

 

j) Lancer ASSIGN depuis

GIS Analysis/Database Query/ASSIGN

- Renseigner les boîtes de dialogue comme suit :

Feature definition image => DSOIL

Output image => BESTSOIL

Attribute values file => CLAYSOIL

- Valider par OK.

 

k) Inspection de BESTSOIL

- Que représente les zones de valeur un ?.

 

À ce point de l'exercice, deux images booléennes ont été créées par requêtes monocritères, FLOOD et BESTSOIL. Il faut maintenant les combiner en une requête multicritère pour déterminer les zones favorables au sorgho de décrue. C'est le module OVERLAY qui permet cette requête et un grand nombre d'opérations booléennes.

Nous avons vu l'opérateur logique ET (AND), il correspond à la multiplication (cf. FLOOD et BESTSOIL au tableau 1).

L'option "Cover" recouvrement* correspond à l'opérateur logique OU (OR).

=> L'image de sortie vaut 1 quant celles d'entrée valent 1 (l'une ou / et l'autre).

3. Pouvez-vous construire un tableau similaire au tableau 1 avec l'opérateur logique OU et suggérer une autre opération que Covert qui puisse produire le même résultat ?

tab. 2 - Opération booléenne avec l'opérateur logique OU

FLOOD

BESTSOIL

BESTSORG

0

OU

0

=

?

0

OU

1

=

?

1

OU

0

=

?

1

OU

1

=

?

4. Création de l'image résultante

l) Lancer OVERLAY depuis

GIS Analysis/Database Query/OVERLAY

ou par l'icône ci-dessous,

- Renseigner les boîtes de dialogue comme suit :

First image => FLOOD

Second image => BESTSOIL

Output file => BESTSORG

Cocher l'option d'OVERLAY => multiplication (First * Second)

- Sélectionner le bouton de documentation du fichier résultat (Output Documentation)

- Mettre :

- un titre ;

- booléenne comme unité (Value units).

- Valider par OK.

- Examiner le résultat.

- Changer la palette en QUAL256

- BESTSORG est l'intersection de quoi ?

 

m) Calcul de la superficie de BESTSORG

- Lancer AREA depuis le menu

GIS Analysis/Database Query/AREA

- Renseigner les boîtes de dialogue comme suit :

Input file => BESTSORG

- Cocher comme format de sortie => Table (Tabular)

- Cocher la surface => en hectares

4. Quelle superficie inondable est sur des argiles ? Que signifie l'autre chiffre ?

 

Si l'on complète le modèle graphique d'analyse on obtient la figure 4.

fig. 4 - Modèle graphique d'analyse complet fournissant la surface totale du sorgho de décrue

Sources : EASTMAN 2001, p.49

 

La surface que l'on vient de calculer est relative à l'ensemble des zones remplissant les conditions de départ. Cependant, certaines zones sont disjointes.

- Comment faire pour calculer leur surface séparément ?

Il faut grouper les pixels contigus et leur donner un attribut différents des autres groupes. C'est la fonction GROUP qui va être utilisée.

 

5. Identification des groupes de pixels contigus

- GROUP est conçu pour identifier et étiqueter les groupes de pixels contigus qui ont la même valeur.

GROUP :

- est un opérateur contextuel* ;

- numérote du haut vers le bas et de la gauche vers la droite.

- La contiguïté spatiale* peut être définie de deux manières :

1) le pixel appartient au groupe s'il a une frontière orthogonale commune (dessus, dessous, gauche, droite)

=> voisinage restreint

2) le pixel appartient au groupe s'il a une frontière orthogonale et / ou diagonale commune (8 directions = N, NE, E, SE, ...)

=> voisinage étendu

C'est généralement la seconde option qui est utilisée.

Le tableau 3 présente le résultat du module GROUP sur une image booléenne.

tab. 3 - Opération contextuelle sur image booléenne avec le module GROUP

Image originale

Voisinage restreint

Voisinage étendu

1

1

0

1

0

0

1

2

0

0

1

2

1

0

0

1

0

1

1

2

0

1

1

2

0

1

0

0

3

4

1

1

1

0

1

1

1

0

1

0

5

6

7

1

0

1

0

1

Noter : les 8 groupes (identifiants 0 à 7) du module GROUP sans la diagonale et les 3 groupes (identifiants 0 à 2) avec la diagonale.

 

n) Lancer GROUP depuis le menu

GIS Analysis/Context Operators/GROUP

- Renseigner les boîtes de dialogue comme suit :

Input image => BESTSORG

Output image => PLOTS

- Cocher Include diagonals

- Entrer un titre

- Valider par OK.

- Examiner les identifiants des groupes avec le Curseur d'interrogation (Cursor Inquiry Mode).

- Est-ce que tous les groupes ont leur identifiant ?

Noter que : quand le groupe est petit, il est utile de cliquer sur son poste de légende pour le localiser.

5. Combien de groupes ont été constitués ?

(Ne pas oublier que le premier groupe a la valeur zéro)

 

- Trois de ces groupes sont des parcelles potentielles de sorgho, mais les autres sont des groupes de "fond", d'arrière plan. Avant de calculer la superficie de chaque groupe, il faut éliminer les groupes de fond en leur assignant la valeur zéro.

6. Quelle option d'OVERLAY utiliser pour produire l'image désirée ? Avec quelles images en entrée ?

o) Réaliser un OVERLAY pour produire l'image PLOTS2

- Examiner le résultat avec la palette QUAL256

 

p) Lancer AREA

- Renseigner les boîtes de dialogue comme suit :

Input file => PLOTS2

- Cocher comme format de sortie => Table (Tabular)

- Cocher la surface => en hectares

7. Quelle superficie de chaque parcelle potentielle de sorgho ?

 

Si l'on complète le modèle graphique d'analyse on obtient la figure 5.

fig. 5 - Élimination des parcelles de "fond"

Sources : EASTMAN 2001, p.46

- On peut souhaiter en savoir plus sur ces parcelles :

- altitude minimum ;

- altitude maximum ;

- altitude moyenne, ...

Il faut pour cela utiliser le module EXTRACT.

 

6. Extraction de résumés statistiques

q) Lancer EXTRACT depuis le menu

GIS Analysis/Database Query/EXTRACT

- Renseigner les boîtes de dialogue comme suit :

Feature definition image => PLOTS2

Image to be processed => DRELIEF

- Cocher All listed summary types

Le résultat est automatiquement envoyé dans une Table (Tabular output)

8. Quelle est la hauteur moyenne de chaque parcelle potentielle de sorgho ?

 

Dans cet exercice, nous avons étudié l'opération de base de tout SIG, la recherche dans la base de données. Cette recherche peut être spatiale ou par attributs.

Les requêtes spatiales ont utilisées :

- le Curseur d'interrogation (Cursor Inquiry Mode) ;

- EXTRACT.

Les requêtes par attributs ont utilisées :

- RECLASS ;

- ASSIGN ;

- OVERLAY.

RECLASS et ASSIGN sont similaires. Ils permettent d'isoler sur une carte des catégories de pixels.

OVERLAY permet de combiner des requêtes sur des paires d'images.

 

7. Utilisation du concepteur de Macros dans cet exercice

Le concepteur de macros (Macro Modeler) est un environnement graphique qui permet de construire et faire tourner des modèles. Il ne se substitue pas au modèle graphique d'analyse vu plus haut, car il nécessite de savoir quels modules utiliser. Cependant, une fois votre modèle graphique d'analyse réalisé vous pouvez le paramétrer dans le concepteur de macros et le faire tourner. Il est toutefois conseillé de la faire tourner étape par étape pour évaluer sa pertinence.

Nous allons utiliser le concepteur de macros (Macro Modeler) pour refaire la première partie de cet exercice.

 

7.1. Premiers pas dans le concepteur de Macros

r) Lancer le concepteur de macros (Macro Modeler) depuis le menu de modélisation

Modeling/Macro Modeler

ou par l'icône ci-dessous,

 

s) Le modèle se construit de la gauche vers la droite comme vu sur la figure 4.

- Insérer une image raster depuis la barre de menu du Macro Modeler

Insert/Layer/Raster Layer

ou par l'icône ci-dessous,

- Choisir DRELIEF.

- Enregistrer ce modèle depuis la barre de menu du Macro Modeler

File/Save As...

sous le nom de => Exer2-2.

t) Insérer le module RECLASS depuis la barre de menu du Macro Modeler

Insert/Module/RECLASS

ou par l'icône ci-dessous,

puis sélectionner RECLASS

Cela génère automatiquement un fichier résultats de sortie (temp000)

- Avec un clic droit :

- sur le symbole du fichier de sortie

- Changer son nom en FLOOD2

- sur le symbole de RECLASS

- Examiner la boîte de paramètres de RECLASS

La plupart des modules ont une boîte paramètres identique dans le menu principale et dans le concepteur de macros. RECLASS, comme quelques autres, non. Ici on n'entre pas de séquences de reclassification, comme dans le menu principal, mais des valeurs sous la forme d'un fichier de type reclass (.rcl).

Comme montré sur la figure n° 6, à gauche sont les étiquettes et à droite les paramètres.

fig. 6 - Boite de paramètres du module RECLASS

Sources : EASTMAN 2001, p.52

 

- Avec un clic gauche, regarder la liste des possibilités pour les paramétrer :

- type de fichiers (File type).

=> Choisir la couche raster

- type de classifications (Classification type).

=> Choisir le mode fichier (File Mode)

- nom du fichier .RCL (Name of .RCL file).

=> Choisir FLOOD (créé précédemment avec RECLASS)

- le type de données de sortie (Output data type).

=> Choisir octal et entier (Byte/Integer)

- Valider par OK.

 

7.2. Connection de DRELIEF à RECLASS

- Activer l'icône du connecteur dans la barre d'outils

Le curseur devient un doigt.

- Faire un cliquer-glisser de DRELIEF à RECLASS.

Le lien apparaît avec un sonal.

 

u) Enregistrer le modèle.

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

ou par l'icône ci-dessous,

- Accepter que FLOOD2 soit écrasé s'il existe déjà;

- L'image FLOOD2 doit être identique à FLOOD créée précédemment

 

v) Continuer de construire le modèle jusqu'à ce qu'il soit comme sur la figure n° 7

- Sauver et exécuter le modèle après chaque ajout ;

- À chaque ajout de modules, les paramétrer avec un clic droit pour les ouvrir ;

- Le menu Edit ne fonctionne pas interactivement en mode macro,

mais vous avez précédemment créé le fichier de valeurs CLAYSOIL avec ASSIGN.

- Le module AREA ne produit pas de tableau en mode macro.

Il faut l'exécuter en mode interactif.

Vous arrêterez le modèle conceptuel de macros après BESTSORG pour exécuter AREA ensuite.

fig. 7 - Modèle conceptuel de la macro séquence BESTSORG

Sources : EASTMAN 2001, p.53

 

On retiendra que :

- un modèle sauvé peut être modifié puis exécuté instantanément ;

- c'est un enregistrement fidèle du déroulé des opérations qui permet la recherche d'erreurs.

On va continuer d'utiliser le concepteur de macros pour explorer les modules de ce didacticiel.

Pour plus d'informations sur le concepteur de macros (Macro Modeler), voir le chapitre The Idrisi Macro Modeler dans le IDRISI Guide to GIS and Image Processing Volume 1 de l'aide en ligne du logiciel.

 

8. Utilisation de la calculette à images (Image Calculator) dans cet exercice

Il est très important de comprendre la logique de reclassement et de recouvrement car elles sont à la base de la plupart des analyse SIG. Pour cela, il faut contrôler que le résultat obtenu est celui attendu. IDRISI propose de réaliser un certain nombre d'opérations à partir d'une calculette à images (Image Calculator). Cette calculette à images permet d'écrire des expressions logiques et mathématiques utilisant des constantes ou des images comme variables. Elle offre la plupart des fonctionnalités de RECLASS ou OVERLAY, comme des autres modules, à l'aide d'une boîte de dialogue.

 

w) Pour voir comment la création de BESTSORG peut se faire par la calculette à images, exécuter Image Calculator depuis le menu

GIS Analysis/Database Query /Image Calculator

ou par l'icône ci-dessous,

- Choisir comme type d'opération

=> expression logique (Logical Expression)

- Fichier de sortie (Output file name) => BESTCALC

On donne ici un nom différent pour le comparer à BESTSORG sans l'écraser.

- Entrer l'expression à calculer (Expression to process) en cliquant sur les différents boutons et menus déroulants.

BESTCALC = ([DRELIEF]<= 9)AND([DSOILS]=2)

- Exécuter l'expression en cliquant sur Process Expression

- Comparer le résultat avec celui de BESTSORG

Il est probablement nécessaire d'afficher BESTCALC avec la palette QUAL256 et en désactivant l'Autoscale.

Noter que :

- Il n'est pas possible de finir l'analyse avec le seul Image Calculator car il n'inclue pas les fonctions GROUP, AREA ou EXTRACT ;

- Il est plus facile d'identifier des erreurs avec le concepteur de macros, lorsque l'on ajoute et contrôle chaque étape pas à pas ;

- La calculette à images est plus rapide mais ne permet pas de voir les étapes intermédiaires. C'est pourquoi, dans la suite des exercices, les modules seront utilisés individuellement ou dans le concepteur de macros.

 

Vous pouvez maintenant détruire les fichiers créés lors de cet exercice. Utiliser le IDRISI File Explorer sous le menu File. Ils se trouvent uniquement dans votre répertoire de travail (celui du Working directory paramétré dans votre Data path). Ne détruisez pas les fichiers originaux DSOILS et DRELIEF.

 

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.