RU2803880C1 - Method and device for map generalization - Google Patents

Method and device for map generalization Download PDF

Info

Publication number
RU2803880C1
RU2803880C1 RU2022134127A RU2022134127A RU2803880C1 RU 2803880 C1 RU2803880 C1 RU 2803880C1 RU 2022134127 A RU2022134127 A RU 2022134127A RU 2022134127 A RU2022134127 A RU 2022134127A RU 2803880 C1 RU2803880 C1 RU 2803880C1
Authority
RU
Russia
Prior art keywords
objects
cartographic information
map
rasterized
multipolygons
Prior art date
Application number
RU2022134127A
Other languages
Russian (ru)
Inventor
Евгений Викторович Огурцов
Илья Олегович Макаров
Original Assignee
Общество с ограниченной ответственностью "ДубльГИС"
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "ДубльГИС" filed Critical Общество с ограниченной ответственностью "ДубльГИС"
Application granted granted Critical
Publication of RU2803880C1 publication Critical patent/RU2803880C1/en

Links

Images

Abstract

FIELD: map generalization.
SUBSTANCE: invention relates to a method and device for generalizing a map. The method comprises the steps of: a) obtaining cartographic information in vector form, containing at least one layer containing a set of multipolygons for objects of the same type; b) perform rasterization of the received cartographic information; c) perform filtering of rasterized cartographic information; d) perform vectorization of filtered rasterized cartographic information, and in the process of vectorization the following is carried out: finding reference points on the boundaries of adjacent objects, constructing object boundaries based on the found reference points, constructing at least one common boundary between adjacent objects by combining common vertices with the same coordinates, restoring a set of multipolygons taking into account at least one common boundary of objects; e) forming a generalized map based on the reconstructed set of multipolygons.
EFFECT: improved quality of map generalization.
10 cl, 7 dwg

Description

ОБЛАСТЬ ТЕХНИКИTECHNICAL FIELD

[0001] Заявленное решение относится к области цифрового картографирования, в частности к генерализации картографических изображений.[0001] The claimed solution relates to the field of digital mapping, in particular to the generalization of cartographic images.

УРОВЕНЬ ТЕХНИКИBACKGROUND OF THE ART

[0002] В уровне техники традиционно использовался способ ручной генерализации карт, эффективность которого основывалась на опыте и знаниях картографа.[0002] The prior art has traditionally used a method of manual map generalization, the effectiveness of which is based on the experience and knowledge of the cartographer.

[0003] К недостаткам ручной генерализации можно отнести:[0003] The disadvantages of manual generalization include:

• большие временные затраты на работу картографов,• large time costs for the work of cartographers,

• значительную разницу в качестве итогового результата в зависимости от уровня мастерства исполнителя (картографа),• a significant difference in the quality of the final result depending on the level of skill of the performer (cartographer),

• плохую масштабируемость подхода с ростом числа картографических данных,• poor scalability of the approach with an increase in the number of cartographic data,

• невозможность полной генерализации даже того набора данных, который был на момент использования подхода.• the impossibility of complete generalization even of the data set that existed at the time the approach was used.

[0004] С развитием научно-технического прогресса, в частности, в области цифровой картографии, стала возможна автоматизация процесса генерализации. Например, автоматизированная генерализация с помощью алгоритмов симплификации геометрий из библиотеки spatialite [1].[0004] With the development of scientific and technological progress, in particular in the field of digital cartography, automation of the generalization process has become possible. For example, automated generalization using geometry simplification algorithms from the spatialite library [1].

[0005] Недостатком данного решения является рассмотрение отдельных геометрий отстраненно и по-отдельности, не учитывая топологические связи между различными объектами. В таком подходе невозможно учесть связь между отдельными, независимыми геометриями, например, если два геометрических многоугольника имеют общую границу, то в результате симплификации можно получить разрыв по границе соприкосновения (так называемый эффект щелей).[0005] The disadvantage of this solution is that individual geometries are considered detachedly and separately, without taking into account the topological connections between various objects. In this approach, it is impossible to take into account the connection between individual, independent geometries, for example, if two geometric polygons have a common boundary, then as a result of simplification one can get a gap along the contact boundary (the so-called gap effect).

СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION

[0006] В геоинформационных системах пользователям предоставляется возможность просматривать различные географические области, в том числе в разных масштабах в зависимости от целей. Такие функции требуют картографической генерализации карт, а именно отбора и обобщения изображаемых на карте объектов соответственно назначению и масштабу, содержанию карты и особенностям картографируемой территории. Важной задачей является сохранение связности элементов при любом из масштабов.[0006] Geographic information systems provide users with the ability to view different geographic areas, including at different scales depending on their purposes. Such functions require cartographic generalization of maps, namely the selection and generalization of objects depicted on the map according to the purpose and scale, content of the map and the characteristics of the territory being mapped. An important task is to maintain the connectivity of elements at any scale.

[0007] Задачей совершенствования механизма генерализации карты был уход от полностью ручного способа в связи со значительными трудозатратами и плохой масштабируемостью, и решение проблем автоматизированной симплификации, которая заключалась в неудовлетворительной обработке и отрисовке кривых, а также отсутствии связанности в геометрии элементов.[0007] The task of improving the map generalization mechanism was to move away from a completely manual method due to significant labor costs and poor scalability, and to solve the problems of automated simplification, which consisted of unsatisfactory processing and drawing of curves, as well as a lack of coherence in the geometry of elements.

[0008] Данное техническое решение направлено на устранение недостатков, присущих существующим решениям, известным из уровня техники.[0008] This technical solution is aimed at eliminating the disadvantages inherent in existing solutions known from the prior art.

[0009] Заявленное изобретение позволяет решить техническую проблему, заключающуюся в обеспечении формирования карты с высоким качеством генерализации.[0009] The claimed invention allows us to solve the technical problem of ensuring the formation of a map with high generalization quality.

[0010] Техническим результатом является повышения качества генерализации карты.[0010] The technical result is to improve the quality of map generalization.

[0011] Заявленный технический результат достигается за счет выполнения компьютерно-реализуемого способа генерализации карты, выполняемого по меньшей мере одним процессором, и содержащего этапы, на которых:[0011] The claimed technical result is achieved by performing a computer-implemented method for generalizing a map, performed by at least one processor, and containing the steps of:

a) получают картографическую информацию в векторной форме, содержащую по меньшей мере один слой, содержащий набор мультиполигонов для однотипных объектов;a) receive cartographic information in vector form, containing at least one layer containing a set of multipolygons for objects of the same type;

b) выполняют растеризацию полученной картографической информации;b) perform rasterization of the received cartographic information;

c) выполняют фильтрацию растрированной картографической информации;c) perform filtering of rasterized cartographic information;

d) выполняют векторизацию отфильтрованной растрированной картографической информации в ходе которой получают восстановленный набор мультиполигонов;d) perform vectorization of the filtered rasterized cartographic information, during which a reconstructed set of multipolygons is obtained;

e) формируют генерализированную карту на основе восстановленного набора мультиполигонов.e) form a generalized map based on the reconstructed set of multipolygons.

[0012] В одном из частных примеров реализации заявленный способ дополнительно содержит этап предварительной обработки полученной картографической информации перед выполнением растеризации.[0012] In one of the particular implementation examples, the claimed method additionally contains the stage of pre-processing the received cartographic information before performing rasterization.

[0013] В другом частном примере реализации этап предварительной обработки картографической информации включает:[0013] In another particular implementation example, the stage of pre-processing cartographic information includes:

• вычисление требуемой глубины цвета,• calculation of the required color depth,

• вычисление общего ограничивающего прямоугольника для всех слоев, содержащих наборов мультиполигонов,• calculating a common bounding box for all layers containing multipolygon sets,

• определение размера тайла с учетом вычисленной глубины цвета,• determining the tile size taking into account the calculated color depth,

• на основе вычисленного общего ограничивающего прямоугольника и размера тайла выполняют разделение обрабатываемой картографической информации на тайлы (тайлинг).• based on the calculated common bounding rectangle and tile size, the processed cartographic information is divided into tiles (tiling).

[0014] В другом частном примере реализации глубина цвета вычисляется по формуле:[0014] In another particular implementation example, the color depth is calculated using the formula:

bits-per-pixel=ceil(log2(N+1)),bits-per-pixel=ceil(log2(N+1)),

где N - количество слоев полученной картографической информации.where N is the number of layers of the obtained cartographic information.

[0015] В другом частном примере реализации каждый слой имеет идентификатор, соответствующий уникальному цвету, выраженному битовой последовательностью, при этом значение битовой последовательности зависит от вычисленной глубины цвета.[0015] In another particular implementation, each layer has an identifier corresponding to a unique color expressed as a bit sequence, the value of the bit sequence depending on the calculated color depth.

[0016] В другом частном примере реализации на этапах b)-d) обработка ведется построчно, где каждая строка, представляющая набор из нескольких тайлов, обрабатывает параллельно и независимо от остальных строк.[0016] In another particular implementation example, steps b)-d) are processed line by line, where each line representing a set of multiple tiles is processed in parallel and independently of the other lines.

[0017] В другом частном примере реализации выполнение растеризации полученной картографической информации осуществляется с помощью алгоритма построчного сканирования (алгоритма scanline).[0017] In another particular example of implementation, rasterization of the received cartographic information is carried out using a line-by-line scanning algorithm (scanline algorithm).

[0018] В другом частном примере реализации этап фильтрации растрированной картографической информации включает:[0018] In another particular implementation example, the step of filtering rasterized map information includes:

• применение набора сверточных фильтров к растрированной картографической информации, и/или• applying a set of convolutional filters to rasterized map information, and/or

• вычисление площади растрированных объектов в пикселях и удаление объектов, площадь которых не соответствует пороговому значению.• calculation of the area of rasterized objects in pixels and removal of objects whose area does not meet the threshold value.

