exponenta event banner

getOccupancy

Получение значения заполняемости местоположений

Описание

пример

occVal = getOccupancy(map,xy) возвращает массив значений занятости в xy местоположения в мировой рамке. Неизвестные местоположения, в том числе за пределами карты, возврат map.DefaultValue.

пример

occVal = getOccupancy(map,xy,"local") возвращает массив значений занятости в xy местоположения в локальной рамке.

пример

occVal = getOccupancy(map,ij,"grid") определяет ij индексы ячеек сетки вместо xy местоположения.

[occVal,validPts] = getOccupancy(___) дополнительно выводит n-элементный вектор логических значений, указывающий, находятся ли входные координаты в пределах карты.

occMatrix = getOccupancy(map) возвращает все значения занятости на карте в виде матрицы.

occMatrix = getOccupancy(map,bottomLeft,matSize) возвращает матрицу значений заполняемости, указывая местоположение нижнего левого угла в мировых координатах и размер матрицы в метрах.

occMatrix = getOccupancy(map,bottomLeft,matSize,"local") возвращает матрицу значений заполняемости путем указания расположения нижнего левого угла в локальных координатах и размера матрицы в метрах.

occMatrix = getOccupancy(map,topLeft,matSize,"grid") возвращает матрицу значений заполняемости путем указания левого верхнего индекса ячейки в индексах сетки и размера матрицы.

Примеры

свернуть все

Создайте пустую двоичную сетку занятости.

map = binaryOccupancyMap(10,10,20);

Входная поза транспортного средства, диапазоны, углы и максимальный диапазон лазерного сканирования.

pose = [5,5,0];
ranges = 3*ones(100,1);
angles = linspace(-pi/2,pi/2,100);
maxrange = 20;

Создать lidarScan с указанными диапазонами и углами.

scan = lidarScan(ranges,angles);

Вставьте данные лазерного сканирования в карту занятости.

insertRay(map,pose,scan,maxrange);

Отображение карты для просмотра результатов вставки лазерного сканирования.

show(map)

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

Проверьте наличие места непосредственно перед транспортным средством.

getOccupancy(map,[8 5])
ans = logical
   1

Доступ к значениям занятости и проверка их статуса занятости на основе занятых и свободных пороговых значений occupancyMap объект.

Создайте матрицу и заполните ее значениями. Эта матрица используется для создания карты занятости.

p = zeros(20,20);
p(11:20,11:20) = ones(10,10);
map = binaryOccupancyMap(p,10);
show(map)

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

Получение заполняемости различных местоположений и проверка их статусов заполняемости. Состояние занятости возвращает 0 для свободного пространства и 1 для занятого пространства. Неизвестные значения возвращают -1.

pocc = getOccupancy(map,[1.5 1]);
occupied = checkOccupancy(map,[1.5 1]);
pocc2 = getOccupancy(map,[5 5],'grid');

Входные аргументы

свернуть все

Представление карты, указанное как binaryOccupancyMap объект. Этот объект представляет среду транспортного средства.

Координаты на карте, заданные как матрица n-by-2 [x y] пар, где n - число координат. Координаты могут быть мировыми или локальными в зависимости от синтаксиса.

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

Расположение сетки на карте, указанное как матрица n-by-2 [i j] пар, где n - количество местоположений. Расположения сетки указаны как [row col].

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

Расположение нижнего левого угла выходной матрицы в мировых или локальных координатах, определяемое как двухэлементный вектор, [xCoord yCoord]. Местоположение находится в мировых или локальных координатах на основе синтаксиса.

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

Размер выходной матрицы, определяемый как двухэлементный вектор, [xLength yLength] или [gridRow gridCol]. Размер соответствует мировым координатам, локальным координатам или индексам сетки на основе синтаксиса.

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

Расположение верхнего левого угла сетки, заданного как двухэлементный вектор, [iCoord jCoord].

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

Выходные аргументы

свернуть все

Значения занятости, возвращаемые в виде вектора столбца n-by-1, равного по длине xy или ij. Значения заполняемости могут быть свободными от препятствий (0) или занятыми (1).

Допустимые расположения карт, возвращаемые в виде вектора столбца n-by-1, равного по длине xy или ij. Расположение внутри карты возвращает значение 1. Местоположения за пределами границ карты возвращают значение 0.

Матрица значений занятости, возвращаемая как матрица с размером, равным matSize или размер map.

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.
Представлен в R2015a