inflate

Раздуйте каждое занятое местоположение сетки

Описание

пример

inflate(map,radius) раздувает каждое занятое положение заданного map radius, заданный в метрах. Занятые значения местоположения основаны на map.OccupiedThreshold свойство. radius окружен к самой близкой эквивалентной ячейке на основе разрешения карты. Значения изменяются с помощью полутоновой инфляции, чтобы раздуть более высокие значения вероятности через сетку. Эта инфляция увеличивает размер занятых местоположений в карте.

inflate(map,gridradius,'grid') раздувает каждое занятое положение gridradius, заданный в количестве ячеек.

Примеры

свернуть все

Создайте 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 представляют высокую вероятность, что ячейка не занята и свободное препятствие.

Размерность, которая задает тем, сколько раздуть занятые местоположения, заданные как скаляр в метрах. radius окружен к самому близкому эквивалентному значению ячейки.

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

Количество ячеек, которыми можно раздуть занятые местоположения, заданные как положительный целочисленный скаляр.

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

Больше о

свернуть все

Полутоновая инфляция

В полутоновой инфляции, strel функция создает круговой элемент структурирования с помощью радиуса инфляции. Полутоновая инфляция A (x, y) B (x, y) задана как:

(AB) (x, y) = макс. {A (xx ′, y’y ′) +B (x', y') | (x ′, y ′) ∊ DB}.

DB является областью значений вероятности в элементе структурирования B. A (x, y) принят, чтобы быть + ∞ вне области сетки.

Полутоновая инфляция действует как локальный максимальный оператор и находит самые высокие значения вероятности для соседних ячеек. inflate метод использует это определение, чтобы раздуть более высокие значения вероятности в сетке. Эта инфляция увеличивает размер любых занятых местоположений и создает буферную зону для транспортных средств, чтобы использовать, как они перешли.

Введенный в R2019b