Статьи
ГИС Урбанистика БПЛА и ДЗЗ Туториалы

Как считают города. Измеряем плотность застройки в QGIS

Время прочтения: 7 минут
Изучив основы, теперь можем приступить к практической части статьи, в которой я продемонстрирую, как можно считать плотность застройки на примере своего любимого Волгограда.

1.Собираем данные

Чтобы считать плотность застройки, нам нужны данные о самой застройке и о территории, на которой она расположена. Я предлагаю в этой статье считать плотность застройки относительно уличных блоков.
Застройка – это здания, в идеале их геометрия на всю рассматриваемую территорию и информация об этажности каждого здания. Взять такую информацию в большом объеме можно из следующих источников:
  1. Open Street Map (OSM), используя плагин QuickOSM (открытые данные).
  2. Использовать данные из Единого государственного реестра недвижимости или аналогичного реестра другой страны (в России заказывать платно).
  3. Топографические карты (заказываются платно через фонд пространственных данных).
  4. How-old-is-this.house, но далеко не для всех городов (открытые данные).
Все указанные выше данные вряд ли будут содержать всю нужную информацию: скорее всего, не будет и геометрий некоторых зданий, и информации об этажности всех зданий. Если же для вашей территории вам повезло найти все необходимые данные, то, возможно, даже стоит купить лотерейный билет.
Для этого урока я скачал данные по Волгограду из проекта how-old-is-this.house – это уже собранные данные из разных источников, в том числе из OSM. На сайте проекта уже описано, как данные собирались, методика меня устраивает, поэтому смело скачиваю оттуда geopackage слой и закидываю в QGIS.
В таблице атрибутов слоя этажность зданий указана в колонке “r_floor”, Для Волгограда такое значение есть у 56 тысяч зданий. Если скачивать информацию только из OSM, то наличием этажности (в OSM указывается тэгом "levels") может похвастаться около 18 тысяч объектов.
Если вы пошли более сложным путем, то вот как скачивать файлы из OSM помощью плагина QuickOSM:
Наши настройки означают, что мы выбираем здания (1) любого типа (2), которые попадают на открытую на нашем экране область, называемую в QGIS холст (3) (Источник картинки – туториал по минималистическому постеру городского ландшафта из нашей почтовой рассылки).
Перед тем как перейти к следующему шагу, советую посмотреть и оценить, насколько полны ваши данные – для этого полистайте таблицу атрибутов, сравните ваш слой зданий с тем, что можно увидеть на снимках гугл, которые можно подключить через плагин QuickMapServices.
Не забываем выставить систему координат проекта на метрическую, например, подходящая зона UTM для Волгограда – это WGS 84 / UTM zone 38N (EPSG: 32638), и я сохраняю слой в этой системе координат для корректности расчетов.
Систему координат проекта устанавливаем, щелкнув по коду проекции в правом нижнем углу. Розовый крестик на карте показывает, где находятся наши данные, красная полоска – зона проекции. Через поисковик ищем подходящую проекцию UTM и нажимаем “Ок”.
Итак, информация о застройке собрана, теперь приступаем к самому сложному – уличным блокам. Есть несколько вариантов, откуда можно получить эту информацию, все варианты неидеальные:
  1. Нарисовать самому.
  2. Добыть красные линии, например, мне через кучу рук достался автокадовский слой красных линий Волгограда четырехлетней выдержки от знакомого кадастрового инженера.
  3. Скачать с OSM данные под ключом "landuse" в надежде, что местные OSMеры рисовали его по уличным блокам как нам нужно.
  4. Слепить самому из данных OSM используя кучу костылей, созданных своими руками.
Объекты под ключем landuse в OSM нарисованные для большинства уличных блоков как нам нужно можно встретить у соседа Волгограда - города Волжский (население около 300 тыс. человек).
Чем большую территорию мы пытаемся оценить, тем чаще будут встречаться нехватка данных и некорректность отрисовки уличных блоков. Для демонстративных целей туториала я отобрал кварталы, в которых есть все здания, и у всех них есть информация об этажности. Но если вам интересно узнать мой костыльный способ построения уличных блоков из OSM, то ставьте эмодзи 🦄 под этой новостью в телеграм-канале Картетики, и если наберется хотя бы 7 тысяч единорогов, то я напишу про него туториал или даже сделаю видео (на самом деле, для туториала костыльного метода построения кварталов достаточно и одного эмодзи, нам важен каждый читатель).

