Pose from Action: Unsupervised Learning of Pose Features based on Motion

Pose from Action: Unsupervised Learning of Pose Features based on Motion


Human actions are comprised of a sequence of poses. This makes videos of humans a rich and dense source of human poses. We propose an unsupervised method to learn pose features from videos that exploits a signal which is complementary to appearance and can be used as supervision: motion. The key idea is that humans go through poses in a predictable manner while performing actions. Hence, given two poses, it should be possible to model the motion that caused the change between them. We represent each of the poses as a feature in a CNN (Appearance ConvNet) and generate a motion encoding from optical flow maps using a separate CNN (Motion ConvNet). The data for this task is automatically generated allowing us to train without human supervision. We demonstrate the strength of the learned representation by finetuning the trained model for Pose Estimation on the FLIC dataset, for static image action recognition on PASCAL and for action recognition in videos on UCF101 and HMDB51.

1 Introduction

In recent years, there has been a dramatic change in the field of computer vision. Owing to visual feature learning via convolutional neural networks, we have witnessed major performance gains in different areas including image classification [1, 2], object detection [3, 4, 5], 3D scene understanding [6], pose estimation [7] etc. In most cases, visual features are first learned by training for the classification task on the ImageNet dataset followed by fine-tuning the pre-trained network for the task at hand.

While this classification based learning framework has yielded significant gains, it is unclear if this is the right approach to visual feature learning. For example, in case of humans, we do not need millions of category-labeled images/videos to learn visual features. Instead, we can learn a visual representation by observing and actively exploring the dynamic world around us. Furthermore, the manual labeling of images remains a significant bottleneck in exploiting a larger number of images to learn visual representations. As a consequence, there has been rising interest in the area of unsupervised feature learning.

Figure 1: Similar poses are related to similar motions. Hence motion can be used as a supervisory signal to learn appearance representations. We use the following color coding to visualise the optical flow: \capimageImages/code

There are two paradigms for unsupervised feature learning: generative and discriminative. In the generative learning paradigm, we learn a low-dimensional representation that can be used to generate realistic images. These networks use denoising or reconstruction loss with regularization such as sparsity of the learned space. However, the generative learning approaches have been been not been competitive on tasks like object classification or detection.

In the discriminative learning paradigm, the network is trained using standard back-propagation on an auxiliary task for which ground truth can be easily mined in an automated fashion. The hope is that the visual representation learned for this auxiliary task is generalizable and would work for other tasks with simple fine-tuning. Owing to the rise of interest in unsupervised learning, many such auxiliary tasks have been proposed in the recent past. [8] proposed to take pair of patches sample from an image and predict the relative location of the patches, which seems to generalize to suprisingly well to object detection. [9, 10] proposed an approach to take pair of patches and predict the camera motion that caused the change. The ground-truth for this task is obtained via other sensors which measure ego-motion. Finally,  [11] presents an approach to sample a pair of patches via tracking and learn a representation which embeds these patches close in the visual representation space (since they are the same object with some transformations).

While [9, 10, 11] use videos for unsupervised learning, they used other sensors or just different viewpoints to train the appearance models. We argue that there is a complementary and stronger signal in videos to supervise the training of these networks: motion patterns. The key inspiration for our proposed method is that similar pairs of poses are associated with similar motion patterns(See Figure 1). In this paper, we demonstrate how motion patterns in the videos can act as strong supervision to train an appearance representation. We hypothesize that an appearance representation where poses associated to similar motion patterns cluster together could be useful for tasks like Pose Estimation and Action Recognition. We believe that the proposed approach is generic and can be used to learn different kinds of pose-encoding appearance representations based on different kinds of videos. Specifically, in this paper, we choose to work with human action videos since the learnt representations can be semantically associated to human poses. We believe that this idea can provide the missing link in unsupervised learning of visual representations for human actions and human poses.

However, there is still one missing link: how do you compare motion patterns. One way is to use distance metric on hand designed motion features (e.g., 3DHOG, HOF[12]) or the optical flows maps directly. Instead, inspired by the success of the two-stream network[13], we try to jointly learn convolutional features for both the appearance(RGB) and the motion(optical flow) at the same time. Our key idea is to have triplet network where two streams with shared parameters correspond to the first and frame in the video; and the third stream looks at optical flow maps. All the convolutional streams run in a feedforward manner to produce 4096 dimensional vectors. The three streams are then combined to classify if the RGB frames and optical flow channels correspond to each other i.e. does the transformation causes the change in appearance?. Intuitively, solving this task requires the Appearance ConvNet to identify the visual structures in the frame and encode their poses. The Motion ConvNet is expected to efficiently encode the change in pose that the optical flow block represents. We evaluate our trained appearance network by finetuning on the task of pose estimation on the FLIC dataset[14], static image action recognition on PASCAL VOC[15], and action recognition on UCF101[16] and HMDB51[17]. We show that these models perform significantly better than training from random initialisation.

