Main Content

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

updateOccupancy

Mettre à jour la probabilité d'occupation des emplacements

Depuis R2019b

Description

exemple

updateOccupancy(map3D,xyz,obs) intègre de manière probabiliste les valeurs d'observation, obs, à chaque coordonnée xyz spécifiée dans l'objet occupancyMap3D , map3D.

Exemples

réduire tout

Créez un objet occupancyMap3D .

map3D = occupancyMap3D;

Créez un plan de sol et définissez les valeurs d'occupation sur 0.

[xGround,yGround,zGround] = meshgrid(0:100,0:100,0);
xyzGround = [xGround(:) yGround(:) zGround(:)];
occval = 0;
setOccupancy(map3D,xyzGround,occval)

Créez des obstacles dans des emplacements spécifiques du monde sur la carte.

[xBuilding1,yBuilding1,zBuilding1] = meshgrid(20:30,50:60,0:30);
[xBuilding2,yBuilding2,zBuilding2] = meshgrid(50:60,10:30,0:40);
[xBuilding3,yBuilding3,zBuilding3] = meshgrid(40:60,50:60,0:50);
[xBuilding4,yBuilding4,zBuilding4] = meshgrid(70:80,35:45,0:60);

xyzBuildings = [xBuilding1(:) yBuilding1(:) zBuilding1(:);...
                xBuilding2(:) yBuilding2(:) zBuilding2(:);...
                xBuilding3(:) yBuilding3(:) zBuilding3(:);...
                xBuilding4(:) yBuilding4(:) zBuilding4(:)];

Mettez à jour les obstacles avec de nouvelles valeurs de probabilité et affichez la carte.

obs = 0.65;
updateOccupancy(map3D,xyzBuildings,obs)
show(map3D)

Vérifiez si le fichier de carte nommé citymap.ot existe déjà dans le répertoire actuel et supprimez-le avant de créer le fichier de carte.

if exist("citymap.ot",'file')
    delete("citymap.ot")
end

Exportez la carte sous forme de fichier octree.

filePath = fullfile(pwd,"citymap.ot");
exportOccupancyMap3D(map3D,filePath)

Arguments d'entrée

réduire tout

Carte d'occupation 3D, spécifiée comme objet occupancyMap3D .

Coordonnées mondiales, spécifiées sous la forme d'une matrice n-par 3 de points [x y z] , où n est le nombre de coordonnées mondiales.

Valeurs d'observation de probabilité, spécifiées sous forme de scalaire numérique ou logique, ou sous forme de vecteur de colonne n-par 1 avec la même taille que xyz.

Les valeurs de obs peuvent être comprises entre 0 et 1, mais si obs est un tableau logique, la fonction utilise les valeurs d'observation par défaut de 0,7 (true) et 0,4 (false). Si obs est un scalaire numérique ou logique, la valeur est appliquée à toutes les coordonnées dans xyz.

Capacités étendues

Historique des versions

Introduit dans R2019b