Main Content

world2grid

ワールド座標をグリッド インデックスに変換

R2019b 以降

説明

ij = world2grid(map,xy) は、ワールド座標 xy の配列を、[row col] 形式のグリッド インデックス ij の配列に変換します。

すべて折りたたむ

幅と高さが 10 メートルの空の占有マップを作成します。

map = occupancyMap(10,10);

グリッド インデックスをワールド座標から取得します。

[xWorld,yWorld] = meshgrid(0:0.5:2);
ij = world2grid(map,[xWorld(:) yWorld(:)]);

サイズが 10×10 メートルの空のマップを作成します。

map = occupancyMap(10,10,10);

新しい確率値を使用して特定のワールド位置の占有状態を更新し、マップを表示します。

x = [1.2; 2.3; 3.4; 4.5; 5.6];
y = [5.0; 4.0; 3.0; 2.0; 1.0];

pvalues = [0.2; 0.4; 0.6; 0.8; 1];

updateOccupancy(map,[x y],pvalues)
figure
show(map)

Figure contains an axes object. The axes object with title Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

半径 0.5 m で占有領域をインフレートします。より大きな占有値が、より小さな値を上書きします。

inflate(map,0.5)
figure
show(map)

Figure contains an axes object. The axes object with title Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

ワールド位置からグリッド位置を取得します。

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

グリッド位置の占有値を設定します。

setOccupancy(map,ij,ones(5,1),'grid')
figure
show(map)

Figure contains an axes object. The axes object with title Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

入力引数

すべて折りたたむ

地図表現。occupancyMapmapLayermultiLayerMap、または signedDistanceMap オブジェクトとして指定します。

ワールド座標。[x y] ペアの n 行 2 列の行列として指定します。ここで、n はワールド座標の数です。

データ型: double

出力引数

すべて折りたたむ

グリッド インデックス。[row col] の形式で、[i j] ペアからなる n 行 2 列の行列として返されます。ここで、n はグリッド位置の数です。グリッド セルの位置は、グリッドの左上隅からカウントされます。

データ型: double

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2019b で導入

すべて展開する