Open Source équivalent à Collector for ArcGIS à utiliser avec QGIS / PostGIS?

13

De ma lecture des pages Web Esri le collecteur pour ArcGIS est étroitement liée à cette plate - forme. Je serais ravi d'apprendre que je me trompe à ce sujet.

Je suis très intéressé par les applications de collecte de données mobiles génériques pour les appareils iOS et Android avec GPS. En particulier ceux qui peuvent collecter des données hors de la couverture, puis les synchroniser lorsqu'ils reviennent dans la couverture. Idéalement, ils seraient également capables de mettre en cache des parties des données localement pour les utiliser hors ligne.

Ce que j'envisage est une application basée sur le Web qui permet de spécifier la disposition de vos données, les contraintes, etc. et qui générera ensuite la base de données backend et permettra l'accès via une API reposante.

Ce que je dois faire est d'entrer des données à partir d'un formulaire sur un appareil mobile, de préférence à la fois iOS et Android, qui mettront à jour les tables dans une base de données principale, potentiellement quelque chose avec des extensions SIG telles que PostGIS. Cela me permettrait d'intégrer facilement les données dans QGIS. Il doit pouvoir fonctionner hors ligne et la plupart des zones dans lesquelles nous travaillons n'ont pas de couverture 3G. Idéalement, vous pouvez également mettre en cache les données sélectionnées sur l'appareil pour une utilisation hors ligne. Les intégrations de cartes ne sont pas importantes.

J'ai trouvé de bonnes solutions basées sur le cloud mais je veux vraiment quelque chose où j'ai le contrôle de la collecte de données back-end car certaines données sont potentiellement sensibles. par exemple, rapporter l'observation de reptiles rares qui constituent une menace de contrebande.

Quelles alternatives sont les applications mobiles pour obtenir des données dans QGIS.

Russell Fulton
la source
Consultez epicollect.net , j'ai trouvé cela très utile comme méthode open source de collecte de données pour mes maîtres.
Ryan
EpiCollect.net semble intéressant. Semble faire tout OP requis. -Open source gratuit développé par le département d'épidémiologie des maladies infectieuses de l'Imperial College de Londres et le développement a été entièrement financé par le Wellcome Trust. - Basé sur le Web mais peut être utilisé hors ligne et synchronisé plus tard - pour Android ou iPhone - Les données collectées sur les téléphones sont stockées dans la base de données interne des téléphones jusqu'à ce qu'elles soient synchronisées avec le site Web central du projet. Sur le site Web et pour les projets créés sur www.epicollect.net, les données sont stockées sur l'AppEngine de Google - un utilisateur gratuit
car l'OP EpiCollect correspond à mes exigences. J'ai quelques problèmes pour faire fonctionner l'application mobile, mais je suis sûr que je vais le découvrir. Quand j'aurai, j'écrirai une réponse détaillée.
Russell Fulton

Réponses:

20

Cette question a été convertie en wiki communautaire et wiki verrouillé car il s'agit d'un exemple de question qui cherche une liste de réponses et semble être assez populaire pour la protéger de la fermeture. Il doit être traité comme un cas spécial et ne doit pas être considéré comme le type de question encouragé sur ce site ou sur tout autre site Stack Exchange, mais si vous souhaitez y ajouter plus de contenu, n'hésitez pas à le faire en modifiant cette réponse. .


ODK

Comme le dit @flippinGeo, ODK est génial. Mais ce n'est pas un produit intégré (c'est-à-dire que les formulaires sont configurés dans une zone, l'agrégation se fait dans une autre et l'application est uniquement Android). Cela fonctionne fantastiquement, cependant, et nous l'utilisons au travail et il est simple et rapide à utiliser. Nous l'hébergeons sur Google AppEngine et cela ne coûte pratiquement rien, même en stockant quelques milliers de photos. Je l'obtiens pour pousser les données vers une table de fusion qui peut ensuite être visualisée avec Leaflet, voir: http://maps.gcc.tas.gov.au/graffiti.html .

Pivot

Je déconne actuellement avec Fulcrum , qui n'est pas open-source, mais c'est un bon produit SaaS qui est raisonnablement bon marché et a une interface Web vraiment agréable. Je n'aime pas leur API, cependant (certes, je n'ai pas essayé très fort).

