WikiProject France/Cadastre/Import semi-automatique des bâtiments

From OpenStreetMap Wiki
Jump to: navigation, search

Le site du cadastre permet d'exporter une zone au format pdf. En réalisant cet export sur une zone suffisamment grande, on obtient la carte entière des bâtiments d'une ville dans un format vectoriel.

Le script dont il est question sur cette page va utiliser cet export au format pdf pour le convertir en un fichier .osm contenant tous les bâtiments. Il est ainsi facile d'importer tout le bâti d'une ville d'un coup, avec seulement des corrections à faire plutôt que le traçage complet.

En marge de la méthode en cours d'import semi automatique, je propose une réflexion sur un import beaucoup plus global et homogène 100 % automatique : WikiProject France/Cadastre/Import automatique des bâtiments

Contents

Télécharger les fichiers OSM directement

Avant de se lancer dans l'installation et l'utilisation du script, sachez que les fichiers OSM par commune (que génère le script) sont probablement directement téléchargeables pour les communes qui vous intéressent. Le table suivant regroupe les liens vers les sites de téléchargement, ainsi que vers la page de suivi, qui indique si le bati est déja importé ou non. Attention, les fichiers ainsi disponibles ne sont pas importables directement dans OSM : il faut faire des traitements avec JOSM préalablement.

Toutes les communes ne sont pas présentes car seules les communes du cadastre vectorisé peuvent être traitées ainsi.

Vous trouvez les fichiers pour l'ensemble du territoire à l'adresse suivante : http://cadastre.cleo-carto.org

Le tableau suivant liste les pages de coordination des efforts par département

Département Page de suivi
01
02
03 Allier
04 Alpes-de-Haute-Provence
05 Hautes-Alpes
06 Alpes-Maritimes
07 Ardèche
08
09 Ariège
10
11 Aude
12 Aveyron
13 Bouches-du-Rhône
14 Calvados
15 Cantal
16 Charente
17 Charente-Maritime
18 Cher
19 Corrèze
2A Corse-du-Sud
2B
21 Côte-d'Or
22 Côtes-d'Armor
23 Creuse
24 Dordogne
25 Communes du Doubs
26 Drôme
27
28 Eure-et-Loir
29 Finistère
30 Gard
31 Haute-Garonne
32 Gers
33 Gironde
34 Hérault
35 Ille-et-Vilaine
36
37 Indre-et-Loire
38 Isère
39 Communes du Jura
40 Landes
41 Loir-et-Cher
42 Loire
43 Haute-Loire
44 Loire-Atlantique
45 Loiret
46 Lot
47
48 Lozère
49 Maine-et-Loire
50 Manche
51
52 Haute-Marne
53
54
55
56 Morbihan
57
58
59 Nord
60
61 Orne
62 Pas-de-Calais
63 Puy-de-Dôme
64 Pyrénées-Atlantiques
65 Hautes-Pyrénées
66
67 Bas-Rhin
68 Haut-Rhin
69 Rhône
70 Communes de la Haute-Saône
71 Saône-et-Loire
72 Sarthe
73 Savoie
74 Haute-Savoie
75 Paris, Buildings progress
76 Seine-Maritime
77
78 Yvelines
79 Deux-Sèvres
80 Somme
81 Tarn
82 Tarn-et-Garonne
83 Var
84 Vaucluse
85 Vendée
86 Vienne
87 Haute-Vienne
88
89 Yonne
90
91 Essonne
92 Hauts-de-Seine
93 Seine-Saint-Denis
94 Val-de-Marne
95 Val-d'Oise
971 http://ratzillas.com/bati/971.tar.bz2 bâti+rivière+piscine
972 http://ratzillas.com/bati/972.tar.bz2 bâti+rivière+piscine
973 http://ratzillas.com/bati/973.tar.bz2 bâti+rivière+piscine (Cayenne / Matoury / Rémire-MontJoly)
974 http://ratzillas.com/bati/974.tar.bz2 MAJ bâti+rivière+piscine

Le template Template:Fr:Zone_Status peut être utilisé dans les pages de référence. Exemple : France:Haut-Rhin

Obtenir les extractions du cadastre

À l'origine un script Perl permettait de réaliser l'extraction ; cette méthode n'est plus à utiliser.

Un service en ligne permet d'obtenir des extractions : http://cadastre.cleo-carto.org/

