La carte des pentes pour éditer dans OpenStreetMap

La région wallonne met à disposition du grand public plusieurs sources de données géographiques qui peuvent servir à cartographier sur OpenStreetMap (OSM). Il y a les orthophotoplans (images aériennes) qui sont intégrés dans l’éditeur JOSM, mais aussi, moins connu, une carte des pentes avec ombrage du relief (hillshade). Cette source est particulièrement intéressante pour cartographier des éléments en forêt, où les images aériennes ne montrent pas tout. Les petites perturbations du relief sont particulièrement visibles: chemins, fossés, cours d’eaux, etc. Petite démo de son utilisation et quelques notes sur son potentiel…

Cette carte est disponible en WMS, dont voici le lien:

http://geoservices.wallonie.be/arcgis/services/RELIEF/WALLONIE_MNT_2013_2014_HILLSHADE/MapServer/WMSServer?request=GetCapabilities&service=WMS

Cette source de données n’est pas disponible par défaut dans l’éditeur JOSM, donc il faut l’ajouter dans les préférences de l’éditeur. (Malheureusement, un WMS ne peut pas être intégré facilement dans l’éditeur d’OSM online ID.) Pour l’ajouter comme source de données dans JOSM, aller sous Edit>Preferences, à l’onglet WMS/TMS:

Je l’utilise ici pour cartographier un cours d’eau en Forêt d’Anlier. Le cours d’eau a été cartographié partiellement, ce qui même d’ailleurs à plusieurs erreurs relevées sur osmose.openstreetmap.fr (Unconnected waterways).

Sur le terrain, cette zone est très difficilement praticable, si bien qu’un relevé GPS dans le lit du ruisseau demanderait une bonne séance de ramping, en espérant que la couverture GPS soit bonne sous le couvert! Avec cette carte des pentes avec ombrage, le relief et les lits du cours des cours d’eau sont particulièrement visibles. Avec un minimum de connaissance de terrain, le cours d’eau peut être digitalisé en suivant la vallée. A noter qu’on détecte aussi très bien les chemins, ainsi que les plans d’eau.

Et voilà le résultat sur OSM:

Landuse mapping with OpenStreetMap in Belgium

What are the (best) practices for land-use mapping adapted to the Belgian landscape?

OpenStreetMap (OSM) is not just a map but rather a big geodatabase with a free tagging model for classification of geographical features. It can be used for land-use mapping, as described in the dedicated wiki page here. For instance, the recent project OSM-Landuse specifically aims at producing land-use maps from OSM data.

Because of its free tagging scheme and its incredible generalist model (OSM is a map of … everything), do not expect a clear classification scheme of land-use/land-cover as in other land-use maps (such as in Corine Land Cover or GlobCover)! A note about the tagging system in OSM: each geographical features (e.g., a house, a road, a city or a forest) is characterised by a couple of keyvalue words, that forms a tag. For instance, a residential road inside an urban area is tagged as “highway=residential”, where “highway” is the key, i.e., a kind of category that spans from small paths to motorways, and “residential is the value of the key. The dedicated tag for mapping land-use in OSM is “landuse=*” but other tags (notably: natural=*) can also be used.

A difficulty in land-use mapping and classification is the definition of common classes that encompasses various landscapes and ecoregions. As a global project, OSM uses tags for mapping land-use worldwide. Therefore, it is important to specify how to use these tags for land-use mapping in a specific ecoregion/country. The purpose of this article is to discuss the best practices in land-use mapping in Belgium with OSM.

Forests

The dedicated tag for forests is landuse=forest. Then, more information about the forest can be added using leaf_cycle=* & leaf_type=*. In Belgium, one can encountered:

  • Broadleaved deciduous forests, tagged as forest=landuse; leaf_cycle=deciduous, leaf_type=broadleaved, mainly formed by beeches, oaks, populus, maples, birches, …
Beechs trees in the Ardenne
  • Needle-leaved evergreen (coniferous) forests, tagged as forest=landuse; leaf_cycle=evergreen, leaf_type=needleleaved, mainly formed by fir trees, Douglas, and pines.
Picea abies trees in the Ardenne
  • Needle-leaved deciduous forests, tagged as forest=landuse; leaf_cycle=deciduous, leaf_type=needleleaved, much more less common than the first two types, formed by larch trees (Larix sp.)
