トラッキングパラメータ
このページでは、メインタブのパラメータパネルにある トラッキング の各パラメータと、「プレイヤーの ID が入れ替わる」ときの調整手順を説明します。
トラッカーは、フレームごとに検出されたブロブを前のフレームのブロブと対応づけ、同じ人物に一貫したプレイヤー ID を割り当てる仕組みです。位置のスムージングや外れ値除去もここで行います。
パラメータ一覧
Section titled “パラメータ一覧”| パラメータ | 意味 | 範囲 | 初期値 | 調整の目安 |
|---|---|---|---|---|
| enabled | トラッキングの有効 / 無効 | — | ON | OFF にすると ID 割り当てを行いません |
| max_match_distance | マッチング距離の閾値(m) | 0.05〜5.0 | 0.5 | ID が入れ替わる → 下げる / 速い動きで ID が切れる → 上げる |
| lost_timeout_frames | 消失から ID 解放までのフレーム数 | 1〜300 | 30 | 一瞬の欠落で ID が消えるのを防ぐ → 上げる |
| new_blob_confirm_frames | 新規プレイヤー確定までのフレーム数 | 1〜60 | 3 | ノイズをプレイヤー化したくない → 上げる |
| use_prediction | 速度予測の有効 / 無効 | — | ON | 通常は ON。動きの先読みでマッチングを安定させます |
| max_players | 最大同時トラッキング数 | 1〜128 | 16 | 多人数の現場では増やす(CPU 負荷も増えます) |
| max_velocity | 1 フレームの最大移動量(m) | 0〜2.0 | 0.0(無制限) | 瞬間移動(テレポート)を抑制(例: 1.0 = 1m 超の移動を無視) |
| median_window | メディアンフィルタの窓 | 0〜9 | 0(無効) | 3〜5 で外れ値・ジッターを除去 |
| smoothing_mode | スムージング方式 | なし / EMA / One Euro | なし | 位置を滑らかにしたいとき選択(下記参照) |
| smoothing_factor | EMA の平滑係数 | 0〜0.95 | 0.5 | 高いほど慣性が強く滑らか(反応は鈍くなる) |
| one_euro_min_cutoff | One Euro 最小カットオフ(Hz) | 0.01〜10 | 1.0 | 下げるとジッター除去が強くなる |
| one_euro_beta | One Euro 速度係数 | 0〜1.0 | 0.007 | 上げると高速移動への追従が良くなる |
| one_euro_d_cutoff | One Euro 微分カットオフ(Hz) | 0.1〜10 | 1.0 | 通常は既定値のまま |
| trim_start_frames | 新規確定直後の出力抑制フレーム | 0〜60 | 0 | 出はじめの誤送信を防ぐ |
| trim_end_frames | 消失時の末尾ノイズ除去遅延フレーム | 0〜60 | 0 | 消える瞬間のガタつきを抑える |
ID が入れ替わるとき
Section titled “ID が入れ替わるとき”近くを通り過ぎた 2 人で ID が入れ替わったり、同じ人なのに ID が変わったりする場合は、以下の順に調整します。
- トリガーログやビューワーの「プレイヤー」表示で、どのタイミングで ID が変化するかを確認します。
max_match_distanceを下げます(例: 0.5 → 0.3)。1 フレームで対応づける距離が縮まり、離れたブロブどうしが取り違えられにくくなります。- 位置のブレで取り違えが起きる場合は、スムージングを ON にします。EMA なら
smoothing_factorを高め(例: 0.7)に、One Euro ならone_euro_min_cutoffを低めにするとブレが減ります。 - それでも単発の外れ値で乱れるなら、
median_windowを 3〜5 に設定して外れ値を除去します。 - 一瞬の欠落で ID が切れてしまうときは、
lost_timeout_framesを上げると、短い消失をまたいで同じ ID を保ちやすくなります。
スムージング方式の違い(EMA / One Euro)
Section titled “スムージング方式の違い(EMA / One Euro)”位置を滑らかにする smoothing_mode には 2 つの方式があります。
- EMA(指数移動平均): 直前の値と新しい値を一定の比率で混ぜる、シンプルな方式です。
smoothing_factorを上げるほど滑らかになりますが、その分だけ動きの反応が遅れ(ラグ)ます。係数 1 つで分かりやすく調整できます。 - One Euro Filter: 動きの速さに応じて滑らかさを自動で変える方式です。止まっているときはジッターを強く抑え、速く動くときはラグを減らして追従します。
one_euro_min_cutoff(止まっているときのジッター除去の強さ)とone_euro_beta(速い動きへの追従の良さ)で調整します。
止まっているときのプルプル(ジッター)と、動いたときの遅れ(ラグ)を両立させたい場合は One Euro が向いています。とにかく単純に滑らかにしたいだけなら EMA で十分です。
- ブロブ検出パラメータ — トラッキングの前段、塊の検出を調整
- パラメータプリセット — 用途別の初期値をまとめて適用
- トリガーログ — ID の入れ替わりや消失を確認
- トラブルシューティング — 「IDが入れ替わる」「ノイズが多い」などの症状別対処