Методика сбора данных для проекта «Метро для всех»

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Эта страница является черновиком статьи.


Описание методики сбора данных

Эта статья описывает методику сбора и подготовки данных по доступности станций метрополитена различным категориям маломобильных граждан. Странно (или наоборот, не странно), но этого никто до сих пор не сделал, мы, как всегда, будем здесь первыми.

Описанная методика использовалась для сбора данных для проекта "Метро для всех" в Москве, Санкт-Петербурге, Казани, Варшаве (http://metro4all.org). В рамках проекта разработано программное обеспечение - система, использующая данные для построения маршрутов с описанием всех потенциальных препятствий на входе, выходе и пересадках. Эта методика не описывает программное обеспечение, а только приводит описание процесса сбора и подготовки данных.

Структура результата

Конечный результат - это набор отдельных файлов CSV и папок со схемами по каждому городу.

Схемы узлов:

  • source - отсканированные файлы зарисовок схем
  • svg - схемы, отрисованные в SVG
  • png - схемы, отрендеренные в PNG (используются в приложениях)

Таблицы:

  • graph - граф сети
  • interchanges - параметры доступности по пересадкам
  • lines - перечень линий
  • portals - параметры доступности по маршрутам
  • stations - перечень станций

Описание создания схем и подготовки таблиц приводится далее по тексту.

Подготовка

Первым делом, нужно выбрать лучший тариф на поездки, потому что вам придётся выходить и заходить обратно на каждой станции по пути. Затем, спланируйте маршрут на ближайшие пару дней. За день реально собрать данные по 5-8 станций: физически объехать можно и больше, однако 1) вы устанете, 2) кроме сбора данных есть ряд других действий занимающих значительное время. Набив руку, дело пойдет быстрее.

Metro-accessories.jpg

Инвентарь

Ручка, блокнот (если вы не привыкли мельчить, то формата А5, желательно на спирали и в твёрдой обложке), рулетка и уклонометр. Последние бывают трёх типов:

  • специальные электронные, стоят от 2,5 тысяч
  • обычные уровни с дополнительным поворотным глазом, окружность которого проградуирована. Поскольку точности в 1° достаточно, то уровень вполне подойдёт.
  • телефонные, если у вас iPhone или телефон на Android, то вы можете легко найти программу, которая позволит измерять уклон с достаточной точностью, вам просто нужно сначала откалибровать его на ровной поверхности, а потом положить его на измеряемую наклонную. Поищите по ключевым словам level, angle, meter и т.д.

Схема - сбор данных

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

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

Основные элементы

Мы обязательно отмечаем на схемах объекты из таблицы. Подробно нюансы, связанные с каждым элементом, описаны далее по тексту.

Объект Символ Атрибуты Комментарий
Проход Metro4all-passage.png нет
Пути Metro4all-lane.png направление движения, название следующей станции
Лестница Metro4all-stairs.png количество ступеней
Небольшая лестница Metro4all-stairs-short.png количество ступеней от 1 до 5
Лестница с рельсами Metro4all-rails.png количество ступеней,

внутренняя ширина рельс, внешняя ширина рельс, угол

Небольшая лестница с рельсами Metro4all-rails-short.png то же, что и выше, при количестве ступеней от 1 до 5
Пандус Metro4all-ramp.png угол
Эскалатор Metro4all-escalator.png ширина,

направление движения

Дверь Metro4all-door.png ширина
Сужение Metro4all-narrowing.png ширина сужение прохода меньше 100 см
Турникеты Metro4all-turn.png ширина
Лифт Metro4all-elevator.png ширина дверей,

ширина и глубина кабины

Рабочий процесс

Вы приехали на станцию метро и достали блокнот.

Схема создаётся для узла. Узел — одна или более станций, объединенных переходами. Например: Арбатская — Александровский сад — Библиотека им. Ленина — Боровицкая. Узел может состоять из одной станции. Необходимость введения понятия “узел” обусловлена тем, что для некоторых показателей невозможно отделить одну станцию узла от другой.

Схема создается для всех выходов на дневную поверхность независимо от того, входит или нет участок маршрута в ведение метрополитена. Исключением являются выходы в торговые центры, внутренности центра не картируются, выходом считается вход в торговый центр. Окончанием маршрута (входом-выходом) считается продолжительный широкий участок дневной поверхности с углом наклона менее 5 градусов. При наличии такого участка все ответвления от его начала на дневной поверхности уже не картируются.


Платформы и пути