Larix sp. trees

Further notes about forests:

  • IMHO, there are no broadleaved evergreen forests in Belgium, even though some trees are broadleaved evergreen (think about holly trees – Ilex Aquifolium), they do not form large chunks of forests in Belgium.
  • We can also use the tags leaf_cycle=mixed and leaf_type=mixed for mixed forests types. These tags are actually very common in Belgium and used to describe large forests where some parcels are needleleaved-evergreen and other parcels broadleaved-deciduous. In a ideal (OSM) world, we should map separately parcels according to their leaf cycle and leaf type, since “real” mixed forest are not so common in Belgium.
  • No matter the size of the forest, in OSM you can use the above-mentioned combinations of tags for mapping small, isolated patches of forest formed by a dozen of trees up to large forested areas.
  • We can also use the tag taxon=* to further specify the tree species that are grown in the forest. This can be used not only for monospecific forests (taxon=fir trees) but also for multi-species landscapes: in this case, separate the species names by commas (taxon = oak, beech, ash ).
  • The tag wood=* is deprecated and should be replaced by leaf_cycle=* & leaf_type=*.
  • The tag natural=wood is sometimes used for forests, but since natural=wood would refers to unmanaged, natural forests, IMHO it should not be used in Belgium since no more forests are completely natural: every patches of forest in Belgium has experienced human interventions in the recent history.

Agricultural lands

There is no clear consensus about which tags we should use to map agricultural lands in Belgium. Actually, it’s a recent discussion on the Belgian talk mailing list about mapping farmlands that gave me the idea of writing this article.

Agricultural lands are occupied by annual or perennial crops (croplands), or by meadows (grasslands). Meadows can be hay meadows (cut 1, 2, or several times a year for hay producing) or grazed meadows with animals.

Croplands

Just planted potato field near Gembloux

Meadows

A grazed meadow with cows near Nassogne

Meadows also fall under the definition of landuse=farmland. Grazed meadows could be tagged as landuse=farmland + animal=yes and hay meadows using landuse=farmland + crop=grass.

However, there also exists the landuse=meadow tag for specifically mapping meadows. The OSM wiki is not clear about which tag use, here’s an excerpt of the wiki page of landuse=farmland: “Also note that many mappers prefer the more specific tags landuse=meadow for meadows and pastures (…), landuse=orchard for fruit orchards, and use landuse=farmland for cropland only.” Some mappers consider that meadows can be easily ploughed and becomes croplands and so map grasslands using the generic tag landuse=farmland.

However many mappers prefers to use the landuse=meadow over the landuse=farmland. Some Belgian meadows can be considered as permanent (> 10 years according to FAO definition). This is particularly true in Ardennes, Pays de Herve where some meadows are probably several decades old. In addition, some meadows could not easily be ploughed because of the presence of stones, trees or because they are too wet.

Note also the meadow=agricultural tag to specify that the meadow is used for agricultural purpose.

I would propose the following tagging for agricultural grasslands in Belgium:

And if you know more about the way it is managed:

More thought about agricultural lands

The issue is that agricultural land affectation often change from one year to another! Most croplands do actually change of crops every year because of the agricultural benefits to make such crop rotations. Furthermore, most croplands are also covered by intermediate cover crops between two crops, since it is imposed by agro-environmental regulations. And sometimes, agricultural lands do change from croplands to meadows and vice-versa.

Further notes:

  • Farms buildings and around should be tagged as landuse=farmyard.
  • Orchards, a kind of perennial crop, should be tagged as landuse=orchard. They are particularly common in some places of Belgium (Sint-Truidden, Gembloux)
  • Hedges around fields can be mapped as barrier=hedge, fences as barrier=fence.

 

Other vegetated lands

Hautes-Fagnes in Belgium

Compared to wilder countries, Belgium is a very intensively managed country, with a few lands that is really made of spontaneous vegetation. Anyway, we can encounter some lands that are not forest or agricultural lands: marsh, wetlands, shrubs… For these lands, you can consider the following tags:

Note that often, on aerial imagery, some lands appears as scrub while there are actually forest lands in a process of regeneration after a clear cut. So should we mapped them as landuse=forest or natural=scrub? To me it depends on the case. If I make a ground survey and see newly planted trees or fast regenerating trees, then I’d map it as a forest.

Other landuse

I won’t cover the tagging of urban areas in this article. Yet, many other landuse values apply to residential, industrial, commercial areas, but also the leisure=*, amenity=* and tourism=* keys. See the landuse page for further information.

About land-use geometries & way-of-mapping

  • How to draw land-use polygons in Belgium? Usually, large forested areas are mapped as one large polygon, which often has to be a multipolygon (a polygon with holes, or more complex polygons). Some large portions of agricultural lands in Belgium are represented as multipolygons, but more often, they are represented as small patches of lands, as they actually appear in reality, corresponding to a single management unit. I do prefer this way of tagging over the large multipolygon approach, because it allows to quickly change attributes of farmland in the future, when, e.g., a meadow is changed to a cropland.
  • There are some discussions about the way to connect a land-use polygon to the other elements of the map. Should the land-use polygon be stuck to nearby roads (or track, or river) or should we separate the land-use polygon from the road by a small space? I prefer the last option, as there is often something between a road and an agricultural land: a fence, a hedge, a ditch that can also be mapped as a separate way in OSM.

Conclusion: land-use mapping in Belgium (with OSM)

There is actually still a lot of land-use elements to map in Belgium, especially in Wallonia. In other well-mapped areas, land-use would need a serious “refresh”, since land can change of affectation from time to time. Pure mapping applications benefit from the land-use information from OSM, for instance the maps of OpenTopoMap. With a larger completness, OSM could be also increasingly used in environmental research and operational applications, such land-use change monitoring, in relation with vegetation and climate modelling. Land-use/land-cover is a hot topic in environmental research and the deployment of new generations of earth observation satellite such as Sentinel 2 offers increasing opportunities for land-use mapping. Nevertheless, automatic classification of satellite imagery still needs on-ground validation and usually could not compete with grounded, crowdsourced information from a dense and active local community. Combining crowdsourced land-use information from OSM with satellite imagery classification is certainly the way to go.

 

Julien Minet

PS: An interesting discussion followed this blog post at the Belgian OSM mailing list: here are the e-mails. I’d to summarize this discussion whenever I’ll have some time.

 

Photos credits (Flickr): Marc Dufrene (cropland), kaskitewatim (picea abies forest), helenetchandjiabo (grazed meadow), rire&vivre (Fagus sylvatica trees), peupleloup (Larix trees), bushman_k (Hautes Fagnes)

 

 

State of the Map 2016 – jour 1

Petit compte-rendu du 1er jour passé à la conférence internationale d’OpenStreetMap, qui a lieu à Bruxelles cette année! Quelques points à retenir, purement subjectivement en fonction de ma subjectivité:

craftmapping_osm

  • OSM analytics: Ce projet est développé par l’ONG Humanitarian OpenStreetMap Team (HOT). Un nouvel outil de contrôle qualité des données OSM, avec une analyse temporelle des données, etc. Le tout très user-friendly.
  • OpenAerialMap: Une plateforme de partage d’image aérienne libre. On peut y charger ses propres images (par ex. acquises avec un drone) ou référencer un dépôt d’image extérieur. L’image peut être recherchée à travers la carte ou bien par une API. On peut ensuite l’utiliser pour cartographier dans iD, JOSM ou un autre éditeur d’OSM.
  • Le talk de Mikel Maron, de l’OpenStreetMap Foundation. Un discours (sans slides!) qui prend du recul, en questionnant les valeurs et les mythes propres au projet OSM. Une occasion de reparler du débat lancé par Mike Migurski entre le “craft mapping” et le “robot mapping”, un article qui a fait beaucoup parlé de lui dans la communauté OSM, et qui a trouvé un écho dans la conférence avec une étrange propagation de T-shirt supportant la cause du “craft mapping”. (T-shirt uniquement disponible au marché noir) (lire l’article pour y comprendre qqch!).
  • Un talk attendu: les derniers développements de Roland Olbricht sur Overpass, la meilleure façon de récolter et réutiliser les données OSM. Encore en cours de développement, Roland a présenté un nouvel outil pour évaluer les changements entre deux dates sur une étendue donnée. Un outil qui permet de dépasser les problèmes existants avec les outils précédents (à savoir l’onglet “Historique” de openstreetmap.org ou d’autres outils comme achavi). L’adresse temporaire: dev.overpass-api.de/api_drolbr/recent_changes

  • Avec Overpass, taginfo est sans doute le plus utile des outils de l’écosystème OSM. Jochen Topf a profité du SOTM pour faire un tour de l’outil et de ses dernières fonctionnalités, comme l’onglet “Similar” qui permet de trouver les tags similaires à celui recherché, la page des projets liés à tagingo: taginfo.osm.org/projects.

  • Le white paper de jawgmaps à propos des serveurs cartographiques à partir de données OSM, pas encore lu, disponible ici.

