This is a TensorFlow implementation of Two-Stream Graph Convolutional Networks for the task of action recognition, as described in our paper:
Junyu Gao, Tianzhu Zhang, Changsheng Xu, I Know the Relationships: Zero-Shot Action Recognition via Two-Stream Graph Convolutional Networks and Knowledge Graphs (AAAI 2019)
The code is developed based on the TensorFlow framework and the Graph Convolutional Network (GCN) repo GCN and zero-shot-gcn.
- Construct a python enviorment with python3.6
- Install TensorFlow >= 1.2.0
- Note the ZSAR performance slightly varies in different versions.
- pip install tensorflow (For CPU)
- pip install tensorflow-gpu (For GPU)
- Install networkx
- pip install networkx
The processed data of UCF101 can be downloaded from Google Driver. After downloading the file, unzip it to the folder ./
python train_two_stream_gcn.py
The above code will automatically train the two-stream GCN model on UCF101 dataset. The test accuracies will be outputted for each training epoch.
Please cite our paper if you use this code in your own work:
@inproceedings{junyu2019AAAI_TS-GCN,
title={I Know the Relationships: Zero-Shot Action Recognition via Two-Stream Graph Convolutional Networks and Knowledge Graphs},
author={Gao, Junyu and Zhang, Tianzhu and Xu, Changsheng},
booktitle={AAAI},
year={2019}
}