[0019] В другом частном примере реализации в качестве сверточных фильтров применяются фильтры, используемые для морфологических преобразований.[0019] In another particular implementation example, filters used for morphological transformations are used as convolutional filters.

[0020] В другом частном примере реализации этап векторизации отфильтрованной растрированной картографической информации включает:[0020] In another particular implementation example, the step of vectorizing filtered rasterized map information includes:

• нахождение опорных точек на границах смежных объектов,• finding reference points on the boundaries of adjacent objects,

• построение границ объектов на основании найденных опорных точек,• construction of object boundaries based on found reference points,

• построение по меньшей мере одной общей границы между смежными объектами путем объединения общих вершин с одинаковыми координатами,• construction of at least one common boundary between adjacent objects by combining common vertices with the same coordinates,

• восстановление набора мультиполигонов с учетом по меньшей мере одной общей границы объектов.• restoration of a set of multipolygons, taking into account at least one common boundary of objects.

[0021] Заявленный технический результат достигается также за счет реализации устройства для генерализации карты, содержащего[0021] The claimed technical result is also achieved through the implementation of a device for generalizing a card containing

по меньшей мере один процессор,at least one processor,

по меньшей мере одну память, связанную с процессором и содержащую машиночитаемые инструкции, которые при их выполнении по меньшей мере одним процессором обеспечивают выполнение способа генерализации карты.at least one memory coupled to the processor and containing computer-readable instructions that, when executed by the at least one processor, perform the map generalization method.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS

[0022] На Фиг. 1 представлена блок-схема компьютерно-реализуемого способа генерализации карты.[0022] In FIG. Figure 1 shows a block diagram of a computer-implemented method for generalizing a map.

[0023] На Фиг. 2 представлена схема реализации компьютерно-реализуемого способа генерализации карты на примере конкретных объектов.[0023] In FIG. Figure 2 shows a diagram of the implementation of a computer-implemented method for generalizing a map using the example of specific objects.

[0024] На Фиг. 3 представлена схема реализации процесса вычисления общего ограничивающего прямоугольника.[0024] In FIG. Figure 3 shows a diagram of the implementation of the process of calculating the general bounding box.

[0025] На Фиг. 4 представлена схема реализации процесса тайлинга картографического изображения.[0025] In FIG. Figure 4 shows a diagram of the implementation of the cartographic image tiling process.

[0026] На Фиг. 5 представлены примеры применения различных параметров фильтрации.[0026] In FIG. Figure 5 shows examples of the use of various filtering parameters.

[0027] На Фиг. 6 представлена схема реализации процесса векторизации.[0027] In FIG. Figure 6 shows a diagram of the implementation of the vectorization process.

[0028] На Фиг. 7 представлена общая схема вычислительного устройства.[0028] In FIG. Figure 7 shows a general diagram of a computing device.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯIMPLEMENTATION OF THE INVENTION

[0029] Ниже будут описаны понятия и термины, необходимые для понимания настоящего изобретения.[0029] Concepts and terms necessary to understand the present invention will be described below.

[0030] Картография - это область науки, техники и производства, охватывающая изучение, создание и использование картографических произведений [2].[0030] Cartography is a field of science, technology and production covering the study, creation and use of cartographic works [2].

[0031] Картографическое произведение - это произведение, главной частью которого является картографическое изображение [2].[0031] A cartographic work is a work the main part of which is a cartographic image [2].

[0032] Карта - это построенное в картографической проекции, уменьшенное, обобщенное изображение поверхности Земли, поверхности другого небесного тела или внеземного пространства, показывающее расположенные на них объекты в определенной системе условных знаков [2].[0032] A map is a reduced, generalized image of the surface of the Earth, the surface of another celestial body or extraterrestrial space, constructed in a cartographic projection, showing the objects located on them in a certain system of conventional symbols [2].

[0033] Цифровая картография - это раздел картографии, охватывающий теорию и практику создания и использования цифровой картографической продукции [3].[0033] Digital cartography is a branch of cartography that covers the theory and practice of creating and using digital cartographic products [3].

[0034] Цифровая картографическая продукция - это продукция, получаемая с использованием цифровой картографической информации [3].[0034] Digital cartographic products are products obtained using digital cartographic information [3].

[0035] Картографическая генерализация - это отбор, обобщение, выделение главных типических черт изображаемых объектов в соответствии с назначением, масштабом, содержанием карты, особенностями картографируемой территории и самого объекта, степенью их изученности [4].[0035] Cartographic generalization is the selection, generalization, and identification of the main typical features of depicted objects in accordance with the purpose, scale, content of the map, features of the mapped territory and the object itself, and the degree of their knowledge [4].

[0036] Картографическая информация - это информация, выражаемая в виде картографических произведений, содержащая сведения о них, требуемая для их создания и обновления [2].[0036] Cartographic information is information expressed in the form of cartographic works, containing information about them, required for their creation and updating [2].

[0037] Цифровая картографическая информация - это картографическая информация, представленная в цифровой форме [3].[0037] Digital map information is map information presented in digital form [3].

[0038] Векторная форма представления (цифровой картографической информации) - способ представления метрической картографической информации в виде последовательности векторов [3].[0038] Vector form of representation (digital cartographic information) is a method of representing metric cartographic information as a sequence of vectors [3].

[0039] Растровая форма представления (цифровой картографической информации) - способ представления цифровой картографической информации в виде матрицы, элементами которой являются коды цветов картографического изображения [3].[0039] Raster form of representation (of digital cartographic information) is a method of presenting digital cartographic information in the form of a matrix, the elements of which are the color codes of the cartographic image [3].

[0040] Векторизация цифровой картографической информации - это преобразование цифровой картографической информации из растровой формы представления в векторную [3].[0040] Vectorization of digital cartographic information is the conversion of digital cartographic information from a raster form of representation to a vector one [3].

[0041] Геометрии - это специальные геометрические объекты на карте, например, такие как: точки, мультиточки, круги, полилайны, мультиполилайны, полигоны, мультиполигоны.[0041] Geometries are special geometric objects on the map, for example, such as: points, multipoints, circles, polylines, multipolylines, polygons, multipolygons.

[0042] Полигон (многоугольник) - это геометрия, представляющая собой замкнутую ломаную линию и ограниченную ею часть плоскости.[0042] A polygon (polygon) is a geometry that is a closed broken line and a part of the plane limited by it.

[0043] Мультиполигон - это геометрия, состоящая из одного и более полигонов.[0043] A multipolygon is a geometry consisting of one or more polygons.

[0044] Тайлы (от англ. tiles - плитки) в цифровой картографии - это прямоугольные фрагменты равной величины, созданные отдельно для каждого уровня масштабирования, на которые разбивается картографическое изображение.[0044] Tiles (from the English tiles - tiles) in digital cartography are rectangular fragments of equal size, created separately for each zoom level, into which the cartographic image is divided.

[0045] Тайлинг (в цифровой картографии) - это процесс деления целого картографического изображения или его части на прямоугольные фрагменты (тайлы) с целью упрощения и/или облегчения просчета окончательного картографического изображения, или реализации специальных функций фильтрации.[0045] Tiling (in digital cartography) is the process of dividing an entire cartographic image or part thereof into rectangular fragments (tiles) in order to simplify and/or facilitate the rendering of the final cartographic image, or to implement special filtering functions.

[0046] Слой - это набор мультиполигонов/пикселей (в зависимости от формы представления данных - векторной или растровой) для однотипных объектов.[0046] A layer is a set of multipolygons/pixels (depending on the form of data representation - vector or raster) for objects of the same type.

[0047] Идентификатор слоя - это битовая последовательность, соответствующая уникальному цвету.[0047] A layer identifier is a bit sequence corresponding to a unique color.

[0048] Масштаб (параметр units-per-pixel) - это параметр, который задает соотношение между единицами измерения расстояния на экваторе и пикселями в растрируемом изображении.[0048] Scale (units-per-pixel parameter) is a parameter that specifies the relationship between distance units at the equator and pixels in the rasterized image.

[0049] Глубина цвета (параметр bits-per-pixel) - это параметр, характеризующий минимальное количество бит, требуемых для кодирования набора уникальных слоев.[0049] Bit depth (bits-per-pixel parameter) is a parameter that characterizes the minimum number of bits required to encode a set of unique layers.

[0050] Ограничивающий прямоугольник, выровненный по координатным осям (Axis Aligned Bounding Box, AABB) - это прямоугольник, четыре оси которого выровнены относительно системы координат, в которой он находится.[0050] An Axis Aligned Bounding Box (AABB) is a rectangle whose four axes are aligned with the coordinate system in which it resides.

[0051] Bounding Box (ВВох, ограничивающий параллелепипед) - это некая простая фигура (обычно, параллелепипед), ограничивающая форму более сложной геометрической модели.[0051] A Bounding Box is a simple figure (usually a parallelepiped) that limits the shape of a more complex geometric model.

[0052] На Фиг. 1 представлен компьютерно-реализуемый способ (100) генерализации карты. Выполнение способа (100) осуществляется с помощью по меньшей мере одного процессора. В частном примере реализации выполнение способа (100) осуществляется с помощью устройства для генерализации карты, которое может быть реализовано на базе вычислительного устройства, модифицированного в программно-аппаратной части таким образом, чтобы выполнять функции устройства для генерализации карты. Более подробное описание вычислительного устройства раскрыто далее со ссылкой на Фиг. 7.[0052] In FIG. 1 presents a computer-implemented method (100) for generalizing a map. The method (100) is carried out using at least one processor. In a particular implementation example, method (100) is carried out using a device for generalizing a map, which can be implemented on the basis of a computing device modified in software and hardware in such a way as to perform the functions of a device for generalizing a map. A more detailed description of the computing device is disclosed below with reference to FIG. 7.

