The AVA-Kinetics Localized Human Actions Video Dataset

Ang Li\\textsuperscript{1} Meghana Thotakuri\\textsuperscript{1} David A. Ross\\textsuperscript{2} Jo˜ao Carreira\\textsuperscript{1} Alexander Vostrikov\\textsuperscript{1}\\textsuperscript{\*} Andrew Zisserman\\textsuperscript{1,4}

\\textsuperscript{1}DeepMind \\textsuperscript{2}Google Research \\textsuperscript{4}VGG, Oxford

{anglili,sreemeghana,dross,joaoluis,zisserman}@google.com alexander.vostrikov@gmail.com

Abstract

This paper describes the AVA-Kinetics localized human actions video dataset. The dataset is collected by annotating videos from the Kinetics-700 dataset using the AVA annotation protocol, and extending the original AVA dataset with these new AVA annotated Kinetics clips. The dataset contains over 230k clips annotated with the 80 AVA action classes for each of the humans in key-frames. We describe the annotation process and provide statistics about the new dataset. We also include a baseline evaluation using the Video Action Transformer Network on the AVA-Kinetics dataset, demonstrating improved performance for action classification on the AVA test set. The dataset can be downloaded from https://research.google.com/ava/.

1. The AVA-Kinetics Dataset

The Kinetics \\cite{carreira2017quo} dataset was created to support representation learning in videos by providing a large classification task where researchers can explore architectures and pre-train models that can be finetuned on a variety of downstream tasks, similar to what happened with ImageNet \\cite{deng2009imagenet} and image representations.

Downstream tasks tend to have more detailed annotations and are hence more expensive to annotate at scale. The AVA dataset \\cite{li2019ava} presents one influential example of a video task that is expensive to annotate – instead of a single label per clip as in Kinetics, every single person in a subset of frames gets a set of labels. This task is also interesting because pre-training on Kinetics leads to small improvements – the state-of-the-art is still just at 34% average precision \\cite{carreira2019quo}.

This motivated us to create a crossover of the two datasets. The AVA-Kinetics dataset builds upon the AVA and Kinetics-700 datasets by providing AVA-style human action and localization annotations for many of the Kinetics videos. In this section, we introduce the AVA and Kinetics datasets briefly and describe the AVA annotation procedure applied to build the AVA-Kinetics dataset. The statistics of the dataset are also provided and analyzed in Section 2.

1.1. Background

The AVA dataset \\cite{li2019ava} densely annotates 80 atomic visual actions in 430 15-minute movie clips. Human actions are annotated independently for each person in each video, on key-frames sampled once per second. The dataset also provides bounding boxes around each person and each person has all its co-occurring actions labeled (e.g., standing while talking) for a total of 1.6M labels. The Kinetics dataset is another large-scale curated video dataset for human action recognition covering a diverse range of human actions. Kinetics has progressed from Kinetics-400 to Kinetics-700 over the past few years. The Kinetics-700 dataset has 700 human action classes with at least 600 clips for each class, and a total of around 650k video clips. For each class, each clip is from a different Internet video, lasts about 10s and has a single label describing the dominant action occurring in the video.

1.2. Data Annotation Process

The AVA-Kinetics dataset extends the Kinetics dataset with AVA-style bounding boxes and atomic actions. A single frame is annotated for each Kinetics video, using a frame selection procedure described below. The AVA annotation process is applied to a subset of the training data and to all video clips in the validation and testing sets from the Kinetics-700 dataset. The procedure to annotate bounding boxes for each Kinetics video clip was as follows:

1. **Person detection**: Apply a pre-trained Faster RCNN person detector on each frame of the 10-second long video clips.

2. **Key-frame selection**: Choose the frame with the highest person detection confidence as the key-frame of each video clip, at least 1s away from the start/endpoint of the clip.

3. **Missing box annotation**: Human annotators verify and annotate missing bounding boxes for the key-frame.

4. **Human action annotation**: Obtain a 2-second video clip centered on the key-frame. Multiple human raters (at least 3) then propose action labels corresponding to the persons in the key-frame bounding boxes.

5. **Human action verification**: Human raters assess all the proposed action labels for a final verification. Each label which is verified by a majority, of at least 2 of 3 raters, is retained.

A difference from the original AVA dataset, is that only one key-frame is annotated for each Kinetics video clip. The Kinetics training set is sampled for annotation as follows: first, we prioritize AVA classes with poor recognition performance by selecting a shortlist of 27 out of the original 80 AVA classes which have shown weak performance in the past literature. We hand-select 115 relevant action classes from the Kinetics dataset (listed in Appendix A) by text matching to this shortlist, and the annotation pipeline is applied to all Kinetics videos containing those actions.

