setOccupancy

Установите значение заполнения местоположений

Описание

setOccupancy(map,xy,occval) присваивает значения заполнения каждой координате, заданной в xy. occval может быть вектор-столбец тот же размер xy или скаляр, который применяется ко всем координатам.

setOccupancy(map,xy,occval,"local") значения заполнения присвоений, occval, к входному массиву локальных координат, xy, как локальные координаты.

пример

setOccupancy(map,ij,occval,"grid") значения заполнения присвоений, occval, к входному массиву индексов сетки, ij, как [rows cols].

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

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

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

setOccupancy(map,topLeft,inputMatrix,"grid") присваивает матрицу значений заполнения путем определения верхнего левого индекса ячейки в индексах сетки и матричном размере.

Примеры

свернуть все

Создайте 10 m-10 m пустая карта.

map = occupancyMap(10,10,10);

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

x = [1.2; 2.3; 3.4; 4.5; 5.6];
y = [5.0; 4.0; 3.0; 2.0; 1.0];

pvalues = [0.2 0.4 0.6 0.8 1];

updateOccupancy(map,[x y],pvalues)
figure
show(map)

Раздуйте занятые области радиусом 0,5 м. Большие значения заполнения перезаписывают меньшие значения.

inflate(map,0.5)
figure
show(map)

Получите местоположения сетки от мировых местоположений.

ij = world2grid(map,[x y]);

Установите местоположения сетки на занятые местоположения.

setOccupancy(map,ij,ones(5,1),'grid')
figure
show(map)

Входные параметры

свернуть все

Сопоставьте представление в виде occupancyMap объект. Этот объект представляет среду транспортного средства. Объект содержит матричную сетку со значениями, представляющими вероятность заполнения той ячейки. Значения близко к 1 представляют высокую вероятность, что ячейка содержит препятствие. Значения близко к 0 представляют высокую вероятность, что ячейка не занята и свободное препятствие.

Мировые координаты в виде n-by-2 матрица [x y] пары, где n является количеством мировых координат.

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

Положения сетки в виде n-by-2 матрица [i j] пары в [rows cols] формат, где n является количеством положений сетки.

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

Значения заполнения вероятности в виде скаляра или вектор-столбца тот же размер как любой xy или ij. Скалярный вход применяется ко всем координатам в любом xy или ij.

Значения близко к 0 представляют высокую вероятность, что ячейка не занята и свободное препятствие.

Значения заполнения в виде матрицы. Значения даны между 0 и 1 включительно.

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

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

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

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

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

свернуть все

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

Ограничения

Значения заполнения имеют ограниченное разрешение ±0.001. Значения хранятся как int16 использование представления логарифмических разногласий. Этот тип данных ограничивает разрешение, но сохраняет память при хранении больших карт в MATLAB®. При вызове setOccupancy и затем getOccupancy, возвращенное значение не может равняться значению, которое вы устанавливаете. Для получения дополнительной информации смотрите раздел представлений логарифмических разногласий в Сетках Заполнения.

Введенный в R2019b