[0053] На первом этапе (101) получают картографическую информацию в векторной форме, содержащую по меньшей мере один слой, содержащий набор мультиполигонов для однотипных объектов. Каждый слой имеет идентификатор, соответствующий уникальному цвету, выраженному битовой последовательностью. Получение картографической информации в векторной форме в частном примере реализации может быть реализовано с помощью средства сетевого взаимодействия, подробно раскрытого далее со ссылкой на Фиг. 7. В качестве упомянутых однотипных объектов могут выступать, но не ограничиваться указанными примерами: леса, реки, дома, дороги и т.д.[0053] At the first stage (101), map information is obtained in vector form, containing at least one layer containing a set of multipolygons for the same type of objects. Each layer has an identifier corresponding to a unique color expressed as a bit sequence. Receiving map information in vector form in a particular implementation example can be implemented using a network communication tool, described in detail below with reference to FIG. 7. The mentioned similar objects can be, but are not limited to, the following examples: forests, rivers, houses, roads, etc.

[0054] В одном из альтернативных вариантов воплощения заявленного решения способ (100) дополнительно содержит этап предварительной обработки полученной картографической информации, осуществляемый после этапа (101) и перед выполнением этапа растеризации (102).[0054] In one of the alternative embodiments of the claimed solution, the method (100) further comprises a step of pre-processing the received cartographic information, carried out after the step (101) and before performing the rasterization step (102).

[0055] В частном примере реализации этап предварительной обработки картографической информации может включать следующие подэтапы:[0055] In a particular implementation example, the stage of pre-processing of cartographic information may include the following sub-stages:

• вычисление требуемой глубины цвета,• calculation of the required color depth,

• вычисление общего ограничивающего прямоугольника для всех слоев, содержащих наборов мультиполигонов,• calculating a common bounding box for all layers containing multipolygon sets,

• определение размера тайла с учетом вычисленной глубины цвета,• determining the tile size taking into account the calculated color depth,

• на основе вычисленного общего ограничивающего прямоугольника и размера тайла выполняют разделение обрабатываемой картографической информации на тайлы (тайлинг).• based on the calculated common bounding rectangle and tile size, the processed cartographic information is divided into tiles (tiling).

[0056] Целью подэтапа вычисления глубины цвета (параметр bits-per-pixel) является нахождение минимального количества бит, требуемых для кодирования набора слоев. В частном примере реализации параметр глубины цвета вычисляется по соотношению N+1<=2(bits-per-pixel), где N количество слоев полученной картографической информации, а показатель степени двойки минимальный. Например, если количество слоев равно 7, то параметр bits-per-pixel=3 (минимальная степень 3, а выражение принимает следующий вид: 7<=23=8). Другими словами, для нахождения глубины нужно вычислить выражение ceil(log2(N+1)).[0056] The purpose of the bits-per-pixel calculation substep is to find the minimum number of bits required to encode a set of layers. In a particular implementation example, the color depth parameter is calculated according to the relation N+1<=2 (bits-per-pixel), where N is the number of layers of the obtained cartographic information, and the power of two is the minimum. For example, if the number of layers is 7, then the parameter bits-per-pixel=3 (the minimum degree is 3, and the expression takes the following form: 7<=2 3=8). In other words, to find the depth you need to evaluate the expression ceil(log2(N+1)).

[0057] Все слои нумеруются от 1 до N, где N - количество слоев, участвующих в процессе генерализации. По числу N считается необходимая глубина для картографической информации (изображения), т.е. количество бит необходимых для кодирования данного набора слоев в виде цветов. Таким образом, каждому слою соответствует свой уникальный цвет, выраженный битовой последовательностью, при этом значение битовой последовательности зависит от вычисленной глубины цвета.[0057] All layers are numbered from 1 to N, where N is the number of layers participating in the generalization process. The number N is used to calculate the required depth for cartographic information (images), i.e. the number of bits needed to encode a given set of layers as colors. Thus, each layer has its own unique color, expressed as a bit sequence, and the value of the bit sequence depends on the calculated color depth.

[0058] В частном примере реализации информация о количестве слоев содержится в картографической информации, полученной на этапе (101), и может быть извлечена из картографической информации для вычисления глубины цвета. В другом частном примере реализации количество слоев (N) является заранее заданным параметром и зависит от масштаба (параметр units-per-pixel), чем меньше значение параметра units-per-pixel, тем больше слоев необходимо для осуществления процесса генерализации.[0058] In a particular implementation example, information about the number of layers is contained in the map information obtained in step (101), and can be extracted from the map information to calculate the color depth. In another particular implementation example, the number of layers (N) is a predetermined parameter and depends on the scale (units-per-pixel parameter); the lower the value of the units-per-pixel parameter, the more layers are needed to carry out the generalization process.

[0059] Необходимо отметить, что в предпочтительном варианте воплощения заявленного решения картографическая информация по умолчанию содержит фоновый слой, который нумеруется, как нулевой слой. Например, если картографическая информация содержит три слоя (N=3), то в качестве идентификаторов слоев (цветов) могут быть использованы следующие значения битовых последовательностей:[0059] It should be noted that in the preferred embodiment of the claimed solution, the default map information contains a background layer, which is numbered as layer zero. For example, if the cartographic information contains three layers (N=3), then the following bit sequence values can be used as layer identifiers (colors):

0 слой (фон): 0b00Layer 0 (background): 0b00

1 слой: 0b011st layer: 0b01

2 слой: 0b102nd layer: 0b10

3 слой: 0b113 layer: 0b11

[0060] В дальнейшем идентификаторы слоев используются, например:[0060] In the following, layer identifiers are used, for example:

• на этапе растеризации (102), чтобы отличать разные слои в получаемой картографической информации (изображении);• at the rasterization stage (102), to distinguish different layers in the resulting cartographic information (image);

• на этапе векторизации (104), чтобы восстановить набор мультиполигонов.• at the vectorization stage (104) to restore the set of multipolygons.

[0061] В качестве дополнительного преимущества от использования идентификатора, соответствующего уникальному цвету, можно отметить значительное упрощение нахождения возникающих дефектов на картографическом изображении при осуществлении генерализации за счет визуально различимого цветового отличия между слоями.[0061] As an additional benefit of using an identifier corresponding to a unique color, it can be noted that it is significantly easier to locate emerging defects in the map image during generalization due to the visually distinguishable color difference between layers.

[0062] Следует отметить, что задачи обработки изображений (в частности, картографических изображений) в большинстве своем являются задачами с ограничением объема памяти (memory-bounded), т.е. относятся к ситуации, в которой время выполнения данной вычислительной задачи определяется в первую очередь объемом свободной памяти, необходимой для хранения рабочих данных. Другими словами, ограничивающим фактором решения данной задачи является скорость доступа к памяти. Это отличается указанный тип задач от задач, привязанных к вычислениям, где количество элементарных шагов вычислений является решающим фактором. Таким образом, организация оптимального доступа к общей памяти может значимо влиять на производительность заявленного решения.[0062] It should be noted that image processing tasks (in particular, cartographic images) are mostly memory-bounded tasks, i.e. refer to a situation in which the execution time of a given computational task is determined primarily by the amount of free memory required to store working data. In other words, the limiting factor in solving this problem is the speed of memory access. This distinguishes this type of problem from problems tied to calculations, where the number of elementary calculation steps is a decisive factor. Thus, organizing optimal access to shared memory can significantly influence the performance of the proposed solution.

[0063] Вычисление минимальной требуемой глубины цвета позволяет оптимизировать потребляемую память, а также ускорить дальнейшую обработку картографической информации. В силу расположения данных в памяти более компактным образом, и, как следствие, позволяющее получить более удобные для кэширования (cache-friendly) операций чтения/записи в оперативную память.[0063] Calculating the minimum required color depth allows you to optimize memory consumption, as well as speed up further processing of map information. Due to the arrangement of data in memory in a more compact manner, and, as a result, allowing for more cache-friendly read/write operations in RAM.

[0064] Процесс вычисления общего ограничивающего прямоугольника для всех слоев, содержащих наборов мультиполигонов, проиллюстрирован на Фиг. 3. На первой схеме представлено несколько наборов мультиполигонов (311), принадлежащих разным слоям (о чем также свидетельствует уникальный цвет каждого слоя).[0064] The process of computing a common bounding box for all layers containing multipolygon sets is illustrated in FIG. 3. The first diagram shows several sets of multipolygons (311) belonging to different layers (which is also evidenced by the unique color of each layer).

[0065] Для каждого набора мультиполигонов из каждого отдельного слоя вычисляется (301) ограничивающий прямоугольник, выровненный по координатным осям (ААВВ) на основании параметра масштаба (units-per-pixel). Параметр units-per-pixel задает соотношение между единицами измерения расстояния на экваторе и пикселями в растрируемом картографическом изображении. Например, если полученная картографическая информация в векторной форме измеряется в метрах, то units-per-pixel=100 означает, что в 1 пикселе будет рисоваться данные из квадрата 100x100 метров на экваторе (в силу специфики используемой проекции). В частном примере реализации параметр масштаба (units-per-pixel) содержится в картографической информации, полученной на этапе (101), и может быть извлечен из картографической информации для вычисления (301) ограничивающих прямоугольников. На второй схеме Фиг. 3 проиллюстрированы наборы мультиполигонов из разных слоев, каждый из которых заключен в ограничивающий прямоугольник (312).[0065] For each set of multipolygons from each individual layer, an axis-aligned bounding box (AABB) is calculated (301) based on the scale parameter (units-per-pixel). The units-per-pixel parameter specifies the relationship between distance units at the equator and pixels in the rasterized map image. For example, if the resulting cartographic information in vector form is measured in meters, then units-per-pixel=100 means that 1 pixel will draw data from a 100x100 meter square at the equator (due to the specifics of the projection used). In a particular implementation example, the scale parameter (units-per-pixel) is contained in the map information obtained in step (101) and can be extracted from the map information to calculate bounding boxes (301). In the second diagram of Fig. 3 illustrates sets of multipolygons from different layers, each of which is enclosed in a bounding box (312).

