これは何?
スマホで撮ったテニス動画・自陣カメラの映像から、TrackNet 深層学習が ボールを追跡し、コート4隅の位置を元に IN / OUT を判定します。 ブラウザ上で動き、動画自体は Modal GPU に一時アップロードされて数分後に 判定結果として戻ります。
クイックスタート
- 1アプリを開く(iOS 16.4+ Safari / Chrome / Edge 推奨)
- 2画面下の 🎾 デモ動画 をタップ、または 🚀 サーバML判定 で自分の試合動画をアップロード
- 3動画が再生されると 青いTL/TR/BR/BL ハンドル が中央に出るので、それぞれ実際のコート4隅にドラッグ
- 4上部の ✓ 完了・アプリに戻る を押すと判定モードに入り、バウンドごとに IN / OUT が履歴に積み上がります
コート4隅の合わせ方(重要)
AIによるコート自動検出は撮影角度・照明・字幕オーバーレイの影響で不安定なため、手動セットアップが標準です。10-20秒で完了します。
基本操作
- 動画が始まると青いハンドルが画面中央にデフォ配置される
- 各ハンドルを実際のコート4隅にドラッグ。近くに白線があれば 磁石スナップ で吸着する
- 上部の ダブルス基準 / シングルス基準 でどっちの4隅を置くか選ぶ
- ↺ デフォ位置 で画面外に飛んだ時などに初期位置へリセット
- ✓ 完了・アプリに戻る で判定モード開始
ダブルスコートが画面からハミ出る場合
- 推奨: 上部で シングルス基準 に切替 → 必ず画面内にあるシングルスコート4隅を置く。 ダブルスラインは自動で外挿計算されます
- または、ハンドルを画面外にドラッグしても位置を保持できます(推測精度は落ちる)
確定した4隅は端末に保存され、同じ動画・カメラ位置なら次回は復元されて手動セットアップをスキップします。
判定精度の調整
画面右上に 感度 [厳|標準|甘] トグルがあります:
- 厳 (~16cm): 公式試合寄り、線ぎりぎりはOUT扱い
- 標準 (~38cm, 既定): 人間ジャッジ相当、「触った=IN」感覚
- 甘 (~65cm): 練習・ダブルス・ノイズ多い映像向け
「明らかにINなのにOUT」が続く時は「甘」に、「明らかにOUTなのにIN」が続く時は「厳」に切替えてください。
判定モードのやり直し・再調整
判定モード中に4隅がズレて見える場合、右上の 🔧 コート再調整 ボタンを押すといつでも手動セットアップに戻れます。
サーブモードの追加機能
判定モードを サーブ にすると、コーチング用の詳細集計が有効になります。
サーブ方向トグル (画面上部中央)
- 🎯 自分がサーブ — 自分が自陣から相手コートへサーブ。相手コート側のサービスボックスのみINと判定
- 🎾 サーブ受け — 相手のサーブを受ける側。自陣サービスボックスのみIN
- 両方 — 4ボックス全て有効(旧挙動)
左サイドの統計エリア
- デュース / アド: 左右のサービスボックスごとの本数とIN率
- 1st / 2nd: 同ラリー内の1本目=ファーストサーブ、20秒以内の2本目=セカンドサーブとして自動振分け
- DF (ダブルフォルト): 1stと2ndが両方OUTになったラリー数
- Max速度: 動画から推定した最速ボール速度 (p95, km/h)。単眼カメラ+平面仮定なので参考値です
サービスライン距離スライダー
サーブモード時、画面右上に「ネット→サービスライン」スライダーが出ます。 規格は 6.4m。非規格コート、または派生ラインが実物とズレて見える時に 5.0-7.5mの範囲で微調整可能。 ↺ で規格値にリセット。