Sortie de iTowns v1.0 : framework web pour la donnée géographique 3D

Posté par (page perso) . Édité par Yvan Munoz et palm123. Modéré par Yvan Munoz. Licence CC by-sa
27
20
fév.
2016
JavaScript

Le projet iTowns est heureux d'annoncer la sortie de la première version OpenSource de iTowns, un nouveau framework de visualisation de données 3D géospatiales.

iTowns est un framework web écrit en Javascript/WebGL basé sur THREE.js pour la visualisation de données géographiques 3D, permettant également des mesures précises en 3D. Son premier but est la visualisation d'images type "street view" et de nuages de points LIDAR terrestre, mais il supporte bien d'autres types de données.

Aperçu de iTowns

La version 1.0 est la première version OpenSource de iTowns, publiée sous license CeCILL-B. Il s'agit du cœur de l'application originelle iTowns développée ces dernières années au laboratoire de recherche MATIS de l'IGN. L'IGN a travaillé ces derniers mois sur la transition de cet outil depuis un logiciel interne vers un projet ouvert et libre.

Vidéo de démonstration : https://vimeo.com/154052505
Cette version est une "technology preview" et fournit les fonctionnalités suivantes :

  • Chargement et projection d'images orientées sur un mesh (cube ou modèle de batiment)
  • Chargement et affichage d'images panoramiques
  • Chargement d'images de profondeur panoramiques et rendu en 3D
  • Chargement de multipolygones 2D avec hauteur ( empreinte de bati) depuis un WFS ou un fichier local, et triangulation pour créer des modèles de batiments. Ce mesh peut alors être utilisé pour projeter des textures.
  • Navigation dans les données avec mécanisme de "click & go"
  • Chargement et affichage de nuages de points à partir de fichiers PLY
  • Chargement et affichage de modèles 3D texturés ( B3D, 3DS)
  • API simple de programmation

Pour l'occasion un nouveau site web a été mis en place et l'IGN a fourni un jeu de données qui peut être visualisé dans la démo en ligne. Vous pouvez télécharger iTowns Version 1.0 sur github.

OpenSource

iTowns est une organisation Opensource informelle, qui délivre des composants logiciels pour la visualisation de données géospatiales 3D sur le web. Le projet iTowns est ouvert aux contributions de toute personne de la communauté. Vous pouvez forker le project sur GitHub et envoyer des Pull Requests, et nous aurons plaisir à les intégrer. N'hésitez pas à consulter le wiki iTowns pour des informations générales sur comment contribuer.

Collaboration

Les 3 et 4 février 2016 dernier a eu lieu un codesprint iTowns, hébergé par IGNFab à Paris. Il a rassemblé environ 15 développeurs et a permis de finaliser la version 1.0, de travailler sur l'organisation du projet, la documentation et les démos, ainsi que la conception de la prochaine génération du framework. Un PSC ("Project Steering Comittee") a été formé avec Alexandre Devaux (IGN) comme président.

Cette collaboration a été efficace, et un bon démarrage pour tous les développeurs désireux de travailler ensemble sur la visualisation de données 3D. N'hésitez pas à rentrer en contact avec les développeurs si vous êtes intéressés pour collaborer sur le projet.

Remerciements