[0066] Далее по вычисленному набору ограничивающих прямоугольников (312) строится (302) общий ограничивающий прямоугольник (313), который ограничивает все наборы мультиполигонов из всех слоев. Этот процесс осуществляется с помощью операции расширения (extend).[0066] Next, using the calculated set of bounding boxes (312), a common bounding box (313) is constructed (302), which limits all sets of multipolygons from all layers. This process is carried out using the extension operation (extend).

[0067] Псевдокод операции расширения (extend) можно выразить следующим образом:[0067] The pseudocode of the extension operation can be expressed as follows:

[0068] После того как вычислен общий ограничивающий прямоугольник, т.е. известен размер требуемой для дальнейшей растеризации картографической информации, выполняют этап тайлинга, т.е. разделение обрабатываемой картографической информации (в частном случае, картографического изображения) на прямоугольные фрагменты (тайлы).[0068] Once the overall bounding box has been calculated, i.e. the size of the cartographic information required for further rasterization is known, the tiling stage is performed, i.e. dividing the processed cartographic information (in the particular case, a cartographic image) into rectangular fragments (tiles).

[0069] Перед разделением на тайлы, необходимо определить размер тайла на основании вычисленной глубины цвета. Размер тайла (параметр tile-size) позволяет разбить обрабатываемую область картографической информации (т.е. картографическое изображение), на прямоугольные фрагменты (тайлы) размера tile-size х tile-size пикселей, причем в каждом из тайлов допускается использование своей палитры цветов размера 2(bits-per-pixel) - 1, что позволяет увеличить количество обрабатываемых слоев и оптимизировать потребляемые вычислительные ресурсы путем значимой экономии используемой памяти. Таким образом, от параметра tile-size зависит количество тайлов, на которое будет разбито картографическое изображение. Параметр tile-size подбирается так, чтобы количество слоев в одном тайле не превышало значения 2(bits-per-pixel) - 1, а количество тайлов было минимальным.[0069] Before dividing into tiles, it is necessary to determine the tile size based on the calculated color depth. The tile size (tile-size parameter) allows you to divide the processed area of cartographic information (i.e., a cartographic image) into rectangular fragments (tiles) of size tile-size x tile-size pixels, and in each of the tiles it is possible to use its own color palette of size 2 (bits-per-pixel) - 1, which allows you to increase the number of processed layers and optimize consumed computing resources by significantly saving memory used. Thus, the number of tiles into which the cartographic image will be divided depends on the tile-size parameter. The tile-size parameter is selected so that the number of layers in one tile does not exceed 2 (bits-per-pixel) - 1, and the number of tiles is minimal.

[0070] В частном примере реализации такие параметры, как размер тайла (tile-size) и количество тайлов подбираются с помощью инструментов для автоматического подбора параметров. В качестве таких инструментов могут выступать, но не ограничиваться указанными примерами: GridSearchCV [5], RandomizedSearchCV [6], Hyperopt [7].[0070] In a particular implementation example, parameters such as tile-size and the number of tiles are selected using tools for automatic selection of parameters. Such tools may include, but are not limited to, the following examples: GridSearchCV [5], RandomizedSearchCV [6], Hyperopt [7].

[0071] В альтернативном варианте воплощения заявленного решения размер тайла (tile-size) и количество тайлов определяют с помощью автоматического машинного обучения (AutoML). AutoML - это процесс автоматизации выбора алгоритма, создания функций, настройки гиперпараметров, итеративного моделирования и оценки модели.[0071] In an alternative embodiment of the claimed solution, the tile-size and number of tiles are determined using automatic machine learning (AutoML). AutoML is the process of automating algorithm selection, feature generation, hyperparameter tuning, iterative modeling, and model evaluation.

[0072] В качестве AutoML может быть использован, но не ограничиваться, реализуемый на базе платформы AI Cloud ML Space, сервис AutoML [8]. Указанный сервис позволяет на основе заранее подготовленных датасетов определять оптимальные значения параметров, таких как размер тайла (tile-size) и количество тайлов, при этом под оптимальными значениями параметров понимаются значения параметров, удовлетворяющие следующим условиям:[0072] The AutoML service [8] implemented on the basis of the AI Cloud ML Space platform can be used as AutoML, but is not limited to. This service allows, based on pre-prepared datasets, to determine optimal parameter values, such as tile-size and number of tiles, while optimal parameter values are understood as parameter values that satisfy the following conditions:

• в каждом тайле количество слоев должно быть не больше 2(bits-per-pixel) - 1,• in each tile the number of layers should be no more than 2 (bits-per-pixel) - 1,

• количество тайлов должно быть минимальным.• the number of tiles should be minimal.

[0073] Далее на основе вычисленного общего ограничивающего прямоугольника и размера тайла выполняют разделение обрабатываемой картографической информации на тайлы (тайлинг). В частном примере реализации вся дальнейшая обработка производится по-тайлово, что позволяет кодировать большее число слоев не увеличивая глубину цвета. В другом частном примере реализации каждому тайлу присваиваются координаты, определяющие положение тайла в пространстве. На Фиг. 4 представлена схема реализации процесса тайлинга картографического изображения. Проиллюстрированное картографическое изображение разбивается на 9 тайлов (401), причем максимальное количество слоев в каждом из тайлов (401) не превышает 3, с учетом параметра bits-per-pixel=3, т.е. 22-1=3.[0073] Next, based on the calculated common bounding box and tile size, the processed map information is divided into tiles (tiling). In a particular implementation example, all further processing is done in tiles, which allows you to encode a larger number of layers without increasing the color depth. In another particular implementation example, each tile is assigned coordinates that determine the tile's position in space. In FIG. Figure 4 shows a diagram of the implementation of the cartographic image tiling process. The illustrated cartographic image is divided into 9 tiles (401), and the maximum number of layers in each of the tiles (401) does not exceed 3, taking into account the bits-per-pixel=3 parameter, i.e. 2 2 -1=3.

[0074] В мультипроцессорных (многопоточных) средах обработка на этапах (102-104) ведется построчно, где каждая строка (411, 412, 413), представляющая набор из нескольких тайлов обрабатывает параллельно и независимо от остальных строк, что позволяет добиться большей производительности заявленного решения.[0074] In multiprocessor (multi-threaded) environments, processing at stages (102-104) is carried out line by line, where each line (411, 412, 413), representing a set of several tiles, is processed in parallel and independently of the remaining lines, which allows for greater performance as stated solutions.

[0075] На этапе (102) выполняют растеризацию полученной на этапе (101) картографической информации. В частном примере реализации растеризация может быть осуществлена на основании по меньшей мере таких параметров, как масштаб (units-per-pixel), глубина цвета (bits-per-pixel), количество тайлов и их координаты, причем указанные параметры получены или вычислены на предыдущих этапах.[0075] At step (102), rasterization of the map information obtained at step (101) is performed. In a particular implementation example, rasterization can be carried out based on at least such parameters as scale (units-per-pixel), color depth (bits-per-pixel), number of tiles and their coordinates, and these parameters are obtained or calculated on the previous stages.

[0076] В предпочтительном варианте воплощения заявленного решения этап (102) растеризации полученной картографической информации реализован с помощью алгоритма построчного сканирования (алгоритма scanline [9]). В частном примере реализации алгоритма scanline реализуется с учетом предварительного осуществления тайлинга картографической информации. Суть реализации алгоритма scanline с учетом разбиения на тайлы состоит в том, что:[0076] In the preferred embodiment of the claimed solution, the stage (102) of rasterization of the received cartographic information is implemented using a line-by-line scanning algorithm (scanline algorithm [9]). In a particular example of the implementation of the scanline algorithm, it is implemented taking into account the preliminary implementation of tiling of cartographic information. The essence of the implementation of the scanline algorithm taking into account tiling is that:

• каждый тайл обрабатывается независимо и параллельно,• each tile is processed independently and in parallel,

• внутри каждого тайла обработка ведется построчно, т.е. строчки пикселей растеризуются последовательно сверху-вниз.• within each tile, processing is carried out line by line, i.e. pixel lines are rasterized sequentially from top to bottom.

[0077] В результате осуществления этапа (102) получается растрированная картографическая информация, которая в частном варианте реализации может быть представлена в виде аналога RGB-изображения, содержащего связную (в топологическом смысле) и огрубленную геометрию (вследствие масштабирования с параметром units-per-pixel), где каждому цвету соответствует уникальный идентификатор слоя. Необходимо отметить, что разный масштаб (параметр units-per-pixel) позволяет получить геометрию различной детализации, т.е. чем меньше значение параметра units-per-pixel, тем более детализированное изображение получаем. Полученная таким образом растрированная картографическая информация (в частном случае, растрированное картографическое изображение) позволяет производить дальнейшую обработку без отдельной обработки ситуации плохо прилегающих смежных кривых (между объектами с общей границей).[0077] As a result of step (102), rasterized cartographic information is obtained, which in a particular embodiment can be presented as an analogue of an RGB image containing coherent (in a topological sense) and coarse geometry (due to scaling with the units-per-pixel parameter ), where each color has a unique layer identifier. It should be noted that different scales (units-per-pixel parameter) allow you to obtain geometry of different detail, i.e. The lower the units-per-pixel value, the more detailed the image we get. The rasterized cartographic information obtained in this way (in a particular case, a rasterized cartographic image) allows further processing without separate processing of the situation of poorly adjacent adjacent curves (between objects with a common boundary).

[0078] На Фиг. 2 представлена схема реализации компьютерно-реализуемого способа генерализации карты на примере конкретных объектов. В качестве таких объектов в поле (221) могут выступать, но не ограничиваться ими: синий треугольник, красный пятиугольник с вписанным квадратом, оранжевый квадрат. Объекты представлены в векторной форме и состоят из мультиполигонов. Различные цвета объектов свидетельствуют об их отнесении к разным слоям, поскольку, как отмечалось ранее, цвет является идентификатором слоя.[0078] In FIG. Figure 2 shows a diagram of the implementation of a computer-implemented method for generalizing a map using the example of specific objects. Such objects in the field (221) may include, but are not limited to: a blue triangle, a red pentagon with an inscribed square, an orange square. Objects are presented in vector form and consist of multipolygons. Different colors of objects indicate that they belong to different layers, since, as noted earlier, color is a layer identifier.

