Открытый исходный код, эквивалентный Collector for ArcGIS для использования с QGIS / PostGIS?

13

Из моего чтения веб - страниц Esri Коллектор для ArcGIS тесно связан с этой платформой. Я был бы рад узнать, что я ошибаюсь по этому поводу.

У меня большой интерес к общим мобильным приложениям для сбора данных для устройств iOS и Android с GPS. Особенно те, которые могут собирать данные, находясь вне зоны покрытия, а затем синхронизировать, когда они возвращаются в зону покрытия. В идеале они также смогут кэшировать части данных локально для использования в автономном режиме.

Я предполагаю, что это веб-приложение, которое позволяет указать макет данных, ограничения и т. Д., Которое затем сгенерирует внутреннюю базу данных и предоставит доступ через API-интерфейс restful.

Что мне нужно сделать, это ввести данные из формы на мобильном устройстве, предпочтительно как на iOS, так и на Android, что обновит таблицы в серверной базе данных, возможно, с расширениями ГИС, такими как PostGIS. Это позволило бы мне легко включить данные в QGIS. Он должен быть в состоянии работать в автономном режиме, и многие области, в которых мы работаем, не имеют покрытия 3G. В идеале вы также сможете кэшировать выбранные данные на устройстве для автономного использования. Интеграция карт не важна.

Я нашел несколько хороших облачных решений, но я действительно хочу что-то, где бы я мог контролировать внутренний сбор данных, так как некоторые данные потенциально чувствительны. например, сообщение об обнаружении редких рептилий, представляющих угрозу контрабанды.

Какие альтернативы для мобильных приложений для передачи данных в QGIS.

Рассел Фултон
источник
Проверьте epicollect.net , я нашел это очень полезным в качестве метода сбора данных с открытым исходным кодом для моих мастеров.
Райан
EpiCollect.net выглядит интересно. Кажется, чтобы сделать все, что требуется OP. - Бесплатный Opensource, разработанный Департаментом эпидемиологии инфекционных заболеваний Imperial College London и полностью финансируемый The Wellcome Trust. - Веб-интерфейс, но его можно использовать в автономном режиме и синхронизировать позже - для Android или iPhone - Данные, собранные на телефонах, хранятся во внутренней базе данных телефонов до синхронизации с центральным веб-сайтом проекта. На веб-сайте и для проектов, созданных по адресу www.epicollect.net, данные хранятся в Google AppEngine - бесплатно
как OP EpiCollect соответствует моим требованиям. У меня возникли некоторые проблемы с работой мобильного приложения, но я уверен, что с этим разберусь. Когда у меня будет, я напишу подробный ответ.
Рассел Фултон

Ответы:

20

Этот вопрос был преобразован в вики сообщества, а вики заблокированы, потому что это пример вопроса, который ищет список ответов и кажется достаточно популярным, чтобы защитить его от закрытия. Его следует рассматривать как особый случай, и его не следует рассматривать как тип вопроса, который предлагается на этом или любом другом сайте Stack Exchange, но если вы хотите внести в него больше контента, сделайте это, отредактировав этот ответ. ,


ОДК

Как говорит @flippinGeo, ODK великолепен. Но это не интегрированный продукт (т. Е. Формы настраиваются в одной области, агрегация выполняется в другой, и приложение работает только на Android). Тем не менее, он работает фантастически, и мы используем его на работе, и он прост и быстр в использовании. Мы размещаем его в Google AppEngine, и это практически ничего не стоит, даже если хранить несколько тысяч фотографий. Я получаю его, чтобы перенести данные в объединенную таблицу, которую затем можно визуализировать с помощью Leaflet, см. Http://maps.gcc.tas.gov.au/graffiti.html .

точка опоры

В настоящее время я возиться с Fulcrum , который не является открытым исходным кодом, но является хорошим SaaS-продуктом, который достаточно дешев и имеет действительно хороший веб-интерфейс. Мне не нравится их API (правда, я не очень старался).