QField

Il existe également QField pour QGIS qui est QGIS avec une interface simplifiée pour l'interaction tactile. Il prend en charge les contraintes définies dans les projets QGIS, les formulaires définis dans les projets QGIS et une grande variété de fournisseurs de données en ligne et hors ligne. Parmi eux, PostGIS et GeoPackage. La synchronisation avec une copie hors ligne d'une base de données doit être effectuée manuellement comme étape de préparation sur un ordinateur de bureau avec QGIS mais un plugin QGIS QFieldSync est disponible pour faciliter le travail. Malheureusement, il n'est possible de l'utiliser que sur Android jusqu'à présent, il serait facile de le porter sur Windows et probablement également sur iOS.

Configurabilité

Ce que ESRI fait bien, c'est que si vous avez une géodatabase configurée avec un domaine d'entités, vous publiez cette table sur ArcGIS Online, puis utilisez Collector, tous vos formulaires sont créés automatiquement. Si vous avez besoin de manipuler davantage les données après leur soumission à l'aide de la programmation, vous pouvez utiliser l'API ArcGIS pour Python pour entrer et sortir des données d'AGOL.

QGIS pour Android

L'autre réponse à cette question était de suggérer QGIS pour Android, mais je pense que c'est trop gros pour ce que vous voulez faire. Je pense qu'une interface minimale, avec presque aucun contenu spatial du côté de la collection est la meilleure, ce qui rend ODK si agréable. Il collecte un point, ce qui est suffisant, et la précision du point, ce qui est important, mais il ne met pas tout cela sur une grande interface de carte complète, ce qui est également très important pour les personnes qui collectent des informations, car elles sont PAS GIS FOLKS!

Contribution

Input est une application mobile gratuite et open source basée sur QGIS. Il est disponible pour iOS et Android. L'entrée est livrée avec une fonction de synchronisation intégrée qui permet aux utilisateurs de télécharger / télécharger leurs modifications lorsqu'il y a une connexion réseau. Les données d'entrée et la préparation du projet sont effectuées dans QGIS, par conséquent, tous les formats de fichiers pris en charge dans QGIS peuvent être chargés dans Input.

Alex Leith
la source
6

NextGIS Mobile, SIG mobile natif pour Android - http://nextgis.com/nextgis-mobile

Édition hors ligne - vérifiez.

Syncronisation - vérifier.

Mise en cache des tuiles raster - vérifier.

Se connecte à une instance de serveur Web (NextGIS Web) pour télécharger / télécharger des données - vérifiez.

Beaucoup d'autres choses telles que des formulaires personnalisables, l'ajout de TMS, etc.:

Maxim Dubinin
la source
6

Bien qu'il ne s'agisse pas techniquement d'une réponse à votre question, "Existe-t-il un équivalent Open Source ...?", C'est la base d'une solution.

L'OGC travaille sur une nouvelle spécification pour un conteneur de stockage, en cours de vote en ce moment (d'ici janvier 2014), avec ces types de flux de travail, en particulier mobiles, à l'esprit: GeoPackage .

Il est similaire et basé à l'origine sur Spatialite , une base de données spatiale portable et multiplateforme à fichier plat. Une fois / si la spécification est finalisée, l'incorporation dans QGIS se fera plus que probablement rapidement, peut-être pour la version 2.4, car il existe déjà un support préliminaire via GDAL / OGR , un fournisseur spatial principal dans QGIS.

Vous pouvez maintenant jouer avec le format, avec un support préliminaire via les jeux d'outils répertoriés sur le site OGC GeoPackage. En plus de ceux-ci, il y a un support récemment mis à jour dans libspatialite lui-même, qui peut être compilé pour iOS et Android , et via le projet Homebrew pour Mac en utilisant la formule libspatialite (utilisez l'option --HEAD).

La nouvelle lispatialite peut désormais être plus facilement chargée dans SQLite en tant qu'extension, via la liaison de langue dont vous avez besoin .

Si vous en avez les moyens, envisagez d'aider à financer le développement d'une telle solution couplée au client Web QGIS ou à un autre client basé sur OpenLayers .

dakcarto
la source
4

