Чтение и визуализация ЗДЕСЬ HD Live Map Data

HERE HD Live Map[1] (HERE HDLM), разработанная HERE Technologies, представляет собой облачный веб-сервис, позволяющий получать доступ к высокоточным, постоянно обновляемым картографическим данным. Данные состоят из плиточных слоев карты, содержащих такую информацию, как топология и геометрия дорог и полос, атрибуты уровня дороги и атрибуты уровня полосы, а также барьеры, знаки и столбы, обнаруженные вдоль дорог. Эти данные подходят для различных приложений расширенной системы помощи драйверам (ADAS), включая локализацию, генерацию сценариев, навигацию и планирование пути.

Используя функции и объекты Automated Driving Toolbox™, можно сконфигурировать и создать HERE HDLM reader, считать данные карты из веб-сервиса HERE HDLM, а затем визуализировать данные с определенных слоев.

Ввод учетных данных

Прежде чем вы сможете использовать веб-сервис HERE HDLM, необходимо ввести учетные данные, полученные из соглашения с HERE Technologies. Чтобы настроить свои учетные данные, используйте hereHDLMCredentials функция.

hereHDLMCredentials setup

The HERE HD Live Map Credentials dialog box

Введите допустимые Access Key ID и Access Key Secret и нажмите OK. Учетные данные сохраняются для остальной части MATLAB® сеанс на вашей машине. Чтобы сохранить учетные данные для будущих сеансов работы с MATLAB на компьютере, в диалоговом окне выберите Save my credentials between MATLAB sessions. Эти учетные данные сохраняются до удаления.

Сконфигурируйте Reader для поиска определенного каталога

В веб-сервисе HERE HDLM данные карты хранятся в наборе баз данных, называемом catalogs. Каждый каталог примерно соответствует другой географической области, такому как Северная Америка или Западная Европа. Путем создания hereHDLMConfiguration можно сконфигурировать HERE HDLM reader для поиска данных карты только из определенного каталога. Вы также можете задать версию каталога, которую вы хотите искать. Эти строения могут ускорить эффективность считывателя, потому что считыватель не ищет ненужные каталоги для данных карты.

Например, создайте строение для каталога, которая примерно соответствует области Северной Америки.

config = hereHDLMConfiguration('hrn:here:data::olp-here-had:here-hdlm-protobuf-na-2');

Считыватели, созданные с помощью этого строения, ищут данные карты только из указанного каталога.

A map of the world with only North America highlighted. A HERE HD Live Map catalog is overlaid on top of the North America region.

Настройка HERE HDLM Reader опциональна. Если вы не задаете строение, программа чтения по умолчанию выбирает для поиска плитки карты по всем каталогам. Считыватель возвращает данные карты из последней версии каталога, в котором были найдены эти плитки.

Создайте читатель для конкретных фрагментов карты

The hereHDLMReader объект читает HERE HDLM данные из набора мозаик карты. По умолчанию для этих плиток карты задан уровень масштаба 14, который соответствует прямоугольной области около 5-10 квадратных километров.

Two side-by-side map tiles

Вы выбираете плитки карты, из которых можно считать данные при создании hereHDLMReader объект. Идентификаторы мозаики карты можно задать непосредственно. Кроме того, можно задать координаты маршрута и считать данные из мозаик карты этого маршрута.

Загрузите координаты широта-долгота для ведущего маршрута в Северной Америке. Для ссылки отобразите трассу на географической оси.

route = load('geoSequenceNatickMA.mat');
lat = route.latitude;
lon = route.longitude;

geoplot(lat,lon,'bo-')
geobasemap('streets')
title('Driving Route')

A driving route on a map

Создайте hereHDLMReader объект с использованием заданного маршрута движения и строения.

reader = hereHDLMReader(lat,lon,'Configuration',config);
Этот считыватель позволяет вам считать данные карты для плитки, на которой находится этот ведущий маршрут. Данные карты хранятся в наборе слоев, содержащих подробную информацию о различных аспектах карты. Читатель поддерживает чтение данных из слоев карты для модели Road Centerline, HD Lane Model и HD Localization Model.

The North America catalog points to two tiles containing a driving route. The available layers for these tiles are shown expanding from these tiles.

Для получения дополнительной информации о слоях в этих моделях смотрите ЗДЕСЬ HD Live Map Layers.

Чтение данных слоя Map

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

topology = read(reader,'TopologyGeometry')
topology = 

  2×1 TopologyGeometry array with properties:

   Data:
    HereTileId
    IntersectingLinkRefs
    LinksStartingInTile
    NodesInTile
    TileCenterHere2dCoordinate

   Metadata:
    Catalog
    CatalogVersion

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

topology(1)
ans = 

  TopologyGeometry with properties:

   Data:
                    HereTileId: 321884279
          IntersectingLinkRefs: [42×1 struct]
           LinksStartingInTile: [905×1 struct]
                   NodesInTile: [635×1 struct]
    TileCenterHere2dCoordinate: [42.3083 -71.3782]

   Metadata:
                       Catalog: 'hrn:here:data::olp-here-had:here-hdlm-protobuf-na-2'
                CatalogVersion: 3321

Свойства TopologyGeometry объект слоя соответствует допустимым полям HDLM HERE для этого слоя. В этих объектах слоя имена полей слоя изменяются в соответствии с соглашением об именовании MATLAB для свойств объекта. Для получения дополнительной информации об объектах слоя смотрите layerData описание выходного аргумента на read страница с описанием функции.

Визуализация данных слоя карты

Чтобы визуализировать данные слоев карты, используйте plot функция. Постройте график топологии возвращенных слоев карты. На графике показаны контуры, узлы (пересечения и тупики) и ссылки (улицы) внутри мозаик карты. Если ссылка выходит за контуры заданных фрагментов карты, данные слоя включают эту ссылку.

plot(topology)

A road topology plot displaying the nodes and links on the map tiles

Графики map слоя возвращаются на географической оси. Для настройки отображения карты можно использовать свойства географических осей. Дополнительные сведения см. в разделе Свойства GeographicAxes. Наложите маршрут вождения на график.

hold on
geoplot(lat,lon,'bo-','DisplayName','Route')
hold off

The road topology plot with the route overlaid on top of it

См. также

| | | |

Похожие темы


[1] Вам необходимо заключить отдельное соглашение с HERE в порядок получения доступа к сервисам HDLM и получения необходимых учетных данных (access_key_id и access_key_secret) для использования сервиса HERE.

Для просмотра документации необходимо авторизоваться на сайте