Z mojej lektury stron internetowych ESRI Collector dla ArcGIS jest ściśle przywiązany do tej platformy. Z przyjemnością dowiem się, że się mylę.
Interesuję się ogólnymi aplikacjami do mobilnego gromadzenia danych na urządzenia iOS i Android z GPS. Zwłaszcza te, które mogą zbierać dane poza zasięgiem, a następnie synchronizować po powrocie do zasięgu. Idealnie byłoby również w stanie buforować części danych lokalnie do użytku w trybie offline.
To, co przewiduję, to aplikacja internetowa, która pozwala określić układ danych, ograniczenia itp., A następnie wygeneruje bazę danych zaplecza i umożliwi dostęp przez spokojny interfejs API.
Muszę wprowadzić dane z formularza na urządzeniu mobilnym, najlepiej zarówno iOS, jak i Androidzie, który zaktualizuje tabele w bazie danych zaplecza, potencjalnie coś z rozszerzeniami GIS, takimi jak PostGIS. Umożliwiłoby mi to łatwe włączenie danych do QGIS. Musi być w stanie pracować w trybie offline, a wiele obszarów, w których pracujemy, nie ma zasięgu 3G. Idealnie byłoby również możliwe buforowanie wybranych danych na urządzeniu do użytku offline. Integracja mapy nie jest ważna.
Znalazłem dobre rozwiązania oparte na chmurze, ale naprawdę chcę czegoś, w czym mam kontrolę nad gromadzeniem danych zaplecza, ponieważ niektóre dane są potencjalnie wrażliwe. np. zgłaszanie obserwacji rzadkich gadów będących zagrożeniem przemytu.
Jakie są alternatywy dla aplikacji mobilnych, aby uzyskać dane do QGIS.
źródło
Odpowiedzi:
ODK
Jak mówi @flippinGeo, ODK jest świetny. Ale to nie jest zintegrowany produkt (tzn. Formularze są konfigurowane w jednym obszarze, agregacja odbywa się w innym, a aplikacja jest tylko na Androida). Działa fantastycznie, a my używamy go w pracy, a jego użycie jest proste i szybkie. Hostujemy go w Google AppEngine i kosztuje praktycznie nic, nawet przechowywanie kilku tysięcy zdjęć. Sprawiam, że wypycha dane do tabeli syntezy, którą można wizualizować za pomocą Ulotki, patrz: http://maps.gcc.tas.gov.au/graffiti.html .
Punkt podparcia
Obecnie bawię się w Fulcrum , który nie jest oprogramowaniem typu open source, ale jest ładnym produktem SaaS, który jest stosunkowo tani i ma naprawdę ładny interfejs WWW. Jednak nie podoba mi się ich interfejs API (co prawda nie bardzo się starałem).
QField
Istnieje również QField dla QGIS, który jest QGIS z uproszczonym interfejsem do interakcji dotykowych. Obsługuje ograniczenia zdefiniowane w projektach QGIS, formularze zdefiniowane w projektach QGIS oraz szeroką gamę dostawców danych online i offline. Wśród nich PostGIS i GeoPackage. Synchronizacja z kopią offline bazy danych musi być wykonana ręcznie jako krok przygotowawczy na komputerze stacjonarnym z QGIS, ale dostępna jest wtyczka QGIS QFieldSync, aby ułatwić zadanie. Niestety, do tej pory można go używać tylko na Androidzie, łatwo byłoby go przenieść do systemu Windows i prawdopodobnie również do iOS.
Konfigurowalność
ESRI dobrze sobie radzi, że jeśli masz geobazę skonfigurowaną z domeną funkcji, to opublikujesz tę tabelę w ArcGIS Online, a następnie użyjesz programu Collector, wszystkie formularze zostaną utworzone automatycznie. Jeśli potrzebujesz dalej manipulować danymi po przesłaniu za pomocą programowania, możesz użyć ArcGIS API dla Pythona, aby pobierać i odbierać dane z AGOL.
QGIS na Androida
Inną odpowiedzią na to pytanie było zasugerowanie QGIS dla Androida, ale myślę, że jest to zbyt duże na to, co chcesz zrobić. Myślę, że najlepszy jest minimalny interfejs, prawie bez zawartości przestrzennej po stronie kolekcji, co sprawia, że ODK jest tak miły. Zbiera punkt, który jest wystarczający, i dokładność tego punktu, co jest ważne, ale nie umieszcza go na dużym, pełnym interfejsie mapy, co jest również bardzo ważne dla ludzi zbierających informacje, ponieważ są NIE GIS FOLKS!
Wejście
Input to darmowa i otwarta aplikacja mobilna oparta na QGIS. Jest dostępny na iOS i Androida. Dane wejściowe mają wbudowaną funkcję synchronizacji, która umożliwia użytkownikom przesyłanie / pobieranie zmian w przypadku połączenia sieciowego. Dane wejściowe i przygotowanie projektu odbywa się w QGIS, dlatego wszystkie formaty plików obsługiwane w QGIS można załadować do Input.
źródło
NextGIS Mobile, natywny mobilny GIS dla Androida - http://nextgis.com/nextgis-mobile
Edycja offline - sprawdź.
Synchronizacja - sprawdź.
Buforowanie płytek rastrowych - sprawdź.
Łączy się z instancją serwera WWW (NextGIS Web) w celu przesyłania / pobierania danych - sprawdź.
Wiele innych rzeczy, takich jak konfigurowalne formularze, dodawanie TMS itp .:
źródło
Chociaż technicznie nie jest to odpowiedź na twoje pytanie: „Czy istnieje odpowiednik Open Source…?”, Jest to podstawa rozwiązania.
OGC pracuje nad nową specyfikacją kontenera magazynowego, nad którą głosuje się teraz (do stycznia 2014 r.), Z myślą o tego rodzaju przepływach pracy, szczególnie mobilnych, z myślą o: GeoPackage .
Jest podobny i pierwotnie oparty na Spatialite , przenośnej, wieloplatformowej bazie danych o płaskich plikach. Po / jeśli specyfikacja zostanie sfinalizowana, włączenie do QGIS z dużym prawdopodobieństwem nastąpi szybko, prawdopodobnie w wersji 2.4, ponieważ istnieje już wstępne wsparcie za pośrednictwem GDAL / OGR , głównego dostawcy przestrzennego w QGIS.
Możesz teraz grać w tym formacie, ze wstępną obsługą za pomocą zestawów narzędzi wymienionych na stronie OGC GeoPackage. Oprócz tego istnieje nowa aktualizacja obsługi samej biblioteki libspatialite, którą można skompilować dla systemów iOS i Android , a także poprzez projekt Homebrew dla komputerów Mac przy użyciu formuły libspatialite (użyj opcji - HEAD).
Nowy lispatialite można teraz łatwiej załadować do SQLite jako rozszerzenia, niezależnie od potrzebnego powiązania języka .
Jeśli masz odpowiednie środki, rozważ pomoc w finansowaniu rozwoju takiego rozwiązania w połączeniu z klientem sieciowym QGIS lub innym klientem opartym na OpenLayers .
źródło
Najlepszym rozwiązaniem jest QGIS na Androida: http://www.opengis.ch/2012/01/31/qgis-on-android-gets-gps-support/, ale nie jestem pewien co do jego obecnego stanu w zakresie śledzenia i synchronizacji.
Oto przykładowy film z tabletem z systemem Windows z działającym śledzeniem i synchronizacją: http://www.youtube.com/watch?v=0WevRW4tbzs
źródło
Jeśli chodzi o open source, sprawdź Open Data Kit (ODK). Użyłem go do dużych projektów gromadzenia danych (ponad 10 000 zgłoszeń w tym momencie) i dość łatwo jest skonfigurować Postgres / Postgis do gromadzenia danych w całym przedsiębiorstwie za pomocą komponentu Aggregate. Ograniczenia obejmują obecnie tylko Androida, a nie interfejs mapowania.
Tworzenie formularzy jest oparte na standardzie Xform i możesz wykonywać zręczną logikę za pomocą swoich formularzy, takich jak warunkowe, grupowanie i kontrolowanie parametrów wyświetlania. Można go również uruchomić bez Postgres. Obsługuje także wiele relacji, jeśli masz do czynienia z bardziej złożonymi kolekcjami.
Obsługuje typowe typy danych, GPS, zdjęcia, wideo i audio. Obsługa czujników jest również dość obszerna.
źródło
Myślałem, że podam tutaj alternatywę dla odpowiedzi, ponieważ robimy coś podobnego. Mamy planistów mediów, którzy planują przyszłe prace konserwacyjne, i to jest nasz proces. Pamiętajcie, że ci faceci z pewnością nie są ludźmi z GIS i możemy mieć szczęście, jeśli kiedykolwiek wcześniej korzystali z komputera.
Zamiast platformy internetowej używamy aplikacji komputerowej dla systemu Windows. Nasza aplikacja korzysta z licencjonowanego interfejsu mapy, chociaż możesz łatwo (i powinniśmy) użyć wersji open source, takiej jak DotSpatial lub SharpMap dla komponentów mapowania. Reszta aplikacji to tylko kilka form kontroli danych wejściowych, których wartości są następnie mapowane na plik kształtu, którego używamy w zapleczu. Pliki kształtów nie są świetne, ale są super kompatybilne.
Na naszym serwerze skonfigurowaliśmy również interfejs API, który obsługuje pobieranie nowych funkcji (np. Paczek, linii użytkowych itp.) Oraz przesyłanie zebranych / edytowanych funkcji. Tak więc pamięć pola nie ma znaczenia, ponieważ wszystko jest przesyłane do / z wykorzystaniem geoJSON i po prostu parsowane / deserializowane w każdym punkcie końcowym.
Proces ten wymaga nieco więcej pracy z góry, ale wszechstronność jest całkiem świetna. Możesz ogłuszyć interfejs aplikacji, aby użytkownik musiał tylko kliknąć etykietę (nazwę warstwy), narysować rysunek i wypełnić kilka pól. Reszta jest dla nich automatycznie wykonywana. Możesz stać się bardziej skomplikowany, jeśli chcesz i automatycznie robić rzeczy dla użytkownika, takie jak łączenie przestrzenne, współrzędne GPS, sprawdzanie poprawności danych wejściowych w polu itp., Kodując je w zapleczu.
Punkt historii. Możesz użyć komponentów open source do zbudowania aplikacji do obsługi wszystkiego. Interfejsy sieciowe będą miały pewne ograniczenia, takie jak ograniczenia pamięci lokalnej itp. Jeśli chcesz czegoś bardziej złożonego i naprawdę głupiego, możesz to zrobić, ale wymaga to trochę wysiłku.
Oszacowałbym, że gdybyś wiedział dokładnie, co chcesz zrobić, w ciągu kilku tygodni można przygotować działającą wersję aplikacji komputerowej i interfejsu internetowego.
źródło