# Procédure ALM de cartographie automatique du paysage

Roland Allart, Benoît Ricci, Sylvain Poggi

► To cite this version:

Roland Allart, Benoît Ricci, Sylvain Poggi. Procédure ALM de cartographie automatique du paysage. Cahier des Techniques de l'INRA, 2021, 103, pp.1-12. hal-03151041

HAL Id: hal-03151041

https://hal.inrae.fr/hal-03151041v1

Submitted on 4 Jul 2024

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution - ShareAlike 4.0 International License
# Procédure alm de Cartographie Automatique du Paysage

Roland Allart<fnref n="1" />, Benoit Ricci<fnref n="1" />, Sylvain Poggi<fnref n="2" />

**Roland Allart** - Ingénieur au sein de l'UMR Agroécologie (Centre de recherche Bourgogne-Franche-Comté). Dans le cadre du projet PREPARE, « Comprendre et PREDire les effets des Paysages de pratiques sur la REgulation biologique », financé par l'Office Français de la Biodiversité (OFB), mes travaux portent sur l'analyse de données spatialisées de régulation biologique. Mes activités s'articulent autour de la modélisation statistique et de la cartographie de zones d'études intégrant notamment le réseau SEBIOPAG.

<figure><img src="image_2.png" /><figcaption>**Roland Allart**
roland.allart@inrae.fr</figcaption></figure>

**Benoit Ricci** - Chargé de recherche dans le pôle « Gestion durable des adventices » de l'UMR Agroécologie (Centre Bourgogne-Franche-Comté). Je m'intéresse à la biodiversité, aux dynamiques de bioagresseurs et d'auxiliaires et aux régulations biologiques dans les agroécosystèmes. Je recherche comment combiner les pratiques agricoles, les infrastructures agroécologiques et les caractéristiques du paysage pour favoriser la régulation biologique des bioagresseurs dans des systèmes de production à faible impact environnemental. Je mobilise pour cela des approches d'analyses de données spatialisées et des modèles de représentation des processus agroécologiques.

<figure><img src="image_3.png" /><figcaption>**Benoit Ricci**
benoit.ricci@inrae.fr</figcaption></figure>

**Sylvain Poggi** - Chargé de recherche au sein de l'équipe Ecologie et Génétique des Insectes de l'UMR IGEPP (Centre de recherche Bretagne-Normandie). Par des approches de modélisation dynamique des processus écologiques et de modélisation statistique, j'étudie comment l'organisation spatiotemporelle du paysage agricole, associée aux conditions climatiques, influence la colonisation des parcelles par des bioagresseurs ou des auxiliaires des cultures. Je travaille également sur la recherche de stratégies optimales de surveillance d'insectes menaçant d'invasion biologique.

<figure><img src="image_4.png" /><figcaption>**Sylvain Poggi**
sylvain.poggi@inrae.fr</figcaption></figure>

**Résumé.** La cartographie des occupations du sol est essentielle à de nombreuses études ayant pour objectif d'établir les relations entre des processus ou fonctions écologiques et la structure du paysage. Cette cartographie est souvent réalisée manuellement, parfois de manière laborieuse et souvent non reproductible. La procédure de

<footnote n="1">¹ Agroécologie, AgroSup Dijon, INRAE, Univ. Bourgogne, Univ. Bourgogne Franche-Comté, 21000 Dijon, France</footnote>

<footnote n="2">² INRAE, Agrocampus Ouest, Université de Rennes, IGEPP, 35650 Le Rheu, France</footnote>
cartographie automatique du paysage que nous présentons ici prend la forme d'un package R utilisable par le plus grand nombre. Elle permet de renseigner des zones géographiques (« buffers ») à partir de couches géographiques vectorielles importées telles que le Registre Parcellaire Géographique (RPG) ou le Référentiel Géographique à Grande Echelle Topographique (BDTOPO). Cette procédure est conçue pour être reproductible, efficace et modulable. Cet article présente un exemple d'application de la procédure et explique les 3 fonctions principales du package alm (pour Automated Landscape Mapping) qui permettent de mettre en œuvre cette procédure.

