最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

findNearestNeighbors

クラス: pointCloud

点の最近傍を検出する

構文

[indices,dists] = findNearestNeighbors(ptCloud,point,K)
[indices,dists] = findNearestNeighbors(ptCloud,point,K,Name, Value)

説明

[indices,dists] = findNearestNeighbors(ptCloud,point,K) は入力点群内のクエリ点の K 最近傍法を返します。point の入力は [X,Y,Z] ベクトルです。

[indices,dists] = findNearestNeighbors(ptCloud,point,K,Name, Value) は 1 つ以上の Name,Value 引数によって指定された追加オプションを使用します。

入力引数

すべて展開する

点群。pointCloud オブジェクトとして指定します。

クエリ点。[X,Y,Z] ベクトルとして指定します。

最近傍の数。正の整数として指定します。

名前と値のペアの引数

オプションの引数 Name,Value のコンマ区切りペアを指定します。Name は引数名で、Value は対応する値です。Name は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を、任意の順番で指定できます。

インデックスの並べ替え。logical のスカラーとして指定します。Sorttrue に設定すると、返されるインデックスはクエリ点からの距離に基づいて昇順に並べ替えられます。並べ替えを無効にするには、Sortfalse に設定します。

葉ノードの数。整数として指定します。MaxLeafChecks を、Kdtree 内で検索する葉ノードの数に設定します。この値を inf に設定すると、ツリー全体が検索されます。ツリー全体が検索される場合、厳密な検索結果が得られます。チェックする葉ノードの数を増やすと精度が向上しますが、効率性は低下します。

出力引数

すべて展開する

並べ替えられた点のインデックス。列ベクトルとして返されます。indices 出力には点群内の並べ替えられた点に対する K 線形インデックスが含まれています。

クエリ点までの距離。列ベクトルとして返されます。dists にはクエリ点までの K ユークリッド距離が含まれています。

すべて展開する

ランダムに生成された点を使用して点群オブジェクトを作成します。

   ptCloud = pointCloud(1000*rand(100,3,'single'));

クエリ点と近傍の数を定義します。

   point = [50,50,50];
   K = 10;

インデックスと 10 個の最近傍点の距離を取得します。

   [indices,dists] = findNearestNeighbors(ptCloud,point,K);

参考文献

Muja, M. and David G. Lowe."Fast Approximate Nearest Neighbors with Automatic Algorithm Configuration".In VISAPP International Conference on Computer Vision Theory and Applications.2009.pp. 331–340.

R2015a で導入