S'abonner à un flux RSS
 

Notice de DICARTO packagé avec R

De Wikhydro

Les routines DICARTO ont été mises au point pour satisfaire à court terme les exigence de la cartographie de la directive inondation. Aujourd'hui elles intègrent toute une gamme de petits outils qui permettent de traiter facilement les MNT Lidar. Elles ont d'abord été réalisées dans un environnement Matlab, pour plus de détails : Notice_de_DICARTO.

Aujourd'hui, le Cerema/DterMed transforme petit à petit ces outils vers un environnement R qui, sous qgis, rend la mise en œuvre plus conviviale et simple.

Sommaire

Installation de R et de ses packages

Pour faire fonctionner les routines il faut dans un premier temps installer le logiciel R. Il est téléchargeable à partir du site http://www.r-project.org/

R est alimenté par un certain nombre de packages, qu'il convient d'installer au préalable. Voilà la liste de ce que nous utilisons actuellement dans nos routines :

Il est conseillé de tout télécharger au format .zip et ensuite de tous les installer depuis le logiciel R en sélectionnant tous les zip (cf Copie d'écran ci-dessous).

DICARTO R installation des packages.jpg Installation des packages depuis le logiciel R DICARTO R installation des packages 2.jpg Sélection de tous les packages au format zip

Installation de Grass 7

Contrairement à la version DICARTO sous Matlab qui s'appuyait sur Grass 6.4 livré avec le produit Qgis-Grass, la version DICARTO sous R utilise Grass 7 qui n'est pas encore livré avec le produit Qgis-Grass 2.6 du ministère, mais qui est livré avec Qgis-Grass 2.8 (version non ministère)(mais des problèmes dans le plugin Grass subsiste).

Si vous utilisez Qgis-Grass 2.6 packagé ministère, il vous faut installer Grass 7. La version actuellement utilisée est la première stable : Grass 7.0.0 du 22 février 2015 télécharger

Utilisation des routines DICARTO depuis Qgis 2.6

Depuis Qgis il est possible de lancer des routines R qui sont formatées en conséquences (format .rsx). Ceci se fait via la "toolbox" ou "Boites à outils de traitement".

DICARTO R boite a outil qgis.jpg La boite à outil de traitement dans Qgis

Si celle-ci n'apparaît pas au lancement de Qgis, il est possible de l'ouvrir via le menu "Processing" puis "toolbox" La boite à outil de traitement dans Qgis

Configuration de Qgis (à faire la 1ère fois)

La 1ère fois que l'on veut faire fonctionner des scripts R quelques configurations sont nécessaires. Elles se font via le menu "processing" puis "options and configurations", alors la fenêtre "options de traitement" apparait. Ensuite :

  1. Cocher la case "keep dialog open after running an algorithm" (cf copie d'écran ci-dessous), pratique pour voir les messages d'erreur ou tout simplement savoir si le calcul est fini
  2. Cocher la case "Activate" du menu "R scripts", puis choisir le répertoire des Routines Cerema, puis le répertoire d'installation de R (cf copie d'écran ci-dessous)
  3. Cliquer sur OK
  4. Les routines DICARTO doivent apparaître dans la boite à outil de traitement (cf copie d'écran ci-dessous).

DICARTO R boite a outil qgis config.jpg Configuration de la boite à outil de traitement dans Qgis

Initialisation de Grass (à faire à chaque fois)

Quasi toutes les routines DICARTO utilisent Grass 7 (sauf DICARTO1b Table d'assemblage ASC et DICARTO4b Lissage Creneaux). Il faut en premier lieu initialiser Grass par la routine "DICARTO0 Initialisation de Grass", double-cliquer dessus la fenêtre ci-dessous s'ouvre. La compléter en s'aidant de l'aide et cliquer sur "Run" (cf copie d'écran ci-dessous).

DICARTO R DICARTO0.jpg Menu de DICARTO0

Une fois la fenêtre complétée, un fichier texte "Init_Routine_CeremaN.txt" où N correspond au numéro du calcul est créé dans le répertoire des routines et est relu à chaque lancement de routines.

Lancement d'une routine

Comme pour la routine DICARTO0, double cliquez sur le script pour le lancer et s'aider de l'aide pour compléter les menus. Appuyer sur "Run" pour que le calcul commence.

Utilisation des routines DICARTO depuis R

Avantages :

  • pouvoir faire tourner plusieurs calculs sur des dossiers GrassData différents en même temps
  • gain de temps de l'ordre de la minute au lancement de la routine

Inconvénients :

  • Pas de menus pour rentrer les paramètres

Procédures :

  • Repérer le répertoire où sont stockées les routines Cerema
  • Modifier ou créer un nouveau fichier dans ce répertoire "Init_Routine_CeremaN.txt" où N correspond au numéro du calcul avec pour contenu, celui-ci doit être adapté à votre cas :
#Chemin de l'exe de Grass

C:/GRASS GIS 7.0.0
#Monde Grass temporaire (1=oui, 0=non)
0
#Chemin des donnees Grass
C:/GRASSDATA
#Localisation
WIKHYDRO
#Jeu de donnees
EXEMPLE
#Projection (EPSG)
2154
#Chemin des routines R
C:/R/Routine_Cerema

  • Lancer R
  • Ouvrir la routine à faire tourner (au format .R)
  • Modifier les paramètres à la main en début de routine
  • Sélectionner toutes les lignes de routines (Ctrl+A) et cliquer droit "Exécuter la ligne ou la sélection"
  • Et c'est parti pour le calcul ! des menus peuvent apparaître demandant de sélectionner des fichiers.

Listes des routines développées

Ci-dessous la liste des routines DICARTO basculées en R utilisable dans Qgis ou directement dans R, entre parenthèse le numéro de la version en cours, pour plus d'informations voir les aides des routines dans Qgis :

  • DICARTO0 Initialisation Grass (V1.0) : Stocke les données nécessaires à l'ouverture de Grass dans un fichier "Init_Routine_CeremaN.txt"
  • DICARTO1b Table Assemblage ASC (V1.0) : Permet de créer une table d'assemblage à partir de rasters (.asc) stockées dans un répertoire donné
  • DICARTO2 Fusion Raster (V1.0) : Permet de fusionner des rasters (.asc) sur des secteurs définis
  • DICARTO3a Classement (V1.0) : Permet de classer, puis de vectoriser les données raster, algorithme de nettoyage inclu (méthode 1).
  • DICARTO3b Classement Simple (V1.0) : Permet de classer, puis de vectoriser les données raster, algorithme de nettoyage inclu (méthode 2). Voir aussi la page Classement en iso-valeurs des données LIDAR
  • DICARTO4b Lissage Creneau (V1.0) : Permet de lisser les contours des vectorisations des rasters en supprimant les marches d'escalier
  • DICARTO6 Rupture de Pente (V1.0) : Permet de détecter les ruptures de pente. Voir aussi la page Détection de lignes de rupture de pentes avec le LIDAR
  • DICARTO7 Detection Remblai (V1.0) : Permet de détecter les remblais. Voir aussi la page Détection de remblai avec le LIDAR
  • DICARTO8 Zone protegee (V1.0) : Permet de déterminer au format raster les zones protégées des submersions marines
  • DICARTO10b Interpolation Profils 1D (V1.0): Permet d'interpoler des profils sur un MNT et ainsi de connaitre l'altitude Z des points du profils dont l'espacement est défini par l'utilisateur. Voir aussi la page Détection de remblai avec le LIDAR


Le créateur de cet article est Céline Trmal
Note : d'autres personnes peuvent avoir contribué au contenu de cet article, [Consultez l'historique].

  • Pour d'autres articles de cet auteur, voir ici.
  • Pour un aperçu des contributions de cet auteur, voir ici.


Le créateur de cet article est Frédéric Pons
Note : d'autres personnes peuvent avoir contribué au contenu de cet article, [Consultez l'historique].

  • Pour d'autres articles de cet auteur, voir ici.
  • Pour un aperçu des contributions de cet auteur, voir ici.
Outils personnels