RepoBaidu (ERNIE)Baidu (ERNIE)published Aug 1, 2022seen 5d

PaddlePaddle/PaddleSports

Python

Open original ↗

Captured source

source ↗
published Aug 1, 2022seen 5dcaptured 16hhttp 200method plain

PaddlePaddle/PaddleSports

Language: Python

License: Apache-2.0

Stars: 126

Forks: 22

Open issues: 2

Created: 2022-08-01T12:09:36Z

Pushed: 2023-03-08T08:28:52Z

Default branch: develop

Fork: no

Archived: no

README:

PaddleSports

📣 近期更新

  • 🔥2022.11.30 发布 足球"AI懂球帝"以及相关[案例库](./10-applications/01-football/)
  • 亮相WAVE SUMMIT+大会AI开发者集市,敬请关注;
  • 涵盖四大板块超15种算法及足球领域解决方案;
  • 💥"AI懂球帝"带你看世界杯 -- 卡塔尔世界杯示例demo更新;

框架介绍

PaddleSports是飞桨面向体育场景的端到端开发套件,实现人工智能技术与体育行业的深度融合,目标打造“AI+Sports”的标杆案例集。PaddleSports的特色如下:

1. 整体采用“5W1H”的产品架构,即:[*when*](#1-when)(什么时间),[*where*](#2-where)(什么位置),[*who*](#3-who)(是谁),[*what*](#4-what)(发生了什么),[*why*](#5-why)(为什么),[*how*](#6-how)(怎么样)。系统梳理人工智能技术在体育行业的研究、应用、落地。

2. *AI模型*:从精度、速度、集成度三个维度进行性能评测。AI技术不仅是深度学习,同时整理了经典3D建模,SLAM,机器学习,以及硬件集成开发等工作,目标打造软硬一体的“AI+Sports”开发套件。

3. [*数据*](#7-data):除了各个已有的公开数据集来评测深度模型的性能外,将首次推出[*SportsBenchmark*](#8-benchmark),力争能够用一个数据集来评测所有算法模型。

4. [*工具*](#9-tools):面向体育场景的工具集,比如标注工具、检测工具、识别工具等,具有All-in-One,AutoRun的特点。

5. [*应用*](#10-applications):涵盖足球、跳水、乒乓球、花样滑冰、健身、篮球、蹦床、大跳台、速度滑冰、跑步等热门的体育运动。

分模块介绍

该部分详细介绍“5W1H”各个模块的内容。

1. [*when*](./01-sports_when/)

:movie_camera:示例demo加载中: [下载](./image/)

示例动作识别截图:

  “when”模块重点从时域角度回答以下问题:

  1)输入一段视频,首先判断是什么体育运动;

  2)从一段视频中,精确分割出体育运动的起止时间;

  3)判断每一帧属于哪个动作,以跳水三米板为例,动作过程分为:走板、起跳、空中、入水等阶段。

  4)时间同步,针对多相机同步问题,整理了硬件同步和软件同步两种控制方法。

  5)编解码,包括视频编解码和音频编解码。

| 任务 | 技术方向 | 技术细分 | 算法模型 | |-----------------|--------------------|-----------------------------|-----------------------------------------------------| | 1.when | 1.1) 视频分类 | 视频分类(是什么体育项目) | PP-TSM | | | | | PP-TimeSformer | | | | | SlowFast | | | | | AttentionLSTM | | | | | MoViNet | | | 1.2) 视频分割 | 片段切割(起始点,终止点) | BMN | | | 1.3) 视频理解 | 动作识别(每一帧属于什么动作) | MS-TCN | | | | | CFBI | | | | | ASRF | | | 1.4) 硬件同步 | 硬件同步 | PTP同步,IEEE 1588 | | | | 软件同步 | CPU时钟同步 | | | 1.5) 编解码 | 视频编码 | H.264/MPEG-4 AVC | | | | 音频编码 | WAV/MP3/AAC | | | | | |

2. [*where*](./02-sports_where/)

:movie_camera:示例demo加载中:

  “where”模块重点分析:前景(运动员)、背景(场馆)、相机,这三类对象的位置/位姿的信息:

  1)运动员整体位姿:图像/视频中运动员的2D/3D定位,包含:2D/3D检测、2D分割、2D/3D跟踪等;

  2)运动员局部位姿:运动员的骨骼姿态的分析,从粗粒度到细粒度,包含:2D骨骼关键点、2D骨骼姿态、3D骨骼姿态、2D-3D稠密映射、3D人体重建、3D人体动画等;

  3)背景3D重建:利用多维传感器数据,1比1重建场馆的3D信息,相关技术包含:Simultaneous Localization and Mapping (SLAM)、Structure-from-Motion (SfM) 等;

  4)相机6-DoF位姿:恢复相机的6-DoF位姿(位置xyz,旋转αβγ),有经典的PNP算法,以及深度模型算法。

