Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
201 commits
Select commit Hold shift + click to select a range
298bb95
Rename Tool module to annotation_tool
Jan 22, 2026
b228c8a
Normalize README filenames
Jan 25, 2026
b599ea8
Refactor: normalize naming/comments; update UI flow; add shared area …
Jan 25, 2026
4bab6d3
Create README.md for the whole tool
woshimajintao Jan 25, 2026
3850109
Update README.md
woshimajintao Jan 25, 2026
98af016
Create README.md of UI Part
woshimajintao Jan 25, 2026
09ae9a5
Update README.md
woshimajintao Jan 25, 2026
ae2d9dd
Update README.md
woshimajintao Jan 25, 2026
4756aa9
Update README.md
woshimajintao Jan 25, 2026
326d732
Update README.md
woshimajintao Jan 25, 2026
0ef9ce5
Update README.md
woshimajintao Jan 25, 2026
0d04bec
Create README.md
woshimajintao Jan 25, 2026
15c2237
Create README.md
woshimajintao Jan 25, 2026
568a1d9
Create README.md
woshimajintao Jan 25, 2026
880f71e
Create README.md
woshimajintao Jan 25, 2026
098c816
Create README.md
woshimajintao Jan 25, 2026
067f1dd
Create README.md
woshimajintao Jan 25, 2026
351ff16
Create README.md
woshimajintao Jan 25, 2026
c310416
Update ci.yml
woshimajintao Jan 25, 2026
47ad16e
Update deploy_docs.yml
woshimajintao Jan 25, 2026
a84769c
Update ci.yml based on project architect
woshimajintao Jan 25, 2026
f5a2ddc
Update ci.yml
woshimajintao Jan 25, 2026
169bccd
Update ci.yml
woshimajintao Jan 25, 2026
37d4840
Add files via upload
woshimajintao Jan 25, 2026
d4f4e8a
Update ci.yml
woshimajintao Jan 25, 2026
64dd886
Update ci.yml
woshimajintao Jan 25, 2026
d0d5e05
Update README.md
woshimajintao Jan 25, 2026
0f7ed33
Update README.md
woshimajintao Jan 25, 2026
1516141
Update viewer.py
woshimajintao Jan 25, 2026
31e405e
Delete annotation_tool/style/style_day.qss
woshimajintao Jan 25, 2026
7c11a2e
Update README.md
woshimajintao Jan 25, 2026
b579375
Update README.md
woshimajintao Jan 25, 2026
24d4982
Update style.qss
woshimajintao Jan 25, 2026
d51a9a1
Update models.py
woshimajintao Jan 25, 2026
9119a7c
Update viewer.py
woshimajintao Jan 25, 2026
06d7678
Update dialogs.py
woshimajintao Jan 25, 2026
b5e6b14
Update panels.py
woshimajintao Jan 25, 2026
bc290f1
Update media_player.py
woshimajintao Jan 25, 2026
3db265b
Update history_manager.py
woshimajintao Jan 25, 2026
1b9b3ee
Delete annotation_tool/.vscode directory
woshimajintao Jan 25, 2026
974c8ca
Create README.md
woshimajintao Jan 25, 2026
3c82fe5
Upload Localization Scratch image
woshimajintao Jan 25, 2026
906b969
Upload Dense Action Description scratch
woshimajintao Jan 25, 2026
680f938
Upload Image for Action Description
woshimajintao Jan 25, 2026
99b0d3b
Update README.md
woshimajintao Jan 25, 2026
80ed1a1
Delete annotation_tool/Schema/localization.png
woshimajintao Jan 25, 2026
0069226
Upload Localization Scratch
woshimajintao Jan 25, 2026
7a4a0ec
Delete annotation_tool/Schema directory
woshimajintao Jan 25, 2026
2c984dc
Refactor dialogs.py relationships; move to shared UI
Jan 25, 2026
25cb6f6
Delete scratch directory
woshimajintao Jan 25, 2026
f1d0eff
Update README.md
woshimajintao Jan 25, 2026
1e93622
Update README.md
woshimajintao Jan 25, 2026
f41ac3e
Update README.md
woshimajintao Jan 26, 2026
4360c0a
Update README.md
woshimajintao Jan 26, 2026
dc84e60
Update README.md
woshimajintao Jan 26, 2026
8569454
refactored the project structure by modularizing the UI components fo…
Jan 26, 2026
5e214b5
I refactored the project structure by modularizing the UI components …
Jan 26, 2026
95831d0
Update README.md
woshimajintao Jan 26, 2026
b7d942e
Update README.md
woshimajintao Jan 26, 2026
ef47df0
Update README.md
woshimajintao Jan 26, 2026
2c505ed
Update README.md
woshimajintao Jan 26, 2026
3195721
Update README.md
woshimajintao Jan 26, 2026
d3873d6
Update README.md
woshimajintao Jan 26, 2026
1c4f38e
Create README.md
woshimajintao Jan 26, 2026
d86cd40
Update README.md
woshimajintao Jan 26, 2026
586c3c0
Create README.md
woshimajintao Jan 26, 2026
2d5102a
Update README.md
woshimajintao Jan 26, 2026
bc92d52
Create README.md
woshimajintao Jan 26, 2026
8b0179d
Create README.md
woshimajintao Jan 26, 2026
7b6a960
Update README.md
woshimajintao Jan 26, 2026
dfa7513
Update README.md
woshimajintao Jan 27, 2026
4c3add7
Update README.md
woshimajintao Jan 27, 2026
49c61f6
Update README.md
woshimajintao Jan 27, 2026
bf0ecbf
Update README.md
woshimajintao Jan 27, 2026
b8bd43b
Update README.md
woshimajintao Jan 27, 2026
b67ef9d
Update README.md
woshimajintao Jan 27, 2026
efb669a
Create README.md
woshimajintao Jan 27, 2026
fa90a0c
Reconstruct the Models part
woshimajintao Jan 27, 2026
27ea291
Delete annotation_tool/models.py
woshimajintao Jan 27, 2026
b611461
Update README.md
woshimajintao Jan 27, 2026
86bb65f
Update README.md
woshimajintao Jan 27, 2026
f35f5b8
Update viewer.py
woshimajintao Jan 27, 2026
07976aa
Update README.md
woshimajintao Jan 27, 2026
a26a4ee
Update clip_explorer.py
woshimajintao Jan 27, 2026
348ba40
Update clip_explorer.py
woshimajintao Jan 27, 2026
c770d07
Update class_file_manager.py
woshimajintao Jan 27, 2026
71bf456
Update navigation_manager.py
woshimajintao Jan 27, 2026
68698fc
Update annotation_manager.py
woshimajintao Jan 27, 2026
cc00c33
Update loc_file_manager.py
woshimajintao Jan 27, 2026
42b8223
Update localization_manager.py
woshimajintao Jan 27, 2026
b9accc0
Update localization_manager.py
woshimajintao Jan 27, 2026
0d57e5c
Update localization_manager.py
woshimajintao Jan 27, 2026
b62292c
Update navigation_manager.py
woshimajintao Jan 27, 2026
6a71826
Update project_tree.py
woshimajintao Jan 27, 2026
d9f082f
Update README.md
woshimajintao Jan 27, 2026
3f9ef21
Update viewer.py
woshimajintao Jan 28, 2026
b2d4d3f
Update navigation_manager.py
woshimajintao Jan 28, 2026
0bdc115
Update navigation_manager.py
woshimajintao Jan 28, 2026
cc03103
Update preview.py
woshimajintao Jan 28, 2026
f1b09df
Update spotting_controls.py
woshimajintao Jan 28, 2026
bbdd151
Update timeline.py
woshimajintao Jan 28, 2026
6568479
Update viewer.py
woshimajintao Feb 3, 2026
23c9258
Update editor.py
woshimajintao Feb 3, 2026
0a5bcd6
Update the Workflow of creating a new project
Feb 3, 2026
7b7f529
Update loc_file_manager.py
woshimajintao Feb 3, 2026
832ee8a
Update viewer.py
woshimajintao Feb 3, 2026
6abecdf
Update viewer.py
woshimajintao Feb 3, 2026
d0eda16
Refactor: Move inline styles to style.qss and unify UI components (Co…
Feb 3, 2026
f138e8c
Update loc_file_manager.py
woshimajintao Feb 4, 2026
f2cf228
Update viewer.py
woshimajintao Feb 5, 2026
4d65180
Update viewer.py
woshimajintao Feb 5, 2026
0cfe2fc
Update README.md
woshimajintao Feb 5, 2026
9ad351d
Update README.md
woshimajintao Feb 5, 2026
5929fdf
Update annotation_tool , Add description Tool and replace viewer.py
Feb 5, 2026
bc9fb87
Update README.md
woshimajintao Feb 8, 2026
62c52eb
Update README.md
woshimajintao Feb 8, 2026
a19905e
Update README.md
woshimajintao Feb 8, 2026
35699fd
Create README.md of dense_description
woshimajintao Feb 9, 2026
bae5fc8
Create README.md for dense_description
woshimajintao Feb 9, 2026
b9b4c29
Create README.md
woshimajintao Feb 10, 2026
12f8425
Create UI of dense description
woshimajintao Feb 10, 2026
05bd497
Create the control of dense description
woshimajintao Feb 10, 2026
71a9105
Sync annotation_tool updates from Feb8 (Move the video play to public…
Feb 10, 2026
5eb7e35
Merge pull request #4 from OpenSportsLab/sync-from-feb8-20260210
woshimajintao Feb 10, 2026
be76cba
Delete annotation_tool/README_old.md
woshimajintao Feb 10, 2026
7ddbbbc
Update release.yml
woshimajintao Feb 11, 2026
8cfb6f3
Update release.yml
woshimajintao Feb 11, 2026
0ae9166
Update ci.yml
woshimajintao Feb 11, 2026
0f6fd32
Update release.yml
woshimajintao Feb 11, 2026
a270e69
Update release.yml
woshimajintao Feb 11, 2026
c3e80a9
Update __init__.py
woshimajintao Feb 12, 2026
38cafe0
Update desc_input_widget.py
woshimajintao Feb 12, 2026
15d6204
Update style.qss
woshimajintao Feb 12, 2026
93a454f
Delete annotation_tool/controllers/classification/navigation_manager.py
woshimajintao Feb 12, 2026
9b036db
Delete annotation_tool/controllers/classification/annotation_manager.py
woshimajintao Feb 12, 2026
72cb7b2
Update router.py
woshimajintao Feb 15, 2026
e0a5b87
implemented strict cross-modal JSON validation in Description and Den…
Feb 16, 2026
e736786
Create README.md
woshimajintao Feb 16, 2026
096d021
Add files via upload
woshimajintao Feb 16, 2026
c1076ab
Create README.md
woshimajintao Feb 16, 2026
41b29f4
Upload invalid test JSON of dense description
woshimajintao Feb 16, 2026
26956a3
Update README.md of UI/common
woshimajintao Feb 16, 2026
a017626
Update README.md
woshimajintao Feb 16, 2026
a178952
Delete annotation_tool/ui/description/media_player/preview.py
woshimajintao Feb 16, 2026
59490a9
Create README.md of UI/Description
woshimajintao Feb 16, 2026
e6e64b5
Update README.md
woshimajintao Feb 16, 2026
0fcd465
Update README.md of dense description
woshimajintao Feb 16, 2026
bf5de82
Update README.md of UI
woshimajintao Feb 16, 2026
bd91059
Create README.md
woshimajintao Feb 16, 2026
2bf555f
Update README.md
woshimajintao Feb 16, 2026
f6049c3
Update README.md of Controller
woshimajintao Feb 16, 2026
4d2a545
Update README.md
woshimajintao Feb 17, 2026
94b51e1
Update download_osl_hf.py
woshimajintao Feb 17, 2026
4782642
Update README.md
woshimajintao Feb 17, 2026
dc08a2b
Update README.md
woshimajintao Feb 17, 2026
789b12c
Update viewer.py
woshimajintao Feb 18, 2026
95f76f3
Update __init__.py
woshimajintao Feb 18, 2026
3131b0a
Delete annotation_tool/ui/classification/media_player/preview.py
woshimajintao Feb 18, 2026
5073a91
Update controls.py
woshimajintao Feb 18, 2026
88aeed9
Update loc_file_manager.py
woshimajintao Feb 23, 2026
6df8312
Update desc_file_manager.py
woshimajintao Feb 23, 2026
b6560c5
Update dense_file_manager.py
woshimajintao Feb 23, 2026
da7a374
Update localization_manager.py
woshimajintao Feb 23, 2026
6275ef4
Update dense_manager.py
woshimajintao Feb 23, 2026
eed97ed
Update class_file_manager.py
woshimajintao Feb 24, 2026
ece5dd2
Update loc_file_manager.py
woshimajintao Feb 24, 2026
89ed62f
Update desc_file_manager.py
woshimajintao Feb 24, 2026
e3b28aa
Update dense_file_manager.py
woshimajintao Feb 24, 2026
a9714a2
Update welcome_widget.py
woshimajintao Feb 24, 2026
c7b77d8
Update style.qss
woshimajintao Feb 24, 2026
fdd91aa
Update viewer.py
woshimajintao Feb 24, 2026
5348e2b
Update viewer.py
woshimajintao Feb 24, 2026
fca1f95
Create README.md
woshimajintao Feb 24, 2026
733710a
Upload Soccernet Pro LOGO
woshimajintao Feb 24, 2026
b03a023
Update release.yml
woshimajintao Feb 24, 2026
40827aa
Update release.yml
woshimajintao Feb 24, 2026
8e6ac82
Update ci.yml
woshimajintao Feb 24, 2026
2eb6548
Update ci.yml
woshimajintao Feb 24, 2026
b32ffb8
Update release.yml
woshimajintao Feb 24, 2026
573e5e6
Update ci.yml
woshimajintao Feb 24, 2026
d442193
Update dense_file_manager.py
woshimajintao Feb 24, 2026
4485eeb
Update loc_file_manager.py
woshimajintao Feb 24, 2026
ba61320
Delete docs/assets/classification-UI.png
woshimajintao Feb 25, 2026
3d87551
Delete docs/assets/localization-UI.png
woshimajintao Feb 25, 2026
9d9de62
Create README.md
woshimajintao Feb 25, 2026
abb2dd6
Upload screenshots of main UI pages
woshimajintao Feb 25, 2026
677ee9c
Update gui_overview.md
woshimajintao Feb 25, 2026
3e5ec00
Update dynamic_widgets.py
woshimajintao Feb 25, 2026
9636b40
Update style.qss
woshimajintao Feb 25, 2026
6de47e0
Upload invalid JSON of classification
woshimajintao Feb 25, 2026
8f3d168
Delete test_data/invalid_json/invalid_classification_json/IMPORT01-2.…
woshimajintao Feb 25, 2026
5d04111
Delete test_data/invalid_json/invalid_classification_json/IMPORT01.1.…
woshimajintao Feb 25, 2026
cb018c2
Delete test_data/invalid_json/invalid_classification_json/IMPORT02-2.…
woshimajintao Feb 25, 2026
373c71f
Delete test_data/invalid_json/invalid_classification_json/IMPORT02.1.…
woshimajintao Feb 25, 2026
39c221c
Delete test_data/invalid_json/invalid_classification_json/IMPORT03.json
woshimajintao Feb 25, 2026
58c108b
Delete test_data/invalid_json/invalid_classification_json/IMPORT04.json
woshimajintao Feb 25, 2026
3256847
Update welcome_widget.py
woshimajintao Feb 25, 2026
5eb6fbc
Update README.md
woshimajintao Feb 25, 2026
b257626
Update ci.yml
woshimajintao Feb 25, 2026
87a5d7a
Update release.yml
woshimajintao Feb 25, 2026
7e9731e
Update deploy_docs.yml
woshimajintao Feb 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .DS_Store
Binary file not shown.
127 changes: 96 additions & 31 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,13 @@ on:
push:
branches:
- main
- dev-jintao
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

permissions:
contents: read
actions: write
Expand All @@ -16,13 +21,24 @@ jobs:
runs-on: windows-latest
defaults:
run:
working-directory: Tool
working-directory: annotation_tool
steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: "3.9"
python-version: "3.11"

- name: Cache pip
uses: actions/cache@v4
with:
path: |
~\AppData\Local\pip\Cache
~\AppData\Local\pip\cache
~\AppData\Roaming\pip\Cache
key: ${{ runner.os }}-pip-${{ hashFiles('annotation_tool/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-

- name: Install requirements
run: |
Expand All @@ -37,104 +53,153 @@ jobs:
try { pip cache purge } catch { Write-Host "pip cache purge failed (ignored)" }

- name: Build exe
shell: pwsh
run: >
python -m PyInstaller --noconfirm --clean --windowed --onefile
--name "SoccerNetProAnalyzer"
--add-data "style;style"
--add-data "ui;ui"
--add-data "controllers;controllers"
--add-data "image;image"
"main.py"

- name: Zip Windows binary (manual runs only)
if: github.event_name == 'workflow_dispatch'
shell: pwsh
run: |
pyinstaller --noconfirm --clean --windowed --onefile `
--name "SoccerNetProAnalyzer" `
--add-data "style;style" `
--add-data "ui;ui" `
--add-data "ui2;ui2" `
"main.py"

# 为了避免你再次 hit artifact quota:只在网页端手动 Run workflow 时上传
Move-Item -Force dist\SoccerNetProAnalyzer.exe dist\SoccerNetProAnalyzer-win.exe
Compress-Archive -Path dist\SoccerNetProAnalyzer-win.exe -DestinationPath dist\SoccerNetProAnalyzer-win.zip -Force

- name: Upload artifact (manual runs only)
if: github.event_name == 'workflow_dispatch'
uses: actions/upload-artifact@v4
with:
name: SoccerNetProAnalyzer-Windows
path: Tool/dist/SoccerNetProAnalyzer.exe
path: annotation_tool/dist/SoccerNetProAnalyzer-win.zip
retention-days: 3

build-macos:
name: Build on macOS
runs-on: macos-latest
defaults:
run:
working-directory: Tool
working-directory: annotation_tool
steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: "3.9"
python-version: "3.11"

- name: Cache pip
uses: actions/cache@v4
with:
path: |
~/Library/Caches/pip
~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('annotation_tool/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-

- name: Install requirements
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt

- name: Cleanup before PyInstaller
shell: bash
run: |
rm -rf build dist *.spec
pip cache purge || true

- name: Build binary
- name: Build app
shell: bash
run: >
python -m PyInstaller --noconfirm --clean --windowed
--name "SoccerNetProAnalyzer"
--add-data "style:style"
--add-data "ui:ui"
--add-data "controllers:controllers"
--add-data "image:image"
"main.py"

- name: Zip macOS app (manual runs only)
if: github.event_name == 'workflow_dispatch'
shell: bash
run: |
pyinstaller --noconfirm --clean --windowed --onefile \
--name "SoccerNetProAnalyzer" \
--add-data "style:style" \
--add-data "ui:ui" \
--add-data "ui2:ui2" \
"main.py"
ditto -c -k --sequesterRsrc --keepParent "dist/SoccerNetProAnalyzer.app" "dist/SoccerNetProAnalyzer-mac.zip"

- name: Upload artifact (manual runs only)
if: github.event_name == 'workflow_dispatch'
uses: actions/upload-artifact@v4
with:
name: SoccerNetProAnalyzer-macOS
path: Tool/dist/SoccerNetProAnalyzer
path: annotation_tool/dist/SoccerNetProAnalyzer-mac.zip
retention-days: 3

build-linux:
name: Build on Linux
runs-on: ubuntu-latest
defaults:
run:
working-directory: Tool
working-directory: annotation_tool
steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: "3.9"
python-version: "3.11"

- name: Install system deps (Qt/OpenCV runtime)
shell: bash
run: |
sudo apt-get update
sudo apt-get install -y libgl1 libglib2.0-0
sudo apt-get install -y libgl1 libglib2.0-0 libxcb-cursor0

- name: Cache pip
uses: actions/cache@v4
with:
path: |
~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('annotation_tool/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-

- name: Install requirements
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt

- name: Cleanup before PyInstaller
shell: bash
run: |
rm -rf build dist *.spec
pip cache purge || true

- name: Build binary
shell: bash
run: >
python -m PyInstaller --noconfirm --clean --windowed --onefile
--name "SoccerNetProAnalyzer"
--add-data "style:style"
--add-data "ui:ui"
--add-data "controllers:controllers"
--add-data "image:image"
"main.py"

- name: Zip Linux binary (manual runs only)
if: github.event_name == 'workflow_dispatch'
shell: bash
run: |
pyinstaller --noconfirm --clean --windowed --onefile \
--name "SoccerNetProAnalyzer" \
--add-data "style:style" \
--add-data "ui:ui" \
--add-data "ui2:ui2" \
"main.py"
mv -f dist/SoccerNetProAnalyzer dist/SoccerNetProAnalyzer-linux
cd dist
zip -r SoccerNetProAnalyzer-linux.zip SoccerNetProAnalyzer-linux
cd ..

- name: Upload artifact (manual runs only)
if: github.event_name == 'workflow_dispatch'
uses: actions/upload-artifact@v4
with:
name: SoccerNetProAnalyzer-Linux
path: Tool/dist/SoccerNetProAnalyzer
path: annotation_tool/dist/SoccerNetProAnalyzer-linux.zip
retention-days: 3
4 changes: 3 additions & 1 deletion .github/workflows/deploy_docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,10 @@ on:
push:
branches:
- main
- dev-jintao
workflow_dispatch:


permissions:
contents: write

Expand All @@ -20,7 +22,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.9"
python-version: "3.11"

- name: Install dependencies
run: |
Expand Down
Loading