Contenido principal

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

updateOccupancy

Actualizar probabilidad de ocupación en ubicaciones

Descripción

updateOccupancy(map3D,xyz,obs) integra probabilísticamente los valores de observación, obs, a cada coordenada xyz especificada en el objeto occupancyMap3D, map3D.

ejemplo

Ejemplos

contraer todo

Crea un objeto occupancyMap3D.

map3D = occupancyMap3D;

Cree un plano de tierra y establezca los valores de ocupación en 0.

[xGround,yGround,zGround] = meshgrid(0:100,0:100,0);
xyzGround = [xGround(:) yGround(:) zGround(:)];
occval = 0;
setOccupancy(map3D,xyzGround,occval)

Crea obstáculos en ubicaciones mundiales específicas del mapa.

[xBuilding1,yBuilding1,zBuilding1] = meshgrid(20:30,50:60,0:30);
[xBuilding2,yBuilding2,zBuilding2] = meshgrid(50:60,10:30,0:40);
[xBuilding3,yBuilding3,zBuilding3] = meshgrid(40:60,50:60,0:50);
[xBuilding4,yBuilding4,zBuilding4] = meshgrid(70:80,35:45,0:60);

xyzBuildings = [xBuilding1(:) yBuilding1(:) zBuilding1(:);...
                xBuilding2(:) yBuilding2(:) zBuilding2(:);...
                xBuilding3(:) yBuilding3(:) zBuilding3(:);...
                xBuilding4(:) yBuilding4(:) zBuilding4(:)];

Actualiza los obstáculos con nuevos valores de probabilidad y muestra el mapa.

obs = 0.65;
updateOccupancy(map3D,xyzBuildings,obs)
show(map3D)

Verifique si el archivo de mapa llamado citymap.ot ya existe en el directorio actual y elimínelo antes de crear el archivo de mapa.

if exist("citymap.ot",'file')
    delete("citymap.ot")
end

Exporte el mapa como un archivo octree.

filePath = fullfile(pwd,"citymap.ot");
exportOccupancyMap3D(map3D,filePath)

Argumentos de entrada

contraer todo

Mapa de ocupación 3D, especificado como un objeto occupancyMap3D.

Coordenadas mundiales, especificadas como una matriz n por 3 de [x y z] puntos, donde n es el número de coordenadas mundiales.

Valores de observación de probabilidad, especificados como un escalar numérico o lógico, o como un vector columna n por 1 con el mismo tamaño que xyz.

Los valores de obs pueden ser de 0 a 1, pero si obs es una matriz lógica, la función utiliza los valores de observación predeterminados de 0,7 (true) y 0,4 (false). Si obs es un escalar numérico o lógico, el valor se aplica a todas las coordenadas en xyz.

Capacidades ampliadas

expandir todo

Historial de versiones

Introducido en R2019b