Main Content

Cette page a été traduite par traduction automatique. Cliquez ici pour voir la dernière version en anglais.

setOccupancy

Définir la valeur d'occupation des emplacements

Description

exemple

setOccupancy(map,xy,occval) attribue des valeurs d'occupation, occval, au tableau d'entrée de coordonnées mondiales, xy dans la grille d'occupation, map. Chaque ligne du tableau, xy, est un point du monde et est représentée par une paire de coordonnées [x y] . occval est un tableau scalaire ou à une seule colonne de la même longueur que xy . Un emplacement occupé est représenté par true (1), et un emplacement libre est représenté par false (0).

setOccupancy(map,xy,occval,"local") attribue des valeurs d'occupation, occval, au tableau d'entrée de coordonnées locales, xy, en tant que coordonnées locales.

setOccupancy(map,ij,occval,"grid") attribue des valeurs d'occupation, occval, au tableau d'entrée d'indices de grille, ij, comme [rows cols].

validPts = setOccupancy(___) génère un vecteur d'éléments n de valeurs logiques indiquant si les coordonnées d'entrée se trouvent dans les limites de la carte.

setOccupancy(map,bottomLeft,inputMatrix) attribue une matrice de valeurs d'occupation en spécifiant l'emplacement du coin inférieur gauche en coordonnées mondiales.

setOccupancy(map,bottomLeft,inputMatrix,"local") attribue une matrice de valeurs d'occupation en spécifiant l'emplacement du coin inférieur gauche dans les coordonnées locales.

setOccupancy(map,topLeft,inputMatrix,"grid") attribue une matrice de valeurs d'occupation en spécifiant l'index de cellule en haut à gauche dans les indices de grille et la taille de la matrice.

Exemples

réduire tout

Créez une carte vide de 10 mx 10 m.

map = binaryOccupancyMap(10,10,10);

Définir l'occupation des emplacements du monde et afficher la carte.

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.

Gonflez les emplacements occupés d’un rayon donné.

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.

Obtenez les emplacements de la grille à partir des emplacements du monde.

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

Définissez les emplacements de la grille sur des emplacements 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.

Arguments d'entrée

réduire tout

Représentation cartographique, spécifiée comme objet binaryOccupancyMap . Cet objet représente l'environnement du robot. L'objet contient une grille matricielle avec des valeurs binaires indiquant les obstacles sous la forme true (1) et les emplacements libres sous la forme false (0).

Coordonnées mondiales, spécifiées sous la forme d'un tableau vertical n-par 2 de paires [x y] , où n est le nombre de coordonnées mondiales.

Types de données : double

Positions de la grille, spécifiées sous la forme d'un tableau vertical n-par 2 de paires [i j] au format [rows cols] , où n est le nombre de positions sur la grille.

Types de données : double

Valeurs d'occupation de même longueur que xy ou ij, renvoyées sous la forme d'un tableau vertical n-by-1, où n est le même n dans xy ou ij. Les valeurs sont données entre 0 et 1 inclusivement.

Valeurs d'occupation, spécifiées sous forme de matrice. Les valeurs sont données entre 0 et 1 inclusivement.

Emplacement du coin inférieur gauche de la matrice de sortie en coordonnées mondiales ou locales, spécifié sous la forme d'un vecteur à deux éléments, [xCoord yCoord]. L'emplacement est en coordonnées mondiales ou locales basées sur la syntaxe.

Types de données : double

Emplacement du coin supérieur gauche de la grille, spécifié comme vecteur à deux éléments, [iCoord jCoord].

Types de données : double

Arguments de sortie

réduire tout

Emplacements de carte valides, renvoyés sous la forme d'un vecteur de colonne n-par 1 de longueur égale à xy ou ij. Les emplacements à l'intérieur de la carte renvoient une valeur de 1. Les emplacements en dehors des limites de la carte renvoient une valeur de 0.

Capacités étendues

Génération de code C/C++
Générez du code C et C++ avec MATLAB® Coder™.

Historique des versions

Introduit dans R2015a