2 Related Work

Unsupervised Learning

Training deep learning models in a supervised fashion generally requires a very large labeled training set. This is infeasible and expensive in a lot of cases. This has led to an increase of attention to unsupervised techniques to train these models. Research in unsupervised representation learning can be broadly divided into two categories - generative and discriminative. The approach proposed in this paper belongs to the latter.

Majority of the discriminative approaches involve intelligently formulating a surrogate task which involves learning from an easily available signal. These tasks are designed such that the deep model is forced to learn semantics relevant to us like object labels, human poses, activity labels, etc. In [8], the formulated task involved predicting the relative location of two patches. Automatically cropping pairs of patches from any image makes the ‘relative location’ signal readily available. The key motivation here is that performing well in this task requires understanding object properties. Hence the Convolutional Neural Network trained to perform this task is shown to perform well on object classification and detection tasks. Similarly, the surrogate task proposed in this paper involves predicting whether a transformation (inferred from optical flow) represents the same transformation as that between a given pair of appearance features.

Unsupervised learning algorithms that learn from videos are extremely valuable since the amount of video data available to us is massive and collecting annotations for them is infeasible. In [11], patches are tracked across frames of videos to generate pairs which are visually dissimilar but semantically same. An unsupervised representation is then learnt by enforcing the similarity on the pair of features extracted for the patches. This structure in the feature space is enforced using a triplet ranking loss which minimises the distance between the pair of features and simultaneously maximises the distance to a feature extracted for a randomly chosen patch. While this approach shows impressive results on a wide range of tasks, it suffers from two drawbacks. First, the constraint explicitly enforced leads to an appearance representation which is invariant to pose, size and shape changes in an object. Second, the spatially and temporally sparse samples of patches do not make use of all the information available in the videos. In contrast, we attempt to learn a representation that encodes the structural changes by making use of densely sampled pairs of frames to capture a large number of variations in poses.

The unsupervised learning approaches which are closely related to our work are video-based approaches which model similarities or differences across frames[18, 19, 9, 20, 21]. A large number of approaches use the idea of temporal coherance to train unsupervised representations. These methods exploit the fact that appearances change slowly between adjacent frames[22].

A recently proposed approach [9] involves learning a representation in which transformations are ‘predictable’. The feature representation is learnt by specifically enforcing the constraint that similar ego-centric motions should produce similar transformations in the feature space. This approach requires a dataset of video frames annotated with the corresponding ego-poses and hence is not scalable. In our proposed approach, we eliminate this requirement by jointly learning to infer a representation for the transformation from optical flow maps which are easy to compute.

Action Recognition and Pose Estimation

The task of recognizing human actions from images and videos has received a lot of attention in computer vision [16, 17, 23, 24]. Activity recognition is a challenging computer vision task since recognizing human actions requires perception of the environment, identifying interaction with objects, understanding pose changes in humans and a variety of other sub-problems. Most successful action recognition methods involve using combinations of appearance, pose and motion information as features [25, 26, 27]. A decade of research in action recognition has led to approaches that show impressive performances on benchmark datasets[28, 29, 30, 31, 32]. The majority of successful algorithms for action classification follow a common pipeline. Appearance or motion features are first extracted either densely or at interest points. This is followed by clustering and generating an encoding. These encoded feature vectors are then classified using various kinds of classifiers. Recently, deep learning based methods have been extended to action recognition[24]. It has been observed that training deep neural networks directly on stacks of video frames is too computationally expensive and does not lead to significant improvements over handcrafted feature based methods[33]. More recent methods operate on individual frames independently since it is observed that this gives similar performance as using a stack of frames [24]. The Two-Stream network[13] is a fully-supervised deep-learning based action recognition method which achieves performances comparable to state-of-the-art. It involves training independent spatial and temporal networks whose classification scores are fused to give the final prediction. Deep learning methods have also been extended to estimating poses in images and videos. The task of pose estimation involves estimating the locations of body parts. [7] uses a deep neural network based regressor to estimate the coordinates of the parts. The model is recursively applied on patches cropped around the previous prediction to obtain better localisation. In [34], a deep convolutional neural network is used to predict heat maps for the location of each body part. The model also uses a spatial fusion technique to capture multi-scale information.

Actions and Poses are very closely related concepts. An action comprises of a sequence of poses in conjunction with interactions with the environment. Videos are a widely available and rich source of actions. As a consequence, they are also the best source for diverse human poses. In [35], a large collection of unlabelled video is searched to augment training data by finding similar poses using the poselet activation vector[27]. To the best of our knowledge, the approach proposed in this paper is the first in attempting to learn pose features from videos using deep networks in an unsupervised fashion.