| 任务 | 技术方向 | 技术细分 | 算法模型 | |-----------------|--------------------|-----------------------------|-----------------------------------------------------| | 2.where | 2.1) 2D检测 | 一阶段通用目标检测 | PP-YOLOE | | | | | PP-PicoDet | | | | 二阶段通用目标检测 | Faster-RCNN | | | | 人体检测分析 | PP-Human2.0 | | | | | PP-Pedestrian | | | | 水花/足球/篮球等小目标检测 | FPN,PP-YOLOE | | | | | | | | 2.2) 2D分割 | 前景对象/背景分割 | Mask-RCNN | | | | | SOLOv2 | | | | | PP-LiteSeg | | | | | DeepLabV3P | | | | 交互式分割 | EISeg | | | | 人体分割 | PP-HumanSeg | | | | 人体毛发级精准分割 | Matting | | | | | Human Matting | | | | 视频目标分割 | CFBI | | | | | MA-Net | | | | 视频运动物体分割 | Motion Segmentation | | | | 视频人体分割 Video Matting | BackgroundMattingV2 | | | | | | | | 2.3) 2D跟踪 | 人体跟踪 | ByteTrack | | | | 运动轨迹 | PP-Tracking | | | | | | | | 2.4) 2D骨骼 | Top-Down | PP-TinyPose | | | | | HR-Net | | | | Bottom-Up | OpenPose | | | | | MoveNet | | | | | | | | 2.5) 3D骨骼 | 单目 | PP-TinyPose3D | | | | | Position-based | | | | | Angle-based | | | | | 2D + Depth-based | | | | | 2D + IK | | | | 多目 | Calibration | | | | | Fusion | | | | 深度相机 | Kinect 3D Tracking | | | | | | | | 2.6) 2D/3D稠密映射 | 2D-2D Dense Correspondences | DeepMatching | | | | 2D-3D Dense Correspondences | DensePose | | | | | | | | 2.7) 3D人体重建 | Template Model | SMPL | | | | | VIBE | | | | | PyMaf | | | | | | | | 2.8) SLAM | 静态 | 单目 ORB-SLAM... | | | | | 深度 KinectFusion... | | | | | 激光 LOAM | | | | 动态 | DynamicFusion | | | | | DynSLAM | | | | | | | | 2.9) 相机6-DoF定位 | 内参 | 张氏标定法 | | | | 外参 | 单张图像 PNP | | | | | 多张图像 SfM, SLAM | | | | | |

3. [*who*](./03-sports_who/)

:movie_camera:示例demo加载中:

  “who”模块重点分析:图像/视频中有哪几类人员,分别是谁,特定人员在整场比赛的集锦等信息:

  1)人员分类:把图像/视频中运动员、观众、裁判、后勤工作人员进行区分;

  2)运动员识别:识别出特定运动员,包含:人脸识别、人体识别、号码簿识别等;

  3)运动员比赛集锦:自动生成该运动员整场比赛的视频集锦。

| 任务 | 技术方向 | 技术细分 | 算法模型 | |-----------------|--------------------|-----------------------------|-----------------------------------------------------| | 3.who | 3.1) 人员分类 | 运动员、裁判、观众、后勤人员 | PP-LCNetV2.md | | | 3.2) 运动员识别 | 人脸检测 | BlazeFace | | | | 人脸识别 | Dlib | | | | 基于人体的运动员识别 | Re-ID | | | 3.3) “一人一档” | 运动员Re-ID | MultiSports | | | | | |

4. [*what*](./04-sports_what/)

:movie_camera:示例demo加载中: (超分, 图生文, 图片虚拟合成)

  “what”模块重点分析体育比赛画面中呈现的信息,包含:运动、语音、视觉、多模态等:

  1)运动属性,从视频前后帧信息推断运动信息,包含2D光流以及3D场景流相关技术;

  2)语义属性,包含:图像/视频检索识别,视频动作识别,image/video caption等;

  3)视觉属性,包含:画质增强,超分辨率,2D转3D,3D实时交互等;

  4)多模态属性,视觉数据与语音数据、文本数据联合分析。

| 任务 | 技术方向 | 技术细分 | 算法模型 | |-----------------|--------------------|-----------------------------|-----------------------------------------------------| | 4.what | 4.1) 运动属性 | 2D Optical Flow (经典算法) | Horn-Schunck光流法 | | | | | Lucas-Kanade光流法 | | | | | Block-Matching光流法 | | | | | Dual-TVL1 | | | | | DeepFlow-v2 | | | | | Global Patch Collider | | | | 2D Optical Flow (深度学习) | RAFT (ECCV 2020 best paper) | | | | | FlowNet1.0 | | | | | FlowNet2.0 | | | | | NVIDIA SDK | | | | 3D Scene Flow | FlowNet3D | | | | | Just Go with the Flow | | | | | MotionNet | | | | | 2D-3D Expansion | | | 4.2) 语义属性 | 图像检索识别 | PP-Lite-Shitu | | | | | PP-LCNetV2 | | | | 视频动作识别 | CTR-GCN | | | | | ST-GCN | | | | | AGCN | | | | Image Caption | COCO Caption | | | | | Im2Text | | | | Video Caption | ActivityNet | | | | OCR | PaddleOCR | | | 4.3) 视觉属性 | 画质增强 | Space-Time-Aware Multi-Resolution Video Enhancement | | | | 图像/视频去噪 | FastDVDnet | | | | 超分辨率 | Super Resolution | | | | 图像填补 | Inpainting | | | | 2D转3D | NeRF | | | | 3D Visualization | Maya | | | | | Unity | | | | | Unreal | | | 4.4) 多模态属性 | 文本+视觉 | VideoBERT | | | | | VisualBERT | | | | | |

5. [*why*](./05-sports_why/)

  “why”模块重点分析影响运动表现的因素,并尝试预测伤病的可能性、比赛成绩等:

  1)采集生理、心理、体能相关数据,并与运动表现进行关联性分析;

  2)从生物力学的角度,对动作细节进行纠正;

  3)从内负荷、外负荷的角度,在确保训练强度的情况下,尽可能减少伤病发生的可能性。

| 任务 | 技术方向 | 技术细分 | 算法模型 | |-----------------|--------------------|-----------------------------|-----------------------------------------------------| | 5.why | 5.1) 分析 | 技术、生理、心理、体能 | | | | 5.2) 推理 | 生物力学 | | | | 5.3) 预测 | 内负荷、外负荷 | | | | | | |

6. [*how*](./06-sports_how/)

  “how”模块重点分析影响“AI+Sports”技术落地的因素:...

Excerpt shown — open the source for the full document.