![]() |
OpenCV 5.0.0
Open Source Computer Vision
|
3次元点群における領域成長 (Region Growing) アルゴリズム。 続き...
#include <opencv2/geometry/segment.hpp>
公開メンバ関数 | |
| RegionGrowing3D ()=default | |
| virtual | ~RegionGrowing3D ()=default |
| virtual void | getCurvatures (OutputArray curvatures) const =0 |
| 設定済みであれば各点の曲率を取得する。 | |
| virtual double | getCurvatureThreshold () const =0 |
| 曲率のしきい値を取得する。 | |
| virtual int | getMaxNumberOfNeighbors () const =0 |
| 自身を含む近傍の最大数を取得する。 | |
| virtual int | getMaxSize () const =0 |
| 領域の最大サイズを取得する。 | |
| virtual int | getMinSize () const =0 |
| 領域の最小サイズを取得する。 | |
| virtual bool | getNeedSort () const =0 |
| 設定した結果のソートが必要かどうかを取得する。 | |
| virtual int | getNumberOfRegions () const =0 |
| 取得したい領域の最大数を取得する。 | |
| virtual void | getSeeds (OutputArray seeds) const =0 |
| シード点を取得する。 | |
| virtual bool | getSmoothModeFlag () const =0 |
| 平滑度モードを使用するかどうかを取得する。 | |
| virtual double | getSmoothnessThreshold () const =0 |
| 法線間の角度のしきい値を取得する。 | |
| virtual int | segment (OutputArrayOfArrays regions_idx, OutputArray labels, InputArray input_pts, InputArray normals, InputArrayOfArrays nn_idx)=0 |
| 領域成長 (Region Growing) アルゴリズムを使ってセグメンテーションを実行する。 | |
| virtual void | setCurvatures (InputArray curvatures)=0 |
| 各点の曲率を設定する。vector<float> と Mat をサポートする。設定しない場合は noArray() を設定すればよい。 | |
| virtual void | setCurvatureThreshold (double curvature_thr)=0 |
| virtual void | setMaxNumberOfNeighbors (int max_neighbor_num)=0 |
| virtual void | setMaxSize (int max_size)=0 |
| 領域の最大サイズを設定する。 | |
| virtual void | setMinSize (int min_size)=0 |
| 領域の最小サイズを設定する。 | |
| virtual void | setNeedSort (bool need_sort)=0 |
| 結果を点の数による降順でソートする必要があるかどうかを設定する。 | |
| virtual void | setNumberOfRegions (int region_num)=0 |
| 取得したい領域の最大数を設定する。 | |
| virtual void | setSeeds (InputArray seeds)=0 |
| virtual void | setSmoothModeFlag (bool smooth_mode)=0 |
| virtual void | setSmoothnessThreshold (double smoothness_thr)=0 |
| 法線間の角度のしきい値を設定する。入力値はラジアン単位である。 | |
静的公開メンバ関数 | |
| static Ptr< RegionGrowing3D > | create () |
3次元点群における領域成長 (Region Growing) アルゴリズム。
領域成長の核心となる考え方は、2点間の法線に従って、ある角度のしきい値を満たす最近傍点を同じ領域に統合し、セグメンテーションを実現することである。詳細については [229] を参照すること。
|
default |
|
virtualdefault |
|
static |
|
pure virtual |
設定済みであれば各点の曲率を取得する。
|
pure virtual |
曲率のしきい値を取得する。
|
pure virtual |
自身を含む近傍の最大数を取得する。
|
pure virtual |
領域の最大サイズを取得する。
|
pure virtual |
領域の最小サイズを取得する。
|
pure virtual |
設定した結果のソートが必要かどうかを取得する。
|
pure virtual |
取得したい領域の最大数を取得する。
|
pure virtual |
シード点を取得する。
|
pure virtual |
平滑度モードを使用するかどうかを取得する。
|
pure virtual |
法線間の角度のしきい値を取得する。
|
pure virtual |
領域成長 (Region Growing) アルゴリズムを使ってセグメンテーションを実行する。
| [out] | regions_idx | 各領域内のすべての点のインデックス情報。vector<vector<int>>, vector<Mat> をサポートする。 |
| [out] | labels | ラベルはモデル番号に対応する。0 はどのモデルにも属さないことを意味し、範囲は [0, 最終的に得られたモデル数]。vector<int> と Mat をサポートする。 |
| input_pts | 元の点群。vector<Point3f> およびサイズ Nx3/3xN の Mat をサポートする。 | |
| normals | 各点の法線。vector<Point3f> およびサイズ Nx3 の Mat をサポートする。 | |
| nn_idx | すべての点の最近傍のインデックス情報。各点の第1最近傍はその点自身である。vector<vector<int>>, vector<Mat>、およびサイズ NxK の Mat をサポートする。ある行の情報が [0, 2, 1, -5, -1, 4, 7 ... 負の数] のような場合、負の数または行の末尾に達するまで、非負のインデックスのみを使用する。すなわち [0, 2, 1] となる。 |
|
pure virtual |
|
pure virtual |
曲率のしきい値を設定する。デフォルトは 0.05 である。曲率がしきい値より小さい点のみが同じ領域に属するとみなされる。各点の曲率が設定されていない場合、このオプションは機能しない。
|
pure virtual |
自身を含めて使用したい近傍の最大数を設定する。非正の数またはデフォルトを設定すると、nn_idx の情報を使用する。
|
pure virtual |
領域の最大サイズを設定する。
|
pure virtual |
領域の最小サイズを設定する。
|
pure virtual |
結果を点の数による降順でソートする必要があるかどうかを設定する。
|
pure virtual |
取得したい領域の最大数を設定する。
|
pure virtual |
シード点を設定する。シードに従って成長する。noArray() を設定した場合、デフォルトの方法が使用される:
|
pure virtual |
平滑度モードを使用するかどうかを設定する。デフォルトは true である。true の場合、現在の点の法線とその近傍の法線の間の角度をチェックする。そうでない場合は、シード点の法線と現在の近傍の法線の間の角度をチェックする。
|
pure virtual |
法線間の角度のしきい値を設定する。入力値はラジアン単位である。