**Mots clés** : cartographie ; occupation des sols ; package R ; écologie du paysage ; données géoréférencées

**Abstract.** Land-use cartography is essential to numerous studies that study the relations between processes or ecological functions and the landscape structure. This cartography is often made manually, sometimes arduously and in a non-reproductible manner. The process of automatic cartography of the land uses we present here was developed as an R package and can be used by anyone, even with no strong expertise of the R programming language. It provides the land uses within specified geographic zones (« buffers ») from vectorial geographic layers imported as it states in the geographic parcel register (RPG) or the geographic reference book for high scale topographic (BDTOPO). This process is reproductible, efficient and modulable. This article presents an application taking advantage of the **alm** (Automated Landscape Mapping) package, and provides guidance on how to use the main functions of the **alm** package.

**Keywords.** Mapping, land use, R package, landscape ecology, georeferenced data
## Introduction

Le renseignement des occupations du sol d'une zone est nécessaire pour de nombreuses études, par exemple lorsque sont étudiées les relations entre des processus (e.g. la régulation biologique) ou fonctions écologiques et la structure (composition et configuration) de paysages agricoles. Ces questions sont au cœur même de disciplines telles que l'écologie du paysage, et requièrent communément de considérer un grand nombre de zones d'études afin de prendre en compte la variabilité des paysages. Pour ce type de problématique, la cartographie est couramment effectuée manuellement dans un logiciel de SIG (souvent QGIS ou ARCGIS) en combinant des observations de terrain, des données déjà existantes ou des analyses de photos aériennes ou satellitaires. Cette approche pose deux principaux problèmes. Le premier inconvénient est le temps de travail qui est particulièrement long, impliquant des campagnes d'observation consistant en des tournées en voitures pour identifier visuellement les types d'occupations du sol. Dans le cas de projets pluriannuels portant sur des paysages de grande culture, compte tenu des changements liés aux rotations de culture, ce travail est à reconduire chaque année. Le second inconvénient est que les saisies et traitements ainsi effectués manuellement avec un logiciel de SIG ne sont pas reproductibles : rien ne garantit que deux exécutions manuelles de la même procédure produisent deux cartographies exactement identiques.

Le projet PREPARE [1] « Comprendre et prédire les effets des paysages de pratiques sur la régulation biologique » (Ecophyto II, 2019-2022) s'inscrit dans le champ thématique de l'écologie du paysage appliquée aux agroécosystèmes. Ce projet relève le défi de développer avec les acteurs locaux une analyse précise et géolocalisée des effets de la mobilisation de différentes combinaisons de leviers territoriaux (habitats semi-naturels, pression phytosanitaire et diversité des cultures) sur la régulation biologique de bioagresseurs. PREPARE s'appuie sur cinq terrains d'étude (Avignon, Bordeaux, Dijon, Rennes, Toulouse) comprenant 120 paysages suivis annuellement depuis 2014 pour la régulation biologique, la gestion agricole et les propriétés des paysages. Le besoin de renseigner les occupations du sol pour plus d'une centaine de sites, sur plusieurs années, et à de multiples échelles spatiales (i.e. qui soient adaptées aux processus écologiques étudiés), a amené le collectif du projet PREPARE à rechercher une alternative aux solutions manuelles évoquées précédemment. L'absence de solution simple, pratique et automatisée, a motivé la conception et le développement du package **alm** dont nous illustrons ici l'utilisation pratique.