3 Approach

The goal of this paper is to learn an appearance representation that captures pose properties without the use of any human supervision. We achieve this by formulating a surrogate task for which the ground truth labels are readily available or can be mined automatically. In simple terms, given a change in appearance, the task we formulate involves predicting what transformation causes it. For example, in Figure 2, given the appearance of Frame 1 and Frame13, we can predict that the transformation of ‘swinging the bat’ caused the change in appearance. In this section, we first develop an intuitive motivation for the surrogate task and then concretely explain how it can be implemented.

Suppose we want to train a model to predict if a Transformation causes the change in Appearance . We would need to have a robust way to encode and T such that they capture all the information required to solve this task. More specifically, given an image, the appearance representation A needs to localise the object(s) that could undergo a transformation and encode its properties such as shape, size and more importantly, pose. On the other hand, given a motion signal (like optical flow, dense trajectories [28, 29], etc), the transformation representation T needs to express a robust encoding that is discriminative in the space of transformations.

Figure 2: An overview of our approach. Predicting whether a transformation encoding T causes the change in appearance AA’ requires capturing pose properties.

We propose to learn the appearance representation A using a convolutional neural network (Appearance ConvNet in Figure 2). We choose to use optical flow maps as the motion signal in our proposed approach. There are a large variety of existing methods like 3dHOG and HOF [36, 29] which can be used to extract an encoding for the optical flow maps. These methods first extract local descriptors in the volume of optical flow maps, and this is generally followed by a bag-of-words model to generate a feature vector. Instead of using these hand-crafted approaches, we propose to jointly learn the motion representation as a Transformation T using a separate convolutional neural network (Motion ConvNet in Figure 2). The idea of using two independent networks to represent appearance and motion is very similar to the Two-Stream Network [13] which recently achieved accuracies very close to state-of-the-art in action recognition. The Appearance ConvNet takes as input an RGB image and outputs a feature vector. Similarly, the Motion ConvNet takes as input a stack optical flow maps as input and outputs a feature vector.

We propose an unsupervised approach to jointly train the Appearance and Motion ConvNets. The key idea of our approach is that given two appearance features and , it should be possible to predict whether a Transformation causes the change . This idea is synchronous with [9], where the notion of ego-motions producing predictable transformations is used to learn an unsupervised model.

Following this intuition, for a video snippet , we extract appearance features for Frame () and Frame () using the Appearance ConvNet. We then extract motion features for optical flow maps for Frames to from a random video snippet () using the Motion ConvNet. We then use two fully connected layers on top of the three concatenated features to predict whether the transformation could cause the change

We randomly (and automatically) sample ,,, and keep fixed. This makes the positive and negative labels readily available i.e. the positive examples are the triplet samples where and . All the others samples could be treated as negatives, but to account for videos with repetitive actions (like walking), we mine negatives from other videos i.e. we do not use samples where and . Fixing to a constant value is necessary since we need to fix the filter size in the first layer of the Motion ConvNet.

In summary, the joint unsupervised learning pipeline consists of one Motion ConvNet, two instances of the Appearance ConvNet and a two-layer fully connected neural network on top. The parameters of the two Appearance ConvNets are shared since we expect both networks to encode similar properties. Overall the joint system of three neural networks can be treated as one large neural network. This allows us to use standard back propagation to train all the components simultaneously.

Implementation Details

In our experiments, we fix i.e. we sample pairs of frames which are separated by 12 frames. We follow the VGG-M architecture for the Appearance ConvNet and Motion ConvNet till the FC6 layer. The only difference is the size of Conv1 filters in the Motion ConvNet which has 24 channels instead of 3 to accommodate convolution on 24 optical flow maps (12 in the -direction and 12 in the direction). This gives us a 4096-dimensional vector representation for each of A, and T. We then concatenate the three feature vectors to get a 12288 dimensional vector and use a fully connected neural network to perform the binary classification. The first fully-connected layer has 4096 output neurons followed by second fully connected layer with 2 output neurons. A softmax classifier is then used to predict the binary labels.

Patch and Optical Flow Mining

In order to train the binary classification model, we require a large collection of pairs of frames, the correct block of optical flow maps between them and multiple negative samples of optical flow blocks. As the training set, we use a large collection of video which contain humans performing actions. This set is formed by combining the training set videos from the UCF101 [16](split1), HMDB51 [17] (split1) and the ACT[23] datasets. For every pair of consecutive frames we precompute the horizontal and vertical directional optical flow maps using the OpenCV GPU implementation of the TVL1 algorithm[37].

