The demo of ST-NBNN for skeleton-based action recognition
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Demo Code -- ST-NBNN for Skeleton-based Action Recognition


  • ANN ( Approximate Nearest Neighbor )
  • Linear SVM ( Matlab )
  • CVX Toolbox ( Matlab )


  1. In NBNN folder, run make to compile nbnn.cpp file.
  2. Run nbnn.exe to generate spatial temporal matrix ( stored in NBNN / MHAD folder ) .
  3. Run dataTrans.m in . / NBNN / MHAD folder to transfer ST-matrix to mat format.
  4. Copy generated mat file data_X.mat to . / ST-NBNN / MHAD.
  5. Run demo.m in ST-NBNN folder.


  • You may need to re-complie the ANN, Liblinear and CVX toolboxes depending on what OS you use.
  • The MHAD dataset provided is down-sampled by picking one frame of each 20 frames due to the large size. The expected results would be 89.1% for NBNN and 100% for ST-NBNN.


Please cite the following paper if you use this source code in your research.

author    = {Weng, Junwu and Weng, Chaoqun and Yuan, Junsong},  
title     = {Spatio-Temporal Naive-Bayes Nearest-Neighbor (ST-NBNN) for Skeleton-Based Action Recognition},  
booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},  
month     = {July},  
year      = {2017}