Une carte avec Leaflet, OpenLayers 2 et OpenLayers 3

Je reprends la comparaison faite dans cet article de 2013 entre OpenLayers 2 et Leaflet, en y ajoutant OpenLayers 3. Voici donc le même concept de carte simple contenant des icônes et des popups s’affichant lors d’un click sur ces icônes. Toutes les cartes ont le même fond: le rendu standard d’OpenStreetMap. Elles ont aussi toutes la même couche de points, en format GML pour la carte OpenLayers 2 et en format geoJSON pour Leaflet et OpenLayers3. Voilà le résultat, faites CTRL+U sur les cartes en plein écran avec firefox et Chrome pour voir et comparer les codes!

 

Leaflet (en + grand)
OpenLayers2 (en + grand)
OpenLayers3 (en + grand)

Mon avis sur OpenLayers3:

  • Cela fait quelques années que cette librairie est annoncée, mais son usage ne semble pas vraiment décoller. En tout cas, il est difficile de trouver sur le web une documentation simple (en français ou anglais) sur son usage. Les tutoriaux officiels du site sont très pauvres.
  • Je trouve que le code est extrêmement compliqué pour des choses aussi simples qu’afficher un popup ou changer le curseur de la souris sur les icônes!
  • Il est aussi nécessaire de faire appel à certaines librairies extérieures pour des fonctions simples (popups et curseur), comme jQuery et bootstrap.

Bref, pas convaincu pour l’instant! En tout cas, il est clair que pour une carte simple, la meilleure librairie est Leaflet (la plus simple, la plus facile, la plus responsive).

GeoDATA 2014, Bruxelles

J’ai participé ce mardi 3 juin au GeoDATA2014, un événement gratuit de conférences sur les géodonnées organisé par des entreprises du géospatial. C’était le seul évènement de leur programme sur le continent, à Bruxelles, donc à ne pas manquer! Petit compte-rendu non exhaustif et subjectif de la journée avec une sélection de 3 présentations marquantes:

1) Tout d’abord, un showcase impressionant de T-Kartor (www.t-kartor.com), une boite de cartographie, qui a réalisé des supports cartographiques pour accompagner un ambitieux programme de mobilité dans trois villes: Londres, Birmingham et New York. C’est un projet multi-facette qui tourne autour du même support cartographique, une carte très bien faite, “so user-friendly”, qui doit permettre à un maximum de personnes, habitants de la ville ou de passage, de s’y orienter, de faciliter l’accès aux transports en communs et de pouvoir atteindre leur destination à pied ou à vélo. La carte en elle-même est une carte très lisible, au design moderne inspiré du web, avec les bâtiments principaux dessinés en perspective (3D) pour permettre aux gens de se retrouver facilement, et un cercle indiquant la zone accessible à 5 minutes à pied. Les cartes sont affichées sur des bornes disposés dans l’espace urbain à des endroits-clés, sur les arrêts de bus et métro et sur les stations de vélo en partage. Elles permettent de rendre la navigation à pied dans une ville plus facilement, et de ce fait accompagne le changement modal, qui se traduit à Londres par 9 % de voiture en moins et +173 % de vélo en plus sur la période 2010-2012 ! Une fabuleuse réalisation qui a inspiré la STIB, présent lors de cette journée, pour de futures réalisations similaires à Bruxelles. A suivre !

