メインコンテンツまでスキップ

輪郭のフィルタリングとソート

カラー閾値処理の後、Limelightは輪郭のリストを生成します。その後、各輪郭は最も密着した外接矩形、「回転なし」矩形、および「凸包」で囲まれます。これらは一連のフィルターを通過して「最適な」輪郭を決定します。複数の輪郭がすべてのフィルターを通過した場合、Limelightは「ソートモード」コントロールを使用して最適な輪郭を選択します。

ソートモード

他のすべてのフィルターを通過した後の輪郭のソート方法を制御します。

2019年に「closest」ソートモードが追加されました。このモードは、設定可能なクロスヘアに最も近いターゲットを選択します。

ターゲット面積

画面のパーセンテージとして、許容される外接矩形の面積範囲を制御します。最小面積を増やすことでスタジアムライトをフィルタリングし、最大値を減らすことでフィールド近くの大型ディスプレイなどをフィルタリングできます。

面積スライダーは線形スケールではなく、4乗スケールです。これは、多くのFRCターゲットが存在する面積値の低い範囲で追加の精度を提供するためです。正方形の面積はその辺の長さに対して2乗でスケールしますが、x^4スケーリングは必要な場所でさらに高い精度を提供します。

ターゲット充填率

充填率は、選択された輪郭の外接矩形内の「オン」ピクセルの割合です。塗りつぶされた矩形ターゲットは1.0に近い充填率を持ち、U字型のターゲットは低い充填率を持ちます。

ターゲットアスペクト比

アスペクト比は、選択された輪郭の外接矩形の幅をその高さで割ったものとして定義されます。低いアスペクト比は「縦長」の矩形を表し、高いアスペクト比は「横長」の矩形を表します。

アスペクト比スライダーも2乗スケールです。

方向フィルター

輪郭の向きに基づいて輪郭を除外します。

スマートスペックル除去

他のすべてのフィルターを通過した、相対的に小さい(面積フィルターによる絶対的に小さいものとは対照的に)輪郭を除外します。これは、ターゲットが近距離と遠距離の両方から追跡可能でなければならない場合に不可欠です。 この機能は2019年シーズンに導入され、ロボットがターゲットに非常に近い場合にLimelightのLED反射を除外するためのものです。

ターゲットグループ化

ターゲットの「グループ化」を制御します。2つの形状で構成される「ターゲット」を探すにはデュアルモードに設定し、3つの形状で構成されるターゲットを探すにはトライモードに設定します。

スマートターゲットグループ化は、可変数のターゲットをグループ化し、外れ値を除外できます。2022年にアッパーハブターゲットの追跡を支援するために追加されました。

交差フィルター(デュアルターゲットのみ)

無限に延長した場合の交差方法に基づいて輪郭のグループを除外します。

スマートターゲットグループ化

すべての個別ターゲットフィルターを通過したターゲットを自動的にグループ化します。

  • グループサイズスライダーの最小値から最大値までの任意の数のターゲットを動的にグループ化します

外れ値除去

  • グループターゲットは通常のターゲットよりも難しいですが、より多くの情報とフィルタリングの機会を提供します。ゴールが互いに近い複数のターゲットで構成されていることがわかっている場合、単独で存在する外れ値ターゲットを実際に除外できます。
  • 主に良好なターゲットフィルタリングに依存し、カメラストリームで偽の外れ値が見られるか予想される場合にのみ外れ値除去を使用してください。標準的なターゲットフィルタリングが不十分な場合、外れ値検出が逆効果になる可能性があります!

出力

このタブは、ビジョンパイプラインの最終段階で何が起こるかを制御します

ターゲティング領域

選択された輪郭の外接矩形の関心点を制御します。デフォルトでは、追跡パラメータtxとtyは、クロスヘアから選択された矩形の中心までのオフセットを表します。ターゲットのサイズが変化する場合や、時々混ざり合う2つのターゲットで構成されている場合は、別のオプションを使用できます。

生のコーナーを送信しますか?

このコントロールを「yes」に設定すると、JSON、NetworkTables、およびAPI結果にコーナー位置が含まれます。「輪郭フィルタリング」ページの「輪郭簡略化」値を調整して、送信されるコーナーの数を調整します。

NetworkTables経由でJSONを送信しますか?

このコントロールを「yes」に設定すると、NetworkTables経由でJSONが送信されます。

クロスヘアキャリブレーション

ターゲティング値の「原点」を制御します。ロボットのシューターが常に中心より少し左を向くようにキャリブレーションする必要があるとしましょう。ロボットを整列させ、「calibrate」をクリックすると、すべてのターゲティング値が新しいクロスヘアを基準に送信されます。詳細はキャリブレーションページを参照してください!

3D

ここでPnPポイントベースの姿勢推定を試してください。

3D計算

姿勢推定が有効かどうかを制御します。これを機能させるには、960x720高解像度モードを有効にする必要があります。

凸を強制

SolvePnPでターゲットの「最も外側」のコーナーのみを選択するには、このオプションを使用します。

輪郭簡略化

ターゲットから小さくノイズの多いエッジを除去するには、このオプションを使用します。

許容誤差

Limelightは、特定のスコア(ピクセル単位)で再投影テストに合格した場合にのみターゲットを返します。

ゴールZオフセット

ターゲットの3D深度値(Z軸)を自動的に設定します。