exponenta event banner

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 на 10 метров.

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)

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

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

inflate(map,0.5)
figure
show(map)

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

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

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

Задайте значения заполняемости для расположений сетки.

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

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

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

свернуть все

Представление карты, указанное как 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