iTowns est issue de travaux originaux du laboratoire MATIS de l'IGN. Il a été financé par divers programmes de recherche impliquant l'ANR, Cap Digital, UPMC, Mines ParisTec, CNRS, LCPC.

  • # tiens l'IGN essaie de faire du libre ?

    Posté par (page perso) . Évalué à 6. Dernière modification le 20/02/16 à 13:42.

    Ah bah non :

    Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Pas de Modification 3.0 France. CC-BY-NC-ND-3.0

    Autant NC n'est pas libre, mais pas forcément opposé, autant ND est clair : pas touche !

    cf. https://github.com/iTowns/itowns-sample-data
    cela m'aurait étonné…

    Pour autant, je veux bien savoir ce qui intéresserait l'IGN dans le libre, ce qu'ils souhaitent apporter à OpenStreetMap ou faire en propre dans le libre, ce qui qui serait une avancée notoire ;-)

    • [^] # Re: tiens l'IGN essaie de faire du libre ?

      Posté par (page perso) . Évalué à 6.

      Tu fais référence à du contenu, ça me choque pas qu'il puisse ne pas être libre.

      Par contre le logiciel semble être sous licence libre CeCILL-B : https://github.com/iTowns/itowns/blob/master/LICENSE.md

      • [^] # Re: tiens l'IGN essaie de faire du libre ?

        Posté par (page perso) . Évalué à 4.

        Oui, mais c'est clair que ce qui a le plus d'intérêt dans ce type d'œuvre, ce sont les données. Ce logiciel sans le contenu à afficher ne sert à rien (il n'est pas utilisable, par exemple dans un projet type OpenStreetMap). Donc ça reste très décevant.

        Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

        • [^] # Re: tiens l'IGN essaie de faire du libre ?

          Posté par (page perso) . Évalué à 10.

          Salut,

          iTowns concerne la production de logiciels, pas de données. Le jeu de donnée fourni par l'IGN, effectivement non-libre, ne sert qu'à des fins de démonstration. Vu la taille de la zone en question, l'intérêt de le mettre en libre est proche de zéro.

          De plus, le jeu de données est issu du véhicule Stereopolis, qui est est la plateforme de recherche de l'IGN pour les acquisition type "Street View". Il s'agit donc de données de recherche, et pas de données de production. L'IGN ne fait pas (encore) de production pour ce type de données. Il n'y a donc pas vraiment d'enjeu à ce stade de discuter de licence sur la data.

          Ensuite, le débat sur les licences de données IGN, le lien avec OSM, le modèle économique de l'Institut, ça fait déjà un moment qu'il existe et il n'est pas simple. Il y a de multiples articles et prises de position à ce sujet sur le net, assez faciles à trouver. Et on notera tout de même que les choses ont avancé sur divers sujets, notamment la BANO.

          Pour ce qui est de "le logiciel sans contenu ne sert à rien", c'est tout simplement faux. Si on regarde les types de données supportées par iTowns, on se rend compte qu'on peut tout à fait produire ses propres données, par exemple : 

          • Avec des photos et de la photogrammétrie ( -> images orientées, nuages de points), avec prise de vue manuelle, drone, avion…
          • Vectoriel 2D à partir de n'importe quelle source SIG, y compris des données OSM
          • Meshes 3D : avec n'importe quel logiciel produisant du 3DS, ou avec de la reconstruction automatique
          • Nuages de points : par photogrammétrie ou avec un capteur LIDAR ( terrestre ou aéroporté)
          • Panoramas : avec des appareils photos classique et des outils idoines, ou des capteurs type "Ladybug"

          La production de ces données n'est pas forcément simple, les workflows peuvent être complexes, mais ce n'est pas l'objet du logiciel en question, qui est par ailleurs orienté vers une mise en place par des personnes du métier ( photogrammétrie, LIDAR, SIG, 3D).

          Mais c'est bien l'intérêt du framework de pouvoir être utilisé avec d'autres données que celles de l'IGN. Il reste encore des efforts à faire en développement pour le rendre encore plus générique, mais c'est en cours.
          C'est donc tout à fait utilisable "dans OpenStreetMap" si tant est que cela veuille dire quelque chose.

          Concernant les logiciels libres de façon générale, l'IGN a bien une démarche en ce sens, utilisé et intègre des composants libres dans ses architectures, en production, en recherche et en enseignement ( PostGIS, QGIS, GeoServer…). L'institut finance donc directement et indirectement des projets. et produit un certain nombre d'outils en propre : 

          On peut citer MicMac, Rok4, des contributions dans PostGIS…

          Alors oui, on peut être éternellement déçu, mais je pense qu'il faut savoir reconnaître les avancées et les initiative vers le libre quand elles sont avérée.

          • [^] # Re: tiens l'IGN essaie de faire du libre ?

            Posté par (page perso) . Évalué à 5. Dernière modification le 20/02/16 à 19:32.

            Alors oui, on peut être éternellement déçu, mais je pense qu'il faut savoir reconnaître les avancées et les initiative vers le libre quand elles sont avérée.

            Merci pour les explications, et oui j'y ai été un peu fort en disant que ça sert à rien sans les données. Je suis loin d'être du type "éternellement déçu". Et je salue les "avancées" et efforts. Et oui, la partie "software" est cool, Mais clairement on aimerait bien plus d'un établissement public. Comme tu le notes toi-même, le débat des licences de données publiées par l'IGN (ou tout organisme public) n'est certainement pas nouveau.

            La production de ces données n'est pas forcément simple, les workflows peuvent être complexes, mais ce n'est pas l'objet du logiciel en question, qui est par ailleurs orienté vers une mise en place par des personnes du métier ( photogrammétrie, LIDAR, SIG, 3D).

            Comme tu le notes aussi, la production de ce type de données n'est pas simple et donc ce logiciel est surtout utilisable par les personnes du métier. Donc la grosse avancée sera clairement quand certaines de ces personnes du métier mettront à disposition de tels données.

            C'est donc tout à fait utilisable "dans OpenStreetMap" si tant est que cela veuille dire quelque chose.

            Sinon pourquoi on parle d'OSM, c'est parce que ta news parle de visualisation type "Street View", et donc ça fait référence directement à l'implémentation de Google, qui est accessible notamment depuis leur implémentation de cartes. Et donc par association d'idées, on aimerait tous avoir un jour accès à une telle visualisation "Street View" depuis le gros projet communautaire et libriste équivalent: OpenStreetMap.

            Conclusion: certains sont simplement déçus car en lisant l'intro puis l'article, on nous donne un petit espoir. On a l'impression qu'on nous dit que l'IGN livre en Libre un tel logiciel et un jeu de données. Bien sûr, il n'est jamais dit explicitement que les données sont libres quand tu écris "l'IGN a fourni un jeu de données". Et effectivement c'est juste un tout petit bout de ville sur la démo. Mais comme il s'agit de l'IGN (un établissement dont l'un des buts est de produire des cartes détaillées et autres données géographiques) et en manque d'info détaillée, on se prend à rêver. Puis on redescend sur terre en cherchant la licence et en voyant qu'effectivement c'est juste un tout petit bout de carte.

            C'est pour cela qu'il y a de la déception, à cause de l'espoir d'abord engendré. Mais le but n'est absolument pas de cracher sur le logiciel ni le super travail accompli et encore moins sur le fait que cette partie au moins est libre (il semble que cette partie soit ce qui t'ait touché, ce que je comprends si tu es un dév sur le projet. Donc désolé d'avoir sous-entendu cela dans la déception). Qui sait, la communauté arrivera peut-être quand même à faire des données quand même, sans être "du métier".

            Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

            • [^] # Re: tiens l'IGN essaie de faire du libre ?

              Posté par (page perso) . Évalué à 3. Dernière modification le 20/02/16 à 22:39.

              Conclusion: certains sont simplement déçus car en lisant l'intro puis l'article, on nous donne un petit espoir.

              J'avoue ne pas comprendre : qu'est-ce qui dans la dépêche te fait penser que c'est un site web qui présente des données? je lis personnellement un truc du style "A est un logiciel pour afficher B à l'écran", et je comprend que A est fourni, et que je dois fournir B comme pour tout logiciel qui proposer de traiter des données.
              Quand je regarde la page de download de VLC, il y a aussi une vidéo affichée, donc le contenu complet n'est pas libre, avec le même type de présentation du logiciel, et j'avoue n'avoir jamais vu personne être déçu de ne pas avoir le film en libre après avoir installé VLC.

              Et donc par association d'idées, on aimerait tous avoir un jour accès à une telle visualisation "Street View" depuis le gros projet communautaire et libriste équivalent: OpenStreetMap.

              Ca semble possible, du moment où la communauté OpenStreetMap a les données à fournir. C'est libre, donc ils peuvent utiliser le logiciel. Au boulot!

              C'est pour cela qu'il y a de la déception, à cause de l'espoir d'abord engendré.

              J'avoue ne pas voir en quoi la dépêche donne de l'espoir sur les données d'entrées. Nous n'avons pas la même lecture de la dépêche. Je serai curieux de savoir combine de personne ont eu un espoir sur les données d'entrée avec la présentation faite dans la dépêche.


              J'aimerai vraiment comprendre ce qui dans la dépêche amène à penser que les données d'entrée sont partie intégrante du logiciel. Comment faudrait-il présenter? Car je ne vois pas, et je voudrai apprendre à comment tourner les phrases pour éviter ce genre de mauvaise compréhension le jour où je fais le même genre de présentation.
              Est-ce seulement "l'IGN a fourni un jeu de données"? Mais en fait, ce jeu de données serait libre, ça changerait quoi? (ça reste un très petit extrait)

            • [^] # Re: tiens l'IGN essaie de faire du libre ?

              Posté par . Évalué à 4.

              Mais clairement on aimerait bien plus d'un établissement public.

              L'IGN a un statut un peu intermédiaire. Certaines de ses activités sont des missions de service public (en gros, tout ce qui concerne la maintenance du réseau géodésique). Pour le reste, il s'agit d'activité commerciale classique, et il faut bien vivre.

        • [^] # Re: tiens l'IGN essaie de faire du libre ?

          Posté par (page perso) . Évalué à 1. Dernière modification le 20/02/16 à 18:31.

          (Edit: Vincent P. a été plus rapide que moi, et bien plus complet, préférez le commentaire au dessus, le mien n'apporte rien d'autre)

          "framework de visualisation de données 3D géospatiales", ça n'a pas besoin de données pour fonctionner. La tu dis que LibreOffice Writer, un traitement de texte, est décevant car ne fournit pas le dernier Goncourt, ou que VLC n'est pas cool pour le libre car ne fournit pas le dernier Starwars en libre avec.

          Autant un jeu (par exemple) sans données libres n'est pas libre car ça fait partie du jeu, autant la c'est un logiciel avec un exemple non libre, ça fait quand même que le logiciel est tout aussi libre que LiibreOffice.

          Bref, je suis le premier à dire qu'un package avec des données non libres n'est pas vraiment du libre, mais la je trouve que c'est un peu fort de les accuser de ne pas jouer le jeu du libre, ils ont l'air de le jouer, et pour la démo ils fournisse un jeu de test qui n'est pas utile en libre car c'est des données que pour la démo.

        • [^] # Re: tiens l'IGN essaie de faire du libre ?

          Posté par (page perso) . Évalué à 2. Dernière modification le 20/02/16 à 18:41.

          Et même si le contenu de cet exemple été libre ça servirai à rien (sauf aux rares personne qui voudrait mesurer cet endroit précis de paris). L’intérêt c'est bien je pense de pouvoir importer plusieurs type de contenu issu de sources variées.

          Je n'ai pas du tout essayer iTowns, mais de ce que j'ai compris, tu peux à partir de cette photo https://commons.wikimedia.org/wiki/File:Alexanderplatz_%281345813928%29.jpg?uselang=de (qui d'ailleurs à l'air d'être un POI sur une carte OSM ;) générer un 3d et prendre des mesures.

          De nouveau je crois pas que l'IGN ait jamais libéré du contenu donc ça va pas commencé parce qu’il libère du logiciel.

          Edit : (pas encore lu mais sûrement grillé par Vincent P et Zenitram ;)

  • # Belle avancée

    Posté par . Évalué à 3. Dernière modification le 21/02/16 à 08:05.

    Super. Moi qui bosse sur Open Earth View à mes heures perdues, je vois enfin une solution libre de navigation carto 3D web avancée (batiment en 3D, texture de batiments, panorama 360, etc…) intéressante à tester.

    Merci pour la présentation.

  • # Streaming

    Posté par . Évalué à 3.

    Salut Vincent, je n'ai actuellement pas la possibilité technique de tester iTowns alors est-ce tu pourrais m'indiquer si il gère le streaming du nuage de point ou du maillage ? Les formats PLY et 3DS ne s'y prêtent pas d'emblée alors est-ce qu'il y a une conversion vers un format intermédiaire ayant un octree/lod ?

    • [^] # Re: Streaming

      Posté par (page perso) . Évalué à 2.

      Salut,

      Ça dépend un peu de ce que tu appelles streaming.

      Pour les mesh, on parle d'objets mesh ( pas de mesh terrain par exemple), et ils peuvent être chargés au fur et à mesure selon leur emplacement ( leur centroide X,Y par exemple). Dans la démo tout est chargé directement.
      On travaille actuellement sur un chargement des objets 3D depuis du PostGIS d'après un système d'indexation et tuilage qui peut être paramétré, pour faire un chargement avec une fonction de coût personnalisée ( batiments remarquables, ou "gros" en premier par exemple). Dans ce cas nous développons nous-même la partie serveur.

      https://github.com/Oslandia/building-server

      Pour les points, dans iTowns on utilise un découpage en fichiers .PLY suivant la dimension temporelle, et on charge ceux qui sont corrélés aux images à l'emplacement où on se trouve. C'est simple et efficace pour les données Stéréopolis car les prises de vue sont simultanées.
      Dans un cas plus général, on est en train de voir si on peut se coupler avec PoTree, qui est basé sur THREE.js également, et qui utilise un découpage des points en octree sur disque servi en HTTP.
      Il y a aussi des projets comme GreyHound, qui implémente un réel serveur de streaming de points multidimensionnel.

      Tout ceci n'est pas encore standardisé, mais l'OGC a démarré récemment un Working Group sur le sujet PointCloud.
      Et ça fera partie des thématiques abordées cette semaine au codesprint de l'OSGeo qui a lieu chez Mozilla. Il y a une soirée ouverte le 24, n'hésitez pas à venir en discuter avec les devs !

      • [^] # Re: Streaming

        Posté par . Évalué à 3.

        J'entendais la capacité d'afficher sur le client sans avoir à télécharger tout le jeu de données à sa résolution native.

        Pour les nuages de point, j'utilise effectivement potree qui a l'énorme avantage de ne pas nécessiter l'accès à un serveur http et pas de travail préparatif hormis la conversion en octree. Là du coup pour Itowns, il faut créer des ply intermédiaires et des définir des seuils de visibilité pour un affichage à une échelle plus éloignée c'est ça ?

        Pour ce qui est des objets 3d, mon cas d'usage c'est des modèles avec quelques millions de vertex utilisés pour de l'étude de détails mais ça ne me semble pas être celui d'itowns ou de postgis. Là pour répondre au besoin d'un affichage avec tuilage et niveaux de détails on passe par un format proprio et son viewer (agisoft).

        A part ça, la mise à disposition d'itowns en libre est une bonne chose et la prépa d'une v2 laisse croire que ce n'est pas un simple "dump" :)

        ps : il faudrait rediriger itowns.fr

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.