fr:int

Une fois que le projet est structuré, il faut penser à lui donner des données à afficher !!
Pour celà, nous allons importer les cartes que nous avons sous forme de scan (format jpg ou de préférence TIFF).

Pour bien importer en les géorectifiant les images, il faut commencer par les importer dans une location spécifique (qui en fait va servir à mettre les images dans le format propre à GRASS). Cette création est créée de la façon décrite précédemment, en sélectionnant une projection XY (type A) et en indiquant comme limite : 0 pour les côtés sud et ouest et la hauteur (en pixels) pour le côté nord, la largeur (toujours en pixels) pour le côté est. Régler la résolution à 1 (tant en X qu'en Y).
Une bonne résolution de scan est de 200dpi, pour une carte au 1/25 000e. Une résolution supérieure ne va pas forcément être très utile et en particulier, elle va alourdir considérablement les calculs et donc allonger les temps d'attente !

Ouvrez donc GRASS avec la location XY (en sélectionnant dans la fenêtre de démarrage). Dans l'interface graphique, choisissez :

File -> Import -> Raster map -> Multiple formats using GDAL

La fenêtre qui s'ouvre vous permet de sélectionner le fichier à importer et d'indiquer au logiciel le fichier à importer (avec son chemin), en cliquant sur l'icône de dossier, et aussi le nom qu'aura cette image dans GRASS. Vous pouvez aussi faire ça dans la fenêtre de Terminal, en tapant la commande suivante :

r.in.gdal input=image.tif output=imageGRASS

où image.tif doit être remplacé par le chemin et le nom du fichier à traiter et imageGRASS par le nom que vous attribuez à l'image dans GRASS.

Cette manipulation prend un petit moment, variable selon la taille de votre carte et sa résolution.
A l'issue de celà, vous vous retrouvez en fait avec 3 fichiers, baptisés du nom que vous aviez indiqué, suivi des extensions .red, .green et .blue : ce sont trois fichiers “noir et blanc” indiquant les valeurs respectivement pour le rouge, le vert et le bleu. Il faut donc maintenant recomposer l'image couleur…

Pour ce faire, il existe la commande r.composite… Dans l'interface graphique, choisissez :

Raster -> Manage map colors -> Create color image from RGB files

Dans la fenêtre qui s'ouvre, sélectionnez les fichiers à fusionner, en fonction de leur extension, et le nom du raster COULEUR. Vous pouvez reprendre le nom générique du début.
En ligne de commande, dans le Terminal, vous saisissez :

r.composite red=xxx.red green=xxx.green blue=xxx.blue levels=32 output=xxx

Le calcul prend un certain temps… Si vous avez plusieurs images à importer, n'hésitez pas à écrire un petit script comme celui-ci :

 #!/bin/sh
#Script d'importation des cartes (format JPG ou TIF ou autres supportŽs par GDAL)
#dans GRASS

if test "$GISBASE" = ""; then
	echo "Tu dois etre dans GRASS pour lancer ce programme"
	exit 1
fi

# import des cartes en XY

r.in.gdal input=/Users/thierrygonon/Desktop/MQ06.tif output=MQ06
r.in.gdal input=/Users/thierrygonon/Desktop/Parcellaire.tif output=MQ06Parc

# composition couleur

r.composite red=MQ06.red green=MQ06.green blue=MQ06.blue output=MQ06R
r.composite red=MQ06Parc.red green=MQ06Parc.green blue=MQ06Parc.blue output=MQ06ParcR

# suppression des tempo

g.remove rast=MQ06.red,MQ06.green,MQ06.blue,MQ06Parc.red,MQ06Parc.green,MQ06Parc.blue
g.remove group=MQ06,MQ06Parc

Ainsi, en même temps, vous importez vos images (2 ici), puis vous les recomposez en couleurs, vous supprimez les fichiers et les groupes temporaires (on verra les groupes un peu plus loin… car ils sont utiles mais ceux-ci, vous pouvez les supprimer). Pour plus de confort, j'ajoute une lettre à la fin du nom du fichier recomposé par rapport au nom primitif d'import…

Maintenant que notre carte est tout à fait visible dans GRASS, on va la reprojeter dans la LOCATION que nous avons créée en premier et qui est la zone de votre étude…

Les groupes sont utilisées par les fonctions du module “imagery”, qui permet la géorectification. Pour les créer, commençons par dire quelle image va dans quel groupe1). Pour celà, dans l'interface graphique, on choisit :

Image -> Develop images and group -> Create/edit imagery group

Là, vous choisissez le nom du groupe et le nom du raster à inclure dans ce groupe. Pour le nom, vous êtes libre… mais restez clair tout de même !!
En ligne de commande, ça donne :

i.group group=XXX input=xxx

group est le nom du groupe et input le nom du raster.
Après ça, vous devez cibler le groupe de traitement.. En mode graphique :

Image -> Develop images and group -> Target imagery group

On précise le nom du groupe à cibler, le nom de la LOCATION et du MAPSET de destination. En ligne de commande :

i.target group=XXX location=DEST mapset=mapset 

group est le nom du groupe, location le nom de la location de destination et mapset le nom du jeu de données d'arrivée (pour ces 2 derniers, c'est le projet général, que vous avez créé au début !).

Ca y est, vous allez pouvoir préciser les points de contrôle.

Ces points sont ceux qui servent à calculer l'équation de rectification. Il est donc essentiel de s'appliquer durant cette étape afin d'avoir une carte de haute qualité à la fin !!
Pour celà, on va dans :

Image -> Rectify and georeference image group -> Set ground control points (GCP's) from raster map or keyboard entry

A ce moment-là, 2 fenêtres s'ouvrent en X11 : une pour l'affichage de la carte, l'autre pour la sélection du groupe à traiter, puis la saisie au clavier des coordonnées.
Les éléments affichés sont, à mon avis, suffisamment clairs… Si cependant vous rencontrez des difficultés, n'hésitez pas à me contacter : je ferais des captures d'écran pour les rajouter ici… Dans le cas standard (une carte scannée et la plupart des cas en fait), il faudra traiter les données avec un polynome d'ordre 1, et donc 4 points sont nécessaires, si possible aux 4 angles.

Le grand moment est arrivé… Il ne reste plus qu'à lancer la géorectification.
Dans l'interface graphique, on choisit :

Image -> Rectify and georeference image group -> Affine and polynomial...

Vous précisez le groupe à utilisez, la carte contenue dans le groupe (c'est une option, mais ça ne coûte rien de la préciser !), l'extension qui sera rajoutée à la fin du nom (une simple lettre suffit…) et l'ordre du polynome, entre 1 et 3 (le plus souvent, ce sera 1).
En ligne de commande, ça nous donne :

i.rectify group=XXX input=xxx extension=e order=1 

group est le nom du groupe, input le nom du raster, extension la lettre qui sera rajoutée (ici, e) et order l'ordre de rectification.

Cette manipulation prend “un certain temps”… N'hésitez pas à la lancer en fin de journée, pour qu'elle se fasse de nuit !

Bien évidemment, comme pour les manip' précédentes, vous pouvez faire un script pour lancer une série de rectification.

Quand votre ou vos rectifications sont terminées, vous pouvez quitter la LOCATION d'importation. Pour ce faire, quitter l'interface graphique :

File -> Exit

puis, dans la fenêtre de Terminal, tapez :

exit

C'est bon, vous pouvez maintenant retourner dans votre LOCATION géoréférencée…


1)
Un groupe contiendra toutes les cartes qui recouvrent EXACTEMENT la même zone. Deux cartes recouvrant PRESQUE la même zone seront placées dans 2 groupes différents
  • fr/int.txt
  • Last modified: 18 years ago
  • by 127.0.0.1