7 заметок с тегом

городские данные

Как работает очистка данных со stat.gibdd.ru

Год назад написал скрипты для очистки данных статистики ДТП, потому что изначальные данные (именно GPS-координаты) были очень грязными и их практически нельзя было визуализировать. Сорцы на Гитхабе имеются.

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

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

Алгоритм очистки данных

Описаниме по шагам

Изначально нам дана синяя точка слева внизу. Это GPS-координаты, которые мы получили из исходных данных. Наша основная зацепка — адрес. Он заполняется вручную и обычно верный.

Шаг 1. Воспользуемся геокодером. Это такая программа, которая переводит географическое название (город/село/улицу + дом) в географические координаты. Я обычно пользуюсь геокодером Яндекса, потому что он точнее для СНГ, но ещё есть бесплатный от OpenStreetMap. Так мы получаем чистую координату дома по адресу (красная точка на рисунке).

Шаг 2. В OSM хранится граф дорог, при этом они привязаны к географическим координатам (у графа есть точное положение на плоскости). И есть классная особенность: мы можем ввести координаты точки на плоскости и получить кусок графа в радиусе n от этой точки. Общая идея такая:

  • вводим координаты дома после геокодирования -> получаем круг примерно как на картинке,
  • выбираем все дороги, попавшие в радиус (можно считать их просто линиями),
  • строим перпендикуляры из точки до каждой из линий (на рисунке x и y),
  • выбираем кратчайший (в нашем случае x),
  • наша красная точка получает новые координаты (уже на ребре графа из OSM) и становится жёлтой точкой,
  • profit.

Так мы кривые координаты ДТП по одному лишь адресу аккуратно перенесли прямо на улицу. Теперь при визуализации всё будет аккуратно и ровно.

Типы улиц Тулы

Раз уж пошла такая мода (оригинальная идея Эрина Дэвиса, Москва, Астрахань), то и я нарисовал карту типов улиц Тулы.

Интересно выглядят плотные участки, состоящие только из проездов. Вроде как согласно СНиП (Строительные нормы и правила), к проездам меньше требований по ширине полос, допустимым углам поворота, наибольшему допустимому уклону, ширине пешеходной части.

А ещё в Туле есть особенный тип: «обвод». Он всего один (Восточной обвод), но всё таки существует. И целых два проспекта.

 Нет комментариев    158   1 мес   анализ данных   визуализация   городские данные   проекты   тула

«Средненько». Проверка гипотезы

Мотивация

Я 3-4 года назад услышал про исследование КБ «Стрелка», в котором они скрапили фото из социальных сетей (Инстаграм и ВК) и рисовали хитмапы на картах по ним. Оказывается, это называется цифровой антропологией.

Идея кейса, который вдохновил меня, в том, что такое исследование помогло в каком-то там городе РФ выбрать лучшую точку для открытия общественного пространства. Гипотеза такая: если люди где-то делают фото, значит уже проводят там время, а значит там и так всё хорошо с социальной жизнью. В итоге администрации посоветовали открыть новую точку интереса на противоположном конце города от существующей.

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

Закрывая гештальт (как Инстаграм своё API для доступа к гео-информации о фотографиях в 2016-ом) достиг успеха.

Реализация

Т. к. API Инстаграма оказалось закрытым, решил воспользоваться Flickr’ом.
Суть идеи:

  • берем 2019ый год,
  • cкрапим фотографии с Flickr для конкретной локации (т.e. города),
  • аккуратно накладываем на карту,
  • видим места, где люди много фотографируют,
  • делаем какие-то выводы.

Например: люди фотографируют -> там что-то интересное -> логично поселиться во время поездки.

Другой например: можно увидеть места, которые недостаточно освещены туристически (с точки зрения наличия фотографий) и можно выбрать наоборот район, где живут местные. На примере Берлина эта теория вроде как работает.

Фотографии в Берлине за 2019ый год

Найденные подводные камни:

  • API Flickr’a частично не завелось из python-обертки, которую я нашёл,
  • фотографий не так много (250к за год), как в Инстаграме. С геопозицией — еще меньше. За 2019ый год только 44к для Берлина,
  • на карте прямыми линиями из фотографий заметны фотопрогулки, когда один человек шел и фотографировал всё, что видел. Так получается много фотографий одного места, хотя это всего лишь от одного человека. В планах написать кастомную функцию хитмапа, которая бы давала больший вес участкам, где фотографии от разных людей. Так получится сильно честнее.

«Средненько»

В процессе возникла идея — сопоставить кучу фотографий одной достопримечательности для получения её «усреднённого» вида. Итог получился сильно лучше, чем я ожидал.

Оригинальные Бранденбургские ворота
Усреднённые 55 фотографий Бранденбургских ворот

Когда-то вероятно продолжу и сделаю для других городов.

 Нет комментариев    352   5 мес   анализ данных   городские данные

Счастливый конец мойсеверозапад.рф

Мы в КоргиЛаб успешно запустили мойсеверозапад.рф 5 месяцев назад и сейчас готовы сообщить о результатах исследований и полученных данных.

Основная цель запуска — помочь магистрантке архитектурного ВУЗа успешно написать и защитить диплом об открытом проектировании в формировании общественных пространств жилого района. Диплом успешно написано и сдан на отлично, время подводить результаты.

Отфильтровав некорректные данные (например больше 5 отметок одного типа с одной анкеты), получили 263 предложения по категориям:

  • 65 «Досуг»,
  • 64 «Спорт»,
  • 44 «События»,
  • 43 «Дети»,
  • 47 собственных идей жителей.
Финальное состояние карты
Статистика посещений
 Нет комментариев    378   11 мес   анализ данных   городские данные   коргилаб   проекты

мойсеверозапад.рф

UPD: проект успешно закончен.

Мы в КоргиЛаб закончили наш первый проект: мойсеверозапад.рф.

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

Этот проект — часть магистерского диплома студентки архитектурного вуза:

Моё диссертационное исследование посвящено формированию общественных пространств в жилых районах с использованием методов открытого проектирования.
Открытость подразумевает возможность рядовых жителей принимать участие в формировании среды, которая их непосредственно окружает.
Также открытое проектирование можно рассматривать с точки зрения «open architecture», понятия, используемого в программировании, когда созданный продукт, будь то сайт или приложение, постоянно улучшается за счет взаимодействия с пользователями, их мнениями, и другими специалистами.
Информационно-компьютерные технологии позволяют сегодня не только провести различные виды архитектурного анализа. Они позволяют дистанционно взаимодействовать с теми людьми, среду для которых мы хотим создать.
Так и зародилась идея создания платформы мойсеверозапад.рф, где жители и те люди, которые часто посещают этот район, могут выбрать из предложенного перечня объектов тот, который они хотят видеть в своем районе, или же предложить что-то свое.

Весь сервис — React-приложение и Firebase в качестве БД.

 Нет комментариев    229   2019   городские данные   коргилаб   проекты

Скрипты для очистки данных со stat.gibdd.ru

Написал пару скриптов для исправления координат ДТП.

Процесс состоит из двух шагов:

  • привязка координат ДТП к адресу (он обычно заполняется правильно),
  • проекция координат адреса на ближайшую улицу. Скрипт может не работать в России без VPN.

Не вынес отдельно конфигурацию, поэтому лучше всё запускать по шагам у себя в тетрадках и настраивать под себя.

 Нет комментариев    80   2019   городские данные   питон   программирование   проекты