As inputs to the Appearance ConvNet we randomly sample a spatial location and crop 224x224 patches at that location from two frames separated by frames. For the Motion ConvNet, we sample the x patches from each of the 12 horizontal and 12 vertical flow maps in between the two sampled frames at the same location, as the positive (label) which gives us a 224x224x24 dimensional array. As the negative examples (label), we randomly sample another 224x224x24 block from a random spatial location in a randomly picked video. During training, we pick the negatives from the same batch in the mini-batch stochastic gradient descent procedure and ensure that negative flow blocks are not picked from the same video as the appearance frames. We also augment the training data by randomly applying a horizontal flip on a (Frame , Frame , Optical Flow Block) triplet. Since all motion signals also make sense in the reverse direction temporally (they do not necessarily hold any semantic value), we also randomly reverse some triplets i.e. (Frame , Frame , reversed optical flow block).

For the joint training procedure, we use a batchsize of 128 128 pairs of patches. The SoftMax Loss is used to compute the errors to train the network. We initially set the learning rate to , momentum to and train for 75,000 iterations. We then reduce the learning rate to and train for 25,000 iterations. At convergence, the joint system performs around  96% on the formulated binary classification task for a held out validation set (note that the baseline performance is 66% since we have two negatives for each positive).

4 Experiments

The efficacy of unsupervised feature representation learning methods are generally tested on tasks for which the learnt representation might prove useful. First, the learnt representations are finetuned for the task using either the full labelled dataset (generally trained for a small number of iterations) or a small subset of the training set. Then these finetuned models are tested to provide evidence for the transferable nature of the representation learnt.

We follow a similar strategy and perform an extensive evaluation of our unsupervised model to investigate the transferability of the learned features. In order to build a better understanding of what the models learn, we first perform a qualitative analysis of the models. As explained before, since our unsupervised model is trained on action videos, this leads to an appearance representation (Appearance ConvNet) that is expected to capture pose properties well. Feature representations that capture pose properties are valuable for estimating human poses. Another domain where pose information proves immensely useful [35, 25, 26, 27] is recognizing human actions since any action involves a series of poses. Following this intuition, we test our learned representation for the Pose Estimation and Action Recognition tasks.

We also compare our method to two popular and recent unsupervised representation learning methods which also attempt to learn from videos. The results demonstrate the superiority of our learnt representation for these tasks. The first unsupervised model, proposed by Wang et. al in [11], involves enforcing the constraint that two transformed versions of the same object (different viewpoint, pose, size, etc) needs to represent the same point in the feature space. This leads to a feature representation that is invariant to pose, shape and size changes. The second model, proposed in [22], involves enforcing temporal coherence in the feature space by imposing a prior on the higher order derivatives to be small. This is trained jointly with the classification loss for the supervised task. We compare to this model since it is the most recently introduced unsupervised technique for videos.

4.1 Qualitative analysis of learned models

The first layer of a convolutional neural network is often visualised to verify that the network learns meaningful representations. We present the visualisations of the 96 filters in the first convolutional layer of the Appearance ConvNets in Figure 3. Clearly, the visualisation shows that the filters learn to model gradient like features.

We investigate the pose capturing capability of the learned unsupervised representation in the Appearance ConvNet by visualising closest pairs in the FC6 feature space. We first compute the appearance features for all image in the Leeds Sports Pose(LSP) dataset [38]. We randomly sample images and find the closest image in the rest of the dataset use the Euclidean distance between the appearance features extracted. We present these closest pairs in Figure 4. From these pairs, it is evident that the Appearance ConvNet is able to match poses reasonably well. This observation suggests that the Appearance ConvNet indeed attempts to capture the pose properties of humans.

Figure 3: Visualisations of filters in the first convolution layer in the Appearance ConvNet.
Figure 4: Closest image pairs in the FC6 feature space of the Appearance ConvNet.

4.2 Pose Estimation

The task of estimating human poses from videos and images is an important problem to be solved and has received widespread attention. In its most simple form, the task is defined as correctly localising the joints of the human. Computer vision research focusing on pose estimation has given rise to a large number benchmarks which contain videos and images [14, 39, 34] with their annotated joints. We evaluate the efficacy of our learnt Appearance ConvNet by testing it for estimating human poses in the Frames Labelled in Cinema (FLIC) dataset [14]. This dataset contains 5003 images with the annotated joints collected using crowd-sourcing. The train and test splits contain 3987 and 1016 images respectively.