Схему удобно начинать рисовать от середины платформы. Прямоугольники со стрелками — это пути, наименования идентифицируют соседние станции, линия между прямоугольниками - платформа. В зависимости от того, одна ли платформа на станции или несколько, начало схемы может выглядеть так:

Часто встречающая конфигурация: платформа посередине (островная), два пути.

или так:

Реже: два пути, две платформы

или так:

Еще реже: больше путей

Желательно сразу ориентировать станцию по сторонам света (север вверху), либо, если вы это сделать забыли, указывать на схеме стрелку на север.

Размеры путей на схеме являются одинаковыми для всех схем. Обозначение является условным и часто недостаточно, чтобы выдержать правильный масштаб между путями и проходами (платформами). Выглядит это так, как будто на схеме платформы значительно длиннее путей, это нормально.

Проходы

Допустим, с одного конца станции виден эскалатор, к нему ведет проход. Удлиним платформу до следующего элемента - эскалатора.

Metro-station-passage.svg

Особенности отрисовки проходов:

  1. Длины проходов не обязательно выражаются пропорционально реальным, так как маршрутизация не учитывает длину или время. Предпочтение отдается общей "стройности" схемы, а не точности соблюдения пропорций.
  2. Проходы не должны правильно отражать все повороты, если это сложно отобразить на схеме. Это особенно касается многоуровневых станций.

Эскалаторы

Обозначим эскалатор двумя линиями со стрелками между ними.

Metro-station.svg

Особенности отрисовки эскалаторов:

  1. Эскалаторные группы можно отображать одним эскалатором с двунаправленной стрелкой
  2. Если вы уверены, что эскалатор работает всегда только на подъем или спуск, можно использовать однонаправленную стрелку. В противном случае лучше использовать двунаправленную.

Двери, сужения, турникеты

Вестибюли часто похожи: сразу за эскалаторами турникеты (штрихи вдоль пути), затем дверные проёмы без дверей (обозначены знаком сужения) и двери на вход и выход.

Metro-hall.svg

Особенности отрисовки дверей, сужений, турникетов:

  1. Измерение дверного проёма производится в чистоте: дверь в момент измерения находится в открытом состоянии, измеряется наиболее узкая часть проема
  2. Сужения проходов отмечаются, только если они меньше 1000 мм.
  3. Сужения зимой могут превращаться в двери: по мере обновления схем все сужения, где это происходит, постепенно меняются на двери.
  4. Измеряется самый широкий турникет - грузовой. Необходимо внимательно осмотреть пространство вблизи турникета: если рядом с турникетами есть более широкий проход рядом, например в виде отдельной калитки у сотрудника станции, то турникету назначается ширина этого прохода.

Часто направления входа и выхода жёстко разделены забором, но в контексте «преград» совпадают. Работа потребует картографического склада ума: маршруты желательно располагать так, чтобы они не пересекались, и минимизировать количество одиночных направлений. То есть, лучше заранее увидеть, что хотя направления на вход и выход разделены, пассажиры там и там проходят через похожие двери и преодолевают одинаковое количество ступенек.

Лестницы

Сразу за дверью входа-выхода находится лестница из 4 ступенек. Кроме этого числа также записывается наличие перил. Их обозначает буква «п». Возможна ситуация, когда у лестницы перилами обеспечивается только часть ступенек, в этом случае запись может быть следующей: 4+п10, т.е. 4 ступеньки без перил и 10 с перилами. Несколько лестниц, разделенных пролетами, можно записывать как одну, таким образом: п(10+13+14), т.е. 3 пролета по 10, 13, 14 ступенек каждый, все с перилами.

Особенности отрисовки лестниц:

  1. На схеме можно использовать обозначение для короткой или длинной лестницы
  2. Количество ступеней считается снизу-вверх
  3. Иногда у выходов из подземных переходов и вестибюлей станций есть возвышенная площадка. Эта площадка считается как лестница с одной ступенькой, она бывает дублирована рельсами/пандусами.

Пандусы

Metro-ramp.svg

Пандус (наклонная поверхность в обход ступенек, не путать с рельсами) обозначается ломаной линией, для него вместо количества ступенек записывается угол наклона (тут пригодится уклонометр). Если ширина пандуса меньше метра, то можно измерить и её, иначе достаточно угла — и, конечно, наличия перил.

Если на выходе есть пандус, дублирующий лестницу, отмечаются оба элемента. Пандусами часто пользоваться менее удобно, поскольку их ещё нужно найти, иногда открыть дополнительную дверь, и путь получается длиннее. Отмечание всех объектов даёт возможность посчитать количество ступенек, которые преодолевает обычный пассажир.

