/Deep-Temporal-Repetition-Counting

Source code and dataset of CVPR2020 paper: "Context-aware and Scale-insensitive Temporal Repetition Counting"

Primary LanguagePython

CVPR2020-Deep-Temporal-Repetition-Counting

This is the official implementation of CVPR2020 paper: "Context-aware and Scale-insensitive Temporal Repetition Counting"

This code is implemented based on the project"3D ResNets for Action Recognition".

Requirements

Dataset Preparation

UCFRep

  • Please download the UCF101 dataset here.
  • Convert UCF101 videos from avi to png files, put the png files to data/ori_data/ucf526/imgs/train
  • Create soft link with following commands:
cd data/ori_data/ucf526/imgs
ln -s train val

QUVA

YTsegments

  • Please download the YTSeg dataset in: https://github.com/ofirlevy/repcount
  • Put the label files to data/ori_data/YT_seg/annotations
  • Convert YTsegments videos to png files, put the png files to data/ori_data/YT_seg/imgs

Running the code

Training

Train from scratch

python main.py

If you want to finetune the model pretrained on Kinetics, first you need to download the pretrained model in here and run:

python main.py --pretrain_path = pretrained_model_path

Testing

You can also run the trained model provide by ours (Google Drive or Baidu Netdisk code:na81):

python main.py --no_train --resume_path = trained_model_path

Citation

If you use this code or pre-trained models, please cite the following:

 @InProceedings{Zhang_2020_CVPR,
    author = {Zhang, Huaidong and Xu, Xuemiao and Han, Guoqiang and He, Shengfeng},
    title = {Context-Aware and Scale-Insensitive Temporal Repetition Counting},
    booktitle = {IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
    month = {June},
    year = {2020}
}