Апдейт: единорогов набралось много! Спасибо всем участвующим, вы помогли в создании еще одного туториала.

2.Подготовка данных

Для расчета любого показателя плотности застройки нам потребуется для каждого уличного блока посчитать как суммы площадей следов всех зданий, так и суммы площадей всех этажей всех зданий. Нам нужно, чтобы у каждого здания была посчитана площадь следа здания и площадь всех этажей зданий до того, как будет происходить агрегирование данных по уличным блокам.
Для этого открываем таблицу атрибутов слоя со зданиями и последовательно создаем два новых поля через калькулятор полей:
Первое поле называем" fp_area", в нем посчитаем площадь следа здания, используя команду $area, считающую площадь объекта
Второе поле назовем "b_area", в нем посчитаем площадь всех этажей здания по нехитрой формуле $area * “имя колонки с количеством этажей здания”

3.Агрегирование данных и хитрость, которая сэкономит вам время

Теперь, чтобы посчитать коэффициент застройки и коэффициент плотности застройки, нужно посчитать суммы площадей зданий для каждого квартала – делается это с помощью инструмента "join attribute by location" (Объединение атрибутов по расположению).
Но перед этим небольшая хитрость: чтобы процесс прошел быстрее, что особенно важно при большом количестве данных, создадим пространственный индекс для слоев со зданиями и кварталами.
Чтобы создать пространственный индекс для слоя, нажимаем правой клавишей по слою, выбираем "Свойство" и во вкладке "Текст" ищем заветную кнопку “Создание пространственного индекса” (create spatial index)
Создав пространственный индекс, приступаем к агрегированию данных. В инструментах анализа (processing) ищем "join attribute by location (summary)" (Объединение атрибутов по расположению (сводка)).
Устанавливая настройки как на скрине, мы говорим программе, что мы считаем суммы площадей колонок "fp_area" и "b_area" зданий, пересекающих один уличный блок.

4.Считаем коэффициент застройки

Как уже было сказано ранее, коэффициент застройки считается как отношение площадей всех следов зданий в квартале к площади квартала. Сумма площадей следов зданий есть, теперь нужно разделить ее на площадь квартала. Сделать это можно также через калькулятор полей.
Создаем поле "b_coverage" и считаем заветный коэффициент застройки по формуле "fp_area_su" / $area
Коэффициент застройки посчитан, наслаждаемся результатом и видим, как отличаются между собой квартальная и микрорайонная застройка в цифрах

5.Считаем коэффициент плотности застройки

Коэффициент плотности застройки считаем аналогично. Делим сумму площадей всех этажей здания на площадь квартала.
Создаем поле "FSI" и считаем коэффициент плотности застройки по формуле "b_area_sum" / $area
Коэффициент плотности застройки посчитан, опять в среднем он выше в кварталах

Рефлексия

С точки зрения математики считать плотность застройки – не самая сложная задача, но вот с точки зрения подготовки и сбора данных все гораздо сложнее. Даже данные на платной основе, например, из Единого государственного реестра недвижимости, не позволяют нам считать эти показатели массово для формирования больших выборок и сравнения их между собой. Поэтому, рассчитывая плотность застройки для своих целей, не забывайте проверять полноту ваших данных, качество тут играет огромную роль.
Если вам интересна тема плотности застройки, которая все больше становится актуальной в городском планировании как инструмент регулирования застройки, то советую вам прочитать “Spacematrix – Space, Density and Urban Form”. Книга уже успела стать, можно сказать, классикой. Методика измерения плотности использовалась и MLA + для исследования “Нераскрытый Петербург”, и при подготовке “Стандарта качества городской среды”, разработанного Минстроем России и ДОМ.РФ вместе с КБ Стрелка, который должен стать заменой СП Градостроительству, документу, приписываемому с 1989 года.
Источники:
Автор: Александр Зуев

Раз в две недели мы выбираем лучшие материалы блога про карты и геотехнологии, добавляем к ним полезные ссылки от команды, подкрепляем личным посланием и отправляем это все в нашей e-mail рассылке. Подписывайтесь, чтобы не пропустить новости от нас ⭐