mac2025-mar
Code for MAC2025 Track 1: Micro-Action Recognition
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.2%) to scientific vocabulary
Repository
Code for MAC2025 Track 1: Micro-Action Recognition
Basic Info
- Host: GitHub
- Owner: ruoyxue
- License: apache-2.0
- Language: Python
- Default Branch: main
- Size: 14.8 MB
Statistics
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Official Codes for The MAC 2025 Grand Challenge Track 1
1. Data preparation
- Downlaod Track1 dataset in data or other floder as following:
-data
|-annotations
|-train
|-train_val (merge train and val)
|-val
|-test
- You need to prepare the virtual environment as follows:
conda create --name mar
conda activate mar
pip install -r requirements.txt
1.1 Balance data
Those videos less than 200 are copied several times to mitigate the severe data imbalance, which is a commonly used trick.
python data_process/data_aug.py
1.2 Instance Detection
Pretrained people detector is employed to locate the interviewed person. Specifically, the bounding box of person instance is detected by YOLOv8m. All the bounding boxes are saved in pickle format.
python data_process/predict_video.py
2. Training
Before training your model following our tutorial, please make sure that the path of instance is right in line 68-73 of mmaction/datasets/video_dataset.py.
Make sure the path of dataset in config file.
OMP_NUM_THREADS=1 CUDA_VISIBLE_DEVICES='0,1,2,3' bash tools/dist_train.sh configs_train_val/videomae2-base_baseline.py 4 --work-dir <your_work_dir_path>
3. Testing Inference
With corresponding configuration, you can inference model forward and save the results in pickle format.
``` OMPNUMTHREADS=1 CUDAVISIBLEDEVICES='0,1' bash tools/disttest.sh configstrainval/videomae2-basebaseline.py MAC-2025MAR/checkpoints/videomae2-basebaseline/pth 2 workdirstestsubset/videomae2-basebaseline_clip10
(optional: TTA reference) OMPNUMTHREADS=1 CUDAVISIBLEDEVICES='0,1' bash tools/disttest.sh configstrainval/videomae2-basebaseline.py MAC-2025MAR/checkpoints/videomae2-basebaseline/pth 2 workdirstestsubset/videomae2-basebaselineclip10tta
(optinal: merge TTA results) python tta.py ```
4. Submission
More important, model performance could be improved further by weighting the different predictions via Model ensembling, a simple yet useful trick.
python assemble_models.py
Our final submission is prediction.csv and our checkpoints can be downloaded from https://huggingface.co/ruoyxue/MAC2025_MAR/tree/main.
Owner
- Name: ruoyxue
- Login: ruoyxue
- Kind: user
- Repositories: 2
- Profile: https://github.com/ruoyxue
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - name: "MMAction2 Contributors" title: "OpenMMLab's Next Generation Video Understanding Toolbox and Benchmark" date-released: 2020-07-21 url: "https://github.com/open-mmlab/mmaction2" license: Apache-2.0
GitHub Events
Total
- Watch event: 1
- Push event: 1
- Create event: 2
Last Year
- Watch event: 1
- Push event: 1
- Create event: 2
Dependencies
- pytorch/pytorch ${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel build
- pytorch/pytorch ${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel build
- Pillow *
- decord >=0.4.1
- einops *
- matplotlib *
- numpy *
- opencv-contrib-python *
- scipy *
- torch >=1.3
- docutils ==0.18.1
- einops *
- modelindex *
- myst-parser *
- opencv-python *
- scipy *
- sphinx ==6.1.3
- sphinx-notfound-page *
- sphinx-tabs *
- sphinx_copybutton *
- sphinx_markdown_tables *
- sphinxcontrib-jquery *
- tabulate *
- mmcv >=2.0.0rc4,<2.2.0
- mmengine >=0.7.1,<1.0.0
- transformers >=4.28.0
- PyTurboJPEG *
- av >=9.0
- future *
- imgaug *
- librosa *
- lmdb *
- moviepy *
- openai-clip *
- packaging *
- pims *
- soundfile *
- tensorboard *
- wandb *
- mmcv *
- titlecase *
- torch *
- torchvision *
- coverage * test
- flake8 * test
- interrogate * test
- isort ==4.3.21 test
- parameterized * test
- pytest * test
- pytest-runner * test
- xdoctest >=0.10.0 test
- yapf * test
- decorator ==4.4.2
- intel-openmp ==2019.0
- joblib ==0.15.1
- mkl ==2019.0
- numpy ==1.18.4
- olefile ==0.46
- pandas ==1.0.3
- python-dateutil ==2.8.1
- pytz ==2020.1
- six ==1.14.0
- youtube-dl *
- decorator ==4.4.2
- intel-openmp ==2019.0
- joblib ==0.15.1
- mkl ==2019.0
- numpy ==1.18.4
- olefile ==0.46
- pandas ==1.0.3
- python-dateutil ==2.8.1
- pytz ==2020.1
- six ==1.14.0
- youtube-dl *
- decorator ==4.4.2
- intel-openmp ==2019.0
- joblib ==0.15.1
- mkl ==2019.0
- numpy ==1.18.4
- olefile ==0.46
- pandas ==1.0.3
- python-dateutil ==2.8.1
- pytz ==2020.1
- six ==1.14.0
- youtube-dl *
- decorator ==4.4.2
- intel-openmp ==2019.0
- joblib ==0.15.1
- mkl ==2019.0
- numpy ==1.18.4
- olefile ==0.46
- pandas ==1.0.3
- python-dateutil ==2.8.1
- pytz ==2020.1
- six ==1.14.0
- youtube-dl *