Votre meilleur pari est QGIS pour Android: http://www.opengis.ch/2012/01/31/qgis-on-android-gets-gps-support/ mais je ne suis pas sûr de son état actuel concernant le suivi et la synchronisation.

Voici un exemple de vidéo avec une tablette Windows avec suivi et synchronisation de travail: http://www.youtube.com/watch?v=0WevRW4tbzs

Cette courte vidéo montre comment Quantum GIS peut être utilisé pour effectuer un suivi et un échantillonnage en direct sur le terrain, en l'installant sur une tablette PC (dans ce cas avec l'architecture Atom) et en l'associant à une unité GPS (dans ce cas, un enregistreur de données Bluetooth). Le cas d'utilisation spécifique concerne le projet "MOVE" de l'Université d'Évora (Portugal): dans ce projet, chaque jour, les routes d'une zone d'étude spécifique sont contrôlées en voiture, à faible vitesse, à la recherche d'animaux tués sur la route. Les données sont stockées dans une base de données Spatialite locale, qui est ensuite utilisée pour mettre à jour une base de données PostGIS.

obscur
la source
4

En ce qui concerne l'open source, consultez Open Data Kit (ODK). Je l'ai utilisé pour de grands projets de collecte de données (plus de 10000 soumissions à ce stade) et il est assez facile de s'installer sur Postgres / Postgis pour une collecte à l'échelle de l'entreprise avec le composant Aggregate. Les limitations incluent actuellement Android uniquement, et non une interface de cartographie.

Le développement de formulaires est basé sur la norme Xform et vous pouvez faire une logique astucieuse avec vos formulaires comme les conditions, le regroupement et les paramètres d'affichage de contrôle. Il peut également être exécuté sans PostgreSQL. Prend également en charge les relations un-plusieurs si vous traitez avec des collections plus complexes.

Prend en charge les types de données typiques, GPS, photo, vidéo et audio. Le support des capteurs est également assez étendu.

flippinGeo
la source
2

J'ai pensé que je donnerais une alternative aux réponses ici puisque nous faisons quelque chose de similaire. Nous avons des planificateurs de services publics qui planifient les futurs travaux de maintenance, et c'est notre processus. Attention, ces gars-là ne sont certainement pas des gens du SIG, et nous serons peut-être chanceux s'ils ont déjà utilisé un ordinateur auparavant.

Au lieu d'une plate-forme Web, nous utilisons une application de bureau Windows. Notre application utilise une interface de carte sous licence bien que vous auriez pu facilement (et nous aurions dû) utiliser une version open source comme DotSpatial ou SharpMap pour les composants de cartographie. Le reste de l'application n'est que quelques formulaires pour les contrôles d'entrée dont les valeurs sont ensuite mappées vers un fichier de formes que nous utilisons à l'arrière-plan. Les fichiers de formes ne sont pas géniaux, mais ils sont super compatibles.

Nous avons également mis en place une API sur notre serveur qui gère le téléchargement de nouvelles fonctionnalités (par exemple, les colis, les lignes utilitaires, etc.) et le téléchargement des fonctionnalités collectées / modifiées. Ainsi, le stockage sur le terrain n'a pas d'importance car tout est transmis vers / depuis l'aide de geoJSON et juste analysé / désérialisé à chaque point final.

Ce processus demande un peu plus de travail de départ, mais la polyvalence est plutôt bonne. Vous pouvez simplifier l'interface de l'application afin que l'utilisateur n'ait qu'à cliquer sur une étiquette (nom du calque), dessiner une figure et remplir quelques champs. Le reste se fait automatiquement pour eux. Vous pouvez devenir plus complexe si vous le souhaitez et faire automatiquement des choses pour l'utilisateur comme la jonction spatiale, les coordonnées GPS, valider les entrées de champ, etc. en le codant à l'arrière.

Point de l'histoire .. Vous pouvez utiliser des composants open source pour créer une application pour tout gérer. Les interfaces Web auront certaines limitations comme les limites du stockage local, etc. Si vous voulez quelque chose de plus complexe et vraiment stupide, cela peut être fait mais prend un peu d'effort.

J'estimerais que si vous saviez exactement ce que vous vouliez faire, vous pourriez créer une version pratique de l'application de bureau et de l'interface Web en quelques semaines.

Branco
la source