We design a simple deep learning based pose estimation architecture to allow us the freedom to accommodate other unsupervised models. This also improves interpretability of the results by minimising the interference of complementary factors on the performance. Figure 5 presents an overview of the architecture we use to perform pose estimation (referred as Pose ConvNet). We copy the VGG-M[40] architecture till the fifth convolution layer (Conv5). This is followed by a deconvolution layer to upscale the feature maps. Then 1x1 convolutions are used to predict heat maps for each body point to be estimated. This network architecture is partly inspired from [41]. The predicted heat maps are 60x60 dimensional. The FLIC dataset contains annotations for the coordinates of 9 points on the body (nose, shoulders, elbows, hips and wrists). Hence our architecture uses nine separate 1x1 convolutional filters in the last layer to predict the heat maps for each annotated point.

Figure 5: Architecture of the pose estimation network. First 5 layers copied from VGG-M, followed by a deconvolution layer. A 1x1 convolution layer is then used to predict each output heat map.


Since the task we are evaluating is pose estimation (and not detection), we first need to crop the images around the annotated human. We do this by expanding the torso ground truth box by a fixed scale on all images. We then rescale all cropped images to 256x256. For each of the new cropped and rescaled images, we generate nine 60x60 ground truth heat maps, one for each of the joints. The heat map values are scaled between [-1,1] such that -1 represents background and +1 represents the presence of a body part. These ground truth heat maps are used to train the convolutional neural network. Since each ground truth heat map has only one positively activated pixel, the data is not sufficient to train the whole neural network. So we augment the data by activating a 3x3 neighbourhood in the heat maps.


We use the Euclidean loss to compute the error signal for each output heat map in the Pose ConvNet. Since we have 9 ground truth heat maps, we have access to 9 error signals. We use standard backpropagation to train the network and average the gradients from all the nine euclidean losses. Training the Pose ConvNet directly using this procedure converges at predicting all pixels as -1 in the heat maps since the number of positive pixels are still very small in the ground truth. In order to overcome this, we reweigh the gradient w.r.t. a positive ground truth pixel by the inverse of number of total number of positive pixels and similarly for the negative pixels. This ensures that the sum of gradients for the positive pixels is equal to the sum of gradients for the negative pixels.


The trained Pose ConvNet maps are used to generate body part heat maps for each of the test images in the FLIC dataset. The highest scoring 20 pixels are identified in each heat map and the location of the centroid of these pixels is used as the prediction for that body part. Various evaluation metrics have been studied in the past for evaluating pose estimations methods [42, 43, 7]. We report accuracies using the Strict Percentage of Correct Parts(PCP) and the Percentage of Detected Joints (PDJ) metrics. We use the code made available by [42] to compute these metrics.

We train four models using the Pose ConvNet architecture to investigate the strength and transferability of our unsupervised representation. We test our unsupervised Appearance ConvNet by copying parameters to the first five convolutional layers of the Pose ConvNet and randomly initialising the last two layers. We then finetune the model on the training data from the FLIC dataset. We follow a similar procedure for the baseline model [11]. We also train an instance of the Pose ConvNet from scratch with random initialisation to compare with our model. The Strict PCP accuracies for these models are presented in Table 1 and the PDJ accuracies at varying precision values is presented in Table 2. The Appearance ConvNet beats the accuracy of the randomly initialised baseline by a large margin indicating that the Appearance ConvNet indeed learns a representation useful for Pose Estimation. We also observe a significant increase over the baseline unsupervised model [11] suggesting that the representation learnt by the Appearance ConvNet encodes properties not captured in the baseline. Surprisingly, we observe that when the Pose ConvNet is initialised with a model trained to perform action classification on the UCF101 dataset, it performs worse than random initialisation. This suggests the invariances learned due to semantic action supervision are not the right invariances for pose-estimation. Therefore, using an unsupervised model leads to unbiased and stronger results. In our experiments, we also observe that using Batch Normalization[44] while training the Pose ConvNet initialised with Appearance ConvNet leads to a very narrow increase in performance ( 1.5% in PCP).

Body Part
Initialisation Upper Arms Lower Arms
Random 51.9 19.3
Wang et. al Unsupervised[11] 52.8 19.7
UCF101 Action Classification Pretrained 46.7 17.8
Ours 57.1 24.4
ImageNet Classification Pretrained 65.6 34.3

Table 1: Results for the Strict PCP Evaluation for Pose Estimation on the FLIC Dataset
Elbow Wrist
Initialisation          Precision 0.1 0.2 0.3 0.4 0.1 0.2 0.3 0.4
Random 20.0 47.3 63.9 74.8 17.2 36.1 49.6 60.8
UCF101 Pretrained 18.5 44.8 61.0 71.1 16.5 34.8 45.2 53.2
Wang et. al Unsupervised[11] 23.0 48.3 66.5 77.6 19.1 36.6 46.7 55.1
Ours 28.0 54.6 68.8 77.6 20.1 40.0 51.6 60.8
ImageNet Pretrained 34.8 62.0 74.7 82.1 29.0 48.5 59.3 66.7

