Main Content

pcorganize

3 次元点群をオーガナイズド点群に変換

R2021b 以降

説明

ptCloudOut = pcorganize(ptCloudIn,params) は、センサー パラメーター params を使用して、3 次元点群 ptCloudIn をオーガナイズド点群 ptCloutOut に変換します。

すべて折りたたむ

点群データをワークスペースに読み込みます。

fileName = fullfile(toolboxdir("lidar"),"lidardata","lcc","HDL64", ...
                   "pointCloud","0001.pcd");
ptCloudUnorg = pcread(fileName);

LiDAR センサーの水平分解能を指定します。

horizontalResolution = 1024;

指定した horizontalResolution とスイープ開始角度 10 度をもつ HDL64E センサーを表す lidarParameters オブジェクトを作成します。

params = lidarParameters('HDL64E',horizontalResolution,SweepStartAngle=10);

アンオーガナイズド点群をオーガナイズド点群に変換します。

ptCloudOrg = pcorganize(ptCloudUnorg,params);

入力点群の次元を表示します。

size(ptCloudUnorg.Location)
ans = 1×2

       37879           3

変換後の点群のサイズを表示します。pointCloud オブジェクトには、オーガナイズド点群は "M""N" 列の配列として格納され、アンオーガナイズド点群は "M" 行 3 列の行列として格納されます。

size(ptCloudOrg.Location)
ans = 1×3

          64        1024           3

入力引数

すべて折りたたむ

入力点群データ。pointCloud オブジェクトとして指定します。

LiDAR センサーのパラメーター。lidarParameters オブジェクトとして指定します。LiDAR センサーのパラメーターの詳細については、LiDAR センサーのパラメーターを参照してください。

出力引数

すべて折りたたむ

オーガナイズド点群データ。pointCloud オブジェクトとして返されます。

メモ

センサー キャリブレーションまたは精度の誤差により、関数の出力が入力点群のオーガナイズド構造と正確に一致しないことがあり、出力点群の有効な点の数が少なくなる場合があります。

拡張機能

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

バージョン履歴

R2021b で導入