輪郭のフィルタリングとソート
色閾値処理の後、Limelightは輪郭のリストを生成します。その後、各輪郭は最も適合する境界矩形、「回転していない」矩形、および「凸包」で包まれます。これらは一連のフィルタを通過して「最適な」輪郭を決定します。複数の輪郭がすべてのフィルタを通過する場合、Limelightは「ソートモード」コントロールを使用して最適な輪郭を選択します。
ソートモード
他のすべてのフィルタを通過した後に輪郭がどのようにソートされるかを制御します。
2019年には、「最も近い」ソートモードが追加されました。このモードでは、設定可能なクロスヘアに最も近いターゲットを選択します。
ターゲットエリア
画面の割合として、許容される境界矩形の面積の範囲を制御します。スタジアムの照明などをフィルタリングするために最小面積を増やしたり、フィールド近くの大きなディスプレイなどをフィルタリングするために最大値を減らしたりすることができます。
エリアスライダーは線形にスケーリングされておらず、4次関数的にスケーリングされています。これは、多くのFRCターゲットが存在するエリア値の下端付近で追加の精度を提供するために行われています。正方形の面積はその辺の長さの2乗でスケーリングされますが、x^4スケーリングは必要な場所でさらに高い精度を提供します。
ターゲットの充実度
充実度は、選択された輪郭の境界矩形内の「オン」ピクセルの割合です。実線の矩形ターゲットはほぼ1.0の充実度を持ちますが、U字型のターゲットは低い充実度を持ちます。
ターゲットのアスペクト比
アスペクト比は、選択された輪郭の境界矩形の幅をその高さで割ったものとして定義されます。低いアスペクト比は「縦長」の矩形を表し、高いアスペクト比は「横長」の矩形を表します。
アスペクト比スライダーも2次関数的にスケーリングされています。
方向フィルタ
輪郭の向きに基づいて輪郭を拒否します。
スマートスペックル除去
他のすべてのフィルタを通過した比較的小さい(エリアフィルタによる絶対的に小さいものとは対照的に)輪郭を拒否します。これは、ターゲットが短距離と長距離の両方から追跡可能である必要がある場合に不可欠です。 この機能は、ロボットがターゲットに非常に近い場合にLimelightのLED反射を拒否するために2019シーズンに導入されました。
ターゲットのグループ化
ターゲットの「グループ化」を制御します。2つの形状で構成される「ターゲット」を探すにはデュアルモードに設定し、3つの形状で構成されるターゲットを探すにはトリモードに設定します。
スマートターゲットグループ化は、可変数のターゲットをグループ化し、外れ値を拒否することができます。これは2022年に上部ハブターゲットの追跡を支援するために追加されました。
交差フィルタ(デュアルターゲットのみ)
無限に延長した場合にどのように交差するかに基づいて、輪郭のグループを拒否します。
スマートターゲットグループ化
すべての個別ターゲットフィルタを通過するターゲットを自動的にグループ化します。
- -グループサイズスライダーの最小値- から -グループサイズスライダーの最大値- までの任意の数のターゲットを動的にグループ化します