close

Вход

Забыли?

вход по аккаунту

Автоматизация вычисления параметров отображения дорожной

код для вставкиСкачать
ГЕОДЕЗИЯ И КАРТОГРАФИЯ
Автоматизация вычисления параметров
отображения дорожной сети
и структуры населенных пунктов
на мультимасштабных картах
КАРТОГРАФИЯ
УДК 528.91
© 1Самсонов Т. Е., 2Подольский А. С., 2014
ФГБОУ ВПО «Московский государственный университет имени М. В. Ломоносова»
1
2
[email protected]
[email protected]
Рассмотрены некоторые вопросы автоматизации отображения дорожной сети и
структуры населенных пунктов на мультимасштабных картах. Разработана методика,
позволяющая на основе вычисления графической нагрузки определить масштабы смены
отображаемых структурных уровней дорожной сети, модифицировать толщину линий, а также произвести согласованную геометрическую генерализацию полигонального
слоя застройки. Методика формализована в виде набора алгоритмов и реализована на
языке программирования Python. Апробация методики и тестирование разработанных
программных средств произведено на основе данных OpenStreetMap. На основе анализа
результатов выявлены достоинства, недостатки предложенного подхода и направления
его совершенствования.
Автоматизация, генерализация, мультимасштабное картографирование, общегеографическое картографирование.
Аutomation, generalization, multiscale mapping, general mapping.
Введение
Разработка мультимасштабных карт
основывается на применении ряда операций, обеспечивающих логичное и последовательное изменение картографического
изображения при смене масштаба. Данные
операции можно разделить на четыре группы,
соответствующие изменению содержания,
геометрии, символики и подписей на карте
[6]. Изменение содержания и геометрии
на карте входят в собственно классическое
определение генерализации [�������������
1������������
], автоматизация этих методов наиболее разработана
и представлена в обзорных публикациях,
в частности [10]. В то же время показано,
что оперирование символикой объектов при
создании мультимасштабных карт выполняет
важнейшую функцию и позволяет не только
заменить или отложить в ряде случаев применение генерализации [4], но также придать
ее результатам визуально логическую последовательность, отражающую смену единиц
картографирования [3].
Предоставление мультимасштабных
карт онлайн в режиме «по запросу», или
«on-demand», когда внешний вид карты
(состав объектов, детализация, символика
и т. д.) определяется требованиями пользователя [���������������������������������
8��������������������������������
], предполагает полную автомати-
зацию всех четырех составляющих генерализации. Следует отметить, что несмотря на
актуальность данного вопроса количество
опубликованных работ, посвященных автоматизации преобразований символики,
а также связанных с ними геометрических
преобразований, невелико. Так, например,
в статье [5] предложен подход, в котором
для отображения каждого слоя предлагается
использовать базу знаний, которая определяет символику объекта на трех уровнях
детализации. Переключение между разными
символами происходит автоматически при
достижении критических масштабов. Однако определение самих символов для каждого
уровня детализации и самих критических
масштабов производится пользователем
вручную, что не позволяет говорить о полноценной автоматизации этих процессов.
Выбор и преобразование способов
изображения – сложный многофакторный
процесс, автоматизация которого требует
многостадийного подхода. В первую очередь, необходимо описание процессов,
представляющее собой совокупность общих
правил преобразования способов изображения, рекомендаций по изменению символов на карте при уменьшении масштаба.
К примерам таких правил можно отнести
№ 9 сентябрь 2014
21
КАРТОГРАФИЯ
ГЕОДЕЗИЯ И КАРТОГРАФИЯ
22
логичность и последовательность изменения графических переменных, их циклическое заимствование в рамках объектов одной
иерархии, переход от аналитических способов изображения к комплексным и синтетическим, уменьшение информационной
и графической нагрузки [�����������������
3����������������
]. Описание правил логически дополняется системой операторов изменения содержания, геометрии,
символики и подписей [6]. При наличии разработанных правил может быть предложена
формализация выбора и преобразования
способов изображения, которая уже более
конкретным образом предписывает, какие
именно операторы следует применять в соответствии с условиями конкретной ситуации. Конечным результатом формализации
является алгоритм или набор алгоритмов.
Наконец, успешная реализация алгоритмов
в программном виде и их тестирование
с использованием реальных данных позволяет говорить об автоматизации выбора и
преобразования способов изображения.
Таким образом, имеет место трехуровневый переход от интуитивного ручного
оформления карты к полностью автоматизированному: правила – формализация – автоматизация. Правила применения масштабных
преобразований можно найти в работах [3, 6],
хотя нельзя утверждать, что они образовывают исчерпывающую группу. Формализация
и автоматизация процессов в существующих
работах представлена слабо.
Одним из наиболее актуа льных
и полных источников данных для мультимасштабного картографирования является
OpenStreetMap (OSM) (www.openstreetmap
org).
Заложенные в его основу данные имеют
геометрическую детализацию соответствующую самому крупному масштабу, а генерализация в средних и мелких масштабах
в основном сводится к атрибутивному отбору объектов и их реклассификации. Исследования в области полноценной генерализации
к данным OSM пока находятся на начальных
стадиях, целостных решений не получено
[������������������������������������
9�����������������������������������
]. Оформление OSM������������������
���������������������
реализуется вручную с установкой масштабных диапазонов
отображения объектов и соответствующих
им символов, что при наличии порядка 20
уровней детализации является чрезвычайно
трудоемким и длительным процессом.
Предложенный в статье алгоритм
и его программная реализация предлагают
№ 9 сентябрь 2014
простой подход к формализации и автоматизации некоторых параметров оформления
данных OpenStreetMap в разных масштабах
на примере дорожной сети и структуры населенных пунктов. Данная разработка позволяет сделать шаг к созданию полноценных
систем автоматизированного картографирования по запросу на основе данных OSM,
а также снизить трудозатраты картографов,
занимающихся оформлением мультимасштабных сервисов.
Постановка задачи
В топографическом картографировании структура населенных пунктов показывается блоками (в крупных масштабах – кварталами, далее – блоками кварталов)
и только некоторые важные проезды выделяются цветом автомобильных дорог [2].
Таким образом, уличная сеть распознается
при чтении карты по пробелам между блоками. На электронных картах распространен
противоположный подход, когда структура
населенного пункта распознается по рисунку
уличной сети, а функциональное назначение
блоков (селитебные, промышленные, парковые территории и т. д.) определяется подстилающим слоем землепользования. При этом
уличная и транспортная сети за пределами
населенных пунктов составляют единое
целое (например, проспект Энгельса в СанктПетербурге переходит в Новоприозерское
шоссе без смены условного знака). С одной
стороны, это наделяет оформление определенной гибкостью, поскольку иерархичность
транспортной (уличной) сети уже никак не
связана с геометрией объектов застройки.
С другой стороны, характеры уличной сети
в городах и транспортной сети за их пределами могут существенно различаться, и их
объединение под маской одного символа даже
при условии сопоставимой значимости не
всегда будет географически достоверным.
Предлагаемая методика и алгоритм
автоматизации отображения дорожной сети
и структуры населенных пунктов опирается
на ряд начальных условий и допущений:
1) исходное оформление карты в самом
крупном масштабе проработано пользователем; задача алгоритма – транслировать
это оформление в более мелкие масштабы,
применяя подходящие операторы;
2) генерализация дорожной сети при достижении критических масштабов реализуется путем исключения целых классов дорог;
ГЕОДЕЗИЯ И КАРТОГРАФИЯ
Преобразование толщины линий
и вычисление критических масштабов
В процессе движения от крупных масштабов к мелким при отсутствии генерализации объектов возрастает графическая нагрузка. Наступает момент, когда необходимо
исключать часть объектов для обеспечения
читаемости карты. Масштаб, в котором
возникает такая необходимость, называется
критическим. Критический масштаб может
быть определен как для одного объекта, так
и в обобщенном виде для группы (слоя) объектов или уровня детализации на основе их
среднестатистических размеров.
Одним из основных критериев для
исключения или объединения линейных
объектов является графическая нагрузка.
За единицу измерения графической нагрузки можно принять отношение площади
Sr, занимаемой знаками линий, к площади
карты S. Поскольку графическая нагрузка
тесно связана не только с конфигурацией
объектов, но и с символикой, необходим
алгоритм преобразования символов линий
при исключении классов, который будет
с этой характеристикой взаимоувязан. На
величину нагрузки влияет прежде всего
толщина линий (см. положение 3 начальных
условий (постоянство цвета классов и смена
толщины)). Была предложена следующая
стратегия преобразования: при переходе на
новый уровень детализации исключаются
дороги низшего класса, толщина символов
смещается на одну ступень вверх, а их цвет
остается прежним (Рис. 1).
Точка перехода на следующий уровень
детализации определяется критическим масштабом, в котором при изначально заданном
оформлении графическая нагрузка, создаваемая слоем дорог, достигнет предельно
допустимой величины pmax. Для вычисления
фактической нагрузки необходимо знать
площадь символов на карте. Математически
точно эта операция может быть проделана
путем построения вокруг линий буферных
зон с радиусом ri = wi / 2, где wi – толщина
линии для i-го класса дорог, объединения
полученных буферов, подсчета площади результирующей фигуры и взятия отношения
этой площади к площади картографируемой
территории.
В работе авторы статьи использовали
методику приближенной оценки, основанную на вычислении густоты линий каждого
класса. Густота dij (км/км2) для каждого класса дорог Ci в ячейке j оценивалась по ячейкам регулярной сети как отношение суммы
длин линий Li к площади ячейки S: dij = Lij/S.
Для снижения влияния эффектов, связанных
с неравномерностью распределения дорог,
оценка густоты должна осуществляться по
регулярной сетке (Рис. 2). Густота оценивается только по тем ячейкам, в которых
КАРТОГРАФИЯ
3) для отображения дорожной сети
используются простые линии без обводок;
цвет линий для разных классов остается постоянным, меняется только их толщина;
4) алгоритм предназначен для работы
в крупных и средних масштабах картографирования, что позволяет отложить вопросы,
связанные с отображением и генерализацией систем объектов.
Рис. 1. Изменение толщины линий
дорожной сети
Рис. 2. Вычисление густоты дорожной сети по регулярной сетке (км/км2)
(© Участники OpenStreetMap – картографические данные)
№ 9 сентябрь 2014
23
КАРТОГРАФИЯ
ГЕОДЕЗИЯ И КАРТОГРАФИЯ
присутствуют объекты улично-дорожной
сети. Искомой интегральной характеристикой является средняя густота дорожной сети
каждого класса
, где n – число
ячеек.
Зная толщину линии wi каждого класса
дорог, можно найти знаменатель масштаба
M, в котором среднее отношение площади
знаков дорожной сети к площади ячейки
достигнет заданного значения pmax (обратим
внимание на то, что произведение густоты
и толщины линий в знаменателе – безразмерная величина):
,
(1)
где k – число классов дорог.
Данная методика позволяет вычислить
критический масштаб при фиксированном
размере ячейки. Однако с уменьшением
масштаба и прореживанием дорожной сети
возникает необходимость увеличивать размер ячейки. В противном случае суммарная
площадь знаков дорог будет стремиться
к суммарной площади всех непустых ячеек,
а расчетная графическая нагрузка – к 100 %.
Слишком крупный размер ячейки напротив,
приведет к учету обширных территорий без
транспортной сети и лишит смысла использование регулярной сетки. Эту проблему
можно решить следующим образом:
после получения первого критического
масштаба M1 производится переход на следующий структурный уровень дорожной
сети и смещение толщин линий;
вычисляют второй критический масштаб M2 с теми же параметрами сетки, далее – масштабный коэффициент m = M1 / M2;
рассчитывается новый размер ячейки
сетки: C2 = mC1, где C1 и C2 – исходный
и расчетный размеры ячейки;
второй критический масштаб M2 вычисляется заново с новым размером ячейки.
Описанные шаги формируют циклический алгоритм, рассчитывающий критические масштабы и толщины линий дорог для
каждого структурного уровня.
Остается не ясным, каков же должен
быть изначальный шаг сетки для первого
уровня детализации. Для его выбора можно
выполнить анализ ближайшего соседства,
определив среднее расстояние от каждой
линии до ближайшей. Размер сетки можно
далее вычислить как функцию от полученного расстояния. Дальнейшие исследования
должны определить оптимальный путь вычисления.
24
№ 9 сентябрь 2014
Согласование слоя типов
землепользования с дорожной сетью
Фрагментарная согласованность границ
полигонов типов землепользования и линий
улиц ухудшает читаемость карты. Например,
при удалении улицы появляется возможность
объединить полигоны, которые с ней граничат. Помимо этого, физическое разбиение
слоя землепользования линиями дорог позволяет оценивать площадь получающихся
территориальных единиц и корректировать
параметры оформления и генерализации
в соответствии с ней (Рис. 3).
Для согласования детализации слоев
дорожной сети и структуры населенного
пункта был разработан линейный алгоритм.
Он выполняется для каждого критического
масштаба и соответствующих ему набора
классов дорог и их толщин и состоит из нескольких шагов:
полигоны упрощаются в соответствии
с масштабом (пользователь задает величину
допуска, видимую на мониторе в миллиметрах, что позволяет использовать ее во всех
масштабах);
для исключения мелких и осколочных
полигонов проводится агрегирование;
барьерами для агрегирования выступают
дороги;
вокруг слоя дорог строятся буферные
зоны, ширина которых соответствует ширине символа дороги соответствующего
класса;
в слое полигонов функциональных
типов территории вырезаются дырки по
построенным буферным зонам.
Поскольку данные ������������������
OpenStreetMap�����
имеют внутреннее согласование между слоями
для наиболее крупных масштабов, первый
уровень детализации дорожной сети соответствует исходному полигональному слою,
а генерализованный с помощью дорожной
сети первого уровня детализации – ее второму уровню. Такой сдвиг позволяет избежать
резких скачков детализации, так как исклю-
Рис. 3. Слой землепользования и дорожной
сети до (а) и после (б) согласования
ГЕОДЕЗИЯ И КАРТОГРАФИЯ
знаков дорог внутри ячейки к ее площади
достигнет критического значения;
5. С использованием полученного масштаба и заданного пользователем допуска
полигональный слой структуры населенного
пункта упрощается и агрегируется (в качестве барьеров выступают слои дорожной
сети и гидрографии);
6. Вокруг слоя дорожной сети строятся
буферные зоны (дистанция буферизации –
толщина линии дороги в масштабе карты);
7. Генерализованный полигональный
слой обрезается построенными буферными
зонами;
8. Исключается последний класс дорог, значения толщин линий смещаются
таким образом, чтобы исключить самую
толстую;
9. Повторяются п. 3 и п. 4;
10. Рассчитывается новый размер ячейки сетки;
11. Возвращаются к п. 1.
Инструмент работает до тех пор, пока
количество классов дорог не уменьшится до
количества главных классов.
Результатами работы алгоритма являются:
таблица, в которой для каждого структурного уровня дорожной сети указан
критический масштаб и толщины линий,
соответствующие каждому классу;
набор генерализованных полигональных слоев структуры населенного пункта.
КАРТОГРАФИЯ
ченный класс дорог отражен в структуре полигонального слоя до перехода на следующий
уровень детализации.
Программная реализация алгоритмов
Описанные алгоритмы для вычисления
критических масштабов и толщин линий,
а также согласования дорожной сети и полигональных слоев типов землепользования
были реализованы в виде скрипта на языке
программирования Python с использованием
библиотеки ArcPy. Скрипт обеспечивает работу инструмента в среде ArcGIS. Исходными данными и параметрами, необходимыми
для работы инструмента, являются:
размер (в метрах) ячейки регулярной
сетки, по которой будет рассчитываться
густота дорожной сети;
максимально допустимая величина
графической нагрузки; среднее для всех ненулевых ячеек отношение общей площади
знаков дорог к площади ячейки;
экстент, участок местности, в пределах
которого производятся расчеты;
таблица соответствия классов дорог
и исходных толщин линий;
количество главных классов; главные
классы не исключаются, т. е. когда количество классов становится равным указанному
количеству главных классов, процесс генерализации останавливается;
минимально допустимая видимая на
мониторе площадь полигона (части полигона) в квадратных миллиметрах; выступает
в качестве параметра при генерализации
полигонального слоя;
полигональный слой объектов гидрографии; используется в качестве дополнительного барьера при агрегировании
полигонов;
линейный слой объектов гидрографии;
используется в качестве дополнительного
барьера при агрегировании полигонов.
При работе инструмента выполняется
следующая последовательность действий
(Рис. 4):
1. Создается регулярная сетка с заданным пользователем размером ячейки;
2. С помощью инструмента Intersect
(пересечение) слой дорожной сети разрезается границами ячеек сетки;
3. Подсчитывается суммарная длина дорог каждого класса внутри каждой ячейки;
4. По формуле (1) вычисляется масштаб, в котором при заданных толщинах линий среднее отношение суммарной площади
Результаты
Для тестирования инструмента авторами статьи использовались данные OSM
на территорию Санкт-Петербурга. Поскольку алгоритмы оперируют значениями
площадей и длин объектов, была выбрана
проекция UTM (36 зона), обеспечивающая
минимальные искажения площадей и длин.
Данные OSM были разбиты на следующие
слои:
дорожная сеть (выделено пять классов
дорог);
типы землепользования (разделения по
типам не проводилось, все типы участвовали в формировании структуры населенного
пункта равносильно);
строения (отображаются полностью на
первом структурном уровне, с 50 % прозрачности – на втором, с 75 % – на третьем);
растительность;
полигональная гидрография.
№ 9 сентябрь 2014
25
КАРТОГРАФИЯ
ГЕОДЕЗИЯ И КАРТОГРАФИЯ
Рис. 4. Схема работы инструмента ComputeScales
Пяти классам дорог были назначены толщины от 2,2 до 0,6 мм. Исходный
размер ячейки варьировался от 200 м до
2 км. Опытным путем был определен оптимальный размер – 500 м. По результатам
работы алгоритма была составлена таблица,
отражающая вычисленные критические
масштабы и толщины линий, а также набор
генерализованных слоев землепользования
для уровней детализации 2–4.
26
№ 9 сентябрь 2014
Примеры оформления мультимасштабной карты, полученные с помощью
разработанного инструмента, представлены на Рис. 5. Цветовое решение карты
прорабатывалось вручную. Данные иллюстрации демонстрируют срезы непрерывного процесса преобразования на всем
масштабном диапазоне. Наиболее удачно,
на наш взгляд, работает методика вычисления критических масштабов с учетом
ГЕОДЕЗИЯ И КАРТОГРАФИЯ
КАРТОГРАФИЯ
Рис. 5. Изображения, полученные по данным OSM с использованием
разработанной методики.
Масштабы: а – 1 : 5000 (уровень детализации 1) ; б – 1 : 10 000 (уровень детализации 2);
в – 1 : 25 000 (уровень детализации 3); г – 1 : 50 000 (уровень детализации 3);
д – 1 : 100 000 (уровень детализации 4); е – 1 : 200 000 (уровень детализации 4).
(© Участники OpenStreetMap – картографические данные)
Результат работы инструмента ComputeScales
Уровень
детализации
LOD*
1
1
1
1
1
2
2
2
2
3
3
3
4
4
Класс
дорог
CLASS*
1
2
3
4
5
1
2
3
4
1
2
3
1
2
Критический
масштаб
SCALE*
1 : 8490
1 : 8490
1 : 8490
1 : 8490
1 : 8490
1 : 19 372
1 : 19 372
1 : 193 72
1 : 193 72
1 : 54 952
1 : 54 952
1 : 54 952
1 : 167 601
1 : 167 601
*Название поля в базе данных
Толщина
линии, мм
WIDTH*
2,2
1,8
1,3
0,9
0,6
1,8
1,3
0,9
0,6
1,3
0,9
0,6
0,9
0,6
оформления. В то же время, результаты
не лишены недостатков. В ряде случаев
объединение ранее разделенных полигонов
не произошло, что связано с большим расстоянием между ними. Также очевидно, что
генерализация путем исключения классов
приводит к избыточному удалению дорог
и потере рисунка транспортной сети.
В дальнейшем методика будет модифицирована с использованием маршрутной
генерализации [7], которая должна будет
позволить сохранять все дороги, важные
на каждом уровне детализации. Однако это
потребует соответствующей модификации
метода изменения толщины линий.
№ 9 сентябрь 2014
27
КАРТОГРАФИЯ
ГЕОДЕЗИЯ И КАРТОГРАФИЯ
Заключение
В работе предложена методика и набор алгоритмов, позволяющих частично
автоматизировать отображение дорожной
сети и структуры населенных пунктов на
мультимасштабных общегеографических
картах. Методика основана на допущении,
что структура населенного пункта может
определяться дорожной сетью. Основной
упор сделан на вычисление критических
масштабов отображения дорожной сети
с учетом допустимой графической нагрузки
и при заданной толщине линий. Для определения масштабов предложена и апробирована схема изменения толщины линий, при
которой достижение критического масштаба
сопровождается удалением самого низкого
класса дорог, а сами толщины смещаются
на одну ступень вниз. Также в методику
включена процедура согласования полигональной структуры населенных пунктов
с дорожной сетью.
В полученных результатах выявлены
недостатки, которые необходимо разрешить
в будущих исследованиях. В частности,
удаление полного класса дорог не является
оптимальным, поскольку приводит к скачкообразному изменению подробности изображения дорожной сети
Поставленные в работе допущения
будут в дальнейшем сняты для разработки
более комплексной автоматизации составления мультимасштабных карт, включающей
полноценную генерализацию дорожной
сети и автоматический выбор большинства
параметров оформления. Представленные
результаты демонстрируют, что для дальнейшего развития а втоматизации мультимасштабного картографирования необходимо
не только развитие автоматизации геометрической и графической генерализации, но
и их взаимопроникновение.
Работа выполнена при поддержке гранта
Президента Российской Федерации для поддержки ведущих научных школ НШ-2248.2014.5
и гранта РФФИ 14-05-00888-а.
28
№ 9 сентябрь 2014
СПИСОК ЛитературЫ
1. Берлянт А. М. Картография: Учебник для вузов. –
3-е изд. – М.: КДУ, 2011. – 464 с.
2. Верещака Т. В. Топографические карты: научные
основы содержания. – М.: МАИК «Наука/Интерпериодика», 2002. – 319 с.
3. Самсонов Т. Е., Подольский А. С., Юрова Н. Д.
Преобразования способов изображения и их соотношение с иерархией единиц картографирования // Вестник
Московского университета. – Сер. 5 География. –
Вып. 4. – 2013. – С. 15–23.
4. Brewer C. A., Buttenfield B. P. Mastering map scale:
balancing workloads using display and geometry change
in multi-scale mapping // Geoinformatica. – 2010. –
Vol. 14. – № 2. – Р. 221–239.
5. Choi J., Hwang C.-S. Multi-scale rendering with geometry collapse and a symbol knowledge base // The Cartographic Journal. – 2009. – Vol. 46. – P. 155–163.
6. Roth R. E., Brewer C. A., Stryker M. S. A typology of
operators for maintaining legible map designs at multiple
scales // Cartographic Perspectives. – 2011. – № 68. –
P. 29–64
7. Samsonov T., Krivosheina A. Joint generalization of city
points and road network for small-scale mapping // Proceedings of Seventh International Conference on Geographic
Information Science GIScience, September 18–21, 2012,
Columbus, Ohio. – 7 p.
8. Sarjakoski T., Sarjakoski L.T. A real-time generalisation
and map adaptation approach for location-based services. In:
Mackanness W. A., Ruas A., Sarjakoski L. T. (eds) Generalisation of geographic information: cartographic modeling and
applications Elsevier, Amsterdam, 2007, pp. 137–159.
9. Sester M., Arsanjani J. J., Klammer R., Burghardt D.,
Haunert J.-H. Intergrating and Generalizing Volunteered
Geographic Information. In: Abstracting Geographic Information In a Data Rich World: Methodologies and Applications of Map Generalisation. Lecture Notes in Geoinformation and Cartography, Springer, 2014, pp. 119–156.
10. Stanislawski L. V., Buttenfield B. P., Bereuter P.,
Savino S., Brewer C.A. Generalisation Operators. In:
Abstracting Geographic Information In a Data Rich World:
Methodologies and Applications of Map Generalisation.
Lecture Notes in Geoinformation and Cartography, Springer,
2014, pp. 157–195.
Summary
The paper discusses some issues of automation of
road network and structure of settlements representation
on the multiscale maps. Using calculation of graphical
load the critical scales for display levels of the road
network are defined, line thickness is then modified, as
well as a coherent geometric generalization of land use
polygons is performed. Technique is formalized as a set of
algorithms and implemented using Python programming
language. Proposed methodology and software were
tested using OpenStreetMap data. On the basis of analysis
of the results strengths weaknesses of the approach are
revealed as well as directions of its improvement.
1/--страниц
Пожаловаться на содержимое документа