Table 1. The number of annotated frames and the number of unique video clips in different splits for the AVA-Kinetics dataset. AVA-Kinetics data is a combination of AVA and Kinetics. While the numbers of annotated frames are roughly on par between AVA and Kinetics, Kinetics brings many more unique videos to the AVA-Kinetics dataset.

| | # unique frames | # unique videos | |----------|-----------------|-----------------| | | AVA Kinetics | AVA-Kinetics | | Train | 210,634 | 141,475 | | Val | 57,371 | 32,511 | | Test | 117,441 | 65,016 | | Total | 385,446 | 238,984 |

Clips from the remaining Kinetics classes are sampled uniformly (we have not yet annotated all of them). Different from the training set, the Kinetics validation and test sets are both fully annotated.

2. Data Statistics

We discuss in this section characteristics of the data distribution in AVA-Kinetics and compare it with the existing AVA dataset. The statistics of the dataset are given in Table 1 which shows the total number of unique frames and that of unique videos in these datasets. Kinetics dataset contains a large number of videos so it contributes a lot more unique videos to the AVA-Kinetics dataset.

We show in this section the statistics of AVA v2.2 which contains 80 classes, however, in experiments, we follow the protocol of AVA challenge and only predict 60 classes.

2.1. Sample distribution

The number of samples for each class is given in Figure 2. One sample corresponds to one bounding box with one action label. The class statistics in AVA and Kinetics show similar trends, in particular both datasets exhibit a long-tailed sample distribution. However, we observe that Kinetics adds a substantial number of samples to most of the classes. Especially for the class “listen to”, Kinetics introduces significantly more training samples.

2.2. Video distribution

Figure 3 shows the diversity of videos between the two datasets. The plot is in log scale and shows the property that Kinetics contains significantly more unique videos for each label. As stated before Kinetics is composed of many unique short videos, 10 second long, and a single key-frame is annotated with AVA labels. The AVA videos are much longer and are used to produce multiple clips for action localization. For AVA, the maximum number of unique videos per class is 235, while Kinetics has over 10,000 unique videos for the top classes. In addition, half of the classes in Kinetics have over 300 unique video clips. 2.3. Correlation between Kinetics and AVA classes

Since we have annotations for both AVA classes and Kinetics classes for the Kinetics video, we compute the Normalized pointwise mutual information (NPMI) of the two types of classes. NPMI is defined as

[ NPMI(x, y) = \\frac{\\log p(x) + \\log p(y)}{\\log p(x, y)} - 1 ]

where ( p(x) ) is the frequency of class ( x ). ( NPMI(x, y) ) is a real value between -1 and 1. ( NPMI(\\cdot, \\cdot) = 1 ) means the two classes are highly correlated while ( NPMI(\\cdot, \\cdot) = -1 ) means the two labels never co-occur.

We further rank the AVA classes for each Kinetics class according to their NPMI scores. The Kinetics class “dancing gangnam style” is highly related to the AVA classes “dance”, “listen (e.g., to music)” and “watch (e.g., TV)”. While “dance” is directly related, “listen” and “watch” could also happen when someone is watching another person dancing gangnam style.

We show in Table 3 the reversed correlation, i.e., top Kinetics classes related to a certain AVA class. We pick a list of AVA classes with the least occurrence frequency and show their top relevant Kinetics class labels. The class “stir” is related to “scrambling eggs”, “making tea” and “making slime”. The three cooking activities all requires a stirring action in practice. 2.4. Person distribution

Figure 4 shows the number of person bounding boxes per frame in both AVA and the Kinetics dataset. The distributions are roughly the same. We observe a substantial number of frames with no person detected in both datasets. And the majority of the key-frames have only 1 person detected. Frames that contain more than 5 persons are very rare. The average number of boxes per frame in AVA is 1.5 and that of Kinetics is around 1.2.

2.5. Person box size distribution

We also study the size of the person bounding boxes in both datasets. Figure 5 shows the distribution of person bounding box areas. The area is normalized according to a 1x1 square image. We observe that the majority of the person boxes are small relative to the image. An interesting finding is that Kinetics videos tend to contain smaller person bounding boxes, compared to AVA videos.

3. Benchmarking Results

