ГИС-натуралист
Сейчас появилось множество геосервисов, которые можно подключить в Вашу ГИС непосредственно из интернета. Это такие как OpenStreetMap, Google Satellite, Bing Map, Яндекс.Карты и другие. Кроме выше перечисленных сервисов существует множество локальных сервисов, на пример: Кадастровая карта Украины, Росреестр, национальный геопортал Коста-Рики и еще множество всего. Относительно недавно появился инструмент QuickMapServices (QMS) — инструмент позволяющий просто подключать геосервисы в QGIS, ArcGIS и NextGIS Mobile. Рассмотрим как пользоваться этим инструментом.
QuickMapServices (QMS) — это каталог, в который каждый пользователь может добавить нужные ему для работы геосервисы, и потом удобно их подключать в различные ГИС. Собственно каталог расположен по адресу qms.nextgis.com. Поддерживает работу с форматами TMS, WMS, WFS и GeoJSON. Имеет открытое API и соответствующую документаци.
На видео представлены основные моменты использования QMS в QGIS.
Если вы хотите оперативно получать советы по решению задач в QGIS добавляйтесь в очень полезный Telegram-группу «QGIS взаимопомощь». В это чате уже более полутары тысяч участников, и постоянно идет активное общение и взаимопомощь!
Компьютерное зрение в качестве красной кнопки — плагин Deepness в QGIS
Как часто вас просили быстро выделить определенные объекты по космической съемке, да еще не по привычной для нас всех мультиспектральной, а той, что публикуют Bing, Google и т.д. в своих картографических сервисах?
В поисках простого решения для неспециалистов была найдена «красная кнопка», способная выполнить эту задачу. В нашу с вами жизнь снова врываются нейронные сети и computer vision (компьютерное зрение).
Плагин QGIS для выделения объектов
Для решения этой задачи используется модуль QGIS
Сам модуль представляет собой оболочку с пользовательским интерфейсом, которая позволяет работать с моделями машинного обучения прямиком в проекте QGIS в том числе юзерам, далеким от этого. В модуле используется YOLO (You Only Look Once — ты смотришь только раз) — семейство открытых моделей машинного обучения, предназначенное для распознавания объектов на фото и видео, способное решать три задачи распознавания:
— Классификация
Классификация изображений предполагает извлечение информации об их содержании. Решением этой задачи будет анализ всего изображения и присвоение ему определенной метки, то есть отнесение объекта к одному из классов, которые знает человек (например, в результате классификации нейронная сеть может определить группу пикселей как кошку).
— Обнаружение
Само обнаружение предполагает не только решение задачи классификации, но и локализацию объектов на изображении при помощи ограничивающих рамок.
— Сегментация
Это разделение изображения на части или подобъекты, чтобы продемонстрировать, что машина может отличить объект от фона и/или другой объект на том же изображении. «Сегмент» изображения представляет собой определенный класс объектов, которые нейронная сеть идентифицировала на изображении, представленном пиксельной маской, которую можно использовать для его извлечения.
В рамках проекта, который до сих пор находится в активной разработке, есть уже обученные модели для решения группы задач (обнаружение машин, мультиклассовая сегментация (дороги, растительность, здания, вода) и т.д.), но также реализована возможность обучения модели под сторонние цели: авторы проекта подготовили тьюториал для заинтересованных.
Как пользоваться компьютерным зрением в QGIS
В рамках этой статьи разберемся, как пользоваться предобученной моделью для обнаружения дорожного полотна.
1. Возьмем уже готовую обученную модель в библиотеке страницы самого модуля, она понадобится для дальнейшей работы (положите этот файл в любую папку, из которой вы потом сможете его достать для дальнейшего использования в работе): https://chmura.put.poznan.pl/s/y6S3CmodPy1fYYz
Версия QGIS на ваших компьютерах должна быть не ниже 3.22.
2. После того, как все будет готово, открываем QGIS и подключаем подложку «Google Satellite» через модуль QuickMapSevices, так как именно на ней и обучалась YOLO.
Вызвать меню модуля можно, перейдя во вкладку «Модули» на панели инструментов.
Модуль имеет следующий пользовательский интерфейс:
Входные данные
Входной слой (input layer): вставляем Google Satellite.
Маска обрабатываемой области (processed area mask) определяет, какая часть входного слоя должна быть классифицирована.
Параметры:
- Видимая часть (Visible Part) — позволяет обрабатывать часть, видимую в данный момент в окне программы;
- Весь слой (Entire Layer) — позволяет обрабатывать весь файл;
- Из полигона (From Polygon) — в качестве границы обработки данных может выступать полигональный слой, который будет описывать область интереса.
Файл модели:
3. В данном разделе меню необходимо указать тип модели, в нашем случае это сегментация (Segmentor), и указать путь до файла с моделью, который был скачен на первоначальном этапе. Далее необходимо нажать «load default parameters», чтобы подгрузить необходимые параметры для обработки данных в плагин. Пропускаем остальные параметры, так как они погрузились на предыдущем этапе автоматически, и переходим к выходному формату данных.
Выходной формат (output format) — отдельный класс в качестве векторного слоя (single class as vector layer).
Номер отдельного класса (single class number) — «1 – road».
В окне экспорт тренировочных данных (Training data export) убираем все галочки (как на скриншоте).
Затем нажимает кнопку Run и ждем, когда модель закончит свою работу.
4. Результатом должен быть векторный слой с именем «road». Так как он будет временным, после работы его необходимо будет сохранить.
Бесплатные геоинформационные решения QGIS и NextGIS

