3D位置姿勢推定

機能のディスクリプション

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

../../../_images/3d_matching_procedure_01.png

使用シーン

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

マッチングのプロセス

マッチングのプロセスは下図の通りです。

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

    ../../../_images/3d_coarse_matching_v2_result.png
  2. 次に、下図に示すように、 3D位置姿勢高精度推定 ステップを使用して大まかな位置姿勢に対して精確なマッチングを行い、精確な位置姿勢を取得します。

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

    ../../../_images/remove_overlapped_objects_result.png

パラメータ調整について

モデル設定

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

マッチング設定

マッチングモード
初期値:Edge
オプション:Surface(面のマッチング)、Edge(エッジマッチング)。
調整説明:下図に示すように、使用する点群モデルは対象物のエッジである場合、Edge(エッジマッチング)を選択してください。
../../../_images/match_model_1.png

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

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

パラメータ値

300

600

サンプル図

icon_1

icon_2

点数

276

632

マッチング速度
初期値:Standard
オプション:HighSpeed、Standard、HighPrecision
調整説明:プロジェクトのニーズに応じて選択してください。
  • HighSpeed:速度は速いですが精度は低いです。

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

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

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

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

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

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

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

結果設定

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

ヒント

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