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

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

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

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

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

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

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

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

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

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

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

свернуть все

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

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

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

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.
Введенный в R2015a