Table 2: Results for the PDJ Evaluation for Pose Estimation on the FLIC Dataset

4.3 Action Recognition

For the task of action recognition, we use the UCF101 and HMDB51 datasets. We test on split1 for both datasets since we use the same split to train our unsupervised models. UCF101 consists of 9537 train and 3783 test videos, each of which shows one of 101 actions. The HMDB51 dataset is a considerably smaller dataset which contains 3570 train and 1530 test videos and 51 possible actions. Due to the size of the HMDB51 dataset, overfitting issues are accentuated. Therefore, training deep models from scratch on this dataset is extremely difficult. In [13], the authors suggest multiple data augmentation techniques to alleviate these issues. In our experiments, we witnessed that initialising from our unsupervised model also helps in overcoming this issue to a certain extent which is reflected in the results. We also compare our results to [11] as before.

Similar to the Pose ConvNet, we use the Appearance ConvNet as an initialisation for action recognition to investigate its performance. We use the same architecture as the Appearance ConvNet(VGG-M till FC6) followed by two randomly initialised fully-connected layers at the end to perform classification. The first fully-connected layer has 2048 output neurons, and the second fully-connected has 101 output neurons for classification on UCF101 and 51 output neurons for classification on HMDB51.The softmax classification loss is used to train the action classification network. The input to the network is a random 224x224 crop from any frame in the video. During training, we use a batch size of 256, which gives us 256 crops of dimension 224x224 sampled from random videos. After intialising with the appropriate parameters, we train the whole model for 14k iterations using learning rate as and for another 6k iterations using learning rate as .

UCF101 And HMDB51

For testing the network, we uniformly sample 25 frames from the test video. From each of the 25 frames, we sample 224x224 crops from the corners and the center. We also generate flipped versions of each of these samples giving us 250 samples per video. We compute the predictions for each of the samples and average them across all samples for a video to get the final prediction. The classification accuracies on both datasets are reported in Table 3. We also present the results achieved by [13] for training from scratch and training from a network pretrained on ImageNet for classification. The results reflect improvement over training from random initialisation by significant margins - 12.3% on UCF101 and 7.2% on HMDB51. This clearly indicates that the Appearance ConvNet encodes transferable appearance features which are also useful for action recognition. Surprisingly, finetuning just the last 2 fully connected layers also beats training from scratch on HMDB51 and scores comparably on the UCF101 dataset. This further emphasises the transferable nature of the Appearance ConvNet.

Initialisation Finetuning/Training UCF101 HMDB51
Random Full Network 42.5% 15.1%
Wang et. al Unsupervised[11] Full Network 41.5% 16.9%
Ours Full Network 55.4% 23.6%
Ours Last 2 layers 41.4% 19.1%
ImageNet Full Network 70.8% 40.5%

Table 3: Results for the Appearance Based action recognition on UCF101 and HMDB51

4.4 Static Image PASCAL Action Classification

For the second baseline model [22], classification accuracies are reported on the Pascal Action Classification dataset. The task involves classifying static images into one of the 10 action classes. The experiment used in [22], involves training the model using just 50 randomly sampled training images while simultaneously enforcing the prior they formulate. To allow fair comparison, we finetune our Appearance ConvNet using 50 randomly sampled images. We train an action classification network similar to the network described above but with 10 output neurons. The results for this experiment are reported in Table 4. The Appearance ConvNet shows an improvement of 2.5% over  [22] on this task.

Method Accuracy
Random Initialisation (taken from [22]) 15.34%
SSFA[22] 20.95%
Appearance ConvNet initialisation 22.7%
Table 4: Results for action recognition accuracy in static images using just 50 randomly sampled training images from PASCAL VOC2010 dataset (mean over 5 runs)

5 Conclusion and Future Work

In this paper, we present an unsupervised algorithm that takes advantage as the motion signal in videos as supervision to train an appearance representation. We train the unsupervised system on action videos in order to force the appearance representation to learn pose features. We demonstrate this property of the feature representation using qualitative results and quantitative results on Pose Estimation in the FLIC dataset, Action Recognition in videos on the UCF101 and HMDB51 datasets and still image action recognition on PASCAL VOC. The finetuning results emphasise the highly transferable nature of the representations learned. We compare to two other video-based unsupervised algorithms and show that our trained representation performs better consistently on these tasks. As a future goal, an interesting direction to pursue would be extending this method to generic videos.

6 Acknowledgement

