Main Content

cylinderModel

パラメトリック円柱モデル

説明

cylinderModel オブジェクトは、パラメトリック円柱モデルを格納します。

作成

説明

model = cylinderModel(parameters) は、指定された parameters からパラメトリック円柱モデルを作成します。引数 parameters は、Parameters プロパティの値を決定する 1 行 7 列の数値ベクトルです。

入力引数

すべて展開する

円柱パラメーター。1 行 7 列の数値ベクトルとして指定します。この入力は、Parametersプロパティを指定します。ベクトルの形式は [x1 y1 z1 x2 y2 z2 r] です。

  • [x1 y1 z1] と [x2 y2 z2] は、円柱の各端面の 3 次元中心。

  • r は円柱の半径。

プロパティ

すべて展開する

この プロパティ は読み取り専用です。

円柱モデル パラメーター。1 行 7 列の数値ベクトルとして格納されます。ベクトルの形式は [x1 y1 z1 x2 y2 z2 r] です。

  • [x1 y1 z1] と [x2 y2 z2] は、円柱の各端面の 3 次元中心。

  • r は円柱の半径。

この プロパティ は読み取り専用です。

円柱の中心。x、y、z 座標を表す 1 行 3 列の数値ベクトルとして格納されます。

この プロパティ は読み取り専用です。

円柱の高さ。スカラーとして格納されます。

この プロパティ は読み取り専用です。

円柱の半径。スカラーとして格納されます。

この プロパティ は読み取り専用です。

円柱の方向。1 行 3 列のベクトルとして格納されます。方向ベクトルは、円柱の端面の一方の中心 [x1,y1,z1] からもう一方の端面の中心 [x2,y2,z2] を指します。

オブジェクト関数

plotパラメトリック モデルのプロット
findPointsInModelFind points in or on surface of geometric model

すべて折りたたむ

点群を含む MAT ファイルをワークスペースに読み込みます。

load("object3d.mat");

点群を表示します。

figure
pcshow(ptCloud)
title("Detect a Cylinder in a Point Cloud")

円柱近似用に点から円柱までの最大距離を 5 mm に設定します。

maxDistance = 0.005;

関心領域 (ROI) を指定して、近似関数を制限します。

roi = [0.4 0.6; -inf 0.2; 0.1 inf];
sampleIndices = findPointsInROI(ptCloud,roi);

近似関数の方向の制約を設定します。

referenceVector = [0 0 1];

点群内の指定された ROI で円柱を検出し、抽出します。

model = pcfitcylinder(ptCloud,maxDistance,referenceVector, ...
        SampleIndices=sampleIndices);

検出された円柱のモデルをプロットします。

hold on
plot(model)

バージョン履歴

R2015b で導入