3D位置姿勢推定

機能

主な機能は、対象物の点群モデルをマッチングすることにより、シーン内の物体を認識して位置姿勢を取得することです。その構成を下図に示します。

3d matching custom 3d matching procedure 01

使用シーン

通常、このステップの組合せは、 点の数が制限を超えた点群を除外 の後で使用されます。 3D位置姿勢低精度推定(V2)3D位置姿勢高精度推定 により、把持位置姿勢を最適化し、積み重ねられた対象物の位置姿勢を除去することができます。

マッチング処理

マッチング処理は下図のような流れで行われます。

3d matching custom 3d matching frame
  1. 下図に示すように、「点の数が制限を超えた点群を除外」を使用してフィルタリングされた点群を取得したら、フィルタリングされた点群を「3D位置姿勢推定」のステップの組合せに入力し、 「3D位置姿勢低精度推定(V2)」で認識された対象物の大まかな位置姿勢を計算します。また、大まかな位置姿勢が複数ある場合があります。

    3d matching custom 3d coarse matching v2 result
  2. 次に、下図に示すように、「3D位置姿勢高精度推定」を使用して大まかな位置姿勢に対して精確なマッチングを行い、精確な位置姿勢を取得します。

    3d matching custom 3d fine matching result
  3. 最後に、水平方向に認識された対象物の位置姿勢を選出した後、 重複対象物を除去 をつなぎます。これにより、対象物のZ軸に沿って積み重ねられた対象物を除去し、上層で把持可能な位置姿勢を取得することができます。下図に白で表示されるのは、除去された重複対象物の点群です。

    3d matching custom remove overlapped objects result

パラメータの調整説明

モデル設定

モデル名

初期値:なし。

調整説明:このステップの組合せを実行する前に、対象物の点群モデルを追加する必要があります。対象物の点群モデルを使用してシーン内の物体に対してマッチングを行い、シーン内の物体を認識して位置姿勢を取得します。マッチングモデル・把持位置姿勢エディタ で点群モデルを作成して保存した後、ドロップダウンバーから保存した点群モデルを選択できます。

マッチング設定

マッチングモード

初期値:Edge

オプション:Surface(サーフェスマッチング)、Edge(エッジマッチング)。

調整説明:Surface(サーフェスマッチング)、Edge(エッジマッチング)の2つのマッチングモードを選択可能です。下図に示すように、使用するモデル点群が対象物のエッジである場合は、エッジマッチングを選択します。

3d matching custom match model 1

下図に示すように、使用するモデル点群は対象物の表面である場合、サーフェスマッチングを選択してください。

3d matching custom match model 2
サンプリングされたモデルの期待点数

初期値:300

調整説明:ダウンサンプリング後の点群モデルの数を設定するために使用されます。自動ダウンサンプリング後で得られた点数は、この値に近くなります。値が小さいほど、サンプリングされた点群内の点が少なくなり、マッチングの精度が低くなります。

パラメータ値 300 600

サンプル図

3d matching custom 3d coarse matching v2 limit1

3d matching custom 3d coarse matching v2 limit2

点数

276

632

マッチング速度

初期値:標準

オプション:高速、標準、高精度

調整説明:プロジェクトのニーズに応じて選択してください。

  • 高速:速度は速いですが精度は低いです。

  • 標準:安定的に実行するモードです。

  • 高精度:精度が高いですが実行速度は遅いです。

信頼度

初期値:0.6

調整説明:このパラメータは、位置姿勢のマッチングスコアと比較するために使用されます。さらに正確なマッチング結果を取得するために、 結果評価の検索半径 パラメータと組み合わせて使用​​されることがよくあります。位置姿勢のマッチングスコアがこの値より大きい場合、位置姿勢のマッチング結果は有効であると見なされます。他のパラメータが変更されていない場合、この値が大きいほど、位置姿勢のマッチング結果がより正確になります。

実際の使用では、最初に 結果評価の検索半径 を適切に設定する必要があります。設定するには、ダブルクリックしてその中に入り、「3D位置姿勢高精度推定」でこのパラメータを設定します。その後、実際の状況に応じて 信頼度 を設定します。

位置姿勢のマッチングスコアは、 結果評価の検索半径 の値によって決められます。この値が大きいほど位置姿勢のマッチング結果の評価は甘くなり、位置姿勢のマッチング精度が出なくても位置姿勢のマッチングスコアが高くなります。この値が小さいほど位置姿勢のマッチング結果の評価が厳しくなります。対象物の点群に応じて設定する必要があります。点群がまばらな場合は、 結果評価の検索半径 の値を適切に上げることができます。

パラメータを調整する際に、まずは初期の 結果評価の検索半径 を設定し、ステップを実行して可視化出力ウィンドウで位置姿勢のマッチング効果を確認し、位置姿勢のマッチングスコアと対比します。マッチング効果とマッチングスコアが一致していない場合、実際の状況に応じて 結果評価の検索半径 の値をマッチング効果とマッチングスコアが一致するまで調整することができます。

結果評価の検索半径 を設定した後、実際のニーズに応じて 信頼度 を設定し、信頼度より高い位置姿勢のマッチングスコアを持つ位置姿勢マッチング結果を取得します。

結果設定

出力の最大数

初期値:10

設定可能な範囲:1~100

調整説明:このパラメータは、出力可能な位置姿勢のマッチング結果の最大数を示します。複数の位置姿勢のマッチング結果がある場合、マッチングスコアに従ってマッチング結果を降順にソートし、設定された 出力の最大数 に従って最も高いスコアを持つマッチング結果を出力します。

位置姿勢のマッチング結果の実際の出力数は、設定された 出力の最大数 と違い場合もあります。例えば、 出力の最大数 が5に設定されていて、実際には合計3つの位置姿勢のマッチング結果しかない場合、最終的に出力される位置姿勢のマッチング結果の数は3です。