Main Content

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

checkOccupancy

Vérifiez si les emplacements sont libres ou occupés

Depuis R2019b

Description

exemple

iOccval = checkOccupancy(map,xy) renvoie un tableau de valeurs d'occupation aux emplacements xy . Chaque ligne est un emplacement xy distinct dans la grille. Les valeurs d'occupation peuvent être sans obstacle (0), occupées (1) ou inconnues (–1) basées sur le Propriétés OccupiedThreshold et FreeThreshold de l'objet map .

exemple

iOccval = checkOccupancy(map,xy,'local') renvoie un tableau de valeurs d'occupation aux emplacements xy dans la base locale. Le cadre local est basé sur la propriété LocalOriginInWorld du map.

exemple

iOccval = checkOccupancy(map,ij,'grid') spécifie les indices de cellules de grille ij au lieu des emplacements xy .

[iOccval,validPts] = checkOccupancy(___) génère également 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.

occMatrix = checkOccupancy(map) renvoie une matrice qui contient l'état d'occupation de chaque emplacement. Les cellules sans obstacle renvoient 0, les cellules occupées renvoient 1. Les emplacements inconnus, y compris en dehors de la carte, renvoient -1.

occMatrix = checkOccupancy(map,bottomLeft,matSize) renvoie une matrice de valeurs d'occupation en spécifiant l'emplacement du coin inférieur gauche en coordonnées mondiales et la taille de la matrice en mètres.

occMatrix = checkOccupancy(map,bottomLeft,matSize,'local') renvoie une matrice de valeurs d'occupation en spécifiant l'emplacement du coin inférieur gauche en coordonnées locales et la taille de la matrice en mètres.

occMatrix = checkOccupancy(map,topLeft,matSize,'grid') renvoie une matrice de valeurs d'occupation en spécifiant l'emplacement du coin supérieur gauche dans les coordonnées de la grille et la taille de la grille.

Exemples

réduire tout

Accédez aux valeurs d'occupation et vérifiez leur statut d'occupation en fonction des seuils occupé et libre de l'objet occupancyMap .

Créez une matrice et remplissez-la avec des valeurs. Utilisez cette matrice pour créer une carte d'occupation.

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

Obtenez l'occupation de différents emplacements et vérifiez leurs statuts d'occupation. L'état d'occupation renvoie 0 pour l'espace libre et 1 pour l'espace occupé. Les valeurs inconnues renvoient –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

Arguments d'entrée

réduire tout

Représentation cartographique, spécifiée comme objet occupancyMap . Cet objet représente l'environnement du véhicule. L'objet contient une grille matricielle avec des valeurs représentant la probabilité d'occupation de cette cellule. Les valeurs proches de 1 représentent une grande certitude que la cellule contient un obstacle. Les valeurs proches de 0 représentent la certitude que la cellule n'est pas occupée et sans obstacle.

Coordonnées mondiales, spécifiées sous la forme d'une matrice 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'une matrice 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

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

Taille de la matrice de sortie, spécifiée sous la forme d'un vecteur à deux éléments, [xLength yLength] ou [gridRow gridCol]. La taille est exprimée en coordonnées mondiales, locales ou de grille en fonction de 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

Valeurs d'occupation interprétées, renvoyées sous la forme d'un vecteur colonne n-par 1 de longueur égale à xy ou ij.

Les valeurs d'occupation peuvent être sans obstacle (0), occupée (1) ou inconnue (-1). Ces valeurs sont déterminées à partir des valeurs de probabilité réelles et des propriétés OccupiedThreshold et FreeThreshold de l'objet map .

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.

Matrice des valeurs d'occupation, renvoyée sous forme de matrice de taille égale à matSize ou à la taille de votre map. Les valeurs d'occupation peuvent être sans obstacle (0), occupée (1) ou inconnue (-1).

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 R2019b

Voir aussi

| | (Robotics System Toolbox)