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.

setOccupancy

Establecer el valor de ocupación de las ubicaciones

Descripción

La función setOccupancy asigna valores de ocupación de ubicaciones específicas en el mapa de ocupación binario.

setOccupancy(map,xy,occval) asigna valores de ocupación, occval, a la matriz de entrada de coordenadas mundiales, xy, en la cuadrícula de ocupación, map. Cada fila de la matriz, xy, es un punto en el mundo y se representa como un par de coordenadas [x y]. occval es un escalar o una matriz de una sola columna de la misma longitud que xy. Una ubicación ocupada se representa como true (1), y una ubicación libre se representa como false (0).

ejemplo

setOccupancy(map,xy,occval,"local") asigna valores de ocupación, occval, a la matriz de entrada de coordenadas locales, xy, como coordenadas locales.

setOccupancy(map,ij,occval,"grid") asigna valores de ocupación, occval, a la matriz de entrada de índices de cuadrícula, ij, como [rows cols].

validPts = setOccupancy(___) genera un vector de elementos n de valores lógicos que indica si las coordenadas de entrada están dentro de los límites del mapa.

setOccupancy(map,bottomLeft,inputMatrix) asigna una matriz de valores de ocupación especificando la ubicación de la esquina inferior izquierda en coordenadas mundiales.

setOccupancy(map,bottomLeft,inputMatrix,"local") asigna una matriz de valores de ocupación especificando la ubicación de la esquina inferior izquierda en coordenadas locales.

setOccupancy(map,topLeft,inputMatrix,"grid") asigna una matriz de valores de ocupación especificando el índice de la celda superior izquierda en los índices de la cuadrícula y el tamaño de la matriz.

Ejemplos

contraer todo

Cree un mapa vacío de 10 m x 10 m.

map = binaryOccupancyMap(10,10,10);

Establezca la ocupación de las ubicaciones del mundo real y muestre el mapa.

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

setOccupancy(map, [x y], ones(5,1))
figure
show(map)

Figure contains an axes object. The axes object with title Binary Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

Agrande las ubicaciones ocupadas con un radio determinado.

inflate(map, 0.5)
figure
show(map)

Figure contains an axes object. The axes object with title Binary Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

Obtenga las ubicaciones de la cuadrícula a partir de las ubicaciones del mundo real.

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

Establezca las ubicaciones de la cuadrícula como ubicaciones libres.

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

Figure contains an axes object. The axes object with title Binary Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

Argumentos de entrada

contraer todo

Representación de mapa, especificada como un objeto binaryOccupancyMap. Este objeto representa el entorno del robot. El objeto contiene una cuadrícula de matriz con valores binarios que indican los obstáculos como true (1) y las ubicaciones libres como false (0).

Coordenadas del mundo real especificadas como un arreglo de n por 2 de pares [x y], donde n es el número de coordenadas del mundo real.

Tipos de datos: double

Posiciones de cuadrícula especificadas como un arreglo vertical de n por 2 de pares [i j] en formato [rows cols], donde n es el número de posiciones de cuadrícula.

Tipos de datos: double

Valores de ocupación de la misma longitud que xy o ij, devueltos como una matriz vertical de n por 1, donde n es el mismo n en xy o ij. Los valores se dan entre 0 y 1 inclusive.

Valores de ocupación, especificados como una matriz. Los valores se dan entre 0 y 1 inclusive.

Ubicación de la esquina inferior izquierda de la matriz de salida en coordenadas mundiales o locales, especificada como un vector de dos elementos, [xCoord yCoord]. La ubicación está en coordenadas mundiales o locales según la sintaxis.

Tipos de datos: double

Ubicación de la esquina superior izquierda de la cuadrícula, especificada como un vector de dos elementos, [iCoord jCoord].

Tipos de datos: double

Argumentos de salida

contraer todo

Ubicaciones de mapas válidas, devueltas como un vector columna n por 1 con una longitud igual a xy o ij. Las ubicaciones dentro del mapa devuelven un valor de 1. Las ubicaciones fuera de los límites del mapa devuelven un valor de 0.

Capacidades ampliadas

expandir todo

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Historial de versiones

Introducido en R2015a