[0079] После выполнения растеризации (201) объекты преобразуются из векторной формы в растровую форму. В поле (222) проиллюстрирован пример такого преобразования, где вышеуказанные объекты представлены в виде набора пикселей, причем объекты имеют огрубленную геометрию по сравнению с векторной формой представления.[0079] After rasterization is performed (201), the objects are converted from vector form to raster form. Field (222) illustrates an example of such a transformation, where the above objects are represented as a set of pixels, and the objects have a coarsened geometry compared to the vector form of representation.

[0080] На этапе (103) выполняют фильтрацию растрированной на этапе (102) картографической информации. Этап (103) фильтрации способствует устранению промежутков между объектами, возникающих, например, при изменении масштаба, а также сглаживанию границ объектов, таким образом повышая качество генерализации карты.[0080] At step (103), filtering of the map information rasterized at step (102) is performed. The filtering step (103) helps eliminate gaps between objects that arise, for example, when changing the scale, as well as smoothing the boundaries of objects, thus improving the quality of map generalization.

[0081] В одном из частных примеров реализации фильтрации растрированной картографической информации включает:[0081] One particular example of the implementation of filtering rasterized cartographic information includes:

• применение (202) набора сверточных фильтров к растрированной картографической информации, и/или• applying (202) a set of convolutional filters to the rasterized map information, and/or

• вычисление площади растрированных объектов в пикселях и удаление (203) объектов, площадь которых не соответствует пороговому значению (фильтрация по площади).• calculation of the area of rasterized objects in pixels and removal (203) of objects whose area does not meet the threshold value (filtering by area).

[0082] Необходимо отметить, что в одном из альтернативных вариантов воплощения заявленного решения в качестве сверточных фильтров применяются фильтры, используемые для морфологических преобразований. В качестве примера, но не ограничиваясь им, фильтры, используемые для морфологических преобразований, основаны на операции дилатация (dilation) и/или эрозия (erosion). Применение (202) набора сверточных фильтров к растрированной картографической информации (в частности, к растрированному картографическому изображению) дополнительно позволяет объединить объекты, между которыми есть промежутки (щели), сгладить границы, тем самым устранив визуальные изъяны на изображении, и как следствие повысить качество генерализации карты.[0082] It should be noted that in one of the alternative embodiments of the claimed solution, filters used for morphological transformations are used as convolutional filters. By way of example, but not limitation, filters used for morphological transformations are based on dilation and/or erosion operations. Application (202) of a set of convolutional filters to rasterized cartographic information (in particular, to a rasterized cartographic image) additionally allows you to combine objects between which there are gaps (gaps), smooth out the boundaries, thereby eliminating visual flaws in the image, and as a result improve the quality of generalization cards.

[0083] Пример применения (202) набора сверточных фильтров проиллюстрирован на Фиг. 2 в поле (223), где к объектам, представленным в виде набора пикселей, применены сверточные фильтры.[0083] An example application (202) of a convolutional filter bank is illustrated in FIG. 2 in field (223), where convolutional filters are applied to objects represented as a set of pixels.

[0084] В альтернативном варианте воплощения заявленного решения фильтрация (103) растрированной картографической информации дополнительно включает этап получения значений параметров фильтрации, предшествующий вышеуказанным операциям (202, 203). При этом применение набора сверточных фильтров к растрированной картографической информации основано на полученных значениях параметров фильтрации.[0084] In an alternative embodiment of the claimed solution, filtering (103) of rasterized map information further includes the step of obtaining filtering parameter values, preceding the above operations (202, 203). In this case, the application of a set of convolutional filters to rasterized cartographic information is based on the obtained values of the filtering parameters.

[0085] В одном из частных примеров реализации значения параметров фильтрации могут быть рассчитаны с помощью модели машинного обучения, предобученной на большом количестве картографических изображений. Например, такая модель машинного обучения может быть основана на нейронной сети, где в качестве нейронов скрытого слоя выступают параметры фильтрации, а в качестве их весов - значения параметров фильтрации.[0085] In one particular implementation example, the values of the filtering parameters can be calculated using a machine learning model pre-trained on a large number of map images. For example, such a machine learning model can be based on a neural network, where the hidden layer neurons are filtering parameters, and their weights are the values of the filtering parameters.

[0086] В другом частном примере реализации параметры фильтрации могут подбираться исходя из метрик качества получаемых генерализованных картографических изображений. В качестве метрик качества могут выступать, но не ограничиваться ими, следующие метрики качества.[0086] In another particular implementation example, filtering parameters can be selected based on quality metrics of the resulting generalized cartographic images. Quality metrics may include, but are not limited to, the following quality metrics.

[0087] Метрика 1. Сравнение площади объектов.[0087] Metric 1. Comparison of the area of objects.

[0088] Вычисляем значение площади для изначальных объектов Si и для генерализованных объектов GSj. После этого анализируем отношение[0088] We calculate the area value for the initial objects Si and for the generalized objects GSj. After this, we analyze the relationship

|SUM Si - SUM GSj|/SUM Si → 0%,|SUM S i - SUM GS j |/SUM S i → 0%,

где SUM - сумма площадей объектов.where SUM is the sum of the areas of objects.

[0089] Отклонение должно стремиться к 0%, т.е. чем меньше отклонение, тем качественнее была выполнена генерализация.[0089] The deviation should tend to 0%, i.e. the smaller the deviation, the better the generalization was performed.

[0090] Метрика 2. Количество полигонов и количество точек.[0090] Metric 2. Number of polygons and number of points.

[0091] Вычисляем количество полигонов MP и кол-во точек Р у изначальных объектов, а также количество полигонов GMP и точек GP у генерализованных объектов.[0091] We calculate the number of MP polygons and the number of P points for the original objects, as well as the number of GMP polygons and GP points for the generalized objects.

[0092] Показателем качественной генерализации является тот факт, что GMP<MP, т.е. количество генерализованных объектов всегда меньше или равно изначальным, GP<Р, т.е. количество точек у генерализованных объектов, всегда меньше чем у изначальных объектов.[0092] An indicator of high-quality generalization is the fact that GMP<MP, i.e. the number of generalized objects is always less than or equal to the original ones, GP<P, i.e. the number of points of generalized objects is always less than that of the original objects.

[0093] В качестве примера, но не ограничиваясь им, изначальную геометрию соотносим с условным 19-ым зумом (англ. zoom - изменение масштаба изображения). При масштабировании геометрии в 13-ом зуме, ориентир для уменьшения количества точек рассчитывается, как ~2(19-13), т.е. количество точек при указанном изменении масштаба должно уменьшится по сравнению с изначальным значением в 64 раза.[0093] As an example, but not limited to it, we correlate the initial geometry with a conditional 19th zoom (English zoom - changing the image scale). When scaling the geometry in the 13th zoom, the guideline for reducing the number of points is calculated as ~2 (19-13) , i.e. the number of points with the specified change in scale should decrease by 64 times compared to the original value.

[0094] Метрика 3. Отклонение сопоставленных точек.[0094] Metric 3: Deviation of matched points.

[0095] Делаем поиск OPi(xi, yi) изначальных точек для GPj(xj, yj) генерализованных точек в радиусе на максимальную близость по х и у координатам (т.е. решаем задачу поиска ближайшего соседа в заданном радиусе). По сопоставленным точкам (их количество k≤j) вычисляем максимальное отклонение Xk и Yk по координатам точек.[0095] We search for OP i (x i , y i ) initial points for GP j (x j , y j ) generalized points in the radius for maximum proximity in x and y coordinates (i.e., we solve the problem of searching for the nearest neighbor in a given radius). Based on the matched points (their number k≤j), we calculate the maximum deviation X k and Y k from the coordinates of the points.

[0096] Анализируем МАХ и MIN от отклонений, а также медианное и среднее значения. Этот механизм позволят не только делать измерения качества, но и в целом оценивать смещение объектов, что позволяет делать центровку между изначальной и генерализованной геометриями.[0096] We analyze MAX and MIN from deviations, as well as median and average values. This mechanism will allow not only making quality measurements, but also generally assessing the displacement of objects, which allows for alignment between the original and generalized geometries.

[0097] Метрика 4. Отклонение линий.[0097] Metric 4. Line deviation.

[0098] У генерализованной геометрии выбираются попарно точки GPj и GPj+1, чтобы получился отрезок, при этом выбор точек последовательно осуществляется по часовой стрелке. К отрезку строится сеть перпендикуляров до пересечения с изначальной геометрией. Перпендикуляры строятся сеткой, может быть выбран вариант равномерной и неравномерной сетки.[0098] For a generalized geometry, points GPj and GPj+1 are selected in pairs to form a segment, with the points being selected sequentially in a clockwise direction. A network of perpendiculars is built to the segment until it intersects with the original geometry. Perpendiculars are constructed using a grid; the option of a uniform and non-uniform grid can be selected.

[0099] Полученные перпендикуляры являются отклонениями для отрезков в генерализованной геометрии. Для расчетов используется среднее отклонение по перпендикулярам, анализируется МАХ и MIN от отклонений, а также медианное и среднее значения.[0099] The resulting perpendiculars are deviations for segments in the generalized geometry. For calculations, the average deviation along perpendiculars is used, the MAX and MIN of deviations, as well as the median and mean values are analyzed.

[0100] Необходимо отметить, что каждая из представленных метрик может использоваться самостоятельно и независимо, но наилучшие результаты достигаются при комбинации метрик качества. Например, при сравнении площади объектов по метрике 1 крайне эффективно использовать метрику 2, чтобы оценка площади была связана с количеством полигонов и точек.[0100] It should be noted that each of the presented metrics can be used independently and independently, but the best results are achieved by combining quality metrics. For example, when comparing the area of objects using metric 1, it is extremely effective to use metric 2 so that the area estimate is related to the number of polygons and points.

[0101] В качестве параметров фильтрации могут выступать, но не ограничиваться указанными примерами: форма ядра фильтра, размер фильтра (filter-radius), сила фильтра (object-coef), минимальная допустимая площадь (min-object-area). Примеры применения различных параметров фильтрации наглядно проиллюстрированы на Фиг. 5.[0101] Filtering parameters may include, but are not limited to, the following examples: shape of the filter core, filter size (filter-radius), filter strength (object-coef), minimum allowable area (min-object-area). Examples of the use of various filtering parameters are clearly illustrated in Fig. 5.

[0102] В качестве формы ядра фильтра могут использоваться различные геометрические формы, однако в предпочтительном варианте воплощения такой формой является круг, поскольку он дает наилучший результат (по результатам А/В-тестирования).[0102] Various geometric shapes can be used as the shape of the filter core, however, the preferred embodiment is a circle as it gives the best result (based on A/B testing).

[0103] Параметр размер фильтра (filter-radius) влияет на «округлость» геометрии, чем больше значение параметра filter-radius, тем более «округлая» геометрия получается. Влияние параметра filter-radius на результат фильтрации наглядно проиллюстрирован на Фиг. 5 (элемент 501).[0103] The filter size parameter (filter-radius) affects the “roundness” of the geometry; the larger the value of the filter-radius parameter, the more “rounded” the geometry is obtained. The influence of the filter-radius parameter on the filtering result is clearly illustrated in Fig. 5 (item 501).

[0104] Значение параметра object-coef влияет на «агрессивность» фильтра, значения object-coef<1 сжимает геометрию, значения object-coef>1 растягивает геометрию. Влияние параметра object-coef на результат фильтрации наглядно проиллюстрирован на Фиг. 5 (элемент 502).[0104] The value of the object-coef parameter affects the “aggressiveness” of the filter, values object-coef<1 compresses the geometry, values object-coef>1 stretches the geometry. The influence of the object-coef parameter on the filtering result is clearly illustrated in Fig. 5 (item 502).

[0105] Параметр минимальной допустимой площади (min-object-area) характеризует минимально допустимую площадь в пикселях по меньшей мере одного объекта из слоя. Такой подход позволяет вычислить площадь растрированных объектов в пикселях и удалить те объекты, площадь которых меньше параметра минимальной допустимой площади (min-object-area). Влияние параметра min-object-area на результат фильтрации наглядно проиллюстрирован на Фиг. 5 (элемент 503).[0105] The minimum acceptable area parameter (min-object-area) characterizes the minimum acceptable area in pixels of at least one object from the layer. This approach allows you to calculate the area of rasterized objects in pixels and remove those objects whose area is less than the minimum acceptable area parameter (min-object-area). The influence of the min-object-area parameter on the filtering result is clearly illustrated in Fig. 5 (item 503).

[0106] Параметр min-object-area связан с параметром масштаба (units-per-pixel), который задает соотношение между единицами измерения расстояния на экваторе (метрами) и пикселями в растрированном изображении. Таким образом, связь между параметрами min-object-area и units-per-pixel задает связь между площадью в метрах и площадью в пикселях.[0106] The min-object-area parameter is associated with a scale parameter (units-per-pixel), which specifies the relationship between equator distance units (meters) and pixels in the rasterized image. Thus, the relationship between the min-object-area and units-per-pixel parameters specifies the relationship between the area in meters and the area in pixels.

[0107] Пример применения (203) фильтрации по площади проиллюстрирован на Фиг. 2 в поле (224), где в процессе сравнения площади объектов в пикселях с пороговым значением (т.е. параметром минимальной допустимой площади) удален объект - оранжевый квадрат, площадь которого оказалась меньше значения параметра min-object-area.[0107] An example application (203) of area filtering is illustrated in FIG. 2 in field (224), where in the process of comparing the area of objects in pixels with the threshold value (i.e., the minimum allowable area parameter), an object was removed - an orange square, the area of which was less than the value of the min-object-area parameter.

[0108] В альтернативном варианте воплощения заявленного решения этап применения набора сверточных фильтров осуществляется прямо на этапе (102) растеризации. Симметричность ядра фильтра ([10], [11]) дает возможность применять фильтр построчно, а не попиксельно, по аналогии с оптимизациями для фильтра Гаусса [12], что позволяет получить более оптимальный доступ к памяти и, как следствие, более высокую производительность.[0108] In an alternative embodiment of the claimed solution, the step of applying a bank of convolutional filters is carried out directly at the rasterization step (102). The symmetry of the filter kernel ([10], [11]) makes it possible to apply the filter row by row rather than per pixel, similar to the optimizations for the Gaussian filter [12], which allows for more optimal memory access and, as a result, higher performance.

[0109] На этапе (104) выполняют векторизацию отфильтрованной на этапе (103) растрированной картографической информации.[0109] At step (104), vectorization of the rasterized map information filtered at step (103) is performed.

[0110] В одном из частных примеров реализации этап векторизации (104) отфильтрованной растрированной картографической информации включает:[0110] In one particular implementation example, the step of vectorizing (104) filtered rasterized cartographic information includes:

• нахождение опорных точек на границах смежных объектов,• finding reference points on the boundaries of adjacent objects,

• построение границ объектов на основании найденных опорных точек,• construction of object boundaries based on found reference points,

• построение по меньшей мере одной общей границы между смежными объектами путем объединения общих вершин с одинаковыми координатами,• construction of at least one common boundary between adjacent objects by combining common vertices with the same coordinates,

• восстановление набора мультиполигонов с учетом по меньшей мере одной общей границы объектов.• restoration of a set of multipolygons, taking into account at least one common boundary of objects.

[0111] Реализация этапов процесса векторизации проиллюстрирована на Фиг. 6.[0111] The implementation of the steps of the vectorization process is illustrated in FIG. 6.

[0112] В процессе векторизации (104) осуществляют поиск опорных точек на границах смежных объектов. В качестве опорных точек выступают пиксели на растрированном картографическом изображении, которые обладают определенным свойством, а именно соседи у таких пикселей разного цвета, т.е. принадлежат к разным слоям. На этапе нахождения опорных точек осуществляют поиск координат таких пикселей, соседи которых имеют 3 или более различных идентификаторов слоев (цветов). Отдельно обрабатываются граничные случаи, например, точки в углах изображения (0, 0), (0, h), (w, 0), (w, h). Цвет фона (т.е. пиксели, не занятые объектами) выступает в качестве отдельного идентификатора (идентификатор фонового слоя) и учитывается при поиске опорных точек. Цель этапа - найти опорные точки на стыках объектов, принадлежащих разным слоям (учитывая фоновый слой без объектов), которые в дальнейшем используются для построения графа допустимых отрезков, который служит для построения границ объектов.[0112] The vectorization process (104) searches for reference points on the boundaries of adjacent objects. The reference points are pixels on a rasterized cartographic image that have a certain property, namely, the neighbors of such pixels are of different colors, i.e. belong to different layers. At the stage of finding reference points, the coordinates of such pixels are searched for whose neighbors have 3 or more different layer identifiers (colors). Boundary cases are processed separately, for example, points in the corners of the image (0, 0), (0, h), (w, 0), (w, h). The background color (i.e. pixels not occupied by objects) acts as a separate identifier (background layer ID) and is taken into account when searching for anchor points. The goal of the stage is to find reference points at the junctions of objects belonging to different layers (taking into account the background layer without objects), which are subsequently used to construct a graph of feasible segments, which serves to construct the boundaries of objects.

[0113] Найденные опорные точки впоследствии позволяют построить общую границу между отдельными смежными объектами используя общие вершины с одинаковыми координатами. Построение общей границы позволяет оптимизировать процесс векторизации за счет переиспользования общих границ при преобразовании отфильтрованной растрированной картографической информации в векторную форму представления (т.е. при преобразовании из наборов пикселей в мультиполигоны). Обращаясь к Фиг. 6, например, при векторизации «желтого» объекта, характеризующегося набором желтых пикселей, строим границу «желтого» объекта, и если часть границы общая с другим объектом («красным» объектом, характеризующимся набором красных пикселей), то используем значения опорных точек общей границы для построения границы «красного» объекта. Аналогично, для построения границы «зеленого» объекта используем значения опорных точек общей границы между «красным» и «зеленым» объектами.[0113] The found reference points subsequently make it possible to construct a common boundary between separate adjacent objects using common vertices with the same coordinates. The construction of a common boundary allows you to optimize the vectorization process by reusing common boundaries when converting filtered rasterized cartographic information into a vector form of representation (i.e., when converting from sets of pixels to multipolygons). Referring to FIG. 6, for example, when vectorizing a “yellow” object, characterized by a set of yellow pixels, we build the border of the “yellow” object, and if part of the border is common with another object (“red” object, characterized by a set of red pixels), then we use the values of the reference points of the common border to construct the border of the “red” object. Similarly, to construct the boundary of a “green” object, we use the values of the reference points of the common boundary between the “red” and “green” objects.

[0114] Такой подход позволяет избежать ошибок при построении границ на этапе векторизации, так называемого эффекта щелей, который может возникать из-за различных округлений при векторизации. Таким образом, восстановление набора мультиполигонов с учетом по меньшей мере одной общей границы объектов позволяет устранить эффекта щелей и тем самым повысить качество генерализации карты.[0114] This approach allows you to avoid errors when constructing boundaries at the vectorization stage, the so-called gap effect, which can arise due to various roundings during vectorization. Thus, restoring a set of multipolygons taking into account at least one common boundary of objects allows us to eliminate the effect of gaps and thereby improve the quality of map generalization.

[0115] Пример выполнения векторизации (204) проиллюстрирован на Фиг. 2 в поле (225), где объекты, представленные в виде набора пикселей (в растровой форме представления), подвергшиеся фильтрации (202, 203) преобразуются в объекты, представленные в виде восстановленного набора мультиполигонов (в векторной форме представления). На Фиг. 2 наглядно продемонстрирована разница между исходными объектами, состоящими из мультиполигонов (поле (221)) и преобразованными объектами, состоящими из восстановленных мультиполигонов (поле (225)). Объекты претерпели следующие изменения: синий треугольник теперь имеет закругленные (сглаженные в результате фильтрации) углы; красный пятиугольник также имеет закругленные (сглаженные в результате фильтрации) углы, кроме того, вписанный в него квадрат в ходе фильтрации изменил форму на окружность; оранжевый квадрат был удален в ходе осуществления фильтрации по площади.[0115] An example of performing vectorization (204) is illustrated in FIG. 2 in the field (225), where objects represented as a set of pixels (in raster representation form) subjected to filtering (202, 203) are converted into objects represented as a reconstructed set of multipolygons (in vector representation form). In FIG. Figure 2 clearly demonstrates the difference between the original objects consisting of multipolygons (field (221)) and the transformed objects consisting of restored multipolygons (field (225)). Objects have undergone the following changes: the blue triangle now has rounded (smoothed as a result of filtering) corners; the red pentagon also has rounded (smoothed as a result of filtering) corners, in addition, the square inscribed in it changed its shape to a circle during filtering; The orange square was removed during area filtering.

[0116] На этапе (105) формируют генерализированную карту на основе восстановленного набора мультиполигонов, полученного на этапе (104) векторизации.[0116] At step (105), a generalized map is formed based on the reconstructed set of multipolygons obtained at step (104) of vectorization.

[0117] В частном примере реализации вместе с генерализованной картой дополнительно формируется информация о значениях параметров, используемых на этапах (102-104), например, но не ограничиваюсь, в качестве метаданных [13]. Эта информация может быть использована для анализа и дальнейшего усовершенствования способа генерализации карты.[0117] In a particular implementation example, together with the generalized map, information about the values of the parameters used in steps (102-104) is additionally generated, for example, but not limited to, as metadata [13]. This information can be used to analyze and further improve the map generalization method.

[0118] На Фиг. 7 представлен общий вид вычислительного устройства (700), на базе которого может быть реализовано устройство для генерализации карты, обеспечивающее реализацию способа генерализации карты.[0118] In FIG. 7 shows a general view of a computing device (700), on the basis of which a device for map generalization can be implemented, providing implementation of the map generalization method.

[0119] В общем случае вычислительное устройство (700) содержит объединенные общей шиной информационного обмена один или несколько процессоров (701), средства памяти, такие как ОЗУ (702) и ПЗУ (703), интерфейсы ввода/вывода (704), устройства ввода/вывода (705), и средство для сетевого взаимодействия (706).[0119] In general, a computing device (700) contains one or more processors (701), memory devices such as RAM (702) and ROM (703), input/output interfaces (704), and input devices connected by a common information exchange bus. /output (705), and a means for network communication (706).

[0120] Процессор (701) (или несколько процессоров, многоядерный процессор) могут выбираться из ассортимента устройств, широко применяемых в текущее время, например, компаний Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. В качестве процессора (701) может также применяться графический процессор, например, Nvidia, AMD, Graphcore и пр.[0120] The processor (701) (or multiple processors, multi-core processor) may be selected from a variety of devices commonly used today, such as those from Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ and etc. A graphics processor, for example, Nvidia, AMD, Graphcore, etc., can also be used as the processor (701).

[0121] ОЗУ (702) представляет собой оперативную память и предназначено для хранения исполняемых процессором (701) машиночитаемых инструкций для выполнение необходимых операций по логической обработке данных. ОЗУ (702), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.).[0121] RAM (702) is a random access memory and is designed to store machine-readable instructions executable by the processor (701) to perform the necessary logical data processing operations. The RAM (702) typically contains executable operating system instructions and associated software components (applications, program modules, etc.).

[0122] ПЗУ (703) представляет собой одно или более устройств постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, Blu-Ray Disc, MD) и др.[0122] A ROM (703) is one or more permanent storage devices, such as a hard disk drive (HDD), a solid state drive (SSD), flash memory (EEPROM, NAND, etc.), optical storage media ( CD-R/RW, DVD-R/RW, Blu-Ray Disc, MD), etc.

[0123] Для организации работы компонентов устройства (700) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (704). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п.[0123] To organize the operation of device components (700) and organize the operation of external connected devices, various types of I/O interfaces (704) are used. The choice of appropriate interfaces depends on the specific design of the computing device, which can be, but is not limited to: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232, etc.

[0124] Для обеспечения взаимодействия пользователя с вычислительным устройством (700) применяются различные устройства (705) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п.[0124] To provide user interaction with the computing device (700), various I/O information devices (705) are used, for example, a keyboard, a display (monitor), a touch display, a touch pad, a joystick, a mouse, a light pen, a stylus, touch panel, trackball, speakers, microphone, augmented reality tools, optical sensors, tablet, light indicators, projector, camera, biometric identification tools (retina scanner, fingerprint scanner, voice recognition module), etc.

[0125] Средство сетевого взаимодействия (706) обеспечивает передачу данных устройством (700) посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств (706) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.[0125] The network communication facility (706) allows the device (700) to transmit data via an internal or external computer network, such as an Intranet, Internet, LAN, or the like. One or more means (706) can be used, but not limited to: Ethernet card, GSM modem, GPRS modem, LTE modem, 5G modem, satellite communication module, NFC module, Bluetooth and/or BLE module, Wi-Fi module and etc.

[0126] Дополнительно в составе устройства (700) могут также применяться средства спутниковой навигации, например, GPS, ГЛОНАСС, BeiDou, Galileo.[0126] Additionally, the device (700) can also use satellite navigation tools, for example, GPS, GLONASS, BeiDou, Galileo.

[0127] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники.[0127] The submitted application materials disclose preferred examples of implementation of a technical solution and should not be interpreted as limiting other, particular examples of its implementation that do not go beyond the scope of the requested legal protection, which are obvious to specialists in the relevant field of technology.

[0128] Источники информации:[0128] Sources of information:

[1] SpatiaLite - spatial extensions for SQLite. https://www.gaia-gis.it/gaia-sins/spatialite-manual-2.3.1.html[1] SpatiaLite - spatial extensions for SQLite. https://www.gaia-gis.it/gaia-sins/spatialite-manual-2.3.1.html

[2] ГОСТ 21667-76 Картография. Термины и определения[2] GOST 21667-76 Cartography. Terms and Definitions

[3] ГОСТ 28441-99 Картография цифровая. Термины и определения[3] GOST 28441-99 Digital cartography. Terms and Definitions

[4] Берлянт А.М. КАРТОГРАФИЧЕСКАЯ ГЕНЕРАЛИЗАЦИЯ // Большая российская энциклопедия. Том 13. Москва, 2009, стр. 237[4] Berlyant A.M. CARTOGRAPHIC GENERALIZATION // Great Russian Encyclopedia. Volume 13. Moscow, 2009, p. 237

[5] Sklearn.mode_lselection.GridSearchCV - scikit-learn 1.2.0 documentation. https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html[5] Sklearn.mode_lselection.GridSearchCV - scikit-learn 1.2.0 documentation. https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html

[6] Sklearn.mode_lselection.RandomizedSearchCV - scikit-learn 1.2.0 documentation. https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.RandomizedSearchCV.html[6] Sklearn.mode_lselection.RandomizedSearchCV - scikit-learn 1.2.0 documentation. https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.RandomizedSearchCV.html

[7] Hyperopt Documentation, https://hyperopt.github.io/hyperopt/[7] Hyperopt Documentation, https://hyperopt.github.io/hyperopt/

[8] AutoML - документация AI Cloud ML Space. Руководство пользователя. https://docs.sbercloud.ru/aicloud/mlspace/concepts/automl.html[8] AutoML - AI Cloud ML Space documentation. User guide. https://docs.sbercloud.ru/aicloud/mlspace/concepts/automl.html

[9] Scanline rendering. https://en.wikipedia.org/wiki/Scanline_rendering[9] Scanline rendering. https://en.wikipedia.org/wiki/Scanline_rendering

[10] Separable filter. https://en.wikipedia.org/wiki/Separable_filter[10] Separable filter. https://en.wikipedia.org/wiki/Separable_filter

[11] John Chapman. Optimizing Convolutions. https://john-chapman.github.io/2019/03/29/convolution.html[11] John Chapman. Optimizing Convolutions. https://john-chapman.github.io/2019/03/29/convolution.html

[12] Матричные фильтры обработки изображений, https://habr.com/ru/post/142818/[12] Matrix filters for image processing, https://habr.com/ru/post/142818/

[13] ГОСТ Р 52573-2006. Географическая информация. Метаданные[13] GOST R 52573-2006. Geographic information. Metadata

Claims (29)

1. Компьютерно-реализуемый способ генерализации карты, выполняемый по меньшей мере одним процессором, содержащий этапы, на которых:1. A computer-implemented method for generalizing a map, performed by at least one processor, containing the steps of: a) получают картографическую информацию в векторной форме, содержащую по меньшей мере один слой, содержащий набор мультиполигонов для однотипных объектов;a) receive cartographic information in vector form, containing at least one layer containing a set of multipolygons for objects of the same type; b) выполняют растеризацию полученной картографической информации;b) perform rasterization of the received cartographic information; c) выполняют фильтрацию растрированной картографической информации;c) perform filtering of rasterized cartographic information; d) выполняют векторизацию отфильтрованной растрированной картографической информации, причем в процессе векторизации осуществляют:d) perform vectorization of filtered rasterized cartographic information, and in the process of vectorization the following is carried out: • нахождение опорных точек на границах смежных объектов,• finding reference points on the boundaries of adjacent objects, • построение границ объектов на основании найденных опорных точек,• construction of object boundaries based on found reference points, • построение по меньшей мере одной общей границы между смежными объектами путем объединения общих вершин с одинаковыми координатами,• construction of at least one common boundary between adjacent objects by combining common vertices with the same coordinates, • восстановление набора мультиполигонов с учетом по меньшей мере одной общей границы объектов;• restoration of a set of multipolygons, taking into account at least one common boundary of objects; e) формируют генерализированную карту на основе восстановленного набора мультиполигонов.e) form a generalized map based on the reconstructed set of multipolygons. 2. Способ по п. 1, характеризующий тем, что дополнительно содержит этап предварительной обработки полученной картографической информации перед выполнением растеризации.2. The method according to claim 1, characterized in that it additionally contains the stage of pre-processing the received cartographic information before performing rasterization. 3. Способ по п. 2, характеризующий тем, что этап предварительной обработки картографической информации включает:3. The method according to claim 2, characterized by the fact that the stage of preliminary processing of cartographic information includes: • вычисление требуемой глубины цвета,• calculation of the required color depth, • вычисление общего ограничивающего прямоугольника для всех слоев, содержащих наборов мультиполигонов,• calculating a common bounding box for all layers containing multipolygon sets, • определение размера тайла с учетом вычисленной глубины цвета,• determining the tile size taking into account the calculated color depth, • на основе вычисленного общего ограничивающего прямоугольника и размера тайла выполняют разделение обрабатываемой картографической информации на тайлы.• based on the calculated common bounding rectangle and tile size, the processed cartographic information is divided into tiles. 4. Способ по п. 3, характеризующий тем, что глубина цвета вычисляется по формуле: 4. The method according to claim 3, characterized by the fact that the color depth is calculated by the formula: bits-per-pixel=ceil(log2(N+1)),bits-per-pixel=ceil(log2(N+1)), где N - количество слоев полученной картографической информации.where N is the number of layers of the obtained cartographic information. 5. Способ по п. 4, характеризующий тем, что каждый слой имеет идентификатор, соответствующий уникальному цвету, выраженному битовой последовательностью, при этом значение битовой последовательности зависит от вычисленной глубины цвета.5. The method according to claim 4, characterized in that each layer has an identifier corresponding to a unique color expressed by a bit sequence, and the value of the bit sequence depends on the calculated color depth. 6. Способ по п. 3, характеризующий тем, что на этапах b)-d) обработка ведется построчно, где каждая строка, представляющая набор из нескольких тайлов, обрабатывает параллельно и независимо от остальных строк.6. The method according to claim 3, characterized by the fact that at stages b)-d) processing is carried out line by line, where each line, representing a set of several tiles, is processed in parallel and independently of the other lines. 7. Способ по п. 1, характеризующий тем, что выполнение растеризации полученной картографической информации осуществляется с помощью алгоритма построчного сканирования.7. The method according to claim 1, characterized by the fact that rasterization of the received cartographic information is carried out using a line-by-line scanning algorithm. 8. Способ по п. 1, характеризующий тем, что этап фильтрации растрированной картографической информации включает:8. The method according to claim 1, characterized in that the stage of filtering rasterized cartographic information includes: • применение набора сверточных фильтров к растрированной картографической информации, и/или• applying a set of convolutional filters to rasterized map information, and/or • вычисление площади растрированных объектов в пикселях и удаление объектов, площадь которых не соответствует пороговому значению.• calculation of the area of rasterized objects in pixels and removal of objects whose area does not meet the threshold value. 9. Способ по п. 8, характеризующий тем, что в качестве сверточных фильтров применяются фильтры, используемые для морфологических преобразований.9. The method according to claim 8, characterized by the fact that filters used for morphological transformations are used as convolutional filters. 10. Устройство для генерализации карты, содержащее:10. Device for generalizing the map, containing: по меньшей мере один процессор,at least one processor, по меньшей мере одну память, связанную с процессором и содержащую машиночитаемые инструкции, которые при их выполнении по меньшей мере одним процессором обеспечивают выполнение способа по любому из пп. 1-9.at least one memory associated with the processor and containing machine-readable instructions that, when executed by at least one processor, enable the method of any one of claims to be carried out. 1-9.
RU2022134127A 2022-12-23 Method and device for map generalization RU2803880C1 (en)

Publications (1)

Publication Number Publication Date
RU2803880C1 true RU2803880C1 (en) 2023-09-21

Family

ID=

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2287779C1 (en) * 2005-08-09 2006-11-20 Общество с ограниченной ответственностью "Чарт Пилот" Method of actualization of geographic maps
US7310101B2 (en) * 2004-06-18 2007-12-18 Microsoft Corporation System and method for generating generalized displacement maps from mesostructure geometries
US20100111437A1 (en) * 2006-12-26 2010-05-06 Peking University Founder Group Co., Ltd. Method and System for Generating Boundary in the Process of Rasterizing Vector Graphic as Well as Method for Producing the System
US20100315431A1 (en) * 2009-06-15 2010-12-16 Canon Kabushiki Kaisha Combining overlapping objects
EP2330560B1 (en) * 2009-06-10 2013-01-09 Actions Semiconductor Co., Ltd. Method and device for processing vector graphics
WO2018212826A1 (en) * 2017-05-18 2018-11-22 Google Llc A parallelized pipeline for vector graphics and image processing
US20210200218A1 (en) * 2019-12-26 2021-07-01 International Business Machines Corporation Distrubuted vector-raster fusion
US11392736B2 (en) * 2019-09-06 2022-07-19 BeamUp, Ltd. Structural design systems and methods for automatic extraction of data from 2D floor plans for retention in building information models

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7310101B2 (en) * 2004-06-18 2007-12-18 Microsoft Corporation System and method for generating generalized displacement maps from mesostructure geometries
RU2287779C1 (en) * 2005-08-09 2006-11-20 Общество с ограниченной ответственностью "Чарт Пилот" Method of actualization of geographic maps
US20100111437A1 (en) * 2006-12-26 2010-05-06 Peking University Founder Group Co., Ltd. Method and System for Generating Boundary in the Process of Rasterizing Vector Graphic as Well as Method for Producing the System
EP2330560B1 (en) * 2009-06-10 2013-01-09 Actions Semiconductor Co., Ltd. Method and device for processing vector graphics
US20100315431A1 (en) * 2009-06-15 2010-12-16 Canon Kabushiki Kaisha Combining overlapping objects
WO2018212826A1 (en) * 2017-05-18 2018-11-22 Google Llc A parallelized pipeline for vector graphics and image processing
US11392736B2 (en) * 2019-09-06 2022-07-19 BeamUp, Ltd. Structural design systems and methods for automatic extraction of data from 2D floor plans for retention in building information models
US20210200218A1 (en) * 2019-12-26 2021-07-01 International Business Machines Corporation Distrubuted vector-raster fusion

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Pete Bettinger и др., "Effects of geographic information system vector-raster-vector data conversion on landscape indices", статья опубликована в Canadian Journal of Forest Research, август 1996 г., https://doi.org/10.1139/x26-158, статья доступна по URL: https://andrewsforest.oregonstate.edu/sites/default/files/lter/pubs/pdf/pub2202.pdf. Beat Peter и др., "Using Vector and Raster-Based Techniques in Categorical Map Generalization", опубликовано в Computer Science в 1999 г., статья доступна по URL: https://kartographie.geo.tu-dresden.de/downloads/ica-gen/workshop1999/peter_weibel.pdf. *
Urena C. и др., "Semiautomatic urban map generalization using a raster-vector model", International Review of Geographical Information Science and Technology, 2008 год, статья доступна по URL: https://www.geofocus.org/index.php/geofocus/article/view/145/14. *

Similar Documents

Publication Publication Date Title
US10417821B2 (en) Method of simplifying a geometry model
US20130127848A1 (en) System and Method for Generating 3D Surface Patches from Unconstrained 3D Curves
Strugar Continuous distance-dependent level of detail for rendering heightmaps
TW201616449A (en) System and method for simplifying grids of point clouds
KR20060061754A (en) Stretch-driven mesh parameterization using spectral analysis
KR100935886B1 (en) A method for terrain rendering based on a quadtree using graphics processing unit
CN108053483A (en) A kind of Wei Nuotu three-dimensional grid reconstructing methods accelerated based on GPU
Richter et al. Out‐of‐Core GPU‐based Change Detection in Massive 3 D Point Clouds
WO2014014524A1 (en) Methods and systems for acquiring and ranking image sets
CN107918953B (en) Three-dimensional space-based laser scanning power line point cloud extraction method and device
Zhang et al. Resolving topology ambiguity for multiple-material domains
JP2002024306A (en) Method and device for analysis model data generation and recording medium with analysis model data generation program recorded thereon
Fu et al. Point cloud inpainting on graphs from non-local self-similarity
Bauchet et al. City reconstruction from airborne LiDAR: A computational geometry approach
CN115330940A (en) Three-dimensional reconstruction method, device, equipment and medium
Chaudhuri et al. Scalable computation of distributions from large scale data sets
RU2803880C1 (en) Method and device for map generalization
Balloni et al. Few shot photogrametry: A comparison between nerf and mvs-sfm for the documentation of cultural heritage
CN110751732B (en) Method for converting 2D image into 3D image
US11100707B2 (en) Computer graphics method for terrain rendering
CN112528428A (en) Method and device for displaying physical parameters of engineering structure and computer equipment
US11417073B2 (en) System and method for generating hierarchical level-of-detail measurements for runtime calculation and visualization
CN114092663B (en) Three-dimensional reconstruction method, device, equipment and medium for urban information model building
Li et al. 3D real scene data collection of cultural relics and historical sites based on digital image processing
CN115033972A (en) Method and system for unitizing building main body structures in batches and readable storage medium