We experiment with the new dataset using the Video Action Transformer Network [4] on top of ground truth person bounding boxes. Using ground truth boxes makes it possible to evaluate action classification accuracy separately from object detector failures. The original AVA paper [5] reports 75% mean AP person detection at 0.5 IoU using Faster RCNN with a ResNet-50 backbone; the Action Transformer [4] reports an improvement on AVA score. Figure 4. Number of bounding boxes per frame comparing the AVA train set (blue) and the Kinetics train set (green). The stacked bar shows the distribution of the AVA-Kinetics train set. There is a substantial number of frames with no person detected. The majority of the key-frames contains only one bounding box.

Figure 5. The distribution of the area of person bounding boxes in the AVA train set (blue) and the Kinetics train set (green). The area is normalized according to a 1x1 square. The peak area in AVA is around 0.02 while the peak in Kinetics is around 0.01. It is observed that Kinetics dataset produces significantly more smaller person bounding boxes.

from 17.8% to 29.1% when using ground truth bounding boxes instead of automatically detected ones – 11.2% absolute. This is a significant improvement, but still small when considering the remaining 70% left to get perfect performance. These results seem to suggest that plain action classification, of all things, is still very challenging in the multi-label case (Charades [9] is another difficult multi-label action classification dataset, minus the spatial aspect). In addition to ground-truth based action classification, we also report results using a pre-trained person detector to propose boxes at the test time.

3.1. Action Transformer: Short Recap

The original Action Transformer [4] uses a 3D convolutional backbone to generate a spatiotemporal grid of features for each clip. In practice a video is divided into many clips, one around each key-frame. Using the spatiotemporal grid of features, a detector (e.g. the Region Proposal Network from Faster-RCNN) generates a number of object boxes for the middle frame. A positional embedding is added to the feature grid, which then gets ROI-pooled for each box and the resulting features are passed through a stack of transformers. The queries in the transformers are obtained by either averaging the spatio-temporal ROI-pooled features or using a more sophisticated merging operation that better preserves spatial configuration information – for the purpose of ground truth box classification simpler averaging did better so we use that. The keys and values are directly derived from the original non-ROI-pooled grid of features. Overall the model tries to capture the relationship between each person and the whole scene.

Here we use a simplified model without any of the region proposal machinery. Instead we train on ground truth boxes then test on either ground truth boxes or on person detections provided by a more recent state-of-the-art detector [10].

3.2. Overall performance with groundtruth boxes

We show action classification performance with ground truth boxes in 9 different settings in Table 4 using three different training sets and three validation sets. AVA-Kinetics train/val is basically a combination of the corresponding AVA and Kinetics data.

The table shows that the additional Kinetics training data leads to an improvement when evaluating on the original AVA validation set (+5.26 mAP). It also suggests that training on the Kinetics clips provides for more stable generalization: performance is close to an AVA-trained model on AVA validation, but the performance of the AVA-trained model is much lower on Kinetics validation clips. Finally training on the full AVA-Kinetics training set leads to the best performance on the full AVA-Kinetics validation set as would be expected.

3.3. Overall performance with detected boxes

Table 5 shows the corresponding results when using automatically detected boxes at test time. We used the Center- Figure 6. Per-class performance on AVA validation set for three action categories: person-person interaction, person-object interaction and person pose. The bars above zero-axis represent the average precision value while the transparent bars below the zero-axis represent the number of examples in the corresponding training datasets. The ground-truth boxes are used at both training and test time.

Figure 7. Per-Class Evaluation on AVA-Kinetics validation set. Compared models are trained on AVA, Kinetics and AVA-Kinetics (combined). The ground-truth boxes are used at both training and test time. The bars above zero-axis represent the average precision value while the transparent bars below the zero-axis represent the number of examples in the corresponding training datasets. Net [10] person detector to generate a small set (about 2.5 boxes per key-frame) of confident detections that are fed to the video action transformer model. The object detector is trained on COCO [7] 2017 training set and achieves 43% mAP on COCO 2017 validation set. Only those boxes detected with the “person” class are used as proposals for video action detection. For simplicity, the same model trained on ground truth boxes was employed – the only change is at test time when detected boxes were used.

The results are mostly consistent with those evaluating on ground truth boxes, showing an improvement on AVA validation when training on the AVA-Kinetics training set (+3.96 mAP). Overall the values are slightly lower due to imperfect detection. The original action transformer model reports higher AVA-train to AVA-val mAP but it uses a more complex training procedure with a region proposal network and background negative example selection whereas we use just ground truth boxes for training.

3.4. Per-class performance