2) Deuxio, une présentation de TomTom, l’entreprise de GPS, qui utilise les données collectées sur ses milliers de GPS vendus aux automobilistes. A moins que vous ne le refusiez, toutes les données de trajets suivis par un automobiliste équipé d’un GPS sont en effet collectées par l’entreprise, rendues anonymes, puis traitées et enfin commercialisées ! Il y a 2 formes principales de données : celles en temps-réel, qui peuvent être utilisées en temps réel pour vous éviter les bouchons, et les données historiques, qui permettent de dégager des statistiques fiables sur la circulation routière. Les données historiques représentent à ce jour plus de 700,000 ans de conduite automobile non-stop ! Ces données sont assez précieuses pour décider des aménagements routiers, pour gérer la congestion du trafic, pour améliorer les itinéraires proposés sur les GPS et les sites internet de routage, mais aussi pour les compagnies d’assurances… Ainsi, on peut en tirer des profils de vitesse à n’importe quel endroit du réseau, qui donnent la vitesse de circulation moyenne en fonction de l’heure de la journée, pour les différents jours de la semaine. Ce qui est sympa, c’est que vous pouvez tester ces données gratuitement dans la démo trafficstats.tomtom.com.

3) Enfin, la journée s’est terminée par la présentation de la British Cartography Society (www.cartography.org.uk), une association qui entend faire la promotion des bonnes pratiques de cartographie. Ils partent du constat qu’aujourd’hui, beaucoup de personnes peuvent créer des cartes facilement (avec les logiciels SIG), mais qu’il leur manque souvent la formation et les bonnes pratiques pour faire de BONNES cartes. L’association entend donc promouvoir la cartographie comme un art, une science avec ses bonnes pratiques, à destination des professionnels comme des « map-lovers » amateurs. Ils éditent une revue scientifique, organisent une conférence annuelle et notamment des cours de cartographie dans des écoles. A noter leur petit livre de poche « Cartography : an introduction », que tout cartographe devrait avoir, que j’ai pu acheter à cette occasion et disponible sur le web ici. Pour les amoureux des cartes…

Geofabrik: des données OpenStreetMap en shapefiles

Il y a quelques jours, je cherchais des données géographiques pour faire rapidement un fond cartographique à cheval sur la Belgique, la France et le Luxembourg. S’il est relativement facile de trouver des shapefiles par pays sur des sites comme DIVA-GIS, c’est plus difficile de trouver des shapefiles trans-frontières, avec les mêmes attributs et sur lesquels la même symbologie peut ếtre appliquée.

D’où l’idée de passer par OpenStreetMap, qui devient sans doute la base de données géographiques vectorielles la plus complète et la plus accessible du monde! Une rapide recherche me fait tomber sur le site de Geofabrik, une entreprise qui propose des shapefiles issus d’OpenStreetMap par pays ou sous-régions. Et hop, on télécharge des shapefiles du monde entier qui sont toujours avec les mêmes attributs en un rien de temps! Il y a certainement moyen d’exporter les données d’OpenStreetMap par d’autres moyen ou de directement les importer dans ArcGIS ou QGIS, mais la solution de Geofabrik est simple et rapide!

Après une sélection des données affichées (par ex., seules les autoroutes et les grand-routes sont affichées parmi les voiries), voilà ce que cela donne avec QGIS:

Carte_Qgis_geofabrik

Il reste des imperfections dans les données OpenStreetMap dans cette carte, comme des routes non complètes (par ex. en Ardenne Française), des données manquantes ou incorrectes. Néanmoins, dans d’autres régions du monde, OpenStreetMap est la meilleure source de données géographique existantes en terme de complétude et surtout d’actualisation.

Créer une carte avec amMap

J’ai découvert récemment une petite librairie cartographique très simple à utiliser: amMap. Elle permet de créer des cartes thématiques du monde, de continents ou de pays, et est rapide à prendre en main. J’ai fait un exemple d’application avec une carte de la provenance des étudiants ULg du campus d’Arlon, sans doute le campus le plus multiculturel de Belgique!

Cet exemple (sans la légende) est fait en une vingtaine de lignes de code. J’aime bien le code pour les popups (là où ça commence par “ballonText”): juste une ligne de code, alors qu’avec OpenLayers, il en faut une bonne quizaine pour le même genre de résultat! Pour le reste du code, en s’inspirant des exemples fournis, il est facile de créer une carte sans devoir passer par un tuto.