La procédure de cartographie automatique du paysage que nous présentons vise à renseigner de manière automatisée une ou plusieurs zones (« buffers ») à partir de données cartographiques sources (e.g. Registre Parcellaire Graphique (RPG), CES Occupation des sols (OSO), Référentiel Géographique à Grande Echelle Topographique (BDTOPO), Corine Land Cover). Cette procédure est mise à disposition sous la forme du package **alm** (pour Automated Landscape Mapping) développé dans l'environnement de programmation R [2]. Ce package comporte trois fonctions principales qui peuvent être utilisées sans besoin de connaissances avancées en R grâce à la documentation complète du package qui renseigne sur les entrées et sorties attendues par ces fonctions. L'efficacité du traitement des données géographiques repose sur les performances du package sf [3] qui est le package actuel de référence des traitements SIG sous R. La procédure ainsi proposée est reproductible (i.e. deux exécutions identiques du script avec les mêmes données d'entrée produisent les mêmes résultats), modulable via le paramétrage des fonctions (choix des sources cartographiques utilisées, spécification de l'ordre d'intégration séquentielle de ces sources) et particulièrement efficiente pour cartographier de manière automatique un grand nombre de zones.
# Description de la méthode

## Préambule

Nous illustrons l'utilisation de la procédure de cartographie automatique du paysage dans un contexte extrait du projet PREPARE. L'objectif est de renseigner les occupations du sol de 120 sites (ou « buffers » dont le centre est géoréférencé), à l'aide de trois bases de données que nous souhaitons assembler dans un ordre précis pour cartographier nos paysages, et sans superposition générée par cet assemblage :

1. Les données de végétation issues de l'IGN, BDTOPO® v3.0, 2019 [4]. Cette couche vectorielle contient notamment les données de haies que nous souhaitons renseigner prioritairement dans cet exemple. Elle contient également des données relatives aux forêts, vignes et vergers.

2. Les données du Registre Parcellaire Graphique de l'IGN, 2018 (RPG [4]). Leur utilisation est très fréquente pour les cartographies du paysage agricole, dont nous souhaitons obtenir la caractérisation la plus fine possible en termes d'usage du sol sans pour autant masquer les haies. Cette couche d'information vectorielle est donc incorporée en second.

3. Les données de route issues de la BDTOPO® (ici, polylignes converties en polygones en se basant sur l'information des largeurs de routes). Dans la mesure où les routes peuvent constituer un obstacle au déplacement de certaines espèces, cette information est pertinente. Dans notre exemple, l'intégrer en troisième position revient à prendre le risque d'ignorer une partie des zones de routes qui pourraient être également caractérisées en zone de végétation dans la BDTOPO ou en zone agricole dans le RPG.

4. Enfin, les données du Centre d'Expertise Scientifique Occupation des sols (OSO [5]). Nous souhaitons un recouvrement maximal de notre cartographie du paysage. Pour cela, l'utilisation des données OSO est idéal car elles consistent en un recouvrement intégral à l'échelle nationale.

Dès lors que nous avons récupéré les quatre couches cartographiques vectorielles au format shapefile (issues des trois bases de données) et identifié les buffers à cartographier, il est possible de commencer à appliquer la procédure !

<figure><img src="image_5.png" /><figcaption>Figure 1. Résumé schématique de l'objectif de la procédure de cartographie automatique d'un paysage d'étude. Pour renseigner les occupations du sol d'un buffer dont la localisation a été spécifiée initialement, l'information vectorielle issue de sources de données géographiques (OSO, Routes, RPG, Veg) est intégrée selon une séquence définie par l'utilisateur.</figcaption></figure>
# Le Cahier des Techniques de l'Inra 2021 (103)

## Création des buffers

La première fonction du package alm que nous utilisons est la fonction alm_create_buffer (Fig. 2).

```R
list_buffer <- alm_create_buffer(buffer_table, # the previous table
                                  set.endCapStyle = "ROUND", # we want a ROUND or a SQUARE
                                  set.dist = 1000 # radius (ROUND), side (SQUARE)
)
```

<caption>Figure 2. Paramètres et appel de la fonction alm_create_buffer.</caption>

Cette fonction crée la liste des buffers que nous souhaitons cartographier. Il convient de spécifier le tableau de données indiquant le nom des buffers ainsi que les coordonnées X et Y de leurs centroïdes (Fig. 3). Deux paramètres indiquent si les buffers sont circulaires ou carrés, et leur dimension (resp. rayon ou longueur de côté, en mètres).

<table><caption>Figure 3. Exemple de tableau de données utilisé par la fonction alm_create_buffer.</caption><thead><tr><th>Site</th><th>Buffer</th><th>Code</th><th>X</th><th>Y</th></tr></thead><tbody><tr><td>61</td><td>Toulouse</td><td>T01</td><td>40</td><td>534349.5</td><td>6245549</td></tr><tr><td>62</td><td>Toulouse</td><td>T02</td><td>45</td><td>542258.1</td><td>6247465</td></tr><tr><td>63</td><td>Toulouse</td><td>T03</td><td>46</td><td>544216.7</td><td>6246959</td></tr><tr><td>64</td><td>Toulouse</td><td>T04</td><td>52</td><td>539168.3</td><td>6248877</td></tr></tbody></table>

En sortie, la fonction fournit une liste d'objets cartographiques. Chaque élément de cette liste représente l'un des buffers que l'on souhaite cartographier. La figure 4 illustre les buffers que l'on vient de créer. A noter qu'il est également possible d'importer des buffers à partir de fichiers au format shapefile.

<figure><img src="image_6.png" /><figcaption>Figure 4. Visualisation des buffers créés avec la fonction alm_create_buffer. Représentation avec un fond de carte standard du package tmap.</figcaption></figure>

Nous devons maintenant importer les données avec lesquelles les occupations du sol de ces buffers seront renseignées.
## Import des données sources

Comme mentionné en préambule, nous souhaitons renseigner les occupations du sol au moyen de quatre couches vectorielles de données cartographiques au format shapefile dans l'ordre suivant :

1. BDTOPO Végétation

2. RPG

3. BDTOPO Routes

4. OSO

Pour cela, on utilise la fonction `alm_set_shp.sources` :

```
list_shape <- alm_set_shp.sources(Name, Path, Nomenclature_Col, Order,
                                  set.save = TRUE, # Want to save the output ?
                                  trunc.with.buffers = TRUE, # Only keep the usefull part ?
                                  list.buffer = list_buffer, # Create in previous step
                                  check validity = TRUE, # Want to check shape validity ?
                                  check.fillable = TRUE) # Want to know how much we can fill of all
# buffers with our source shapes ?
```

<caption>Figure 5. Paramètres et appel de la fonction `alm_set_shp.sources`</caption>

L'utilisateur doit renseigner les principaux paramètres d'entrée de cette fonction :

* `Name`, `Path` et `Nomenclature_Col` sont des vecteurs de textes qui indiquent respectivement : le nom de la couche, le chemin d'accès au fichier de cette couche (direct ou relatif) et le nom de la colonne qui sert de nomenclature pour la couche en question (par exemple pour la couche « Veg », la colonne « NATURE » contient l'information de l'occupation du sol, ici principalement les haies, les forêts, les vignes et les vergers).

* `Order` est un vecteur de nombres entiers représentant l'ordre de priorité dans lequel les couches d'information sont considérées, en cas de superposition de couches. La valeur 1 correspondant à la couche qui sera utilisée en premier pour renseigner les occupations du sol dans les buffers.

Ces informations sont faciles à représenter dans un tableau, dans notre cas, cela donne :

<table><caption>Figure 6. Capture d'écran explicitant la spécification des quatre couches vectorielles de données cartographiques utilisées.</caption><thead><tr><th></th><th>Name</th><th>Path</th><th>Nomenclature_col</th><th>Order</th></tr></thead><tbody><tr><td>1</td><td>Veg</td><td>C:/.../Veg.shp</td><td>NATURE</td><td>1</td></tr><tr><td>2</td><td>RPG</td><td>C:/.../RPG.shp</td><td>CODE_CULTU</td><td>2</td></tr><tr><td>3</td><td>Roads</td><td>C:/.../Roads.shp</td><td>NATURE</td><td>3</td></tr><tr><td>4</td><td>OSO</td><td>C:/.../OSO.shp</td><td>Classe</td><td>4</td></tr></tbody></table>

Les autres paramètres sont :

* `set.save`: `TRUE` ou `FALSE`, pour sauvegarder ou non la sortie dans un dossier nommé « Results »

* `trunc.with.buffers`: `TRUE` pour récupérer les données concernant uniquement les buffers et éviter, par exemple, de manipuler les données de tout un département géographique, ce qui risquerait d'allonger considérablement le temps de traitement.

* `list.buffer`: la liste des buffers créée précédemment (cf. Figure 3).

* `check validity`: `TRUE` ou `FALSE` pour vérifier ou non la validité des données que l'on vient d'importer. Vérification similaire aux vérifications de validité présentes dans QGIS. Ces vérifications sont celles du package `sf`.
# Le Cahier des Techniques de l'Inra 2021 (103)

* `check.fillable`: `TRUE` ou `FALSE` pour calculer ou non la surface des buffers qui pourra effectivement être complétée par les couches cartographiques importées. Données fournies en hectares (ha) et en pourcentage de surface totale des buffers (Fig. 7 et 8).

<figure><img src="image_7.png" /><figcaption>Figure 7. Tableau affiché dans la console R lors de l'exécution de la fonction `alm_set_shp.sources` avec le paramètre `check.fillable = TRUE` et présentant la surface de chaque couche cartographique incluse dans l'emprise totale des buffers (et la proportion correspondante).</figcaption></figure>

Ce tableau traduit, pour chaque couche de données importée, sa capacité à renseigner les occupations du sol de l'ensemble des buffers définis. Dans notre exemple, on remarque que la base de données OSO permet de renseigner complètement (100 %) la surface des quatre buffers considérés, et que les données de végétation et du RPG renseignent ensemble une part très importante de la surface des buffers (92.5 %).

En sortie, la fonction `alm_set_shp.sources` produit une liste d'objets sf dont chacun des éléments correspond à une des couches importées.

<figure><img src="image_8.png" /><figcaption>Figure 8. Représentation visuelle de la capacité de remplissage de chaque couche vectorielle pour un buffer donné.</figcaption></figure>

A ce stade, nous avons spécifié les buffers à renseigner et chargé les données que nous souhaitons utiliser pour les remplir. Il nous reste donc à effectuer l'étape de remplissage.
## Cartographie du paysage

Pour remplir les buffers et donc cartographier les paysages, nous utilisons la fonction `alm_run` (Fig. 9).

```R
data_final <- alm_run(to.fill = "all", # here we want to fill every buffers
  list.buffer = list_buffer, # Create in first step
  list.shape = listShape, # Create in second step
  log.save = FALSE, # do we want to save console log ?
  log display = TRUE, # do we want to display them too ?
  save = TRUE, # do we want to save last results ?
  save.state = TRUE, # do we want to do save state after each buffer
                     # in case of a bug ?
  use.save.state = FALSE, # do we want to use some previous save state ?
  set.dTol = 0.01, # a dTolerance parameter for simplification
  set.dist = -0.0001) # a distance parameter for some part of the
                     # function
```

<caption>Figure 9. Paramètres de la fonction `alm_run`.</caption>

La fonction `alm_run` admet en entrée les buffers et les couches importées générés lors des précédentes étapes via les deux paramètres suivants :

* `list.buffer` = `list_buffer`

* `list.shape` = `listShape`

Ces deux paramètres sont déjà renseignés par défaut avec les noms des objets tels que définis dans les scripts des Figures 5 et 9.

Les autres paramètres d'entrée sont les suivants :

* `to.fill`: un vecteur qui indique les buffers que l'on souhaite remplir avec la procédure. « all » sélectionne l'ensemble des buffers répertoriés dans l'objet `list_buffer`. `c(1,4)` permet de limiter la procédure au premier et au quatrième buffer de `list_buffer`.

* `log.save` et `log display`: `TRUE` ou `FALSE`. Deux paramètres relatifs aux messages affichés dans la console R. Le premier pour les sauvegarder ou non, le second pour les afficher ou non.

* `save`: `TRUE` ou `FALSE`. Pour sauvegarder ou non les sorties de la fonction.

* `save.state` et `use.save.state`: `TRUE` ou `FALSE`. Deux paramètres relatifs à l'utilisation de checkpoint dans la procédure. Le premier pour sauvegarder ou non les résultats à chaque fois qu'un buffer a été rempli. Le second pour utiliser les sauvegardes de résultats obtenus antérieurement. Ce paramètre permet d'éviter de perdre tous les calculs effectués en cas de bug en cours du remplissage d'un grand nombre de buffers.

* `set.dTol`: paramètre de correction. Quand le traitement devient trop complexe pour les fonctions du package `sf`, les contours sont simplifiés au moyen de la fonction `st_simplify` qui peut être modulée via l'argument `dTol`.

* `set.dist`: paramètre de correction. Le remplissage peut créer des données linéaires ou des singularités qu'il est nécessaire de nettoyer. Une solution efficace consiste à retirer une partie de la périphérie de la couche. `set.dist` indique la distance tronquée (0.1mm par défaut).

L'exécution de la fonction `alm_run` génère l'affichage dans la console R des informations sur le niveau de remplissage (Fill) du buffer traité, (exprimé en hectares et en pourcentage de la surface du buffer) par l'ensemble des couches puis par chacune d'elles individuellement, ainsi que sur la proportion de double recouvrement (DR) présent au sein des couches (Fig. 10). Il convient de noter que ce double recouvrement provient des couches sources utilisées, la procédure étant spécifiquement conçue pour ne pas permettre la création de double recouvrement entre les différentes couches. A chaque buffer est associée une quantification de l'information perdue
# Le Cahier des Techniques de l'Inra 2021 (103)

(Lost), exprimée en hectares, qui correspond à la surface du buffer qui n'a pas pu être remplie par la procédure. Enfin le temps de traitement est indiqué. Toutes ces informations peuvent être sauvegardées (paramètre save) pour être utilisées / analysées a posteriori.

```
[1] "T01"
Shape      Fill_ha  Fill_percent  DR_ha   DR_percent   # DR for Double Recovery
1         Full  314.0 [ha]    100.0 [%]  0 [ha]      0 [%]   # 100% filled and no Double Recovery
2         Veg   39.0 [ha]     12.4 [%]  0 [ha]      0 [%]
3         RPG   246.0 [ha]    78.3 [%]  0 [ha]      0 [%]
4         Routes  2.8 [ha]     0.9 [%]  0 [ha]      0 [%]
5         OSO   26.2 [ha]     8.3 [%]  0 [ha]      0 [%]

[1] "Lost : "
0 [ha]                                     # No significant lost
[1] " T01 Treatment time : 0.26 minute(s)"   # only a few sec to do all treatment
```

<caption>Figure 10. Exemple d'affichage dans la console à l'exécution de la fonction alm_run pour un buffer donné.</caption>

En sortie, la fonction alm_run produit un objet sf / data.frame unique (Fig. 11) comportant les colonnes suivantes :

* nomenclature_Source : nomenclature présente dans la colonne conservée dans les couches sources (via Nomenclature_col à l'import des sources).

* source : nom de la couche source associée aux données géographiques

* buffer : buffer auquel les données géographiques appartiennent (permet a posteriori d'extraire les données correspondant à un sous-ensemble de buffers)

* geometry : informations géographiques des données (polygon ou multipolygon)

Cet objet peut ensuite être sauvegardé en fichier shapefile (au format .shp avec la fonction st_write du package sf) ou transformé en raster (par exemple, avec la fonction rasterize du package raster). Il est ainsi utilisable au même titre que toute couche cartographique vectorielle pour les différents systèmes d'information géographique.

```
Simple feature collection with 6 features and 3 fields
geometry type: POLYGON
dimension: XY
bbox: xmin: 533519 ymin: 6245152 xmax: 535203.8 ymax: 6246371
projected CRS: RGF93 / Lambert-93

Nomenclature_Source Source Buffer geometry
1 Vigne Veg T01 POLYGON ((533647.2 6245202,...
2 Forêt ouverte Veg T01 POLYGON ((534380 6246233, 5...
3 Forêt fermée de feuillus Veg T01 POLYGON ((535203.8 6246068,...
4 Haie Veg T01 POLYGON ((533623.8 6246028,...
5 Haie Veg T01 POLYGON ((533559.8 6245994,...
6 Haie Veg T01 POLYGON ((533810.9 6246346,...
```

<caption>Figure 11. Affichage de l'objet sf / data.frame en sortie de la fonction alm_run.</caption>

La figure 12 illustre le remplissage séquentiel réalisé par la procédure.
<figure><img src="image_9.png" /></figure>

Figure 12. Représentation visuelle du remplissage séquentiel d'un buffer par chacune des couches vectorielles sources. La première couche d'information incorporée (Veg) renseigne 12 % de l'occupation du sol du buffer (haut-gauche). La couche suivante (RPG) complète le remplissage (haut-droite) en renseignant 78 % d'occupation du sol supplémentaire. La troisième couche permet de renseigner les routes dans les zones restées non renseignées. Enfin le remplissage final est réalisé avec la couche OSO et permet un remplissage intégral du buffer considéré.

Le résultat final de la procédure est un buffer dont les occupations du sol ont été renseignées à partir de l'information disponible dans les sources de données utilisées (Figure 13).
<figure><img src="image_10.png" /><figcaption>Figure 13. Représentation visuelle du remplissage pour un buffer donné au moyen du package alm.</figcaption></figure>

Conclusion

Le package alm propose une procédure automatisée, reproductible et efficiente pour le renseignement des
occupations du sol de zones d'études (« buffers »). Motivée par les questions de recherche traitées dans le cadre
du projet PREPARE, cette procédure a été conçue puis implémentée dans l'environnement de programmation R
pour être utilisable par le plus grand nombre. L'utilisateur choisit librement les couches vectorielles qu'il souhaite
utiliser et spécifie l'ordre dans lequel il souhaite qu'elles soient intégrées. La procédure gère ensuite l'intégration
séquentielle de ces couches vectorielles pour remplir les buffers, en utilisant des packages fiables et éprouvés par
la communauté des utilisateurs de R tels que sf pour le traitement des données géographiques ou dplyr pour la
manipulation des données. Des informations sont fournies sur le remplissage effectué et l'éventuelle présence de
double recouvrement dans les données sources, et la cartographie résultante peut être visualisée et analysée sous
R, ou exportée vers un format standard (e.g. shapefile).

Cette procédure offre une potentielle alternative à la caractérisation des occupations du sol par inspection visuelle
sur le terrain lorsque les moyens (coûts et temps humain) sont insuffisants. Elle permet également de visualiser
au-delà d'une zone potentiellement déjà renseignée par des observations sur le terrain pour un éventuel
changement d'échelle.

Le package **alm** et toutes les aides associées (vignette, documentation, outil d'aide à la visualisation) sont
disponibles sur le portail Data INRAE [6].
Cet article est publié sous la licence Creative Commons (CC BY-SA).

<figure><img src="image_11.png" /></figure>

https://creativecommons.org/licenses/by-sa/4.0/

Pour la citation et la reproduction de cet article, mentionner obligatoirement le titre de l'article, le nom de tous les auteurs, la mention de sa publication dans la revue « Le Cahier des Techniques de l'Inra», la date de sa publication et son URL).

Bibliographie

[1] Projet PREPARE « Comprendre et PREDire les effets des PAysages de Pratiques sur la REGulation biologique » (2019-2022). Plan Ecophyto II, « Leviers territoriaux pour réduire l'utilisation ou les risques liés aux produits phytopharmaceutiques »

[2] R Core Team (2020). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria., URL: http://www.R-project.org.

[3] Pebesma E (2018). "Simple Features for R: Standardized Support for Spatial Vector Data." The R Journal, 10(1), 439–446. https://doi.org/10.32614/RJ-2018-009.

[4] Institut National de l'Information Géographique et Forestière (2020). Géoservices IGN. https://geoservices.ign.fr/documentation/

[5] Pôle de données et de services surfaces continentales Theia (2020). Muscate – Atelier de distribution. https://theia.cnes.fr/atdistrib/rocket/#/home

[6] Allart Roland; Ricci Benoît; Poggi Sylvain (2020) "R package alm: Automated Landscape Mapping", https://doi.org/10.15454/AKQW7Y, Portail Data INRAE