Стоит только начать работать с геоинформационными системами (ГИС), как приходит понимание их незаменимости в работе любого руководителя или сотрудника организации, имеющего дело с географически распределенными данными.
Год назад передо мною возникла задача нанести на карту для совместной работы несколько сот объектов, раскиданных по муниципальному району. Поэтому изначально искал веб-сервис, позволяющий отобразить мои данные на карте в Интернет, но позже изменил подход – оказалось, что полезные возможности от визуализации данных на карте возрастают на порядок, если использовать веб-сервисы совместно с десктопными решениями.
Тогда я наше время для некоторого углубления в предмет и изучения рынка, проанализировал различные платные и бесплатные ГИС, и выяснил, что знакомые геодезисты и специалисты, работающие в сфере градостроительной деятельности, предпочитают ГИС «ИнГЕО» (тот же AutoCAD, только заточенный под создание информационной системы обеспечения градостроительной деятельности). Другая часть ГИС-пользователей устанавливает на свои компьютеры MapInfo.
Но тут оказалось, что менее искушенные товарищи радуются бесплатному (Open Source) решению QGIS, которое с их слов закрывает нужды широкого круга специалистов, от руководителей экономической безопасности и директоров строительных компаний до геодезистов. Причем, закрывает не хуже по отношении к названным выше коммерческим ГИС, чем LibreOffice нужды пользователей Microsoft Word — вопрос исключительно в привычке.
Так QGIS стал для меня персональным открытием года. И если сначала с недоверием отнесся к утверждению своего знакомого, что QGIS быстро вытесняет дорогостоящие профессиональные ГИС, то теперь полагаю, что такое утверждение имеет право на жизнь.
На скриншоте ниже показан пример данных, обработанных нами в QGIS и выложенных на бесплатный облачный веб-сервис NextGIS.com для совместной работы. С NextGIS.com мы познакомимся ниже.

Со временем информация в ГИС накапливается, появляется возможность одним нажатием кнопки отображать комбинации слоев карт с казавшейся когда-то несвязанной тематикой и делать открытия, которые ранее не были очевидными.
Приятные сюрпризы от изучения QGIS и NextGIS продолжаются по сей день. Пришло время поделиться опытом.
Геоинформационная система QGIS
QGIS – это свободная бесплатная десктопная географическая информационная система с открытым кодом. С ее помощью можно создавать, редактировать, визуализировать, анализировать и публиковать геопространственную информацию в Windows, Mac, Linux, BSD (а вскоре и на Android). Система хорошо документирована на русском языке, плюс у нее обширное русскоязычное сообщество пользователей и разработчиков.
Функциональность QGIS определяется большим количеством устанавливаемых расширений, загружаемых через меню «Управление модулями». Можно найти модули под самые разнообразные задачи, от геокодинга, до упрощения геометрии, интеграции с картографическими веб-сервисами и 3D-моделирования ландшафта.
Задача настоящей статьи – дать общее представление о возможностях QGIS. Как то или иное исполнить на практике – предлагаю гуглить и сразу пробовать по ходу статьи. Интерфейс приложения дружественен и понятен новичку, особенно если иметь представление об общих принципах работы ГИС которым во многом посвящена эта статья.
Файл проекта и файлы слоев QGIS
Основные объекты, с которыми пользователь работает в ГИС – это слои. Обычный слой представляет собой таблицу, каждой строке которой соответствуют по одному объекту на карте. В отличие от привычных каждому таблиц в стиле Microsoft Excel кроме атрибутивных данных, таких как, например, наименование объекта недвижимости, арендатора, адреса, площади и т.д., в таблице QGIS есть столбец, по умолчанию скрытый, с так называемой «геометрией» объекта – пространственными данными, позволяющими отобразить на карте объект, описанный в соответствующей строке этой таблицы.

В зависимости от типа слоя объектами, которые могут быть разнесены по карте, являются растровые объекты (изображения, например, куски спутниковых снимков) или векторные данные, которые описываются координатам вершин. Существуют три основных типа векторных объектов:
- точки;
- линии, в том числе ломаные;
- полигоны (замкнутые линии площадных объектов).
В простейшем варианте пользователь создает свои слои в табличных файлах с расширением «.shp» (от англ. Shape – форма, облик) – родном формате QGIS. Один слой (таблица) содержится в одном файле .shp. Если необходимо передать кому-то картографическую информацию для дальнейшей работы, то можно отправить один файл «.shp», хотя во многих случаях целесообразнее запаковать в архив и передать всю папку проекта.
Как уже было сказано, для хранения геометрии отводится отдельное поле в таблице слоя. Если его нет в источнике (файле, базе данных, внешнем приложении), то QGIS поможет его создать. Это значит, что можно, например, присоединить в проект выгруженный из Microsoft Excel файл с адресами контрагентов в формате CSV, создать в нем поля геометрии или конвертировать в полноценный слой «.shp» для отображения этих адресов на карте.

