メインコンテンツ

pc2surfacemesh

3 次元点群からの表面メッシュの作成

R2022b 以降

    説明

    [mesh,depth,perVertexDensity] = pc2surfacemesh(ptCloudIn,"poisson") は、ポアソン再構成法を使用して入力点群 ptCloudIn から表面メッシュを作成します。この関数は、再構成で使用される八分木の深さ depth と頂点密度 perVertexDensity も返します。

    [mesh,depth,perVertexDensity] = pc2surfacemesh(ptCloudIn,'poisson',inputDepth) は、ポアソン再構成法の八分木の深さの値を追加で指定します。

    [mesh,radii] = pc2surfacemesh(ptCloudIn,"ball-pivot") は、ボールピボット法を使用して点群データから表面メッシュを作成します。この関数は、再構成で使用される半径も返します。

    [mesh,radii] = pc2surfacemesh(ptCloudIn,'ball-pivot',inputRadii) は、ボールピボット再構成法の半径を追加で指定します。

    すべて折りたたむ

    PLY ファイルからワークスペースに点群データを読み込みます。

    ptCloud = pcread("teapot.ply");

    入力点群を表示します。

    pcshow(ptCloud)

    Figure contains an axes object. The axes object contains an object of type scatter.

    点群をダウンサンプリングします。

    gridstep = 0.05;
    ptCloudDownSampled = pcdownsample(ptCloud,"gridAverage",gridstep);

    ポアソン法を使用して点群データから表面メッシュを作成し、表面メッシュを表示します。

    depth = 8;
    mesh = pc2surfacemesh(ptCloudDownSampled,"poisson",depth);
    surfaceMeshShow(mesh)

    PLY ファイルからワークスペースに点群データを読み込みます。

    ptCloud = pcread("teapot.ply");

    入力点群を表示します。

    pcshow(ptCloud)

    Figure contains an axes object. The axes object contains an object of type scatter.

    点群をダウンサンプリングします。

    gridstep = 0.05;
    ptCloudDownSampled = pcdownsample(ptCloud,"gridAverage",gridstep);

    ボールピボット法を使用して点群データから表面メッシュを作成し、表面メッシュを表示します。

    mesh = pc2surfacemesh(ptCloudDownSampled,"ball-pivot");
    surfaceMeshShow(mesh)

    入力引数

    すべて折りたたむ

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

    ポアソン再構成で使用する八分木の深さ。範囲 [2, 12] の正の整数として指定します。ポアソン再構成の八分木の深さを大きくすると、表面メッシュがより詳細になります。

    データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    ボールピボット再構成の半径の値。M 要素ベクトルとして指定します。この値は点群の密度に従って指定する必要があります。値はメートル単位です。

    データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    出力引数

    すべて折りたたむ

    点群から作成される表面メッシュ。surfaceMesh オブジェクトとして返されます。

    ポアソン再構成で使用する八分木の深さ。正の整数として返されます。

    ボールピボット再構成の半径の値。3 要素ベクトルとして返されます。単位はメートルです。

    メッシュ頂点での密度。M 要素ベクトルとして返されます。M は出力表面メッシュ内のメッシュ頂点の数です。有意でない密度をもつ頂点を除外することにより、メッシュをより精細にすることができます。

    アルゴリズム

    すべて折りたたむ

    バージョン履歴

    R2022b で導入

    すべて展開する