Лестница с рельсами

Metro-staircase.jpg

У лестницы, оборудованной рельсами, нужно рулеткой измерить минимальную и максимальную ширину пространства для колёс (то есть, внутри рамок рельсов). Затем посмотреть уклон. Наконец, оценить, сможет ли человек в коляске, находясь на рельсах, дотянуться до перил (обычно может, но иногда чувство меры проектировщикам отказывает).

Metro-stairsrails.svg

Слева направо: количество ступенек, обозначение перил при рельсах (если перила есть, но от рельс не дотянуться, то «п» будет стоять у ступенек), минимальная и максимальная ширина колёсной базы, угол наклона рельсов.

Результат

Описанные выше элементы позволяют полностью зарисовать станцию или узел (несколько станций, соединенных переходами):

Metro-notepad.jpg

В блокноте эта схема, конечно, может выглядеть достаточно неряшливо, поэтому ее необходимо перерисовать.

Особые случаи

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

Metro-komendan.png

Здесь можно выйти по пандусам в подземном переходе, но днём можно полениться и заехать в торговый центр, где есть лифты на поверхность (обозначаются квадратиком). В вестибюле метро есть пандус по центру, но обычно он открыт только для спускающихся пассажиров, а чтобы разомкнуть бортик, выкатываясь на коляске из метро (впереди же лестница без рельсов), нужно попросить дежурную по станции. А на станции «Парнас» специально для инвалидов сделан доступ через лифты, однако они управляются вручную дежурным по турникетам, который, по его словам, не может разорваться, поэтому ни женщины с колясками, не уставшие старушки с сумками воспользоваться лифтами не могут.

Записывайте всё, что может повлиять на выбор маршрута или сложность пути для необычных пассажиров: инвалидов, пожилых людей, людей с колясками или крупногабаритным багажом. Лучше собрать лишнюю информацию, чем пропустить важную.

Схема - отрисовка

После сбора информации нужно перерисовать картинки из блокнота в векторном редакторе. Мы используем Inkscape (и формат SVG), потому что он бесплатный, мультиплатформенный и с открытым форматом файлов, в отличие от иллюстратора. Под маком его запустить нетривиально: понадобится XQuartz.

За основу возьмите этот файл: в нём есть все нужные условные обозначения и пример одной из станций (узел Охотного ряда). Сохраните его на диск и откройте в Inkscape, в браузере он выглядит пустым. Начнём с азов: перемещение холста средней кнопкой мыши, масштабирование — Ctrl+колёсико. Копирование и вставка символа — Ctrl+C, Ctrl+V. Перемещать символ стрелками, с зажатым Alt символ будет двигаться по одному пикселю. Для копирования вверх или влево удобнее сдублировать объект (Ctrl+D) и оттащить его стрелками. Поворот на 90° — Ctrl+квадратные скобки ([]), для обычного поворота достаточно два раза кликнуть на объекте и тащить за углы. Ни в коем случае не изменяйте пропорции символов!

Схема использует шрифт PT Sans 14 пунктов для заголовков и 8 — для подписей. Толщина всех линий — 1 «пиксель» (не то же самое, что экранный пиксель). Чтобы толщина линии не менялась при растяжении, отожмите кнопку «изменять толщину обводки» в панели инструментов вверху, первая кнопка после слова "Менять". Из меню «Объект» сразу включите панели «Заливка и обводка» и «Выровнять и расставить». Несколько объектов для использования последней функции выделяются с зажатым Shift.

Inkscape-buttons.png

Отрезок рисуется кнопкой с жёлтым карандашом (F6): кликните в начало и кликните в конец. Зажатый Ctrl привяжет угол отрезка к 0–45–90°. Сразу после можно продолжить отрезок, кликнув в один из его концов, либо начать новый. Проверьте в панели, что толщина обводки 1 и цвет чёрный. Двигать отдельные узлы линий можно вторым инструментом, под стрелочкой (F2). Для добавления стрелок на концы отрезка в закладке «стиль обводки» есть пункты «маркер начала / конца». Желательно использовать «Arrow1Mstart / Arrow1Mend».

Настройки, сделанные при выбранном инструменте и невыбранных объектах, запоминаются. Например, если выбрать инструмент текста (кнопка «T») и перед кликом на холсте выбрать шрифт и размер, то эти настройки сохранятся для создаваемых объектов.

Если горячие клавиши не работают, проверьте язык раскладки: Inkscape часто отказывается откликаться на русские буквы.