QGIS позволяет присоединять в проект файлы таблиц слоев во множестве форматов, например MapInfo, ArcGIS или даже CSV, но как правило, после присоединения я их сразу конвертирую в формат QGIS (.shp), так как при этом появляются дополнительные возможности, особенно в части стилизации. Иногда присоединенные файлы слоев имеют неверную кодировку текста. В этом случае правильную можно выбрать в свойствах слоя.
Поскольку файлы не импортируются, а присоединяются в проект, то изменения, которые вносятся в строки таблицы будут сохраняться в эти же самые файлы. То есть, они станут видны во всех приложениях, использующих эту таблицу, и наоборот.
Что немного сбивает с толку новичка? Загруженные в проект слои по умолчанию защищены от записи и не редактируются, на них нельзя наносить новые объекты, передвигать их, изменять атрибуты и добавлять поля в таблице. Для всего этого необходимо выделить нужный слой и нажать кнопку редактирования. После этого станут доступны соответствующие другие кнопки и опции.
Не забывайте, что ваши правки распространяются на выделенный слой и если вы переключились на другой — прежний хотя и останется в режиме редактирования, но нанести на карту новый объект у вас не получится до тех пор, пока вы не выберите редактируемый слой вновь. Излишне напоминать, что надо периодически сохранять изменения редактируемого слоя (или целиком проекта), чтобы их не потерять.

Стили
Таблицы с данными и правила их отображения на карте (стили) хранятся и обрабатываются QGIS раздельно. Что такое таблицы мы поняли, теперь необходимо разобраться с тем, что такое стили.
Стиль устанавливается для каждой таблицы. Самое простое, что описывает стиль – это цвета, маркеры и изображения, используемые для отображения объектов таблицы на карте, форматирование и расположение подписей и поля таблицы из которых эти подписи формируются, масштаб при котором отображается слой или подписи. В том числе, с помощью стиля можно легко поставить оформление слоя на карте в зависимость от каких-нибудь полей этой или связанных таблиц. Например, отображать должников и кредиторов на карте разными символами.

Кроме того, можно настроить действия, которые производятся, например, при нажатии на маркер объекта на карте. Если вы желаете щелчком мыши по карте переходить на страницу объекта в закрытой корпоративной сети или запустить некое приложение для обработки объекта – нет проблем.
Использование слоев из публичных источников
Существуют специальные веб-сервисы WMS и WFS которые предназначены для передачи картографической информации. Пользователь использует специальную HTTP ссылку, по которой клиент пользователя (QGIS) запрашивает данные. Сервер отдает данные и они отображаются на мониторе пользователя. В некоторых случаях эти данные можно редактировать и возвращать на сервер.
- WMS — передает картографическую информацию в виде готовых изображений (растров), привязанных к координатам.
- WFS — позволяет запрашивать и при наличии полномочий редактировать на карте векторные пространственные данные, такие как дороги, береговые линии, земельные участки и т.д.
После установки модуля откройте в его настройках вкладку «Загрузить сервисы» и нажмите кнопку «Получить источники данных». Вам станут доступны публичная кадастровая карта, фотопланы от Google и Yandex, лицензионно чистая и, на мой взгляд, наиболее подробная из доступных карт OpenStreetMap (она же OSM), а также еще десятки полезных слоев, которые можно разместить в своем проекте.

Кроме того, некоторые сервисы предоставляют полезную информацию для автоматического анализа. Например, из OSM можно получить все региональные и федеральные дороги на карте с номерами, типами дорог, покрытием и т.д.
Геокодинг
Геокодинг – замечательное изобретение. Если под рукой есть таблица в Excel с адресами 10000 объектов (например, перечень контрагентов), почему бы их тоже не анализировать на карте.
Для этого в QGIS конвертируем таблицу из CSV-файла в слой .shp (модуль «RuGeocoder»). При этом таблица слоя получит скрытый столбец с геометрией (координатами точек), но он пока будет пуст.
Теперь с помощью того же модуля используем процедуру геокодинга, указываем таблицу слоя и ее поле с адресами, выбираем поставщика услуги. Мой выбор Yandex, поскольку он справляется с адресами на русском языке лучше всех.
Итак, запускаем процедуру геокодинга, ждем в среднем по секунде на каждый из обрабатываемых объектов и получаем всех их, раскиданными по карте.