var map;
			
AmCharts.ready(function() {
    map = new AmCharts.AmMap();
    map.pathToImages = "./ammap/images/";
    map.colorSteps = 11;
    map.mouseWheelZoomEnabled = true;
    map.balloon.color = "#000000";
   
    var dataProvider = {
        mapVar: AmCharts.maps.worldLow,
        areas: [
            	{id:"DE",value:"1"},
		{id:"BR",value:"1"},
                ...
    };
    map.areasSettings = {
        autoZoom: true,
        balloonText: "[[title]]: [[value]]",
        selectedColor: "#696969"
    };

    map.dataProvider = dataProvider;    
    map.write("mapdiv");
});

Il y a une documentation claire et relativement complète sur le site d’amMap. Attention, amMap n’est pas une librairie de webmapping au même titre qu’OpenLayers ou Leaflet, c’est plutôt une librairie pour créer des cartes à grande échelle sur base de dessins de continents/pays pré-définis, et le résultat est plus proche d’un dessin que d’un Système d’Information Géographique. Par exemple, il n’y a pas de projection à définir et pas question d’y ajouter des WMS, des couches de GoogleMaps, etc. Les possibilités sont très limitées en comparaison d’autres programmes et librairies, mais c’est déjà suffisant pour nombre d’applications. Enfin, amMap est disponible gratuitement mais n’est pas un projet open-source, dommage :-(.

Imprimer une webmap avec le Pearl Crescent Page Saver plugin

Dans ce post, nous verrons comment il est possible d’éditer de (belles) cartes “papier” à partir de logiciels de webmapping. Alors c’est vrai que les webmaps ne peuvent rivaliser avec un logiciel de cartographie ou SIG pour créer de jolies cartes papier. Mais traduire une webmap dans un SIG pour l’édition d’une carte est une étape relativement fastidieuse, qui implique l’exportation des données cartographiques, la redéfinition de la symbologie et qui peut même se révéler impossible ou du moins beaucoup plus complexe lorsque la webmap affiche un fond cartographique venant d’une source tiers, typiquement GoogleMaps ou OpenStreetMap.

Si on veut avoir rapidement une version papier d’une webmap que vous avez créé, il existe mieux qu’une simple capture d’écran (print sreen)! Certains plugins disponibles sous Firefox permettent en effet de personnaliser la capture d’écran et notamment de faire une capture d’une page web, càd de TOUTE la page, indépendamment de la taille de votre écran et sans devoir “scroller” la page et de recoller des morceaux de capture d’écran.

Un des meilleurs plugins Firefox de capture de page est le Pearl Crescent Page Saver. dont une version gratuite est téléchargeable ici. Installez ce plugin Firefox, redémarrez Firefox et vous verrez une petite icône dans la barre d’outil en haut à droite:

img1
Vous avez donc la possibilité d’enregistrer la page entière! Les options de Page Saver permettent de choisir entre autres choses le format (PNG ou JPEG).

Cool, mais cela n’apporte évidemment strictement rien de plus qu’une capture d’écran classique si votre webmap s’affiche sur l’ensemble de l’écran, ce qui est souvent défini comme tel pour les webmaps! L’astuce est alors de définir votre carte sur une grande page web qui dépasse la taille de votre écran.

Par exemple, une webmap occupant tout l’écran se définit avec OpenLayers dans un fichier HTML de la façon suivante:

<div style="width:100%; height:100%" id="map"></div>

Mais il est tout à fait possible de faire une carte dépassant cet écran:

<div style="width:300%; height:300%" id="map"></div>

ou exprimé en pixels, par exemple:

<div style="width:5000px; height:5000px id="map"></div>

ce qui créé un fichier de 5000 x 5000 pixels. Il existe une limite de taille d’image pour le plugin (plantage de Firefox si dépassée) qui se situe un peu au-delà de 5000 x 5000 pixels, mais cette taille d’image est déjà suffisante pour réaliser un beau poster à une bonne résolution! Voilà donc un moyen d’imprimer une webmap en haute définition en changeant une ligne dans le code de la webmap.