网球数据的来源、规模、标注方式与当前进度汇总 —— 4 套基础数据 + 6 层衍生标注,一份数据可叠加多层标注
数据统计截止 2026-08-26(⑩ 击球标注于 2026-09-15 更新:hitting 全量 VLM 标注 v9)· 磁盘 数据 123 GB + 发布包 48 GB(lei_v0 40 · lei_v1 36 · THETIS 27 · TenniSet 18 · 衍生层合计 <4)· 基础集 4(自采图 / 自采视频 / THETIS / TenniSet)· 衍生标注层 6(精彩度 · 动作标签 · 检测 · 姿态 · 跨源探针 · TenniSet 抽帧)· 对外发布包 1
releases/项目共 10 类标注,可靠性差别很大。同一份数据可以叠加多层标注 —— 例如 vtennis_lei_v0 同时带 ② CLIP 清洗分、⑦ VLM 精彩度分、⑨ 检测框、⑩ 动作标签,它们是同一批图的多组不同标注,不是多套数据(详见下方「衍生数据与标注层」)。✅ = 有且可信 · △ = 有但为弱标注/仅供筛选。
highlight_score;已覆盖 lei_v0 全量 103,353 张| 数据集 | ① 逐图子类 | ② CLIP 门分 | ③ 场景域桶 | ④ 逐帧校验 | ⑤ 动作 GT | ⑥ 事件时序 GT | ⑦ 精彩度评分 | ⑧ 人工偏好 | 溯源元数据 |
|---|---|---|---|---|---|---|---|---|---|
| vtennis_lei_v0自采图像 103,353 | △CLIP argmax·无 GT | ✅三门全量 | — | — | — | — | ✅全量 103,353 | △515 条成对 | ✅作者/授权/原页 |
| vtennis_lei_v1自采视频 1,356 池 +10 test_v1 | △仅抽帧 8 帧 | ✅同 v0 三门 | △query 来源·非画面判定 | ✅池 1,356 | — | — | — | — | ✅站点/上传者/原页 |
| THETISKinect 1,980 序列 | — | — | — | — | ✅12 类 + 熟练度 | — | — | — | △受试者 ID |
| TenniSet转播 5 场 / 9.5h | — | — | — | — | △Hit.Type 属性 | ✅4,448 事件 | — | — | — |
| test_data自录 11 段 | — | — | — | — | — | — | — | — | — |
flickr.photos.search),328 条 query 覆盖场景 / 击球类型 / 场地 / 赛事 / 人群 + 58 位球员 × 3 种击球的矩阵。实际只消耗前 89 条即达标,余 239 条为扩量余量--threshold 0.05;clean/scores.json 保留全量分数,重切不需重新编码。tennis_highlight_v2,7 个维度各打 0–100 → 固定公式折成 0–1,不让模型直接吐总分:score = in_play门 × photo_real门 × visibility乘子 × (0.30·intensity + 0.22·decisive + 0.33·difficulty + 0.15·expressiveness)shot 标签与 notehuman_pairs.jsonl:去重后 509 条。两批:random 309 条(随机抽对,无偏)+ disagree 200 条(专挑两模型意见相左的对)highlight_score 与模型判定的击球类型,悬停看模型给的 notein_play 门 floor=30,中间值多了以后落到门下的少了)。这不是缺陷 —— v1 那批零分里混着"在打球但拍得平淡"的图,现在拿 0.2–0.4 对排序更有用。但若用 score==0 当硬过滤,要改成阈值(如 <0.2,覆盖 34,740 张)。random 与 disagree 两批混在一起算会得出完全错误的结论(混合后看似 8B 74.3% 碾压 235B 60.8%,实为对抗抽样污染)。② 人工自一致性目前只能从 13 组重复判定估计(6/13),n 太小不可用,应补一批有意重复的对来测标注噪声上限。另注意 highlight_score 与 CLIP 的 score 是两件不同的事:前者问"这张图精彩吗",后者只问"这是不是网球"。topic_pass_frac + 每帧子类data/test_data/test_v1/;审计线索 test_v1_heldout.jsonl,stats.json 带 held_out 块topic_pass_frac 高的候选中目检挑的)· 最后一张是串味实例Sign in to confirm you're not a bot;verbose 显示校验在 player 请求阶段触发,根本没走到取 token —— 是出口 IP 被判数据中心。解法:从已登录浏览器导出 cookies 覆盖 chores/www.youtube.com_cookies.txt,或换住宅 IP。--source youtube 通路已留好,不需改代码。_corrupt/:中断的 Bilibili 下载留下的 mp4 moov 完好(ffprobe 照报时长)但 HEVC 码流是垃圾。光用 ffprobe 检不出来,必须真解一帧。此外乒乓球漏检与 v0 同源。{actor}_{action}_{sequence}.avi,如 p2_backhand2h_s3.aviforeflat_s1 的中间帧(2D/3D 骨架序列来自另一受试者,p10 的这两条没提取成功)Hit{Player, Side, Type} · Serve{Player, Result} · Point{Winner, Score} · Game{Winner, Score, Server} · Set{Winner, Score, Near}splits/01、splits/02),各含 train / val / test<id>.npy + <id>.frames.npy —— 直接可用于时序检索/分段实验,不必重跑编码Serve 事件的起始帧(标注单位是帧号,25 fps)以下都不是独立采集的数据,而是在 vtennis_lei_v0 / tenniset 之上叠加的标注或抽取的子集。同一批底图/视频可同时挂多层。
highlight_score。主产物 Qwen3-VL-235B v2 全量 103,353 张(scores_full_235b_v2.jsonl)human_pairs.jsonl)+ 500 样本对照;另有 8B/235B × v1/v2 各 500 张试跑vtennis_lei_v0_eval400_{unclear,relabel}_human.jsonl)HOLDOUT_IDS.json 768 张,永不进训练/标注批次(v9 全量标注已排除)yolo_v1 / yolo_h0 两个 YOLO checkpoint + 预测已落盘train_manifest.jsonl)+ YOLOv11s 中间层特征 feat_cache_yolo11s_l4-6-8-10.npz(1.27 GB)tennis_test_video/ 下 7 段(IMG_8662–8665.MOV 手机实拍 + lei_trim1–3.mov 剪辑片段)+ 4 段屏幕录制(2026-05-26)—— 端到端 pipeline 冒烟测试与 demo,无标注test_v1/:2026-08-04 从 lei_v1 人工挑 10 段业余视频(move 移出,与池物理互斥)/ 0.38h / 0.09 GB。带各自 manifest.jsonl · video_scores.jsonl · posters/,是真正的 held-out 评测集SHA256SUMS.txt + 每包 README/LICENSE