Practical session 3: Human action recognition
Short Course at University of Trento
July 7-10, 2014 


Goal  
The goal of this practical is to get basic practical experience with local space-time features and bag-of-features action recognition in video. The practical session will contain the following steps:

  • Part 1: Load, vector-quantize, and illustrate clusters of space-time features in video
  • Part 2: Build bag-of-features video representation
  • Part 3: Train and test SVM classifiers for human actions in Hollywood movies.


Getting started 
Before the start, get the code and the data from practical-action-recognition.zip (250Mb) UnZip the archive and start Matlab in the directory practical-action-recognition/matlab


Exercise description
Open and edit the script exercise.m in Matlab editor. The script contains commented code and description for all steps of this exercise. You will need to fill in some parts of this script with your own code. The steps of the exercise requiring your code modification are marked in red below.

  • Part 1: Load, quantize and illustrate space-time features 
    STIP Features have been pre-computed for two example sequences. Follow the code and illustrate the features, then run k-means clustering on the features of the first sequence to build visual vocabulary. Illustrate features corresponding to the first two most common visual words.

       1.1 Vector-quantize features of the second sequence and illustrate features assigned to the two most
            most common visual words.




    Question 1: Provide your code for the step 1.1 above.


  • Part 2: Build bag-of-features video representation  
    Follow the code and illustrate pre-computed STIP features for a sample video sequence from a movie. Load sample names and action labels for the training and test subsets of the dataset. Next:

       2.1 Fill-in your own code that constructs L2-normalized bag-of-words video representation for every
            training and test sample.    


    Question 2: Provide your code for the step 2.1 above.


  • Part 3: BOF-SVM action classification
    Follow the provided code to train and test action classification using your previously computed BOF representation and SVM classifier. Compare classification results for 

       3.1 Hellinger vs. Linear kernel
       3.2 Different values of C-parameter
       3.3 Different action classes



  • Question 3: Provide your results and explanations for the steps 3.1-3.3 above. Illustrate results with a table of average precision values (AP) per-class and mean average precision values (mAP) for different parameters of the method. What observations can you make from the comparisons? What is the chance performance for different classes? Compare your results to results reported in Wang et al. BMVC2009.


    Reporting

    • Write a short report with answers to the above questions marked by Question #.
    • Make a PDF for your report named as Practical3_YourLastName_YourFirstName.pdf
    • Send PDF report to <ivan.laptev@inria.fr>