Сохраняйтесь чаще! Когда один лист заполнится схемами, сохраните его, затем выберите «сохранить как» и введите новое имя файла. В новом файле уже можно удалить старые схемы и начать чертить новые. Советую пользоваться Dropbox: его автоматическое версионирование уже раз спасло меня от потери схемы станции.

Пример результата:

Metro-sadovaya.png

Схема - дополнительные слои

После того, как основное содержание схемы создано, можно заняться рядом необязательных, но желательных слоёв.

Идентификаторы элементов (elements-ids) - каждый элемент инфраструктуры станции, за исключением проходов и путей, нумеруется.

Указатели (pointers) - стрелка с номером. Стрелка указывает направление фотографирования, номер - номер указателя. Фотография указателя называется так: X-YYY.jpg, где X - код узла, а YYY - номер указателя.

Фотографии (photos) - точка, указывающая, что элемент сфотографирован. Фотография называется так: X-YYY.jpg, где X - код узла, а YYY - идентификатор элемента, к которому привязана фотография.


Схема - выходы

После отрисовки схемы проводится назначение кодов входов/выходов.

Для этого

Таблица маршрутов

После черчения схем агрегированные значения собираются в таблицу параметров доступности отдельно по маршрутам от входов/выходов (portals) и по переходам. Таблица заполняется отдельно по каждому возможному маршруту от входа/выхода до платформы. Если физических вход совмещен с выходом, но маршруты от вход и на выход разные (например на выход есть эскалатор, но он не работает на вход), то это два маршрута.

Пример окончательной схемы станции и виртуального маршрута (красная линия)

Структура полей таблицы параметров доступности по маршрутам:

  • id_entrance - код выхода, назначается при первичном заполнении таблицы
  • name_ru - описание выхода (русский)
  • name_en - описание выхода (английский)
  • id_station - код станции из таблицы stations.csv
  • direction - направление выхода, возможные значения: both (и вход, и выход), in (только вход), out (только выход)
  • lat - широта точки, соответствующей выходу на поверхности (не указывается для выходов в сложные архитектурные сооружения, такие как торговые центры, вокзалы и т.д.)
  • lon - долгота точки, соответствующей выходу на поверхности (не указывается для выходов в сложные архитектурные сооружения, такие как торговые центры, вокзалы и т.д.)
  • max_width - максимальное ограничение ширины на маршруте (т.е. ширина самого узкого элемента на маршруте)
  • min_step - минимальное количество ступеней на маршруте
  • min_step_ramp - минимальное количество ступеней, не дублированных пандусами или рельсами (должно быть меньше или равно min_step)
  • lift - количество лифтов на маршруте
  • lift_minus_step - сколько ступеней экономит использование лифта
  • min_rail_width - наибольшая ширина внутренней ширины рельс на маршруте
  • max_rail_width - наименьшая ширина внешней ширины рельс на маршруте
  • max_angle - максимальный уклон на маршруте

Пример заполнения:

id_entrance name_ru name_en id_station direction lat lon max_width min_step min_step_ramp lift lift_minus_step min_rail_width max_rail_width max_angle
9.07.13 2 12 5 12 12 12 12 12 12 12 12 12 12 12
9.07.13 2 12 5 12 12 12 12 12 12 12 12 12 12 12

Структура полей таблицы параметров доступности по переходам:

  • station_from - код станции "откуда" из таблицы stations.csv
  • station_to - код станции "куда" из таблицы stations.csv
  • max_width - максимальное ограничение ширины на маршруте (т.е. ширина самого узкого элемента на маршруте)
  • min_step - минимальное количество ступеней на маршруте
  • min_step_ramp - минимальное количество ступеней, не дублированных пандусами или рельсами (должно быть меньше или равно min_step)
  • lift - количество лифтов на маршруте
  • lift_minus_step - сколько ступеней экономит использование лифта
  • min_rail_width - наибольшая ширина внутренней ширины рельс на маршруте
  • max_rail_width - наименьшая ширина внешней ширины рельс на маршруте
  • max_angle - максимальный уклон

Пример заполнения:

station_from station_to max_width min_step min_step_ramp lift lift_minus_step min_rail_width max_rail_width max_angle
12 12 12 12 12 12 12 12 12 12
12 12 12 12 12 12 12 12 12 12

Развитие проекта

Одних станций метро недостаточно: многие выходы спрятаны в подземных переходах, которые сами по себе труднопреодолимы. Поэтому к сотне станций метро нужно добавить сотню подземных — ну и надземных тоже — переходов. Расставить это всё на карте, и получим схему боевых действий, город против инвалидов. Это первая фаза проекта.