ShuttleSet 比赛视频里混着比赛画面、特写、回放、观众席。Task E 的目标是自动判定每帧是否为 固定机位比赛画面(court visible),剔除非比赛片段,为后续 BT_Transformer 训练提供干净数据。 下方为方法验证阶段的产出视频与 bbox 可视化。
两个示例均来自同一场比赛的 5 分钟 ffmpeg 切片(frame 20000–29000)。
每帧检查 homography.csv 四角点附近是否有白线像素:≥3/4 命中 → court visible,
画蓝色角点;否则打红色 NO COURT 水印。此为 filter_court_video.py 输出。
在同一片段上叠加 YOLOv11x 球员检测框(绿 Player A / 红 Player B)与 TrackNet 球位置,
来自检测缓存。此为 annotate_video_segment.py 输出,展示下游检测管线效果。
轻量启发式,无需机器学习模型,直接复用 ShuttleSet 自带的角点元数据。
homography.csv 读取每场比赛四个球场角点像素坐标(原为 1280×720,按视频实际分辨率 ×1.5 缩放)。
当前进度:判定与标注已完成验证;真正的「连续片段提取」(输出 {start_frame, end_frame} segment JSON、
按 gap<30 帧分组、过滤 <3s 短片段)尚在规划中,对应 filter_gameplay_segments.py 待编写。
30 帧采样(每 300 帧取 1 帧),验证 homography 角点自动生成的 court(蓝)/ net(橙)/ player(框)标签质量。 点击图片可放大查看。