QField

Существует также QField для QGIS, который представляет собой QGIS с упрощенным интерфейсом для сенсорного взаимодействия. Он поддерживает ограничения, определенные в проектах QGIS, формы, определенные в проектах QGIS, а также широкий спектр провайдеров данных как в автономном, так и в автономном режиме. Среди них PostGIS и GeoPackage. Синхронизация с автономной копией базы данных должна выполняться вручную в качестве шага подготовки на настольном компьютере с QGIS, но для облегчения этой работы доступен подключаемый модуль QGIS QFieldSync . К сожалению, пока возможно использовать его только на Android, было бы легко перенести его на Windows и, вероятно, также можно перенести на iOS.

Конфигурируемость

Что хорошо ESRI, так это то, что если у вас настроена база геоданных с доменом объектов, вы публикуете эту таблицу в ArcGIS Online, а затем используете Collector, все ваши формы создаются автоматически. Если вам необходимо дополнительно манипулировать данными после отправки с помощью программирования, вы можете использовать ArcGIS API for Python для получения и вывода данных из AGOL.

QGIS для Android

Другим ответом на этот вопрос было предложение QGIS для Android, но я думаю, что это слишком много для того, что вы хотите сделать. Я думаю, что минимальный интерфейс, почти без пространственного контента на стороне коллекции, является лучшим, что делает ODK таким приятным. Он собирает точку, которой достаточно, и точность точки, что важно, но он не помещает все это в большой, полный интерфейс карты, что также очень важно для людей, собирающих информацию, потому что они НЕ ГИС НАРОДОВ!

вход

Input - это бесплатное мобильное приложение с открытым исходным кодом , основанное на QGIS. Он доступен для iOS и Android. Ввод поставляется со встроенной функцией синхронизации, которая позволяет пользователям загружать / скачивать свои изменения при наличии сетевого подключения. Входные данные и подготовка проекта выполняются в QGIS, поэтому все форматы файлов, поддерживаемые в QGIS, могут быть загружены в Input.

Алекс Лейт
источник
6

NextGIS Mobile, нативная мобильная ГИС для Android - http://nextgis.com/nextgis-mobile

Автономное редактирование - проверка.

Синхронизация - проверка.

Кеширование растровых тайлов - проверка.

Соединяется с экземпляром веб-сервера (NextGIS Web) для загрузки / выгрузки данных - проверка.

Много других вещей, таких как настраиваемые формы, добавление TMS и т. Д .:

Максим Дубинин
источник
6

Хотя технически это не ответ на ваш вопрос «Есть ли эквивалент Open Source ... существует?», Это основа для решения.

OGC работает над новой спецификацией для контейнера хранения, за которую проголосовали прямо сейчас (к январю 2014 года), с учетом следующих типов рабочих процессов, особенно мобильных, - GeoPackage .

Он похож и изначально основан на Spatialite , переносимой кроссплатформенной пространственной базе данных с плоскими файлами. Как только / если спецификация будет окончательно оформлена, включение в QGIS, скорее всего, произойдет быстро, возможно, для версии 2.4, поскольку уже есть предварительная поддержка через GDAL / OGR , ключевого пространственного провайдера в QGIS.

Вы можете играть с форматом сейчас, с предварительной поддержкой через наборы инструментов, перечисленные на сайте OGC GeoPackage. В дополнение к этому, недавно обновлена ​​поддержка в самом libspatialite, который можно скомпилировать для iOS и Android , а также через проект Homebrew для Mac с использованием формулы libspatialite (используйте опцию --HEAD).

Новый lispatialite теперь может быть легко загружен в SQLite как расширение с помощью любой языковой привязки, которая вам нужна .

Если у вас есть средства, подумайте о том, чтобы помочь финансировать разработку такого решения в сочетании с веб-клиентом QGIS или другим клиентом на основе OpenLayers .

