Bassin versant de nos rivières

Je me permet d’avoir votre avis sur la possibilité d’ajouter des relation « bassin versant » des fleuves et rivières sur OSM?
Un jeu est dispo: Bassins versant topographiques - Métropole 2019 - BD Topage® | geo.data.gouv.fr

Quelle utilité j’en vois:
De pouvoir extraire avec overpass en limitant à une aire indiquée tout les cours d’eau d’un (ou plusieurs) bassin versant.

Si oui, avec quels tags?

A moins que vous connaissez une autre méthode plus simple?

Existe déjà ! :smiley:

Les relations de cours d’eaux (voir par exemple celle de la Loire), prennent en compte tout les membre de la rivière, qu’ils soient :

  • bras principaux (avec le rôle main_stream),
  • bras secondaire (avec le rôle side_stream),
  • sources (avec le rôle spring),
  • rivières se jetant dans celle-ci (avec le rôle tributary).

Tu l’auras compris, c’est ce dernier point qui nous intéresse.

Ce que tu peux donc faire à partir du jeu de données (si tu es motivé), c’est de vérifier que chaque cours d’eau nommé qui n’est pas un fleuve a bien une relation (pas nécessaire lorsqu’il n’est constitué que d’un objet), et que cette relation est « tributary » de la relation de la rivière dans laquelle il se jette.

Je sais que pour les principales rivières en France, c’est déjà fait, mais je n’ai aucun doute que cela ne soit pas le cas de toutes.

ok, vu comme ca, pourquoi pas…

mais cela est un travail de « titan » pour rattacher le moindre petit cours d’eau et fossé?

du coup j’ai du mal a trouver le bon code pour ses différentes requêtes

par contre contribuant pas mal sur OSM et les cours d’eau de ma région, en dehors du fleuve, et de ses affluents au premier rang, très peu de cours d’eau sont associés à une relation.

C’est pour cela que je voyais plus le « truc » en créant une relation de type area, qui me permettrai par défaut d’extraire le moindre bou de waterway existant dans osm?

Il y a des outils qui ont été développés pour récupérer l’ensemble des bassins versants depuis OSM, donc pas besoin de réécrire la donnée « en dur » puisqu’elle peut se déduire de la géométrie (pour peu que les rivières soient connectées et dans le bon sens d’écoulement)
Par exemple: OSM River Basins développé par Amᵃᵖanda (@amapanda@en.osm.town)

Merci!
cet outil OSM River Basins est hyper bien fait et surtout très visuel.
mais je ne voit pas la possibilité d’y extraire uniquement les way d’une rivière et ses affluents ?

un autre outil a votre connaissance alors?

Naïvement, l’algorithme que j’implémenterais dans une requête Overpass serait du genre, pour une relation type=waterway d’ID OSM n :

  • récupérer tous les chemins membres main_stream et side_stream de cette relation ;
  • récupérer tous les nœuds de ces chemins ;
  • récupérer tous les chemins waterway=stream/river connectés à ces nœuds, qui ne sont pas membres de n ;
  • récupérer la relation type=waterway de ces chemins ;
  • retour en 1.

Apparemment, Overpass ne permet pas d’utiliser récursivement une fonction ; cela étant, d’après ce que j’ai vu, aucun cours d’eau ne dépasse un nombre de Strahler de 12, donc en faisant ça 12 fois, on aurait tout le bassin versant.

Cela étant, ça va être très gourmand, comme requête, mais si tu peux passer outre ce point, c’est faisable, je pense.

Edit: des chercheurs ont essayé de faire ça, mais ils ont dû nettoyer la topologie avant, pour éliminer les ruisseaux bouclés, ce genre de choses…

merci, mais dans le concret, est ce vraiment possible avec overpass?
désolé je ne suis pas expert sur overpass (mais l’utilise régulièrement): pas assez pour pouvoir construire cette requête (avec avec l’aide d’IA).
J’aimerais pouvoir aller plus loin que ce que propose waterwaymap

Je pense que le code doit pouvoir s’extraire du travail d’Amanda, en prenant comme point de départ au calcul un segment de rivière plutôt que tous les océans.
Je suppose que pour obtenir le schéma global, il faut passer par un calcul de chaque bassin et sous-bassin, donc les briques logicielles sont probablement déjà là.

À noter que ça s’appelle désormais :

@PierreV: as-tu essayé de la contacter directement, ou de faire un ticket sur le git du projet ?
Peut-être regarder dans cette discussion sur le forum global si ça n’a pas déjà été demandé? `osm-river-basins`: Website to show how are rivers in OSM connected - General talk - OpenStreetMap Community Forum

Une piste avec Qgis: