Способ и сервер для кластеризации областей карты цифрового изображения

Иллюстрации

Показать все

Изобретение относится к области обработки изображений. Технический результат – обеспечение снижения объема памяти и вычислительной мощности, требуемых при кластеризации точек интереса на карте. Способ кластеризации областей карты из картографических данных включает: сегментирование сервером цифрового изображения на области карты, каждая из которых обладает соответствующей позицией на цифровом изображении, каждая позиция определяется первой координатой и второй координатой, первая и вторая координата является первой и второй строками кодов Грея соответственно; вычисление уникальной последовательности битов для каждой области карты на основе первой и второй координаты; определение сервером кластера первого поколения областей карты на основе соответствующей уникальной последовательности битов каждой области карты и заранее определенного значения размера; и определение сервером кластера второго поколения для областей карты на основе соответствующей уникальной последовательности битов для каждой области карты в кластере первого поколения, заранее определенного значения размера и заранее определенного значения смещения. 2 н. и 22 з.п. ф-лы, 11 ил., 2 табл.

Реферат

Область техники

[01] Описанные здесь способы и системы относятся к обработке цифровых изображений.

Уровень техники

[02] Пользователи геоинформационных сервисов могут быть заинтересованы в просмотре популярных точек интереса (POI). Например, некоторые пользователи могут хотеть увидеть на карте конкретный памятник и/или реку и/или статую. Тем не менее, в некоторых случаях, другие пользователи могут хотеть просмотреть на карте области интереса (AOI), в которых сгруппировано несколько различных точек интереса. Действительно, зная где расположены все области интереса на карте, пользователь может получить более наглядную информацию о том, какую область на карте стоит посетить, чтобы увидеть максимальное количество точек интереса за ограниченный период времени. Следовательно, в геоинформационных сервисах существует несколько известных задач, связанных с кластеризацией картографических данных, например задача кластеризации точек интереса в области интереса.

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

[04] Для решения этой проблемы обычно к карте применяется новая сетка с 50% смещением по отношению к оригинальной сетке, создаются новые кластеры, которые далее сравниваются с кластерами, связанными с оригинальной сеткой. Подобный подход приводит к необходимости сохранять данные в отношении первой сетки, а также координаты каждой области карты и данные в отношении второй сетки, что в обычном случае требует в два раза больше памяти и нагружает вычислительные мощности компьютера - из-за необходимости обрабатывать две сетки.

Раскрытие

[05] Задачей настоящего технического решения является устранение по меньшей мере некоторых недостатков, присущих известному уровню техники.

[06] Варианты осуществления настоящего технического решения были разработаны на основе желания изобретателей снизить объем памяти и вычислительные мощности компьютера, которые необходимы для обработки картографических сеток на текущем уровне техники. Без установления каких-либо ограничений или рамок конкретной теории, настоящее техническое решение, по меньшей мере в некоторых вариантах своего осуществления, позволяет кластеризовать точки интереса на карте без вычисления и/или обработки и/или создания нескольких сеток для определения областей интереса на карте для пользователя, который желает просмотреть области интереса.

[07] В некоторых вариантах осуществления настоящего технического решения, предлагается способ кластеризации областей на карте, в котором картографические данные представляют собой цифровое изображение. Способ выполняется на сервере и включает в себя сегментирование цифрового изображения на картографические области, каждая из которых обладает конкретной позицией на цифровом изображении. Каждая позиция определяется первой координатой и второй координатой, причем первая и вторая координата являются соответственно первой и второй строкой кодов Грея. Способ также включает в себя вычисление сервером уникальной последовательности битов для каждой области карты на основе первой и второй координаты соответствующей позиции в каждой области карты. Вычисление включает в себя конкатенацию через одного сервером битов в первой строке кодов Грея каждой области карты с битами во второй строке кодов Грея каждой области карты. Способ также включает в себя определение сервером кластера первого поколения для областей карты на основе соответствующей уникальной последовательности битов для каждой области карты и заранее определенного значения размера. Заранее определенное значение размера указывает на число областей карты, которое будет включено в кластер первого поколения. Определение кластера первого поколения включает в себя применение сервером первой маски к каждой уникальной последовательности битов. Первая маска основывается на заранее определенном значении размера. Определение кластера первого поколения также включает в себя идентификацию сервером уникальной последовательности битов для каждой области карты, которая будет включена в кластер первого поколения. Способ также включает в себя определение сервером кластера второго поколения для областей карты на основе соответствующей уникальной последовательности битов для каждой области карты в кластере первого поколения заранее определенного значения размера и заранее определенного значения смещения. Определение кластера второго поколения включает в себя применение сервером второй маски к уникальной последовательности битов из каждой области карты в кластере первого поколения. Вторая маска основывается на заранее определенном значении размера и заранее определенном значении смещения. Применение второй маски включает в себя, для каждой области карты в кластере первого поколения: (i) деконкатенацию через одного сервером уникальной последовательности битов на соответствующие первую и вторую координаты; (ii) перевод сервером первой координаты и второй координаты в первую и вторую строку двоичных значений соответственно; (iii) вычисление сервером первой модифицированной и второй модифицированной строки двоичных значений на основе первой и второй строк двоичных значений и заранее определенного значения размера и заранее определенного значения смещения; (iv) перевод сервером первой модифицированной строки и второй модифицированной строки двоичных значений в первую модифицированную строку и вторую модифицированную строку кодов Грея соответственно; (v) конкатенацию через одного сервером битов в первой модифицированной строке кодов Грея и битов во второй модифицированной строке кодов Грея. Конкатенация через одного включает в себя идентификацию сервером уникальной последовательности битов, связанных с соответствующими областями карты, которые будут включены в кластер второго поколения.

[08] В некоторых вариантах осуществления, способ дополнительно включает в себя определение сервером количества битов в первой и второй строке битов на основе числа областей карты в цифровом изображении.

[09] В некоторых вариантах осуществления способа, число областей на карте является четным числом.

[10] В некоторых вариантах осуществления способа, число областей на карте, которые будут включены в кластер первого поколения, является четным числом.

[11] В некоторых вариантах осуществления способа, применение первой маски включает в себя идентификацию сервером постоянной последовательности битов и переменной последовательности битов в уникальной последовательности битов каждой области карты на основе заранее определенного значения размера. Применение первой маски также включает в себя идентификацию сервером уникальной последовательности битов для каждой области карты, которая будет включена в кластер первого поколения. Уникальные последовательности битов в областях карты, которые будут включены в кластер первого поколения, обладают одинаковыми постоянными последовательностями битов и различными переменными последовательностями битов.

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

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

[14] В некоторых вариантах осуществления способа, он дополнительно включает в себя: получение сервером первого набора данных и второго набора данных. Первый набор данных связан с первой точкой интереса и включает в себя картографические координаты первой точки интереса. Второй набор данных связан со второй точкой интереса и включает в себя картографические координаты второй точки интереса. Способ дополнительно включает в себя, если картографические координаты первой точки интереса и второй точки интереса включены в позицию любой области карты в кластере первого поколения, связывание первой точки интереса и второй точки интереса с общей областью интереса.

[15] В некоторых вариантах осуществления, способ дополнительно включает в себя, если картографические координаты первой точки интереса включены в позицию любой области карты в кластере первого поколения, и если картографические координаты второй точки интереса включены в позицию любой области карты в соответствующем кластере второго поколения, связывание первой точки интереса и второй точки интереса с общей областью интереса.

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

[17] В некоторых вариантах осуществления способа, сегментирование цифрового изображения на области карты включает в себя выполнение сервером процедуры сегментирования и процедуры идентификации позиции.

[18] В некоторых вариантах осуществления способа, кластер первого поколения и кластер второго поколения включают в себя одинаковое число областей карты.

[19] В некоторых вариантах осуществления настоящего технического решения, предлагается сервер для кластеризации областей на карте, в котором картографические данные представляют собой цифровое изображение. Сервер выполнен с возможностью осуществлять сегментирование цифрового изображения на картографические области, каждая из которых обладает конкретной позицией на цифровом изображении. Каждая позиция определяется первой координатой и второй координатой. Первая и вторая координата являются соответственно первой и второй строкой кодов Грея. Сервер выполнен с возможностью осуществлять вычисление уникальной последовательности битов для каждой области карты на основе первой и второй координаты соответствующей позиции в каждой области карты. Для вычисления уникальной последовательности битов для каждой области карты, сервер выполнен с возможностью осуществлять конкатенацию через одного битов в первой строке кодов Грея каждой области карты с битами во второй строке кодов Грея каждой области карты. Сервер выполнен с возможностью осуществлять определение сервером кластера первого поколения для областей карты на основе соответствующей уникальной последовательности битов для каждой области карты и заранее определенного значения размера. Заранее определенное значение размера указывает на число областей карты, которое будет включено в кластер первого поколения. Для определения кластера первой генерации сервер выполнен с возможностью осуществлять применение первой маски для каждой уникальной последовательности битов. Первая маска основывается на заранее определенном значении размера. Для определения кластера первого поколения сервер выполнен с возможностью осуществлять идентификацию уникальной последовательности битов для каждой области карты, которая будет включена в кластер первого поколения. Сервер выполнен с возможностью осуществлять определение сервером кластера второго поколения для областей карты на основе соответствующей уникальной последовательности битов для каждой области карты в кластере первого поколения, заранее определенного значения размера и заранее определенного значения смещения. Для определения кластера второго поколения сервер выполнен с возможностью осуществлять применение второй маски к уникальной последовательности битов из каждой области карты в кластере первого поколения. Вторая маска основывается на заранее определенном значении размера и заранее определенном значении смещения Для применения второй маски сервер выполнен с возможностью осуществлять, для каждой области карты в кластере первого поколения: (i) деконкатенацию через одного уникальной последовательности битов на соответствующие первую и вторую координаты; (ii) перевод первой координаты и второй координаты в первую и вторую строку двоичных значений соответственно; (iii) вычисление первой модифицированной и второй модифицированной строки двоичных значений на основе первой и второй строк двоичных значений и заранее определенного значения размера и заранее определенного значения смещения; (iv) перевод первой модифицированной строки и второй модифицированной строки двоичных значений в первую модифицированную строку и вторую модифицированную строку кодов Грея соответственно; (v) конкатенацию через одного битов в первой модифицированной строке кодов Грея и битов во второй модифицированной строке кодов Грея. Для конкатенации через одного сервер выполнен с возможностью осуществлять идентификацию уникальной последовательности битов, связанных с соответствующими областями карты, которые будут включены в кластер второго поколения.

[20] В некоторых вариантах осуществления, сервер дополнительно выполнен с возможностью осуществлять определение количества битов в первой и второй строке битов на основе числа областей карты в цифровом изображении.

[21] В некоторых вариантах осуществления сервера, число областей на карте является четным числом.

[22] В некоторых вариантах осуществления сервера, число областей на карте, которые будут включены в кластер первого поколения, является четным числом.

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

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

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

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

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

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

[29] В некоторых вариантах осуществления сервера, для сегментирования цифрового изображения на области карты сервер выполнен с возможностью осуществлять выполнение процедуры сегментирования и процедуры идентификации позиции.

[30] В некоторых вариантах осуществления сервера, кластер первого поколения и кластер второго поколения включают в себя одинаковое число областей карты.

[31] В контексте настоящего описания, если конкретно не указано иное, «сервер» подразумевает под собой компьютерную программу, работающую на соответствующем оборудовании, которая способна получать запросы (например, от клиентских устройств) по сети и выполнять эти запросы или инициировать выполнение этих запросов. Оборудование может представлять собой один физический компьютер или одну физическую компьютерную систему, но ни то, ни другое не является обязательным для настоящего технического решения. В контексте настоящего технического решения использование выражения «сервер» не означает, что каждая задача (например, полученные команды или запросы) или какая-либо конкретная задача будет получена, выполнена или инициирована к выполнению одним и тем же сервером (то есть одним и тем же программным обеспечением и/или аппаратным обеспечением); это означает, что любое количество элементов программного обеспечения или аппаратных устройств может быть вовлечено в прием/передачу, выполнение или инициирование выполнения любого запроса или последствия любого запроса, связанного с клиентским устройством, и все это программное и аппаратное обеспечение может быть одним сервером или несколькими серверами, оба варианта включены в выражение «по меньшей мере один сервер».

[32] В контексте настоящего описания, если конкретно не указано иное, "клиентское устройство" подразумевает под собой аппаратное обеспечение, способное работать с программным обеспечением, подходящим к решению соответствующей задачи. Примерами клиентских устройств, среди прочего, являются персональные компьютеры (настольные компьютеры, ноутбуки и т.д.), смартфоны и планшеты. Следует иметь в виду, что устройство, ведущее себя как клиентское устройство в настоящем контексте, может вести себя как сервер по отношению к другим клиентским устройствам. Использование выражения «клиентское устройство» не исключает возможности использования множества клиентских устройств для получения/отправки, выполнения или инициирования выполнения любой задачи или запроса, или же последствий любой задачи или запроса, или же этапов любого вышеописанного способа.

[33] В контексте настоящего описания, если конкретно не указано иное, термин «база данных» подразумевает под собой любой структурированный набор данных, не зависящий от конкретной структуры, программного обеспечения по управлению базой данных, аппаратного обеспечения компьютера, на котором данные хранятся, используются или иным образом оказываются доступны для использования. База данных может находиться на том же оборудовании, выполняющем процесс, который сохраняет или использует информацию, хранящуюся в базе данных, или же она может находиться на отдельном оборудовании, например выделенном сервере или множестве серверов.

[34] В контексте настоящего описания, если конкретно не указано иное, термин «компонент» подразумевает под собой программное обеспечение (соответствующее конкретному аппаратному контексту), которое является необходимым и достаточным для выполнения конкретной(ых) указанной(ых) функции(й).

[35] В контексте настоящего описания, если конкретно не указано иное, термин «используемый компьютером носитель компьютерной информации» подразумевает под собой носитель абсолютно любого типа и характера, включая ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB флеш-накопители, твердотельные накопители, накопители на магнитной ленте и т.д.

[36] В контексте настоящего описания, если конкретно не указано иное, термин «интерактивный» подразумевает под собой, что нечто (или по меньшей мере его часть) может реагировать на пользовательский ввод.

[37] В контексте настоящего описания, если четко не указано иное, «указание» информационного элемента может представлять собой сам информационный элемент или указатель, отсылку, ссылку или другой косвенный способ, позволяющий получателю указания найти сеть, память, базу данных или другой машиночитаемый носитель, из которого может быть извлечен информационный элемент. Например, указание на файл может включать в себя сам файл (т.е. его содержимое), или же оно может являться уникальным дескриптором файла, идентифицирующим файл по отношению к конкретной файловой системе, или каким-то другими средствами передавать получателю указание на сетевую папку, адрес памяти, таблицу в базе данных или другое место, в котором можно получить доступ к файлу. Как будет понятно специалистам в данной области техники, степень точности, необходимая для такого указания, зависит от степени первичного понимания того, как должна быть интерпретирована информация, которой обмениваются получатель и отправитель указателя. Например, если до установления связи между отправителем и получателем понятно, что указатель информационного элемента принимает вид ключа базы данных для записи в конкретной таблице заранее установленной базы данных, содержащей информационный элемент, то передача ключа базы данных - это все, что необходимо для эффективной передачи информационного элемента получателю, несмотря на то, что сам по себе информационный элемент не передавался между отправителем и получателем указания. Каждый вариант осуществления настоящего технического решения преследует по меньшей мере одну из вышеупомянутых целей и/или объектов. Следует иметь в виду, что некоторые объекты настоящего технического решения, полученные в результате попыток достичь вышеупомянутой цели, могут удовлетворять и другим целям, отдельно не указанным здесь.

[38] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящего технического решения станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.

Краткое описание чертежей

[39] Для лучшего понимания настоящего технического решения, а также других его аспектов и характерных черт сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:

[40] на Фиг. 1 представлена принципиальная схема системы для кластеризации областей карты из картографических данных, выполненной в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем.

[41] На Фиг. 2 представлена принципиальная схема обработки картографических данных сервером, показанным на Фиг. 1.

[42] На Фиг. 3 представлено первое цифровое изображение, а также принципиальная схема обработки первого цифрового изображения, в соответствии с некоторыми неограничивающими вариантами осуществления настоящего технического решения, модулем сегментирования, показанном на Фиг. 1.

[43] На Фиг. 4 представлено второе цифровое изображение, а также принципиальная схема обработки второго цифрового изображения, в соответствии с некоторыми неограничивающими вариантами осуществления настоящего технического решения, модулем сегментирования, показанном на Фиг. 1.

[44] На Фиг. 5 представлены данные об областях карты в пакете данных об областях карты, показанном на Фиг. 2, которые связывают каждую область карты второго цифрового изображения с соответствующей уникальной последовательностью битов.

[45] На Фиг. 6 представлены данные кластера первого поколения в пакете данных кластера первого поколения, показанного на Фиг. 2, которые связывают каждую область карты второго цифрового изображения с соответствующей уникальной последовательностью битов, а также каждую уникальную последовательность битов с одним из кластеров первого поколения.

[46] На Фиг. 7 представлено визуальное представление кластеров первого поколения и соответствующих кластеров второго поколения второго изображения, показанного на Фиг. 4.

[47] На Фиг. 8 представлены данные кластера второго поколения в пакете данных кластера второго поколения, показанного на Фиг. 2, которые связывают каждую область карты второго цифрового изображения с соответствующей уникальной последовательностью битов, а также каждую уникальную последовательность битов с одним из кластеров первого поколения и соответствующим кластером второго поколения.

[48] На Фиг. 9 представлена первая точка интереса, вторая точка интереса и общая область на втором цифровом изображении, показанном на Фиг. 4, в соответствии с некоторыми неограничивающими вариантами осуществления настоящего технического решения.

[49] На Фиг. 10 представлена первая точка интереса, вторая точка интереса и общая область на втором цифровом изображении, показанном на Фиг. 4, в соответствии с некоторыми другими неограничивающими вариантами осуществления настоящего технического решения.

[50] На Фиг. 11 представлена блок-схема способа кластеризации областей карты из картографических данных, в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем.

Осуществление

[51] На Фиг. 1 представлена принципиальная схема системы 100, которая функционально соединена через сеть 110, как показано в некоторых вариантах осуществления настоящего технического решения. Важно иметь в виду, что нижеследующее описание системы 100 представляет собой описание иллюстративных вариантов осуществления настоящего технического решения. Таким образом, следующее описание должно рассматриваться только как описание иллюстративного варианта осуществления настоящего технического решения. Это описание не предназначено для определения объема или установления границ настоящего технического решения. Некоторые полезные примеры модификаций системы 100 также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящего технического решения. Эти модификации не представляют собой исчерпывающий список, и специалистам в данной области техники будет понятно, что возможны и другие модификации. Кроме того, те случаи, в которых не были представлены примеры модификаций, не должны интерпретироваться как то, что никакие модификации невозможны, и/или что то, что было описано, является единственным вариантом осуществления этого элемента настоящего технического решения. Как будет понятно специалисту в данной области техники, это, скорее всего, не так. Кроме того, следует иметь в виду, что система 100 представляет собой в некоторых конкретных проявлениях достаточно простой вариант осуществления настоящего технического решения, и в подобных случаях представлен здесь с целью облегчения понимания. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящего технического решения будут обладать гораздо большей сложностью.

[52] В некоторых вариантах осуществления настоящего технического решения, система 100 может включать в себя клиентское устройство 102, связанное с пользователем 104, сервер 106, базу 108 данных и картографические сервисы 112, все вышеперечисленное будет далее описано более подробно с использованием некоторых примерных вариантов осуществления настоящего технического решения. Как представлено на Фиг. 1, клиентское устройство 102, сервер 106 и картографические сервисы 112 функционально соединены через сеть 110. В других вариантах осуществления настоящего технического решения, картографические сервисы 112 могут быть соединены напрямую с сервером 106, не выходя за границы настоящего технического решения.

[53] Реализация соединения через сеть 110 никак конкретно не ограничена и будет зависеть от того, какие устройства подключены к сети 110. В качестве неограничивающего примера, соединение сервера 106 с сетью 110 может быть выполнено с помощью проводного соединения (например, соединение на основе сети Ethernet). В то же время другие устройства могут быть соединены другим способом. В тех примерах, где клиентское устройство 102 представляет собой беспроводное устройство связи (например, смартфон), соединение представляет собой беспроводную сеть передачи данных (например, среди прочего, линию передачи данных 3G, линию передачи данных 4G, беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п.). В тех примерах, где клиентское устройство 102 представляет собой стационарный компьютер, линия передачи данных может быть как беспроводной так и проводной (соединение на основе сети Ethernet).

[54] Как было упомянуто ранее, система 100 может включать в себя сервер 106. Сервер 106 может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящего технического решения, сервер 106 может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™. Излишне говорить, что сервер 106 может представлять собой любое другое подходящее аппаратное и/или прикладное программное, и/или системное программное обеспечение или их комбинацию. В представленном варианте осуществления настоящего технического решения, не ограничивающем его объем, сервер 106 является одиночным сервером. В других вариантах осуществления настоящего технического решения, не ограничивающих его объем, функциональность сервера 106 может быть разделена, и может выполняться с помощью нескольких серверов. В некоторых вариантах осуществления настоящего технического решения, сервер 106 может быть выполнен с возможностью сохранять машиночитаемые инструкции, и их использование упрощает достижение и/или выполнение некоторых или всех функциональностей настоящего технического решения.

[55] Варианты осуществления сервера 106 хорошо известны в данной области техники. Таким образом, достаточно отметить, что сервер 106 может включать в себя, среди прочего, интерфейс сетевой связи (например, модем, сетевую карту и тому подобное) для двусторонней связи по сети 110; и процессор (не изображен), соединенный с интерфейсом сетевой связи, который выполнен с возможностью выполнять различные процедуры, включая те, что описаны ниже. С этой целью, процессор может сохранять и/или обладать доступом к машиночитаемым инструкциям, которые упоминались ранее.

[56] Как показано на Фиг. 1, база 108 данных функционально соединена с сервером 106, но, в альтернативных вариантах осуществления настоящего технического решения, база 108 данных может быть функционально соединена с сервером 106 через сеть 110, не выходя за пределы настоящего технического решения. Несмотря на то что база 108 данных представлена здесь схематически как одиночный элемент, подразумевается, что база 108 данных может быть реализована в распределенном виде, например, база 108 данных может обладать различными компонентами, каждый компонент выполнен под конкретный тип извлечения или хранения. База 108 данных может представлять собой любой структурированный набор данных, не зависящий от конкретной структуры или аппаратного обеспечения компьютера, на котором данные хранятся, используются или иным образом становятся доступны для использования. База 108 данных может находиться на том же оборудовании, что выполняет процесс, который сохраняет или использует информацию, хранящуюся в базе 108 данных, или же она может находиться на отдельном оборудовании, например сервере 106. В общем случае, база 108 данных может получать данные от сервера 106 для их сохранения и может предоставлять сохраненные данные серверу 106 для их использования.

[57] Как показано на Фиг. 1, клиентское устройство 102 связано с пользователем 104. Тем не менее клиентское устройство 102, которое связано с пользователем 104, не обязательно требует от пользователя 104 входа в систему. Варианты аппаратного осуществления клиентского устройства 102 никак конкретно не ограничены. Клиентское устройство 102 может, например, без установления ограничений, представлять собой настольный компьютер, ноутбук, смартфон (например, Apple iPhone™ or a Samsung Galaxy S5™), персональный цифровой органайзер (PDA) или другое устройство, включающее в себя функциональность вычисления и возможности передачи данных. Клиентское устройство 102 может включать в себя, среди прочего, внутренние аппаратные компоненты, включая один или несколько одно - или мультиядерных процессоров, которые коллективно представлены здесь как процессор (не показан), ОЗУ (не показано), сетевой интерфейс (не показано) для коммуникативной связи и сетью 110.

[58] В некоторых вариантах осуществления настоящего технического решения, клиентское устройство 102 может быть выполнено с возможностью выполнять браузерное приложение (не показано). В общем случае, задачей браузерного приложения является предоставление пользователю 104, связанному с клиентским устройством 102, доступа к одному или нескольким веб-ресурсам. Реализация браузерного приложения никак конкретно не ограничена. Например, браузерное приложение 104 может быть реализовано как Яндекс™ браузер. В неограничивающих вариантах осуществления настоящего технического решения, один или несколько ресурсов, к которым пользователь 104 получает доступ, могут быть расположены на сервере 106. Например, в ответ на то, что пользователь 104 желает получить доступ к одному или нескольким ресурсам, расположенным на сервере 106, через браузерное приложение, клиентское устройство 102 может быть выполнено с возможностью передавать запрос 150 серверу 106 через сеть 110. В ответ на получение запроса 150, сервер 106 может быть выполнен с возможностью создавать и передавать пакет 160 клиентских данных клиентскому устройству 102 через сеть 110. Запрос 150 и пакет 160 клиентских данных, а также их содержимое, будут подробнее описаны далее. В других вариантах осуществления настоящего технического решения, один или несколько ресурсов, к которым пользователь 104 получает доступ, могут локально храниться на клиентском устройстве 102.

[59] Система 100 может включать в себя картографические сервисы 112. Как было упомянуто ранее, картографические сервисы могут быть функционально соединены с