Main Content

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

checkOccupancy

Consultar si las localidades están libres u ocupadas

Desde R2019b

Descripción

ejemplo

iOccval = checkOccupancy(map,xy) devuelve un arreglo de valores de ocupación en las ubicaciones xy . Cada fila es una ubicación xy separada en la cuadrícula. Los valores de ocupación pueden estar libres de obstáculos (0), ocupados (1) o desconocidos (–1) según el OccupiedThreshold y FreeThreshold propiedades del objeto map .

ejemplo

iOccval = checkOccupancy(map,xy,'local') devuelve un arreglo de valores de ocupación en las ubicaciones xy en el marco local. El marco local se basa en la propiedad LocalOriginInWorld de map.

ejemplo

iOccval = checkOccupancy(map,ij,'grid') especifica ij índices de celdas de cuadrícula en lugar de ubicaciones de xy .

[iOccval,validPts] = checkOccupancy(___) también genera un vector de elementos n de valores lógicos que indican si las coordenadas de entrada están dentro de los límites del mapa.

occMatrix = checkOccupancy(map) devuelve una matriz que contiene el estado de ocupación de cada ubicación. Las celdas libres de obstáculos devuelven 0, las celdas ocupadas devuelven 1. Ubicaciones desconocidas, incluso fuera del mapa, devuelven -1.

occMatrix = checkOccupancy(map,bottomLeft,matSize) devuelve una matriz de valores de ocupación especificando la ubicación de la esquina inferior izquierda en coordenadas mundiales y el tamaño de la matriz en metros.

occMatrix = checkOccupancy(map,bottomLeft,matSize,'local') devuelve una matriz de valores de ocupación especificando la ubicación de la esquina inferior izquierda en coordenadas locales y el tamaño de la matriz en metros.

occMatrix = checkOccupancy(map,topLeft,matSize,'grid') devuelve una matriz de valores de ocupación especificando la ubicación de la esquina superior izquierda en las coordenadas de la cuadrícula y el tamaño de la cuadrícula.

Ejemplos

contraer todo

Acceda a los valores de ocupación y verifique su estado de ocupación en función de los umbrales ocupado y libre del objeto occupancyMap .

Cree una matriz y rellénela con valores. Utilice esta matriz para crear un mapa de ocupación.

p = 0.5*ones(20,20);
p(11:20,11:20) = 0.75*ones(10,10);
map = occupancyMap(p,10);

Obtén la ocupación de diferentes ubicaciones y consulta sus estados de ocupación. El estado de ocupación devuelve 0 para espacio libre y 1 para espacio ocupado. Los valores desconocidos devuelven –1.

pocc = getOccupancy(map,[1.5 1])
pocc = 0.7500
occupied = checkOccupancy(map,[1.5 1])
occupied = 1
pocc2 = getOccupancy(map,[5 5],'grid')
pocc2 = 0.5000
occupied2 = checkOccupancy(map,[5 5],'grid')
occupied2 = -1

Argumentos de entrada

contraer todo

Representación del mapa, especificada como un objeto occupancyMap . Este objeto representa el entorno del vehículo. El objeto contiene una cuadrícula matricial con valores que representan la probabilidad de ocupación de esa celda. Los valores próximos a 1 representan una gran certeza de que la celda contiene un obstáculo. Los valores próximos a 0 representan la certeza de que la celda no está ocupada y está libre de obstáculos.

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

Tipos de datos: double

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

Tipos de datos: double

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

Tamaño de la matriz de salida, especificado como un vector de dos elementos, [xLength yLength] o [gridRow gridCol]. El tamaño está en coordenadas mundiales, locales o de cuadrícula 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

Valores de ocupación interpretados, devueltos como un vector columna n por 1 de igual longitud que xy o ij.

Los valores de ocupación pueden ser libres de obstáculos (0), ocupados (1) o desconocidos (–1). Estos valores se determinan a partir de los valores de probabilidad reales y las propiedades OccupiedThreshold y FreeThreshold del objeto map .

Ubicaciones de mapa válidas, devueltas como un vector columna n por 1 de igual longitud que 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.

Matriz de valores de ocupación, devuelta como matriz con tamaño igual a matSize o el tamaño de su map. Los valores de ocupación pueden ser libres de obstáculos (0), ocupados (1) o desconocidos (-1).

Capacidades ampliadas

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

Historial de versiones

Introducido en R2019b

Consulte también

| | (Robotics System Toolbox)