In addition to the overall comparison, we plot the per-class performance on same AVA validation set using the three different training splits (AVA, Kinetics, AVA-Kinetics). The comparison is shown in Figure 6 where all the AVA classes are divided into three categories: person-object interaction, person-pose and person-person interaction. The total number of training samples is also plotted in log-scale below the zero-axis in each sub-figure. It is observed that the overall performance on person-pose classes is relatively higher while person-object classes seem to be the most difficult cases to recognize. Notably, the performances on “watch (e.g., TV)”, “cut”, “hand shake”, “jump/leap” and “swim” are significantly improved by using the new Kinetics data. A similar per-class evaluation on the full AVA-Kinetics validation set is shown in Figure 7.

3.5. Performance improvement vs. data increase

We study in Figure 8 how the performance improvement is related to the increase of data. The x-axis is the percentage of increased sample size from AVA training set to AVA-Kinetics training set. This is basically the ratio of Kinetics sample size vs. AVA sample size on the same label class. The y-axis is the improvement of mAP, i.e., the mAP of a model trained on AVA-Kinetics set subtracts the mAP of a model trained on AVA set. Some of the class names are shown nearby the corresponding data points. The mAP metric is measured on the AVA-Kinetics validation set. We observe that only one class “enter” (red colored) has a performance drop (0.76% mAP lower). All other classes benefit from training on more Kinetics videos. Among the most improved classes are “play musical instrument”, “swim” and “listen (e.g., to music)” – in these cases the number of training examples has more than doubled the original.

4. Conclusions

We have presented the AVA-Kinetics Localized Human Actions Video Dataset which is a crossover of the Kinetics and AVA datasets. AVA has detailed multi-label annotations for all people but restricted visual diversity at around 500 unique videos; Kinetics has a single label per video but a very wide visual diversity given its 600k unique videos. By annotating one frame in each Kinetics video with AVA boxes and labels, we obtain the AVA-Kinetics dataset with a richer training set and also a test set that better reflects true model generalization.

We believe this dataset can be a useful aid for research in a variety of settings in video. For example in multi-task learning (training on both AVA and Kinetics labels vs individual ones) or in transfer learning (how does pre-training on Kinetics then finetuning on AVA compare to directly training on AVA-Kinetics?).

Acknowledgements:

The collection of this dataset was funded by DeepMind and Google Research. The authors would like to thank Vighnesh Birodkar, Yu-hui Chen, Jonathan Huang, Vivek Rathod for their help on the object detection, Yeqing Li for his help on the action annotation pipeline, and Jean-Baptiste Alayrac for reviewing a paper draft. We would also like to thank Rahul Sukthankar, Victor Gomes, Ellen Clancy and Chloe Rosenberg for their contributions to this work.

References

[1] Joao Carreira, Eric Noland, Chloe Hillier, and Andrew Zisserman. A short note on the kinetics-700 human action A. Fully annotated Kinetics classes

As mentioned above, we hand picked 115 Kinetics classes that are most related to the hardest AVA classes and annotated all of their training set examples. The full list is the following:

swimming, swimming backstroke, swimming breast stroke, swimming butterfly stroke, swimming front crawl, swimming with dolphins, swimming with sharks, scuba diving, diving cliff, helmet diving, pushing car, pushing cart, pushing wheelbarrow, pushing wheelchair, giving or receiving award, putting on sari, putting on shoes, watching tv, card throwing, catching or throwing baseball, catching or throwing frisbee, catching or throwing softball, hammer throw, javelin throw, throwing axe, throwing ball (not baseball or American football), throwing discus, throwing knife, throwing snowballs, throwing tantrum, throwing water balloon, assembling computer, climbing a rope, climbing ladder, climbing tree, ice climbing, mountain climber (exercise), rock climbing, giving or receiving award, marriage proposal, headbanging, listening with headphones, silent disco, beatboxing, gospel signing in church, singing, karaoke, carrying baby, pull ups, push up, wrestling, arresting, arm wrestling, wrestling, shaking hands, tango dancing, clean and jerk, dealing cards, building lego, card stacking, sipping cup, cutting watermelon, cutting pineapple, cutting orange, cutting cake, cutting apple, taking photo, pulling rope (game), entering church, using a wrench, sharpening pencil, using a paint roller, deadlifting, lifting hat, snatch weight lifting, stacking dice, sign language interpreting, pushing wheelchair, tackling, playing american football, mosh pit dancing, wrestling, punching person (boxing), hitting baseball, punching bag, golf chipping, golf driving, golf putting, flint knapping, falling off bike, falling off chair, faceplanting, triple jump, high jump, bungee jumping, parkour, gymnastics tumbling, playing laser tag, playing paintball, triple jump, high jump, long jump, jumping jacks, bungee jumping, springboard diving, bouncing on trampoline, gymnastics tumbling, jumping sofa, jumping into pool, waving hand, finger snapping, drumming fingers, playing hand clapping games, pumping fist