syncWith

Синхронизирующая карта с перекрывающейся картой

Описание

пример

mat = syncWith(map,sourcemap) обновления map с данными из другого occupancyMap объект, sourcemap. Местоположения в map это также найдено в sourcemap обновляются. Все другие ячейки в map установлены в map.DefaultValue.

Примеры

свернуть все

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

Загрузите карты в качестве примера. Создайте карту заполнения из ternaryMap.

load exampleMaps.mat
map = occupancyMap(ternaryMap);
show(map)

Создайте меньшую локальную карту.

mapLocal = occupancyMap(ternaryMap(end-200:end,1:200));
show(mapLocal)

Следуйте за путем, запланированным в мировой карте, и обновите локальную карту, когда вы перемещаете свою локальную систему координат.

Задайте местоположения пути и график на карте.

path = [100 100
        100 250
        200 250
        300 250];
show(map)
hold on
plot(path(:,1),path(:,2))
hold off

Создайте цикл для перемещения между точками разрешением карты. Разделите различие между точками разрешением карты, чтобы видеть, как много инкрементных перемещений можно сделать.

for i = 1:length(path)-1
    moveAmount = (path(i+1,:)-path(i,:))/map.Resolution;
    for j = 1:abs(moveAmount(1)+moveAmount(2))
        moveValue = sign(moveAmount).*map.Resolution;
        move(mapLocal,moveValue, ...
            "MoveType","relative","SyncWith",map)
 
        show(mapLocal)
        drawnow limitrate
    end
end

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

свернуть все

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

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

Введенный в R2019b