Системы координат
Полезно понимать, что существуют различные системы координат. Их сотни.
В школе мы изучали только географические (WGS-84), представляющие точку на карте в виде градусов, минут, секунд широты и долготы. Однако в геоинформационных системах географические координаты хранятся в градусах и их десятичных долях, а минуты и секунды не используются (например, описание точки с координатами 45°34′55″ северной широты и 15°30′0″ западной долготы будут выглядеть так: 45.581944°, -15.5°).
Нередки случаи, когда из сторонних источников вы получаете слои, поля геометрии которых используют одну из прямоугольных систем координат. Прямоугольные системы активно используют геодезисты и проектировщики — это, так называемые, местные системы координат (МСК). Прямоугольные системы координат предполагают, что земля плоская и все измерения по осям абсцисс и ординат проводятся от конкретной нулевой точки в километрах от нее.
Зачем их так много? Дело в том, что допущение о плоской планете не позволяет использовать одну местную систему координат по всей Земле, так как уже через несколько сотен километров погрешность становится ощутимой. Зато они незаменимы в случае, когда требуется высокая точность на территории, ограниченной несколькими градусами широты и долготы. Так в Московской области геодезистами используются системы МСК-50 зоны 1 или 2.
QGIS позволяет выбрать систему координат для каждого слоя. То есть в одном проекте могут быть слои с разными системами координат, и они легко конвертируются из одной системы в другую – достаточно сохранить слой в shp-файл или базу данных, выбрав в качестве параметра новую систему. Кроме того в QGIS можно настроить систему координат в которую будут переводиться все слои проекта при их отображении на экране, а также системы которые будет устанавливаться по умолчанию для новых проектов и слоев в текущем проекте.
Информация о системе координат хранится вместе с таблицей в shp-файле QGIS, и передавая кому-либо файл слоя вместе с ним вы передаете соответствующие настройки. В других источниках слоев, включаемых в проект, информация о системе координат может отсутствовать. Поэтому, если вы получили от кого-либо слой с информацией, которая почему-то не отображается на карте, сделайте следующее – откройте таблицу объектов этого слоя, выделите любую строку и нажмите кнопку перехода к объекту. Если на экране отобразилась Африка или мировой океан, значит, QGIS систему координат распознал неправильно. Уточните у тех, от кого получен источник (файл), в какой системе координат хранятся данные, и установите ее для слоя в QGIS.

Если нужной системы координат нет в QGIS, то ее можно ввести самому (Пользовательская система координат). Для этого надо знать строку настроек. Google вам в помощь — попытайтесь использовать запрос с наименованием искомой системы плюс, например, «пользовательская система координат QGIS».
Для чего еще это может понадобиться? Пользователи публичной кадастровой карты хорошо знают о проблеме сдвига слоев кадастра относительно спутниковой подложки. Она сбивает с толку, мешает визуально оценивать границы земельных участков. Аналогичную картину мы видим при добавлении слоя публичной кадастровой карты в QGIS вместе со снимками Yandex или Google.
Чтобы исправить ситуацию я создал в QGIS собственную пользовательскую систему координат со следующими параметрами, подобранными эмпирическим путем, и установил ее для слоев кадастровой карты:
+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=-11.0 +y_0=-6 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
В результате проблема снята.
Немножко высшего пилотажа
Первое. Интересен вариант хранения пространственной информации в базе данных. Если есть база данных Microsoft SQL, Oracle или Postgres в которых, например, находится таблица с перечнем контрагентов с их адресами или таблица со списком оборудования, раскиданным по территории, то эту таблицу (запрос) полезно зацепить в QGIS.
Надо только добавить поле геометрии, и в этом QGIS поможет. Не забудьте установить в базе данных права на редактирование таблицы пользователю, получающему к ней доступ из QGIS. Информация, внесенная в QGIS, будет храниться в базе данных, а при изменении в базе данных сторонними управленческими приложениями, сразу же отображаться в QGIS.
Второе. Если нет желания давать прямой доступ к изменениям в базе или другом источнике данных (например файле CSV), но хочется оперативно получать информацию на карте, то есть эффективный способ и для этого.
Например, у нас есть информация об арендаторах нашего имущества в базе данных 1С, мы желаем показывать арендаторов на карте, выделять разными цветами должников по арендной плате и выводить рядом их сумму долга или какой-нибудь график с тенденцией погашения.
Нужно, в точности как это делаем с обычными слоями, присоединить таблицы базы данных с интересующей нас информацией (например, о динамике задолженности, должнике, объектах недвижимости и т.д.) в проект QGIS с правами на чтение. Поскольку присоединенные таблицы изначально не имеют геометрии, и мы не даем QGIS возможности ее создавать и изменять, то, понятно, надо как-то по-другому дать ГИС отсутствующую информацию о месторасположении имущества.
Для этого создаем слой .shp, располагаем на нем объекты, занося в один из атрибутов уникальные номера, соответствующие идентификаторам этих объектов в 1С. То-есть в обеих таблицах должны быть поля с одинаковыми идентифицирующими данными по которым их можно связать между собой. Настраиваем в свойствах слоя .shp соответствующие связи. В результате мы не меняем из QGIS данные 1С, но их изменение со стороны 1С сразу влияет на отображение объектов и сопутствующей информации на карте в QGIS. Осталось настроить свойства слоя карты для красивого отображения информации и наслаждаться результатом в реальном времени.

Третье. Отображать данные на карте в QGIS можно не только точками, линиями и полигонами с надписями, но и диаграммами, формируемыми автоматически на основе представленных данных.
Четвертое. Можно получать из QGIS аналитику в виде таблиц и итоговых данных, рассчитанных с учетом геопространственной информации. Например, имея таблицу населенных пунктов с количеством жителей в каждом и таблицу дорог из OSM, быстро подсчитать население, проживающее на расстоянии более 3 километров от региональных и федеральных автодорог.
NextGIS.com
Еще одним открытием года для меня стал облачный продукт NextGIS.com. Молодая российская команда NextGIS активно участвует в развитии QGIS. В этом можно убедиться по количеству доступных в QGIS модулей их производства. В 2016 году они запустили упомянутый картографический веб-сервис и неустанно расширяют его возможности.
Исходники проекта доступны на github. Так что если есть желание развернуть веб-сервис самостоятельно — нет проблем. Однако условия, которые предлагает команда NextGIS для доступа к своем облаку, без сомнения заслуживают внимания даже самых прижимистых пользователей.
Создать свою собственную веб-ГИС в облаке NextGIS можно бесплатно. Вы получите доменное имя в формате вашеимя.nextgis.com и можете почти без ограничений использовать все предоставляемые ими вкусности. Самое то, чтобы начать знакомиться с решением и использовать его на практике. Главное ограничение бесплатной подписки – невозможность ограничить доступ на чтение к информации. Любой может видеть то, что размещено вами.

