Main Content

occupancyMatrix

占有マップを行列に変換

R2019b 以降

説明

mat = occupancyMatrix(map) は、占有グリッド オブジェクトに格納された確率値を行列として返します。

mat = occupancyMatrix(map,'ternary') は、各グリッド セルの占有ステータスを行列として返します。占有グリッド上の OccupiedThreshold プロパティと FreeThreshold プロパティが、障害物のないセル (0) と占有セル (1) を決定します。不明な値は –1 として返されます。

すべて折りたたむ

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

map = occupancyMap(10,10);

8 行 8 列の行列として確率占有値を指定します。

inputMatrix = repmat(0.2:0.1:0.9,8,1);

確率占有値行列をマップに割り当てます。

setOccupancy(map,[1 1],inputMatrix)
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.

占有マップを確率占有値行列に変換します。

occupancyMatrix(map)
ans = 10×10

    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000
    0.5000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    0.5000
    0.5000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    0.5000
    0.5000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    0.5000
    0.5000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    0.5000
    0.5000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    0.5000
    0.5000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    0.5000
    0.5000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    0.5000
    0.5000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    0.5000
    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000    0.5000

占有マップを占有値行列に変換します。

occupancyMatrix(map,"ternary")
ans = 10×10

    -1    -1    -1    -1    -1    -1    -1    -1    -1    -1
    -1    -1    -1    -1    -1    -1     1     1     1    -1
    -1    -1    -1    -1    -1    -1     1     1     1    -1
    -1    -1    -1    -1    -1    -1     1     1     1    -1
    -1    -1    -1    -1    -1    -1     1     1     1    -1
    -1    -1    -1    -1    -1    -1     1     1     1    -1
    -1    -1    -1    -1    -1    -1     1     1     1    -1
    -1    -1    -1    -1    -1    -1     1     1     1    -1
    -1    -1    -1    -1    -1    -1     1     1     1    -1
    -1    -1    -1    -1    -1    -1    -1    -1    -1    -1

入力引数

すべて折りたたむ

地図表現。occupancyMap オブジェクトとして指定します。このオブジェクトはビークルの環境を表現します。オブジェクトには、セルの占有確率を表す値をもつ行列グリッドが含まれています。1 に近い値は、セルに障害物の含まれる確率が高いことを表します。0 に近い値は、セルが占有されておらず障害物のない確率が高いことを表します。

出力引数

すべて折りたたむ

占有グリッドの値。h 行 w 列の行列として返されます。ここで、h と w は占有グリッド オブジェクトの GridSize プロパティの 2 つの要素で定義されます。

データ型: double

拡張機能

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

バージョン履歴

R2019b で導入