Traitements des bâtiments avec JOSM avant envoi vers serveur OSM

  1. Charger les données générées par le script (.osm) dans un calque vide (ne pas charger de données depuis le serveur au préalable).
  2. Supprimez s'il y a lieu les tags inutiles présents dans certains dépôts, principalement les tags "note:qadastre" ou "note:import-bati"
  3. Enregistrer le fichier, puis le fermer. Recharger le fichier osm dans un calque vide. Un certain nombre d'erreurs détectées dans la Validation auront disparues
  4. Avec le plug-in Cadastre charger un extrait du cadastre sur la zone pour contrôler qu'il n'y a pas de décalage
  5. Grace au plug-in Validator, corriger
    1. les erreurs : ways et noeuds en double
    2. les avertissements : superpositions de bâtiments, points isolés...
  6. Simplifier les lignes contenant trop de points. Une valeur entre 0.03 et 0.08 est conseillée (la plus haute simplifiera plus) :
    1. Ajuster le coefficient de simplification dans les préférences avancées (dernier onglet des préférences) en ajustant la propriété "simplify-way.max-error" (Attention à utiliser un point comme séparateur décimal). Si la propriété n'est pas présente, exécuter une première fois l'outil de simplification, cela la créera.
    2. Sélectionner les chemins à simplifier (Ctrl+A pour tout sélectionner), et utiliser l'action "Outils->Simplifier le chemin" (raccourci clavier Maj+Y).
  7. Récupérer dans un nouveau calque (option à cocher) les données d'OSM de la zone
  8. Vérifier avec la couche des bâtiments déjà présents dans OSM (rechercher avec le motif "building=yes") s'il faut les remplacer, modifier ou non (cette phase n'est pas automatisée, il faut regarder un à un les bâtiments déjà dans OSM. Plus il y en a et plus c'est long : une commune où rien n'a encore été fait sera d'autant plus facile)
    • La fonction filtre peut se révéler très utile dans cet étape : activer l'outil de filtrage (entonnoir dans la barre d'outils à gauche) et ajouter un filtre sur "building=yes", inverser le filtre et activer le à l'aide des cases à cocher.
  9. Ajouter les attributs d'adresses, amenity, etc.
    • Sur une zone peu mappée, on peut découvrir facilement une église grâce aux repères géodésiques (rechercher avec le motif "man_made=*") et à la forme du bâti
  10. Envoi au serveur
    1. Méthode 1 : au moment de l'envoi des données, il faut spécifier dans l'onglet "Avancé" d'envoyer en plusieurs parties, par morceau de 500 ou 1000 pour faciliter l'envoi (cela permet d'éviter des erreurs de transferts qui produisent des doublons).
      1. Envoyer d'abord les modifications sur le calque des données de la base OSM (principalement bâtiments supprimés)
      2. Envoyer ensuite le calque des données importées
      3. Enfin récupérer les nouvelles données de la base OSM pour les derniers raccords (relations à mettre à jour par exemple)
    2. Envoi au serveur (alternative)
      1. Fusionner les deux calques
      2. Avec le plug-in Validator, on vérifie les collisions éventuelles issues de la fusion (bâtiment-bâtiment, bâtiment-route, bâtiment-rivière, etc.)
      3. Envoyer par morceaux de 500 ou 1000
  11. Contrôler avec les outils classiques de contrôle qualité (principalement DupeNodes [1] et Osmose [2]) qu'il n'y a pas de doublons sur la zone traitée ou d'erreurs manifestes
  12. Pour le contrôle des doublons ou chevauchements, on pourra également utiliser le module dédié d'Osmose [3]

* Liste des doublons de bâtiments (à corriger) Marche plus sletuffe 19:23, 20 September 2011 (BST)

Traitements des cours d'eau avec JOSM avant envoi vers serveur OSM

Le script en version 0.1 et 0.2 génère un fichier communal des cours d'eau nommé [n°INSEE]-[Commune]-water.osm. Lorsqu'il s'agit d'un réseau hydrographique maillé - typiquement un ensemble de canaux - ce fichier comporte de nombreux objets dupliqués (chemins et relations).

Pour corriger ces anomalies :

  1. Charger les données générées par le script (.osm) dans un calque vide (ne pas charger de données depuis le serveur au préalable).
  2. Enregistrer le fichier, puis le fermer. Recharger le fichier osm dans un calque vide. Un certain nombre d'erreurs détectées dans la Validation auront disparu.
  3. Supprimer toutes les relations
  4. Exécuter une validation
  5. Dans la liste des erreurs, sélectionner "erreur" puis "chemins dupliqués" et exécuter "Réparer".
  6. Dans la liste des erreurs de validation, sélectionner "avertissements" puis "Chemins superposés".
    1. Pour chaque chemin de la liste, cliquer sur le chemin et observer les chemins présentés dans la boite "Sélection".
    2. Si deux chemins apparaissent en "voie fluviale" avec le même nombre de nœuds, en sélectionner un, cliquer sur "sélectionner" et le supprimer (touche Suppr du clavier).
  7. Sélectionner successivement les chemins fermés englobant un ou plusieurs autres chemins fermés et créer une relation de type "multipolygon" constituée d'un membre "outer" et de membres "inner".
  8. Scinder les chemins fermés de plus de 2000 nœuds : JOSM empêche l'envoi vers le serveur tant qu'un chemin dépasse cette limite.
  9. Ouvrir un nouveau calque et y télécharger la carte OSM
  10. Repérer les cours d'eau présents sur la carte. Si un cours d'eau figure également sur la couche du script, supprimer celui de la carte.
  11. Envoyer les modifications effectuées sur la carte vers le serveur
  12. Envoyer la couche du script vers le serveur OSM en plusieurs parties. Il faut le spécifier dans l'onglet "Avancé" en mettant une taille de 500 ou 1000. Cela permet d'éviter des erreurs de transfert qui produisent des doublons.

Quelques remarques :

Personal tools
Namespaces
Variants
Actions
site
Toolbox