dakcarto
источник
4

Ваш лучший выбор - QGIS для Android: http://www.opengis.ch/2012/01/31/qgis-on-android-gets-gps-support/, но я не уверен в его текущем статусе относительно отслеживания и синхронизации.

Вот пример видео с планшетом Windows с работающим отслеживанием и синхронизацией: http://www.youtube.com/watch?v=0WevRW4tbzs

В этом коротком видеоролике показано, как можно использовать Quantum GIS для отслеживания в реальном времени и выборки в полевых условиях, установив его на планшетный ПК (в данном случае с архитектурой Atom) и связав его с устройством GPS (в данном случае с регистратором данных Bluetooth). Конкретный вариант использования относится к проекту «MOVE» Университета Эвора (Португалия): в этом проекте каждый день дороги определенной области исследования проверяются на машине на малых скоростях в поисках убитых на дороге животных. Данные хранятся в локальной базе данных Spatialite, которая позже используется для обновления базы данных PostGIS.

Подземье
источник
4

Что касается открытого исходного кода, проверьте Open Data Kit (ODK). Я использовал его для больших проектов по сбору данных (более 10 000 заявок на данный момент), и довольно просто настроить Postgres / Postgis для сбора в масштабах всего предприятия с помощью компонента Aggregate. Ограничения включают в себя только Android, а не интерфейс отображения.

Разработка форм основана на стандарте Xform, и вы можете сделать изощренную логику с вашими формами, такими как условия, группирование и параметры управления отображением. Он также может быть запущен без Postgres. Также поддерживает отношения один-много, если вы имеете дело с более сложными коллекциями.

Поддерживает типичные типы данных, GPS, фото, видео и аудио. Поддержка датчиков также довольно обширна.

flippinGeo
источник
2

Я думал, что дам альтернативу ответам здесь, так как мы делаем что-то подобное. У нас есть специалисты по планированию коммунальных услуг, которые планируют будущие ремонтные работы, и это наш процесс. Имейте в виду, эти парни определенно не люди из ГИС, и нам может повезти, если они когда-либо пользовались компьютером.

Вместо веб-платформы мы используем настольное приложение Windows. Наше приложение использует лицензионный интерфейс карт, хотя вы могли бы легко (и мы должны были) использовать версию с открытым исходным кодом, такую ​​как DotSpatial или SharpMap, для компонентов отображения. Остальная часть приложения - это всего лишь несколько форм для элементов управления вводом, значения которых затем сопоставляются с шейп-файлом, который мы используем в серверной части. Шейп-файлы не очень хороши, но они супер совместимы.

Мы также настроили API для нашего сервера, который обрабатывает загрузку новых функций (например, посылок, служебных линий и т. Д.) И загрузку собранных / отредактированных функций. Таким образом, хранение полей не имеет значения, потому что все передается в / из geoJSON и просто анализируется / десериализуется в каждой конечной точке.

Этот процесс требует немного больше предварительной работы, но универсальность довольно велика. Вы можете отключить интерфейс приложения, поэтому все, что нужно сделать пользователю, это щелкнуть метку (имя слоя), нарисовать фигуру и заполнить несколько полей. Остальное автоматически делается для них. Вы можете усложнить задачу, если захотите, и автоматически делать для пользователя такие вещи, как пространственное объединение, GPS-координаты, проверка входных данных поля и т. Д., Кодируя их в бэкэнде.

Суть истории. Вы можете использовать компоненты с открытым исходным кодом, чтобы создать приложение для обработки всего. Веб-интерфейсы будут иметь некоторые ограничения, такие как ограничения на локальное хранилище и т. Д. Если вы хотите что-то более сложное и действительно тупое, это можно сделать, но это требует небольших усилий.

Я бы оценил, что если бы вы точно знали, что вы хотите сделать, вы могли бы собрать работоспособную версию настольного приложения и веб-интерфейса в течение нескольких недель.

Бранко
источник