Main Content

inflate

Agrandar cada ubicación ocupada

Descripción

ejemplo

inflate(map,radius) agranda cada ubicación ocupada en el map por el radio indicado en metros. El radius se redondea al equivalente de la celda más cercana según la resolución del mapa. Cada celda dentro del radio se establece en true (1).

Nota

inflate no agranda las ubicaciones más allá de los límites del mapa.

inflate(map,radius,"grid") agranda cada ubicación ocupada por el radio indicado en número de celdas.

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)

Agrande las ubicaciones ocupadas con un radio determinado.

inflate(map, 0.5)
figure
show(map)

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)

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).

Dimensión que define cuánto se deben agrandar las ubicaciones ocupadas, especificada como un escalar. De forma predeterminada, las unidades de radius son metros y cada celda se agranda en ceil(map.Resolution*radius) celdas.

Si especifica el argumento opcional, "grid", la unidad de radius son celdas de la cuadrícula. Por ejemplo, inflate(map,10,"grid") agranda las ubicaciones ocupadas en 10 celdas de cuadrícula.

Tipos de datos: double

Capacidades ampliadas

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

Historial de versiones

Introducido en R2015a