exponenta event banner

OccupancyGrid

Создать сообщение сетки занятости

Описание

OccupancyGrid объект является реализацией nav_msgs/OccupancyGrid вид сообщения в ROS. Объект содержит метаинформацию о сообщении и данные сетки занятости.

Создание binaryOccupancyMap (Robotics System Toolbox) объект из сообщения ROS, используйте readBinaryOccupancyGrid функция.

Создание occupancyMap(Панель инструментов навигации), используйте readOccupancyGrid функция.

Создание

Описание

пример

msg = rosmessage('nav_msgs/OccupancyGrid'); создает пустой OccupancyGrid объект. Чтобы указать информацию о карте и данные, используйте map.Info и msg.Data свойства. Кроме того, можно получить сообщения о заполняемости из сети ROS с помощью rossubscriber.

Свойства

развернуть все

Это свойство доступно только для чтения.

Тип сообщения ROS, возвращаемый в виде символьного вектора.

Типы данных: char

Это свойство доступно только для чтения.

Сообщение заголовка ROS, возвращенное как Header объект. Это сообщение заголовка содержит MessageType, последовательность (Seq), отметка времени (Stamp), и FrameId.

Информация о карте, указанная как MapMetaData объект. Она содержит ширину, высоту, разрешение и начало координат карты.

Данные карты, указанные как вектор. Вектор представляет собой все данные о занятости из каждой ячейки сетки в одном массиве 1-D.

Функции объекта

readOccupancyGridПрочитать сообщение сетки занятости
readBinaryOccupancyGridЧтение двоичной сетки заполняемости
writeBinaryOccupancyGridЗапись значений из таблицы в сообщение ROS
writeOccupancyGridЗапись значений из таблицы в сообщение ROS

Примеры

свернуть все

Загрузить две карты, simpleMap и complexMap, как логические матрицы. Использовать whos для отображения карты.

load exampleMaps.mat
whos *Map*
  Name              Size               Bytes  Class      Attributes

  complexMap       41x52                2132  logical              
  emptyMap         26x27                 702  logical              
  simpleMap        26x27                 702  logical              
  ternaryMap      501x501            2008008  double               

Создание сообщения ROS из simpleMap использование binaryOccupancyMap объект. Напишите OccupancyGrid сообщение с использованием writeBinaryOccupancyGrid.

bogMap = binaryOccupancyMap(double(simpleMap));
mapMsg = rosmessage('nav_msgs/OccupancyGrid');
writeBinaryOccupancyGrid(mapMsg,bogMap)
mapMsg
mapMsg = 
  ROS OccupancyGrid message with properties:

    MessageType: 'nav_msgs/OccupancyGrid'
         Header: [1x1 Header]
           Info: [1x1 MapMetaData]
           Data: [702x1 int8]

  Use showdetails to show the contents of the message

Использовать readBinaryOccupancyGrid преобразование сообщения ROS в binaryOccupancyMap объект. Использовать функцию объекта show для отображения карты.

bogMap2 = readBinaryOccupancyGrid(mapMsg);
show(bogMap2);

Figure contains an axes. The axes with title Binary Occupancy Grid contains an object of type image.

См. также

Объекты

Функции

Представлен в R2019b