Уже с бесплатной подпиской вы можете создавать сколько угодно веб-карт с произвольными настройками, компоновкой и стилями загруженных вами слоев, а также рассматривать, анализировать карты на рабочем компьютере и, в комплекте с NextGIS Mobile, собирать данные в поле, размещая их сразу в облако. Можно встраивать карты в веб-сайты или смотреть на сервисе.
Платная подписка снижает ограничения, в том числе по количеству пользователей, редактирующих слои (изначально один пользователь), разграничению их прав. Какие-то слои можно показать всем, а права доступа к другим ограничить. Плюс предоставляется возможность использовать собственное доменное имя, например gis.моякомпания.ru и получить разнообразие преднастроенных подложек (в бесплатной подписке есть только карта OpenStreetMap).
Со слов представителя компании сейчас условия подписки меняются. Ориентироваться нужно на информацию, размещенную на сайте сервиса по адресу nextgis.ru/pricing. Ранее платный тариф был единым и составлял 3000 руб.в месяц. Теперь платная подписка стоит от 600 рублей. Обещают, что за те же 3000 руб. в месяц клиент будет получать полный и актуальный комплекс программного обеспечения и сервисов, как и раньше.
Интеграция QGIS и NextGIS.com
Остановлюсь на нескольких не очевидных принципах интеграции QGIS и NextGIS.com. Работая в QGIS, вы создаете в своих проектах слои и их стили, как это уже рассматривалось выше. Теперь для того, чтобы разместить созданный слой на веб-карте у нас есть несколько способов. Рассмотрим сначала длинный путь, чтобы разобраться с идеологией NextGIS Web. Для размещения слоя необходимо:
- зайти в QGIS в свойства слоя и из них сохранить стиль в файл;
- сохранить файл слоя в системе координат WGS 84 (EPSG:3857).

- войти в свой аккаунт на своем сайте в облаке NextGIS.com,
- создать новый слой через опцию «Создать ресурс — Векторный слой» и во вкладке «Векторный слой» загрузить файл с расширением .shp.
После сохранения ресурса в его настройках появится возможность загружать файлы стилей слоев. К каждому слою с данными можно сохранить несколько разных файлов стилей, которые по-разному будут отображать данные на веб-карте.
Наконец, настало время разместить слой на карте. Для этого откройте главную страницу своего сайта. Среди перечисленных объектов основной группы ресурсов будет как минимум одна существующая веб-карта. Войдите в ее настройки и выберите вкладку «Слои». Нажмите «Добавить слой» и отыщите в открывшейся таблице ваш слой и под ним стиль, в котором хотите, чтобы его данные отображались на Веб-карте. Нажмите «Сохранить» и «Веб-карта – Открыть». Слой перед вами на карте — включите его для отображения.

