opensportslib 0.0.1.dev11__tar.gz → 0.0.1.dev13__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {opensportslib-0.0.1.dev11/opensportslib.egg-info → opensportslib-0.0.1.dev13}/PKG-INFO +1 -1
- opensportslib-0.0.1.dev13/opensportslib/config/localization-e2e-ocv.yaml +141 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/datasets/localization_dataset.py +595 -558
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13/opensportslib.egg-info}/PKG-INFO +1 -1
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib.egg-info/SOURCES.txt +1 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/pyproject.toml +1 -1
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/LICENSE +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/LICENSE-COMMERCIAL +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/MANIFEST.in +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/README.md +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/examples/quickstart/basic_classification.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/examples/quickstart/basic_localization.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/apis/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/apis/classification.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/apis/localization.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/classification.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/classification_tracking.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/graph_tracking_classification/avgpool.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/graph_tracking_classification/gin.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/graph_tracking_classification/graphconv.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/graph_tracking_classification/graphsage.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/graph_tracking_classification/maxpool.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/graph_tracking_classification/noedges.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/localization.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/config/sngar_frames.yaml +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/loss/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/loss/builder.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/loss/calf.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/loss/ce.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/loss/combine.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/loss/nll.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/optimizer/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/optimizer/builder.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/sampler/weighted_sampler.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/scheduler/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/scheduler/builder.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/trainer/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/trainer/classification_trainer.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/trainer/localization_trainer.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/checkpoint.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/config.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/data.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/ddp.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/default_args.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/lightning.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/load_annotations.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/seed.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/video_processing.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/core/utils/wandb.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/datasets/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/datasets/builder.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/datasets/classification_dataset.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/datasets/utils/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/datasets/utils/tracking.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/metrics/classification_metric.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/metrics/localization_metric.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/backbones/builder.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/base/contextaware.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/base/e2e.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/base/learnablepooling.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/base/tracking.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/base/vars.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/base/video.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/base/video_mae.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/builder.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/heads/builder.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/neck/builder.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/common.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/impl/__init__.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/impl/asformer.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/impl/calf.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/impl/gsm.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/impl/gtad.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/impl/tsm.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/litebase.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/modules.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/shift.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib/models/utils/utils.py +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib.egg-info/dependency_links.txt +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib.egg-info/requires.txt +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/opensportslib.egg-info/top_level.txt +0 -0
- {opensportslib-0.0.1.dev11 → opensportslib-0.0.1.dev13}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: opensportslib
|
|
3
|
-
Version: 0.0.1.
|
|
3
|
+
Version: 0.0.1.dev13
|
|
4
4
|
Summary: OpenSportsLib is the professional library, designed for advanced video understanding in sports. It provides state-of-the-art tools for action recognition, spotting, retrieval, and captioning, making it ideal for researchers, analysts, and developers working with sports video data.
|
|
5
5
|
Author: Jeet Vora
|
|
6
6
|
Requires-Python: >=3.12
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
TASK: localization
|
|
2
|
+
|
|
3
|
+
dali: false
|
|
4
|
+
|
|
5
|
+
DATA:
|
|
6
|
+
dataset_name: SoccerNet
|
|
7
|
+
data_dir: /home/vorajv/opensportslib/SoccerNet/annotations/
|
|
8
|
+
classes:
|
|
9
|
+
- PASS
|
|
10
|
+
- DRIVE
|
|
11
|
+
- HEADER
|
|
12
|
+
- HIGH PASS
|
|
13
|
+
- OUT
|
|
14
|
+
- CROSS
|
|
15
|
+
- THROW IN
|
|
16
|
+
- SHOT
|
|
17
|
+
- BALL PLAYER BLOCK
|
|
18
|
+
- PLAYER SUCCESSFUL TACKLE
|
|
19
|
+
- FREE KICK
|
|
20
|
+
- GOAL
|
|
21
|
+
|
|
22
|
+
epoch_num_frames: 500000
|
|
23
|
+
mixup: true
|
|
24
|
+
modality: rgb
|
|
25
|
+
crop_dim: -1
|
|
26
|
+
dilate_len: 0 # Dilate ground truth labels
|
|
27
|
+
clip_len: 100
|
|
28
|
+
input_fps: 25
|
|
29
|
+
extract_fps: 2
|
|
30
|
+
imagenet_mean: [0.485, 0.456, 0.406]
|
|
31
|
+
imagenet_std: [0.229, 0.224, 0.225]
|
|
32
|
+
target_height: 224
|
|
33
|
+
target_width: 398
|
|
34
|
+
|
|
35
|
+
train:
|
|
36
|
+
type: VideoGameWithOpencv
|
|
37
|
+
classes: ${DATA.classes}
|
|
38
|
+
output_map: [data, label]
|
|
39
|
+
video_path: ${DATA.data_dir}/train/
|
|
40
|
+
path: ${DATA.train.video_path}/annotations-2024-224p-train.json
|
|
41
|
+
dataloader:
|
|
42
|
+
batch_size: 8
|
|
43
|
+
shuffle: true
|
|
44
|
+
num_workers: 4
|
|
45
|
+
pin_memory: true
|
|
46
|
+
prefetch_factor: 1
|
|
47
|
+
|
|
48
|
+
valid:
|
|
49
|
+
type: VideoGameWithOpencv
|
|
50
|
+
classes: ${DATA.classes}
|
|
51
|
+
output_map: [data, label]
|
|
52
|
+
video_path: ${DATA.data_dir}/valid/
|
|
53
|
+
path: ${DATA.valid.video_path}/annotations-2024-224p-valid.json
|
|
54
|
+
dataloader:
|
|
55
|
+
batch_size: 8
|
|
56
|
+
shuffle: false
|
|
57
|
+
num_workers: 4
|
|
58
|
+
pin_memory: true
|
|
59
|
+
prefetch_factor: 1
|
|
60
|
+
|
|
61
|
+
valid_data_frames:
|
|
62
|
+
type: VideoGameWithOpencvVideo
|
|
63
|
+
classes: ${DATA.classes}
|
|
64
|
+
output_map: [data, label]
|
|
65
|
+
video_path: ${DATA.valid.video_path}
|
|
66
|
+
path: ${DATA.valid.path}
|
|
67
|
+
overlap_len: 0
|
|
68
|
+
dataloader:
|
|
69
|
+
batch_size: 8
|
|
70
|
+
shuffle: false
|
|
71
|
+
num_workers: 4
|
|
72
|
+
pin_memory: true
|
|
73
|
+
prefetch_factor: 1
|
|
74
|
+
|
|
75
|
+
test:
|
|
76
|
+
type: VideoGameWithOpencvVideo
|
|
77
|
+
classes: ${DATA.classes}
|
|
78
|
+
output_map: [data, label]
|
|
79
|
+
video_path: ${DATA.data_dir}/test/
|
|
80
|
+
path: ${DATA.test.video_path}/annotations-2024-224p-test.json
|
|
81
|
+
results: results_spotting_test
|
|
82
|
+
nms_window: 2
|
|
83
|
+
metric: tight
|
|
84
|
+
overlap_len: 50
|
|
85
|
+
dataloader:
|
|
86
|
+
batch_size: 8
|
|
87
|
+
shuffle: false
|
|
88
|
+
num_workers: 4
|
|
89
|
+
pin_memory: true
|
|
90
|
+
|
|
91
|
+
challenge:
|
|
92
|
+
type: VideoGameWithOpencvVideo
|
|
93
|
+
overlap_len: 50
|
|
94
|
+
output_map: [data, label]
|
|
95
|
+
path: ${DATA.data_dir}/challenge/annotations.json
|
|
96
|
+
dataloader:
|
|
97
|
+
batch_size: 4
|
|
98
|
+
shuffle: false
|
|
99
|
+
|
|
100
|
+
MODEL:
|
|
101
|
+
type: E2E
|
|
102
|
+
runner:
|
|
103
|
+
type: runner_e2e
|
|
104
|
+
backbone:
|
|
105
|
+
type: rny008_gsm
|
|
106
|
+
head:
|
|
107
|
+
type: gru
|
|
108
|
+
multi_gpu: true
|
|
109
|
+
load_weights: null
|
|
110
|
+
|
|
111
|
+
TRAIN:
|
|
112
|
+
type: trainer_e2e
|
|
113
|
+
num_epochs: 10
|
|
114
|
+
acc_grad_iter: 1
|
|
115
|
+
base_num_valid_epochs: 30
|
|
116
|
+
start_valid_epoch: 4
|
|
117
|
+
valid_map_every: 1
|
|
118
|
+
criterion_valid: map
|
|
119
|
+
|
|
120
|
+
criterion:
|
|
121
|
+
type: CrossEntropyLoss
|
|
122
|
+
|
|
123
|
+
optimizer:
|
|
124
|
+
type: AdamWithScaler
|
|
125
|
+
lr: 0.01
|
|
126
|
+
|
|
127
|
+
scheduler:
|
|
128
|
+
type: ChainedSchedulerE2E
|
|
129
|
+
acc_grad_iter: 1
|
|
130
|
+
num_epochs: ${TRAIN.num_epochs}
|
|
131
|
+
warm_up_epochs: 3
|
|
132
|
+
|
|
133
|
+
SYSTEM:
|
|
134
|
+
log_dir: ./logs
|
|
135
|
+
save_dir: ./checkpoints
|
|
136
|
+
work_dir: ${SYSTEM.save_dir}
|
|
137
|
+
seed: 42
|
|
138
|
+
GPU: 4 # number of gpus to use
|
|
139
|
+
device: cuda # auto | cuda | cpu
|
|
140
|
+
gpu_id: 0 # device id for single gpu training
|
|
141
|
+
|