Supported by the Intelligence Advanced Research Projects Activity (IARPA) via Department of Interior/ Interior Business Center (DoI/IBC) contract number D16PC00007. The U.S. Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright annotation thereon. Disclaimer: The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of IARPA, DoI/IBC, or the U.S. Government.


  1. email: {spurushw@andrew,abhinavg@cs}.cmu.edu
  2. email: {spurushw@andrew,abhinavg@cs}.cmu.edu


  1. Russakovsky, O., Deng, J., Su, H., Krause, J., Satheesh, S., Ma, S., Huang, Z., Karpathy, A., Khosla, A., Bernstein, M., et al.: Imagenet large scale visual recognition challenge. arXiv preprint arXiv:1409.0575 (2014)
  2. Szegedy, C., Liu, W., Jia, Y., Sermanet, P., Reed, S., Anguelov, D., Erhan, D., Vanhoucke, V., Rabinovich, A.: Going deeper with convolutions. arXiv preprint arXiv:1409.4842 (2014)
  3. Girshick, R., Donahue, J., Darrell, T., Malik, J.: Rich feature hierarchies for accurate object detection and semantic segmentation. ArXiv e-prints (November 2013)
  4. Girshick, R.: Fast r-cnn. arXiv preprint arXiv:1504.08083 (2015)
  5. Girshick, R., Donahue, J., Darrell, T., Malik, J.: Rich feature hierarchies for accurate object detection and semantic segmentation. In: IEEE Conference on Computer Vision and Pattern Recognition. (2014)
  6. Wang, X., Fouhey, D., Gupta, A.: Designing deep networks for surface normal estimation. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. (2015) 539–547
  7. Toshev, A., Szegedy, C.: Deeppose: Human pose estimation via deep neural networks. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. (2014) 1653–1660
  8. Doersch, C., Gupta, A., Efros, A.A.: Unsupervised visual representation learning by context prediction. In: Proceedings of the IEEE International Conference on Computer Vision. (2015) 1422–1430
  9. Jayaraman, D., Grauman, K.: Learning image representations equivariant to ego-motion. arXiv preprint arXiv:1505.02206 (2015)
  10. Agrawal, P., Carreira, J., Malik, J.: Learning to see by moving. In: Proceedings of the IEEE International Conference on Computer Vision. (2015) 37–45
  11. Wang, X., Gupta, A.: Unsupervised learning of visual representations using videos. In: Proceedings of the IEEE International Conference on Computer Vision. (2015) 2794–2802
  12. Wang, H., Ullah, M.M., Klaser, A., Laptev, I., Schmid, C.: Evaluation of local spatio-temporal features for action recognition. In: BMVC 2009-British Machine Vision Conference, BMVA Press (2009) 124–1
  13. Simonyan, K., Zisserman, A.: Two-stream convolutional networks for action recognition in videos. In: Advances in Neural Information Processing Systems. (2014) 568–576
  14. Tompson, J., Jain, A., Lecun, Y., Bregler, C.: Joint training of a convolutional network and a graphical model for human pose estimation. NIPS (2014)
  15. Everingham, M., Van Gool, L., Williams, C.K.I., Winn, J., Zisserman, A.: The PASCAL Visual Object Classes Challenge 2010 (VOC2010) Results. http://www.pascal-network.org/challenges/VOC/voc2010/workshop/index.html
  16. Soomro, K., Zamir, A.R., Shah, M.: Ucf101: A dataset of 101 human actions classes from videos in the wild. arXiv preprint arXiv:1212.0402 (2012)
  17. Kuehne, H., Jhuang, H., Garrote, E., Poggio, T., Serre, T.: Hmdb: a large video database for human motion recognition. In: Computer Vision (ICCV), 2011 IEEE International Conference on, IEEE (2011) 2556–2563
  18. Goroshin, R., Bruna, J., Tompson, J., Eigen, D., LeCun, Y.: Unsupervised learning of spatiotemporally coherent metrics. In: Proceedings of the IEEE International Conference on Computer Vision. (2015) 4086–4093
  19. Mobahi, H., Collobert, R., Weston, J.: Deep learning from temporal coherence in video. In: Proceedings of the 26th Annual International Conference on Machine Learning, ACM (2009) 737–744
  20. Michalski, V., Memisevic, R., Konda, K.: Modeling deep temporal dependencies with recurrent grammar cells””. In: Advances in neural information processing systems. (2014) 1925–1933
  21. Cadieu, C.F., Olshausen, B.A.: Learning intermediate-level representations of form and motion from natural movies. Neural computation 24(4) (2012) 827–866
  22. Jayaraman, D., Grauman, K.: Slow and steady feature analysis: Higher order temporal coherence in video. arXiv preprint arXiv:1506.04714 (2015)
  23. Wang, X., Farhadi, A., Gupta, A.: Actions ~ transformations. CoRR abs/1512.00795 (2015)
  24. Karpathy, A., Toderici, G., Shetty, S., Leung, T., Sukthankar, R., Fei-Fei, L.: Large-scale video classification with convolutional neural networks. In: Proceedings of the IEEE conference on Computer Vision and Pattern Recognition. (2014) 1725–1732
  25. Yang, W., Wang, Y., Mori, G.: Recognizing human actions from still images with latent poses. In: Computer Vision and Pattern Recognition (CVPR), 2010 IEEE Conference on, IEEE (2010) 2030–2037
  26. Delaitre, V., Sivic, J., Laptev, I.: Learning person-object interactions for action recognition in still images. In: Advances in neural information processing systems. (2011) 1503–1511
  27. Maji, S., Bourdev, L., Malik, J.: Action recognition from a distributed representation of pose and appearance. In: Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on, IEEE (2011) 3177–3184
  28. Wang, H., Kläser, A., Schmid, C., Liu, C.L.: Action recognition by dense trajectories. In: Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on, IEEE (2011) 3169–3176
  29. Wang, H., Schmid, C.: Action recognition with improved trajectories. In: Proceedings of the IEEE International Conference on Computer Vision. (2013) 3551–3558
  30. Klaser, A., Marszałek, M., Schmid, C.: A spatio-temporal descriptor based on 3d-gradients. In: BMVC 2008-19th British Machine Vision Conference, British Machine Vision Association (2008) 275–1
  31. Dollár, P., Rabaud, V., Cottrell, G., Belongie, S.: Behavior recognition via sparse spatio-temporal features. In: Visual Surveillance and Performance Evaluation of Tracking and Surveillance, 2005. 2nd Joint IEEE International Workshop on, IEEE (2005) 65–72
  32. Peng, X., Zou, C., Qiao, Y., Peng, Q.: Action recognition with stacked fisher vectors. In: Computer Vision–ECCV 2014. Springer (2014) 581–595
  33. Ji, S., Xu, W., Yang, M., Yu, K.: 3d convolutional neural networks for human action recognition. Pattern Analysis and Machine Intelligence, IEEE Transactions on 35(1) (2013) 221–231
  34. Pfister, T., Charles, J., Zisserman, A.: Flowing convnets for human pose estimation in videos. In: Proceedings of the IEEE International Conference on Computer Vision. (2015) 1913–1921
  35. Chen, C.Y., Grauman, K.: Watching unlabeled video helps learn new human actions from very few labeled snapshots. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. (2013) 572–579
  36. Chaudhry, R., Ravichandran, A., Hager, G., Vidal, R.: Histograms of oriented optical flow and binet-cauchy kernels on nonlinear dynamical systems for the recognition of human actions. In: Computer Vision and Pattern Recognition, 2009. CVPR 2009. IEEE Conference on, IEEE (2009) 1932–1939
  37. Marzat, J., Dumortier, Y., Ducrot, A.: Real-time dense and accurate parallel optical flow using cuda. (2009)
  38. Johnson, S., Everingham, M.: Clustered pose and nonlinear appearance models for human pose estimation. In: Proceedings of the British Machine Vision Conference. (2010) doi:10.5244/C.24.12.
  39. Andriluka, M., Pishchulin, L., Gehler, P., Schiele, B.: 2d human pose estimation: New benchmark and state of the art analysis. In: 2014 IEEE Conference on Computer Vision and Pattern Recognition, IEEE (2014) 3686–3693
  40. Chatfield, K., Simonyan, K., Vedaldi, A., Zisserman, A.: Return of the devil in the details: Delving deep into convolutional nets. arXiv preprint arXiv:1405.3531 (2014)
  41. Tompson, J., Goroshin, R., Jain, A., LeCun, Y., Bregler, C.: Efficient object localization using convolutional networks. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. (2015) 648–656
  42. Chen, X., Yuille, A.L.: Articulated pose estimation by a graphical model with image dependent pairwise relations. In: Advances in Neural Information Processing Systems. (2014) 1736–1744
  43. Pishchulin, L., Jain, A., Andriluka, M., Thormählen, T., Schiele, B.: Articulated people detection and pose estimation: Reshaping the future. In: Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on, IEEE (2012) 3178–3185
  44. Ioffe, S., Szegedy, C.: Batch normalization: Accelerating deep network training by reducing internal covariate shift. arXiv preprint arXiv:1502.03167 (2015)
This is a comment super asjknd jkasnjk adsnkj
The feedback cannot be empty
Comments 0
The feedback cannot be empty
Add comment

You’re adding your first comment!
How to quickly get a good reply:
  • Offer a constructive comment on the author work.
  • Add helpful links to code implementation or project page.