Действительно длинный путь, не так ли? Но есть маршрут, который решает все это и многое другое прямо из QGIS в несколько нажатий клавиш и которым пользуюсь я.
Модуль NextGIS Connect для QGIS
Установите через меню QGIS «Управление модулями» модуль NextGIS Connect. В интерфейсе появится виджет «Ресурсы NextGIS». В его настройках создайте подключение, указав данные вашего аккаунта, в том числе адрес своего сайта (в формате «http://мойсайт.nextgis.com»), имя пользователя «administrator» и полученный при регистрации пароль. Вместо ввода логина и пароля можете использовать учетную запись гостя, но с нею не удастся загружать данные из QGIS на веб-сайт — можно только получать информацию с сайта. После регистрации на экране отобразятся все ваши ресурсы на облачном сервисе.

Теперь для того, чтобы разместить слои QGIS на веб-карте есть два способа.
Первый – загрузить целиком проект QGIS одной кнопкой. Он будет поднят в облако в виде отдельной папки со всеми слоями и новой веб-картой. Прямо из окна можно перейти к ней и увидеть, как выглядят ваши данные в браузере, поделиться ссылкой с друзьями, коллегами, встроить карту на какой-нибудь сайт.
Но при загрузке обновленных данных таким способом мы сталкиваемся с неприятным фактом – новый загруженный проект будет использовать новые URL-адреса его ресурсов, в том числе веб-карт, которыми мы успели поделиться с друзьями и коллегами.
Поэтому есть второй способ более изящный, предназначенный для работы с уже созданными веб-картами. Для этого мы поднимаем из QGIS в облако NextGIS.com по одному новому или измененному слою:
- удаляем в окне NextGIS Connect слои, которые хотим поднять обновленными;
- выбираем в окне NextGIS Connect конечную папку ресурсов;
- выделяем слой в QGIS правой кнопкой мыши и в контекстном меню выбираем «NextGIS Connect – Импортировать выбранный слой». Выбранный слой копируется в облако вместе с его стилем;
- повторяем действия для всех слоев, которые хотим обновить на веб-карте;
- выделяем в окне NextGIS Connect карту на которой собираемся разместить слой и переходим на нее щелчком правой кнопки мыши через контекстное меню «Открыть в ВебГИС»;
- в открывшемся окне ресурса веб-карты на сайте нажимаем кнопку «Изменить», выбираем вкладку «Слои» и нажимаем кнопку «Добавить слой». Находим загруженные слои и добавляем на карту стили, размещенные под каждым из них. Нажимаем «Сохранить».
Готово, по ссылке «Веб-карта – Открыть» увидите карту с прежним URL и комбинацией старых и обновленных слоев.
Растровые слои
Полезность пользовательских растровых слоев в качестве подложек карт при работе в QGIS очевидна не сразу, поскольку существует модуль расширения «Quick Map Services», который в пару кликов добавляет в проект слои публичных веб-карт, например Яндекс-Спутника или кадастровой карты.
Но со временем нужда в них появляется в следующих случаях если:
- на карте нужен более детализированный, чем доступные публично, фотографический план отдельного объекта или территории, который есть у вас в наличии
- вы работаете в дороге, при нестабильном доступе в Интернет или если вас досаждает длительная загрузка публичных снимков при каждом перемещении экрана;
- вы пользуетесь бесплатной версией NextGIS.com, а единственная подложка OpenStreetMap на ваших веб-картах вас не устраивает.

На что надо обратить внимание:
- Предпочтительный формат файла для хранения растровых данных – GeoTIFF с компрессией JPEG. Он занимает мало места, единственный загружается на NextGIS.com и может содержать тайлы – маленькие разномасштабные изображения, эффективно и быстро открывающиеся на веб-карте при перемещении экрана. Все тайлы по умолчанию хранятся в одном файле, но этого монстра не надо каждый раз загружать себе на компьютер, из него будут выбираться строго необходимые куски-тайлы. Однако, если файл все равно слишком велик для вас или для загрузки на сервис веб-карты, то его можно разбить на части как это показано (2×2 куска, 4 файла) в указанных выше настройках.
- В проект QGIS растровый слой можно поместить простым перетаскиванием. А если надо скрепить несколько частей, то можно использовать так называемый «виртуальный слой» или просто собрать все растровые слои в группу.
- Максимальный масштаб для Yandex-Спутника равен 18. 17 достаточен для многих задач, а файл с тайлами уменьшается значительно.
- При склейке в SAS.Planet в GeoTIFF-файле размещаются только тайлы указанного масштаба, и после прикрепления растрового слоя в проект QGIS в свойствах слоя рекомендуется выбрать опцию «Пирамиды». Растры высокого разрешения могут замедлить навигацию в QGIS. Создание копий данных низкого разрешения (пирамид) позволяет существенно повысить скорость, поскольку QGIS будет автоматически выбирать оптимальное разрешение в зависимости от текущего масштаба. Создайте пирамиды меньших размеров.
NextGIS Mobile
Если вам приходится работать в поле, есть желание оперативно получать информацию в пути с карты, одновременно собирая данные и оперативно делясь с другими, то полезно использовать бесплатное приложение NextGIS Mobile для смартфона или планшета. С его помощью можно получать и обрабатывать географически распределенную информацию из различных источников, в том числе со слоев NextGIS.com и сторонних баз данных, загружать из QGIS, изменять, рисовать объекты и создавать новые слои, возвращать их в QGIS. И все в привязке к собственному местоположению. Приятна возможность сохранять в слои собственные треки перемещений.
Для массового сбора информации достаточно просто создаются собственные формы, удобные для использования неподготовленными сотрудниками из приложения на телефоне или планшете.

Вместо заключения
Есть еще множество способов работы с упомянутыми выше решениями. Например, слои можно разместить на каком-нибудь бесплатном или собственном сервере баз данных PostgreSQL, вести с ними работу в QGIS и других приложениях, например LibreOffice, Microsoft Access или Microsoft Excel, а на сайте NextGIS.com один раз настроить слой для отображения на веб-карте. В результате все изменения данных в QGIS или в Microsoft Excel немедленно будут отображаться на веб-карте.
К размещенным в облаке объектам слоя можно прикреплять на карте документы и фотографии. Их просмотр удобен и нагляден. Правда, если этот слой вам приходится периодически заменять новым из QGIS, то с удаленной версией исчезнет и вся наполненная вами красота. Альтернатива – работать в облаке не путем замены слоев из QGIS (через модуль NextGIS Connect или вручную), а опосредованно, например, опять же, через однажды настроенный слой, получающий информацию из базы данных Postgres.
В любом случае, связка QGIS, NextGIS.com и NextGIS Mobile является гибким и полезным инструментом, доступным каждому. Переход к работе с ГИС для решения прикладных задач с географически распределенными данными – увлекательная задача и усилия по изучению предмета окупаются возможностями, которые мы тем самым открываем перед собой.
В заключение для иллюстрации материалов статьи предлагаю вот это короткое видео.
Кадастровая карта в QGIS

QGIS
Автор Александр Фадеев На чтение 8 мин Просмотров 42.4к. Опубликовано 26.08.2020 Обновлено 26.11.2021
Вопрос формирования кадастровой карты в бесплатной геоинформационной системе QGIS на основе данных Единого государственного реестра недвижимости является той еще задачей, имеющей свои «подводные камни». В качестве источников кадастровых сведений, используемых в QGIS могут выступать:
- Геопортал Публичной кадастровой карты Росреестра.
- Растровая подложка (растр) из Sas.Планет.
- XML файлы выписок Росреестр по объекту недвижимости или кадастровому плану территории.
Подключение геопортала ПКК
Подключение Публичной кадастровой карты Росреестра в открытом проекте QGIS производится через меню «Слой / Менеджер источников» во вкладке «ArcGIS Map Service» через кнопку «Создать» формируем новое подключение геопортала, где задаем имя подключаемого сервиса и указываем адрес геопортала. В нашем случае крайней рабочей версией адреса подключения Публичной кадастровой карты в QGIS и ArcGIS, являлся следующий путь:
Далее сохраняем данный источник, после чего нажимаем на кнопку «Подключиться». В случае верного указания пути появятся доступные слои геопортала, выбрав необходимые из них для отображения, нажимаем на кнопку «Добавить».
На данный момент подключение геопортала ПКК Росреестра отключено на стороне её разработчиков, то есть данную операцию выполнить пока не возможно. Надеемся на исправление ситуации со стороны Росреестра.
Подключение через сторонний сервис
Для подключения Публичной кадастровой карты возможно использование стороннего прокси сервера. Для этого необходимо просто добавьте два новых слоя в разделе XYZ Tiles:
- Кварталы, ЗУ, ОКС – https://gext.ru/rosreestr_xyz///.png
- ЗОУИТ – https://gext.ru/rosreestr_zones_xyz///.png

Или смотрите видео по подключению ПКК через сторонний прокси-сервис.
Обновленное видео по версии QGIS 3.16
Загрузка растра ПКК
Растры с параметрами привязки в QIS удобно подключить в формате ECW, с другими форматами и файлами привязки как то туго, необходимо предварительно конвертировать в удобоваримое для QGIS. Формировать растровую подложку в виде Публичной кадастровой карты можно через программу SAS.Планет.
Для добавления растра в открытом проекте через меню «Слой / Менеджер источников» во вкладке «Растр» подключаем соответствующий файл или группу файлов в формате ECW в строке «Источник». Далее всплывшем окне «Открыть GDAL-Совместимый Набор Растровых данных» находим каталог расположения файлов и выбираем необходимые для подключения через нажатие кнопки «Ctrl» на клавиатуре и щелчка мыши. После выделения необходимых файлов нажимаем на кнопку «Открыть» и длаее кнопку «Добавить».
Если растры имеют иную проекцию, отличную от текущей в проекте, то система координат преобразуется к проекции растра.
Формирование карты через обменные форматы
В качестве формирования векторной кадастровой карты могут выступать xml файлы кадастровых планов территорий Росреестра. Но рабочих вариантов подключения КПТ в QGIS на момент написания статьи нет. Для возможности использования данных кадастровых планов территории приходится использовать обменные форматы данных:
- shp файлы с КПТ;
- mif/mid файлы с КПТ.
В QGIS подключение широко используемых обменных форматов от ArcGis (shp) и MapInfo (mif/mid) не составляет каких то трудностей, как обычный векторный слой. Для выполнения данной операции необходимо в открытом проекте через меню «Слой / Менеджер источников» во вкладке «Вектор» подключить соответствующий файл или группу файлов векторного обменного формата в строке «Источник». В сплывшем окне «Открыть OGR-Совместимый Векторный набор данных» находим каталог расположения файлов и выбираем необходимые для подключения через нажатие кнопки «Ctrl» на клавиатуре и щелчка мыши.

Следует учесть, что при подключении векторных слоев в QGIS необходимо верно указать (выбрать из списка) исходную проекцию данных для каждого из подключаемых файлов.
КПТ в форматах shp, mif/mid и dxf
Можно задаться вопросом «Как получить из xml файла кадастрового плана территории карту в векторным формате для какой либо ГИС?». Для этого я использую ГИС Панорама в демо-режиме, которая позволяет загрузить xml-файл КПТ во внутренний формат SIT (SITX) ГИС Панорама. После чего, производится экспорт в SHP или MIF/MID или DXF форматы.
Кроме этого имеются сторонние онлайн агрегаторы по преобразованию из XML файла в вышеуказанные форматы, но тем самым вы дарите им свои xml-ки. Так что пока приводит данные ресурсы в этой статье не буду.
Подключение местных систем координат
В зависимости от версии QGIS подключение параметров местной системы координат (МСК) производится через следующие форматы:
- PROJ4 — для версий QGIS 3.8 и ниже;
- WKT — для версий QGIS 3.9 и выше.
Добавление местных систем координат в QGIS производится через меню «Установки / Пользовательские проекции…». Добавляем пользовательскую систему координат через нажатие на кнопку «+», затем прописываем название проекции в каталоге по строке «Имя». Далее выбираем необходимый формат описания проекции WKT или PROJ4.

В версии QGIS 3.14 прописывание в формате PROJ4 приведет его к преобразованию в WKT формат проекции.
Прописываем параметры проекции в зависимости от выбранного формата и проверяем его на правильность оформления через кнопку «Validate».
Для общего примера возьмем универсальные параметры местных систем координат для MapInfo. Ниже приведен пример строки проекции МСК-12 зоны 1 в формате для прописывания в файле проекций MapInfo:
«МСК-12 зона 1», 8, 9999, 3, 23.57, -140.95, -79.8, 0, -0.35, -0.79, -0.22, 0, 7, 47.55, 0, 1, 1250000, -5914743.504
МСК в формате PROJ4
На основе примера строки проекций для MapInfo в QGIS эта строка будет выглядеть следующим образом (смотрите внимательно некоторые параметры меняются знаки с «-» на «+»):
Структура файла PROJ4
+proj=tmerc +lat_0=0 +lon_0=47.55 +k=1 +x_0=1250000 +y_0=-5914743.504 +ellps=krass +towgs84=23.57, -140.95, -79.8, 0, 0.35, 0.79, -0.22 +units=m +no_defs
Данный пример строки не валиден (не может быть применен) для версии QGIS 3.14 и выше, так как исключен переход к «to wgs84».
МСК в формате WKT
Вот честно не могу сказать с какой версии произошел переход от proj4 к wkt по прописыванию параметров пользовательских проекций. Но тенденция к переходу к описанию проекций или систем координат через wkt-формат прослеживалась давно и рекомендовалась разработчиками данной программы. Покажем пример формирования такого файла в версии QGIS 3.14.
Структура файла WKT
BOUNDCRS[
SOURCECRS[
PROJCRS[«MSK-12 zone 1»,
BASEGEOGCRS[«MSK»,
DATUM[«Unknown based on Krassovsky, 1942 ellipsoid»,
ELLIPSOID[«Krassovsky, 1942»,6378245,298.3,
LENGTHUNIT[«metre»,1,
ID[«EPSG»,9001]]]],
PRIMEM[«Greenwich»,0,
ANGLEUNIT[«degree»,0.0174532925199433],
ID[«EPSG»,8901]]],
CONVERSION[«unknown»,
METHOD[«Transverse Mercator»,
ID[«EPSG»,9807]],
PARAMETER[«Latitude of natural origin»,0,
ANGLEUNIT[«degree»,0.0174532925199433],
ID[«EPSG»,8801]],
PARAMETER[«Longitude of natural origin»,47.55,
ANGLEUNIT[«degree»,0.0174532925199433],
ID[«EPSG»,8802]],
PARAMETER[«Scale factor at natural origin»,1,
SCALEUNIT[«unity»,1],
ID[«EPSG»,8805]],
PARAMETER[«False easting»,1250000,
LENGTHUNIT[«metre»,1],
ID[«EPSG»,8806]],
PARAMETER[«False northing»,-5914743.504,
LENGTHUNIT[«metre»,1],
ID[«EPSG»,8807]]],
CS[Cartesian,2],
AXIS[«(E)»,east,
ORDER[1],
LENGTHUNIT[«metre»,1,
ID[«EPSG»,9001]]],
AXIS[«(N)»,north,
ORDER[2],
LENGTHUNIT[«metre»,1,
ID[«EPSG»,9001]]]]],
TARGETCRS[
GEOGCRS[«WGS 84»,
DATUM[«World Geodetic System 1984»,
ELLIPSOID[«WGS 84»,6378137,298.257223563,
LENGTHUNIT[«metre»,1]]],
PRIMEM[«Greenwich»,0,
ANGLEUNIT[«degree»,0.0174532925199433]],
CS[ellipsoidal,2],
AXIS[«geodetic latitude (Lat)»,north,
ORDER[1],
ANGLEUNIT[«degree»,0.0174532925199433]],
AXIS[«geodetic longitude (Lon)»,east,
ORDER[2],
ANGLEUNIT[«degree»,0.0174532925199433]],
ID[«EPSG»,4326]]],
ABRIDGEDTRANSFORMATION[«Transformation from unknown to WGS84»,
METHOD[«Position Vector transformation (geog2D domain)»,
ID[«EPSG»,9606]],
PARAMETER[«X-axis translation»,23.57,
ID[«EPSG»,8605]],
PARAMETER[«Y-axis translation»,-140.95,
ID[«EPSG»,8606]],
PARAMETER[«Z-axis translation»,-79.8,
ID[«EPSG»,8607]],
PARAMETER[«X-axis rotation»,0,
ID[«EPSG»,8608]],
PARAMETER[«Y-axis rotation»,0.35,
ID[«EPSG»,8609]],
PARAMETER[«Z-axis rotation»,0.79,
ID[«EPSG»,8610]],
PARAMETER[«Scale difference»,0.99999978,
ID[«EPSG»,8611]]]]
Кадастровое деление территории
В новой версии публичной кадастровой карты была преобразована отдача границ кадастрового деления в виде векторных тайлов, что позволило получать эти границы в векторном формате. Как это делается представлено в следующем видео, где показывается 2-а варианта получения границ кадастрового деления по необходимой территории:
- скачивание файлов PBF через браузер и их загрузка в QGIS;
- подключение векторных тайлов в QGIS и сохранение границ в отдельный.
Путь для подключения векторных тайлов кадастрового деления:
