Unsupervised Synthesis of Anomalies in Videos: Transforming the Normal

04/14/2019 ∙ by Abhishek Joshi, et al. ∙ Indian Institute of Technology Kanpur 0

Abnormal activity recognition requires detection of occurrence of anomalous events that suffer from a severe imbalance in data. In a video, normal is used to describe activities that conform to usual events while the irregular events which do not conform to the normal are referred to as abnormal. It is far more common to observe normal data than to obtain abnormal data in visual surveillance. In this paper, we propose an approach where we can obtain abnormal data by transforming normal data. This is a challenging task that is solved through a multi-stage pipeline approach. We utilize a number of techniques from unsupervised segmentation in order to synthesize new samples of data that are transformed from an existing set of normal examples. Further, this synthesis approach has useful applications as a data augmentation technique. An incrementally trained Bayesian convolutional neural network (CNN) is used to carefully select the set of abnormal samples that can be added. Finally through this synthesis approach we obtain a comparable set of abnormal samples that can be used for training the CNN for the classification of normal vs abnormal samples. We show that this method generalizes to multiple settings by evaluating it on two real world datasets and achieves improved performance over other probabilistic techniques that have been used in the past for this task.



There are no comments yet.


page 1

page 3

page 4

page 5

page 6

page 7

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Visual surveillance generates a huge amount of data. A single camera alone can generate terabytes of data over time. This data needs to be screened for abnormal events. This is usually done either through operators that keep active lookout on various screens or as a means of deterrence where the videos are analyzed after the effect if an untoward incidence (such as robbery) has occurred. Clearly, there is a need to automate this tedious process. Therefore, identifying abnormal activities automatically has been an important problem from the application perspective. The task however is challenging as abnormal activity is a highly class imbalance problem in a supervised setting. A number of problems have been solved by the community using deep learning techniques that have been trained using supervision. However, to adopt this approach a large set of labels need to be explicitly provided for abnormal activity.

This is a challenge as usually the surveillance cameras typically capture the normal activity and abnormal occurrences are rare. A large number of these rare events would need to be explicitly annotated. Sometimes, an activity is unusual because there are no past occurrences and evidences of that activity. So, the data describing abnormal activities is scarce and we do not have much labeled data available for them. Hence, it would be desirable to have a video surveillance algorithm which leverages only data of normal activity to make a decision as to whether a particular activity is normal or abnormal.

(a) Traffic Junction Dataset [35]. The left image is normal while the right is an anomaly with a person crossing the road away from the zebra crossing

(b) Traffic Junction Dataset [35]. The left image is normal while the right is an anomaly as the car enters the pedestrian area.

(c) Highway Dataset [27]. The left image is normal while the right is an anomaly as a jaywalker crosses the road.

Fig. 1: Sample Normal and Abnormal Frames from surveillance video datasets.

In this work, we follow this approach and transform the normal observations to automatically obtain abnormal observations.

In this paper, we follow a synthesis based approach to obtain the supervision. There have been instances of interesting work that have used this approach based on synthesis. For instance, Rozantsev et al. [28] pursue the generation of synthetic data based on 3D models that are used for training object detectors. Very recent work pursued by Shrivastava et al. [29]

obtains increased realism in generation of synthetic data using generative adversarial networks (GANs). However, the previous approaches obtained synthetic examples by modeling the 3D model and generating realistic renderings of the same. The challenge in our case is that we have samples of normal data but choose to not use any examples of abnormal data (as a few chosen abnormal examples would be limiting and not span the class of abnormal examples). In our approach, we adopt a different architecture where we use a synthesis technique that can generate large number of modified samples from normal samples to obtain abnormal samples. We then use a trained Bayesian network (compared also to non-Bayesian network) that assumes that the synthesized examples are fake and uses them to

choose a set of examples that are abnormal and can be used.

In Section II we discuss a number of approaches adopted in the literature. In Section III we describe the methodology followed by us i.e. the unsupervised setting for synthesizing anomaly and abnormal activity detection. In Section IV we provide experiments and compare our results with the unsupervised models that have been previously proposed in [35] and [27]. We provide analysis in Section V and finally conclude with a discussion in Section VI.

Ii Related Work

There are broadly two main approaches that have been followed to solve abnormal activity detection in videos. The first approach involves tracking objects in the video frames. The deviation in trajectory points leads to potential candidates for being abnormal [13] [17] [37]. Though these methods perform well, they are subject to trajectory abnormality constraints that may not be prevalent. For instance, due to occlusions there may be a number of truncated or abnormal trajectories obtained from normal sequences. Further, some abnormal sequences, due to short trajectories may appear normal. Moreover, a number of times, it is not the trajectory itself that is abnormal but the location where it occurs that makes it abnormal. For instance as illustrated in Figure 1(a), the act of crossing the road may appear normal but is abnormal, if not done on the pedestrian crossing. The second approach leverages feature descriptors to procure intrinsic patterns of the events, which are eventually used to model the behaviour. Although, absence of tracking information in the latter approach may lead to substantial loss but this approach shows a more convincing way to develop more generic and real-life models. We follow this broad category of approach for our task. Niebles et al. [24] apply topic models for the task of action recognition and classification by modeling the features in terms of visual words. In an unsupervised way, they use pLSA-LDA models to predict the actions. Sparse representation has been used in [20] [38] to learn the dictionary of normal behaviours. The behaviours which have large reconstruction errors are considered as anomalous behaviors during testing. Recently, a weakly supervised setting has been proposed in [33] which considers normal and anomalous videos as bags and video segments as instances in multiple instance learning (MIL) and predicts anomalous videos.

Deep Learning approaches have lead to successes in many computer vision tasks

[15] [10]

including anomaly detection. Xu

et al. [36] demonstrate the effectiveness of deep learning features through a multi-layer auto-encoder for feature learning. In the work [11], Hasan et al. propose a 3D convolutional auto-encoder to model normal frames, which have been further boosted in [6] [21] via both appearance and motion based model. Recently, Luo et al. [22] propose a temporally coherent sparse coding based method which maps to a stacked RNN framework. It is interesting to note that all these anomaly detection approaches are based on the reconstruction of normal training data with the assumption that abnormal events would correspond to larger reconstruction errors.

Varadarajan et al. [35] adopt topic modelling for scene analysis and detection of abnormal events occurring in the video. The assumption is that in a domain, the set of usual events is fixed and can be extracted from the distribution of the visual words and the video clips in the domain. The idea is to build a model for the normal activities in the videos. A video clip having instance of abnormal events would then be expected to have a low likelihood over the model learnt from the normal events. Pathak et al. [27]

propose a mechanism to extend the topic-based analysis of anomalous documents and is combined with a classifier based on spatio-temporal quantized words. As these are the main related approaches for our method, we benchmark our approach by comparing against these. Further, our approach uses a synthesis based transformation approach for generating abnormal samples that has to the best of our knowledge not been adopted for this problem.

Ii-a Background

Fig. 2: Illustrative overview of the proposed approach. There are two main blocks, a Synthesis Block and a Training Block.

A crucial component in our model is the use of a Bayesian CNN for obtaining a discriminator. For the sake of completeness we present the related background for obtaining a Bayesian CNN. In probabilistic modeling, we infer a distribution over parameters of a function , that is likely to generate our outputs. Also it is assumed that the training observations, input and their corresponding outputs

are random variables from a distribution. The function

represents the network architecture, and is the collection of the model parameters. Our objective is to model the uncertainty in prediction for classifying our synthesized abnormal samples. One of the popular ways to do this is the Bayesian approach. Given observation , we need to find the posterior distribution over space of functions, i.e., , which captures the most likely function parameters, given our observed data. The posterior can be modeled with the help some prior distribution over the space of parameters and with the likelihood function

. The likelihood function is the probability of the synthesized sample

given the function parameter . Then, we can predict the output of a new data point by integrating over all possible function parameters . So the predictive distribution [9] [18] is given by the following equation.


The posterior distribution in eqn. 1 is intractable. To approximate the intractable posterior distribution , we need to define an approximating variational distribution parameterized by , whose structure is easy to evaluate. We thus minimize the Kullback–Leibler(KL) divergence [16] between approximate posterior and the full posterior w.r.t , which is denoted by . Minimizing the KL divergence is equivalent to maximizing the log evidence lower bound [4] with respect to the variational parameters defining ,


The posterior in equation  1 is replaced with approximate posterior . The integral of predictive distribution [9] is intractable for many models because it is integrated over all possible values of . To approximate it, we could condition the model on a finite set of parameters . So we approximate the integral with Monte Carlo integration.


with , which is the dropout distribution.

Iii Methodology

Our aim is to synthesize frames in an unsupervised way, which appear to be abnormal leveraging solely the normal frames, to achieve detection of abnormal activities in a video. We discuss the intuition and techniques for the desired task in further subsections. As illustrated in Figure 2, our overall pipeline mainly consists of two components: Synthesis Block and Training Block.

Given the normal videos frames as input, the task of Synthesis Block is to synthesize abnormal or fake frames by transforming the normal. This is achieved in several stages as shown in Figure 2. Firstly, through ViBe [1] technique we obtain foreground masks of moving objects. These noisy segments act as pseudo ground truths for training a fully convolutional network (FCN) [19] to obtain better foreground through semantic segmentation. Simultaneously, we keep track of the motion of foreground objects to obtain a representative map for overall motion in the video. Next, we randomly sample and cut a candidate foreground object and with the representative motion mask’s assistance, the foreground object is maneuvered to a different place in the frame. In order to obtain a neat and indistinguishable fake frame, the original patch is algorithmically replaced with an appropriate patch from the prior frames. Subsection III-A explains the entire mechanism of the Synthesis Block in detail.

The role of the Training Block is concisely that of a discriminator. Once fake frames have been synthesized, the challenge further lies in determining which ones among those are more likely to be considered abnormal. This block is responsible for selecting indistinguishable fake samples generated from the Synthesis Block

, through incremental training to build a robust classifier. To serve the purpose, our idea is to incrementally train a Bayesian CNN, model the uncertainty and use it to classify abnormal frames. Based on the predictive posterior probabilities obtained from the classifier, we sample more

fake abnormal ones and iteratively keep adding them to the training set. The methodology is further described in Section III-B

Iii-a Unsupervised Setting: Synthesizing Anomaly

In order to obtain realistic anomalous frames we rely on the following principles, a) abnormal instances would be based on unusual location of entities (car on a pedestrian pathway, pedestrian in the middle of the road). b) realistic synthesis would require precise extraction through segmentation and realistic replacement of the extracted segment.

We rely on motion cues for unsupervised segmentation of moving entities and further rely on this cue to obtain a motion map to evaluate possible placement and segment replacement cues. These are obtained without supervision. This is not unusual as extensive human vision studies show that motion plays an important role in the development of human visual system. For instance, it has been shown experimentally [25] that soon after gaining sight humans are better able to categorize objects that are seen to be in motion than those seen to be at rest. A similar observation has been studied for infants as well as described in [31].

Iii-A1 Unsupervised Motion Segmentation

In a real world scenario, almost all anomalous events occur due to objects in motion. For example, in a traffic road scene as shown in Figure 1, the abnormal events may include pedestrians crossing the road away from the zebra crossing or say, maybe a car entering pedestrian area. Since, the moving objects are responsible for such events, the idea is to focus primarily on the foreground and obtain segments of the moving objects. To serve the purpose of foreground extraction, we use ViBe technique as described in [1]. A similar method of foreground extraction has been adopted in [27], but for a very different purpose i.e. for formation of visual words for topic model. In addition to being faster, the advantage of ViBe is that it doesn’t let the object in foreground fade away in the background quickly even when the object has stopped moving. This ensures that the objects are still highlighted as foreground in such events, for instance, when a pedestrian halts in the middle of the road for some time or an event where a car is being parked at a no-parking zone. We further apply morphological transformations for denoising. Thus, we segment different blobs of foreground which we use for the purpose as described next.

Iii-A2 Learning to Segment Through Motion and Noise

We follow an approach similar to Pathak et al. [26] to segment the objects. We use fully convolutional networks for semantic segmentation with default parameters [19, 34]. The foreground obtained from ViBe technique provide us with the pseudo ground truth for training. Moreover, the ViBe’s output might not always lead to desired segments and is prone to noise. It is evident from extensive experiments in [26] that CNN is able to learn well even from noisy and often incorrect ground truth. Because of its finite capacity, a CNN will not be able to over-fit the noise. Instead, it closely learns the underlying correct segmentation leading to much smoother and visually more correct segmentation compared to the pseudo ground truth.

(a) Traffic Junction Dataset [35] (b) Highway Dataset [27]
Fig. 3: Representative binary motion mask map for overall foreground motion in the surveillance video datasets.

Iii-A3 Sample Transformation

Once we segregate foreground from the background using ViBe motion segmentation, we obtain various blobs for each video frame. We find the rectangular connected blob of pixels using contour detection algorithm. These connected components represent the moving objects such as pedestrians and cars in video. There might be small groups of pixels as well in the frame which are not likely to be the actual objects of interest. We use area of those blobs as a parameter to eliminate noise, if any.

Generally, anomalous events arise due to presence of objects or actions which we usually do not expect. In the Traffic Junction Dataset [35] , car entering pedestrian area, jay walking or people crossing the road away from the zebra crossing are among the unusual events as shown in Figure 1. This motivates our idea to crop the candidate object and place it to other parts of the same frame to make the frame appear abnormal. The object is confined within the rectangle which contains its background as well. If we crop the whole rectangular region, it would look unnatural when we place it on to other parts of the frame. Instead, we apply semantic segmentation [19] to the rectangular part using our trained model discussed earlier in Section III (A.1 and A.2) Thus, we now obtain a precise foreground object after segmentation.

After obtaining the segment, it needs to be placed in other parts of the frame in an unsupervised way. We place objects only in those regions which have observed motion in the entire video. The intuition behind the algorithm is that it is highly unlikely for a car or a person to be present within a building’s wall or flying in air. Again, we achieve this by leveraging ViBe motion segmentation. We pre-process the video by keeping track and storing all those pixel indexes which have witnessed motion as guided by ViBe. We achieve this task in real time. As shown in Figure 3, white pixels represent the regions where there has been foreground object motion at least once and the black pixels represent the regions that never observed any motion. We now have the set of candidate pixels (white pixels in Figure 3) on or in the vicinity of which the foreground objects shall be placed.

Having cropped the object and placed its segmentation to another region in the frame, the next challenge lies in inpainting that particular missing area in the frame. The objective of region inpainting is to ensure that the synthesized frame appears visually natural. A basic heuristic has been proposed by Bertalmio

et al. in [3] to provide an inpainting algorithm. This technique works well when the region to be inpainted is very small in size. However, as the missing region size is large, so is the case for size of real world objects, it fails to provide a smooth and clear inpainted region.

Fig. 4: Sample frames from Traffic Junction and Highway Dataset annotated as normal (left) and our synthesized abnormal frames (right) from the normal.

We tackle this challenge of region inpainting with a simple approach. First, we exploit the fact that there are plenty of instances when no foreground object is present at a particular region of the frame in the entire video.
Second, while the surveillance camera is static, the background remains almost unchanged throughout in the video. Our main idea here is to observe the missing rectangular region in previous video frames and choose the frame which has the least or ideally, no movement. We use ViBe for real time pixel level motion information. We cache a constant number of frames arriving earlier than the current frame and observe the ViBe pixels within the missing rectangular region’s coordinates in those cached frames. Among these frames, the region having the least motion pixels count indicated by ViBe is chosen as the region that will replace the missing region in the current frame. This approach neatly replaces the missing region compared to the one inpainted using the algorithm in [3]. The qualitative results of our proposed algorithm for synthesizing abnormal frames are shown in Figure 4.

Iii-B Abnormal Activity Detection

The sole purpose of generating abnormal frames, was to have a self-supervised learning mechanism to detect abnormal activities. We create our own dataset consisting of abnormal frames and normal frames as training samples. We can synthesize abnormal frames from each normal frame of the video. We train a Bayesian VGG-19

[30] for the two classes.

We observe that while preparing the dataset, synthesis of abnormal frames does not always lead to a sample that actually appears to be abnormal. This is justifiable because the foreground object will be stochastically placed to other regions of a frame. For example, a car might be placed in the road itself, which is actually not abnormal. To overcome this problem, we introduce a Bayesian discriminator into the pipeline. This helps in statistically sampling a refined set of fake samples that can further be used to build a robust classifier.

Fig. 5: Our Synthesis Block technique has another application as a strategy for Data augmentation as well. Sample frames from OSU thermal imagery Dataset [7] (left) and synthesized frames (right) by our algorithm.

We interpret dropout as approximate Bayesian stochastic inference [8]

over our model weights. Moreover, to impose Bernoulli distributions over model weights, we have adopted dropout

[32]. Modeling Bernoulli distributions can be achieved by sampling multiple times (ten times, in our case) with dropping random units during inference. This sampling is possible because it is a Bayesian stochastic inference. These samples are considered as the Monte Carlo samples [14]

from the posterior distribution over models. We experimented with various dropout ratios and use the following values for the same. For implementing Bayesian CNN, we use dropout ratio of [0.1, 0.1, 0.3, 0.4, 0.4] for each stack of convolutional layers respectively and 0.5 for FC layers. As the number of neurons increases in subsequent layers, we increased the dropout ratio for better generalization. The predicted posterior probability is obtained by applying the softmax function on the network output layer.

We draw ten samples of each synthesized image using Monte-Carlo sampling from a distribution (this is predictive posterior distribution for the bayesian CNN). The predictive posterior probability signifies the probability of the sample belonging to the normal class. We calculate the mean and for image .


We consider as an upper bound on the predictive posterior probability as criteria to incrementally train the Bayesian CNN and use it to classify abnormal frames. As shown in Figure 7, we vary the predictive posterior probability and iteratively sample abnormal frames having probability . Our assumption here is that as there are large number of placements that are abnormal and the real samples are all normal, the model is able to distinguish the abnormal from the normal with some uncertainty. A few examples of the synthesized abnormal samples are provided in Figure 4.

Iv Experiments and Results

We perform experiments on the Traffic Junction Dataset released in [35]. It consists of a video of 45 minutes recorded at a frame rate of 25 fps with frame size of .

For comprehensive evaluation of the proposed algorithm on a real world surveillance video dataset, we perform experiments on the Highway Dataset released in [27]. The dataset consists of 6 and a half minute video having frame rate 25 fps with frame size of , illustrating the traffic scene of a highway in real world situation.

Fig. 6: Precision-Recall curves for anomaly detection in Traffic-Junction Dataset [35] using Bayesian CNN pipeline. Anomalous frames were considered as positive and the Normal frames as negative examples.
Dataset Model AUC
Likelihood Model [35] 54.47
Traffic-Junction [35] Projection Model [27] 65.15
Our Proposed (non-Bayesian) 74.29
Our Proposed (Bayesian) : 77.61 , : 0.167
Likelihood Model [35] 67.30
Highway [27] Projection Model [27] 81.40
Our Proposed (non-Bayesian) 83.59
Our Proposed (Bayesian) : 68.87 , : 1.2
TABLE I: Results for Anomaly Detection. The reported values are area under the precision-recall curve (AUC)

Additionally, in Figure 5 we show that our Synthesis Block has application in data augmentation for thermal imagery as well. OSU Thermal Pedestrian Database [7] is a publicly available benchmark dataset which consists of only 284 images. Deep learning algorithms, however, don’t perform well with such datasets having few data samples. So, our synthesis technique could help in training deep learning algorithms.

Anomalous video frames were separated from the video for testing. From the remaining normal set of frames, 25% of the normal frames were also included in the test data along with the anomalous ones. For training the CNN, we used our synthesized dataset. Moreover, while adding the normal frames to the synthetic training set, we choose to skip frames by using frame rate of 5 fps instead of 25 fps. This would lower the number of similar frames in the train set, thereby, reducing redundancy.

After having synthesized the abnormal frames, we now have the dataset consisting of two classes: normal and synthesized abnormal. We train a CNN with dropouts to have an approximate Bayesian stochastic inference as described in previous section. We train VGG-19 [30] on this dataset with image size

. We use a weighted cross-entropy loss function for training in order explicitly weigh more penalties (five times more, in our case) for false negatives than false positives and SGD as the optimizer. We call this

synthesized model.

To further make our model robust, we obtain a refined dataset by removing the more probable normal fake examples. We apply softmaxactivation function on our trained model to obtain respective classification probabilities (predictive posterior) on the training synthesized abnormal samples. A low probability score for a sample frame to belong to the normal class could indicate a higher likeliness for it being abnormal. Thus, we refine our synthesized set of examples and iteratively train the Bayesian CNN on this set. Initially, we choose and vary it till , thereby, adding more samples to incrementally train the CNN. Note that, at in Figure 7 is actually our initially proposed synthesized model.

The experimental results on appropriately choosing the clean set of abnormal examples are shown in Figure 7. We adopt hold-out cross validation technique with validation set consisting of of the dataset. The model with highest AUC performance on the validation set is chosen to report the results by evaluation on the test set. Additionally, we evaluate our other models obtained by varying the selected set of examples on the test set too. The results are consistent with the results in validation. Moreover, our proposed algorithm backed with experimental results suggests that actively choosing the training examples further assists in improving the results as shown in Figure 6. Furthermore, we experiment with a non-Bayesian setting, keeping our overall pipeline fixed except that we now do not adopt a Bayesian CNN and replace the discriminator with ResNet-50 [12] representing a non-Bayesian setting. The improved ResNet architecture results in an improvement of the area under the precision-recall curve (AUC) as shown in Table I. As can be seen from the quantitative results, we obtain consistent improvements in terms of AUC. The AUC being the standard metric shows improved performance which can be improved by further refining various blocks of the network.

Fig. 7: Scores of AUC and Average Precision (AP) for Traffic-Junction Dataset [35] on incrementally training Bayesian CNN by varying the refined set of samples in the synthesized abnormal class.

V Analysis

In this section, we provide analysis for our proposed model from aspects such as distribution discrepancy, feature visualization and qualitative analysis.

V-a Distribution Discrepancy: proxy -distance

According to domain adaptation theory [2], -distance as a measure of cross domain discrepancy, which, together with the source risk, will bound the target risk. The proxy -distance is defined as where is the generalization error of a classifier(e.g. kernel SVM [5]) trained on the binary task of discriminating source and target. We can apply a similar concept to better analyze our results quantitatively. We use our model features and use it to calculate the proxy -distance i.e. between two classes: our synthesized abnormal class and the ground truth abnormal class. Moreover, we compare that with the proxy -distance i.e. between two classes: our synthesized abnormal class and the normal class. We obtain the values and . Since, . which suggests that our features can reduce the cross-domain gap more effectively. In other words, it gives an indication that features learned for our synthesized abnormal samples would be more closer to the real anomalous video frames.

V-B t-SNE Plot

t-distributed Stochastic Neighbor Embedding (t-SNE) [23]

is a technique to visualize high-dimensional data. It converts similarities between data points to joint probabilities and tries to minimize the Kullback-Leibler

[16] divergence between the joint probabilities of the low-dimensional embedding and the high-dimensional data. In Figure 8(a), the red points correspond to our synthesized abnormal samples, while the green ones correspond to the normal frames in the video. It is clearly observed that the synthesized samples are mostly clustered towards the centre.

(a) (b)
Fig. 8: t-SNE visualizations for following distributions:
(a) Green points represent Normal video frames distribution The centrally clustered red points represent our Synthesized frames distribution.
(b) Blue points represent Ground truth abnormal distribution, while the red points represent our Synthesized distribution for Traffic-Junction Dataset [35].
(a) (b) (c)
Fig. 9: Experiments analysis on the Traffic-Junction Dataset [35] Figures (a) and (b) have been detected abnormal while (c) has not been detected as abnormal by our model.

In Figure 8(b), the red points correspond to our synthesized abnormal samples, while the blue ones correspond to the ground truth abnormal samples. The red points are spread across the blue points as shown in Figure 8(b). Through the t-SNE [23] visualizations in Figure 8, it can be observed that the feature representation of our synthesized abnormal samples makes it much closer to that of the actual ground truth samples distribution as shown in Figure 8(b) and far from the embeddings of the normal video frames since the points are mostly clustered at the centre as shown in Figure 8(a).

V-C Qualitative Analysis

In the 44 minutes long video of the Traffic Junction Dataset[35], there is an instance shown in Figure 9 (a) where abnormality occurs in the form of a jay walker for a short period of 3 seconds. Our model is able to detect such an activity, which could be tiresome or could have gone undetected by a human operator for such surveillance videos. Also, the frame where a car enters the pedestrian area has also been detected as abnormal as shown in Figure 9 (b). However, the model fails to detect the frame in Figure 9 (c) as abnormal for which ground truth label is abnormal. This is a special case as it features a pedestrian crossing the road at the crossing. The context is that the pedestrian is doing so when the traffic signal is red. It is therefore an abnormal example. However, as this is a very subtle cue even for humans, it is very challenging to detect such cases.

Vi Conclusion

In this paper, we have presented a method that uses transformation of the normal for generating abnormal samples. These are then validated through a classifier to automatically obtain a set of abnormal examples. This is a novel approach as other approaches such as conditional GANs were also not suited for generating such abnormal examples, but our proposed pipeline is able to generate abnormal examples automatically without supervision. In future, we would be interested in considering spatio-temporal generation of such synthetic examples. We can also further consider other scenarios such as social interactions and imbalanced activity recognition cases where such approaches may be applicable.


  • [1] O. Barnich and M. Van Droogenbroeck. Vibe: A universal background subtraction algorithm for video sequences. IEEE Transactions on Image processing, 20(6):1709–1724, 2011.
  • [2] S. Ben-David, J. Blitzer, K. Crammer, A. Kulesza, F. Pereira, and J. W. Vaughan. A theory of learning from different domains. Machine learning, 79(1-2):151–175, 2010.
  • [3] M. Bertalmio, A. L. Bertozzi, and G. Sapiro. Navier-stokes, fluid dynamics, and image and video inpainting. In

    Computer Vision and Pattern Recognition, 2001. CVPR 2001. Proceedings of the 2001 IEEE Computer Society Conference on

    , volume 1, pages I–I. IEEE, 2001.
  • [4] C. M. Bishop. Pattern recognition and machine learning. 2006.
  • [5] B. E. Boser, I. M. Guyon, and V. N. Vapnik. A training algorithm for optimal margin classifiers. In

    Proceedings of the fifth annual workshop on Computational learning theory

    , pages 144–152. ACM, 1992.
  • [6] Y. S. Chong and Y. H. Tay.

    Abnormal event detection in videos using spatiotemporal autoencoder.

    In International Symposium on Neural Networks, pages 189–196. Springer, 2017.
  • [7] J. Davis and M. Keck. A two-stage approach to person detection in thermal imagery. In Proceedings of Workshop on Applications of Computer Vision, 2005.
  • [8] Y. Gal and Z. Ghahramani. Bayesian convolutional neural networks with bernoulli approximate variational inference. arXiv preprint arXiv:1506.02158, 2015.
  • [9] Y. Gal and Z. Ghahramani. Dropout as a bayesian approximation: Representing model uncertainty in deep learning. In International Conference on Machine Learning (ICML), pages 1050–1059, 2016.
  • [10] R. Girshick. Fast r-cnn. In Proceedings of the IEEE international conference on computer vision, pages 1440–1448, 2015.
  • [11] M. Hasan, J. Choi, J. Neumann, A. K. Roy-Chowdhury, and L. S. Davis. Learning temporal regularity in video sequences. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 733–742, 2016.
  • [12] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 770–778, 2016.
  • [13] W. Hu, D. Xie, Z. Fu, W. Zeng, and S. Maybank. Semantic-based surveillance video retrieval. IEEE Transactions on image processing, 16(4):1168–1181, 2007.
  • [14] A. Kendall, V. Badrinarayanan, and R. Cipolla. Bayesian segnet: Model uncertainty in deep convolutional encoder-decoder architectures for scene understanding. arXiv preprint arXiv:1511.02680, 2015.
  • [15] A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In Advances in neural information processing systems, pages 1097–1105, 2012.
  • [16] S. Kullback and R. A. Leibler. On information and sufficiency. The Annals of Mathematical Statistics, 22(1):79–86, 1951.
  • [17] T.-L. Le, M. Thonnat, A. Boucher, and F. Brémond. A query language combining object features and semantic events for surveillance video retrieval. In International Conference on Multimedia Modeling, pages 307–317. Springer, 2008.
  • [18] Y. Li and Y. Gal. Dropout inference in bayesian neural networks with alpha-divergences. arXiv preprint arXiv:1703.02914, 2017.
  • [19] J. Long, E. Shelhamer, and T. Darrell. Fully convolutional networks for semantic segmentation. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 3431–3440, 2015.
  • [20] C. Lu, J. Shi, and J. Jia. Abnormal event detection at 150 fps in matlab. In Proceedings of the IEEE international conference on computer vision, pages 2720–2727, 2013.
  • [21] W. Luo, W. Liu, and S. Gao. Remembering history with convolutional lstm for anomaly detection. In Multimedia and Expo (ICME), 2017 IEEE International Conference on, pages 439–444. IEEE, 2017.
  • [22] W. Luo, W. Liu, and S. Gao. A revisit of sparse coding based anomaly detection in stacked rnn framework. ICCV, Oct, 1(2):3, 2017.
  • [23] L. v. d. Maaten and G. Hinton. Visualizing data using t-sne. Journal of machine learning research, 9(Nov):2579–2605, 2008.
  • [24] J. C. Niebles, H. Wang, and L. Fei-Fei. Unsupervised learning of human action categories using spatial-temporal words. International journal of computer vision, 79(3):299–318, 2008.
  • [25] Y. Ostrovsky, E. Meyers, S. Ganesh, U. Mathur, and P. Sinha. Visual parsing after recovery from blindness. Psychological Science, 20(12):1484–1491, 2009. PMID: 19891751.
  • [26] D. Pathak, R. Girshick, P. Dollár, T. Darrell, and B. Hariharan. Learning features by watching objects move. In CVPR, 2017.
  • [27] D. Pathak, A. Sharang, and A. Mukerjee. Anomaly localization in topic-based analysis of surveillance videos. In Applications of Computer Vision (WACV), 2015 IEEE Winter Conference on, pages 389–395. IEEE, 2015.
  • [28] A. Rozantsev, V. Lepetit, and P. Fua. On rendering synthetic images for training an object detector. Computer Vision and Image Understanding, 137:24 – 37, 2015.
  • [29] A. Shrivastava, T. Pfister, O. Tuzel, J. Susskind, W. Wang, and R. Webb. Learning from simulated and unsupervised images through adversarial training. In 2017 IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2017, Honolulu, HI, USA, July 21-26, 2017, pages 2242–2251, 2017.
  • [30] K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556, 2014.
  • [31] E. S. Spelke. Principles of object perception. Cognitive Science, 14(1):29–56, 1990.
  • [32] N. Srivastava, G. Hinton, A. Krizhevsky, I. Sutskever, and R. Salakhutdinov. Dropout: a simple way to prevent neural networks from overfitting. The Journal of Machine Learning Research, 15(1):1929–1958, 2014.
  • [33] W. Sultani, C. Chen, and M. Shah. Real-world anomaly detection in surveillance videos. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 2018.
  • [34] M. Teichmann, M. Weber, M. Zoellner, R. Cipolla, and R. Urtasun. Multinet: Real-time joint semantic reasoning for autonomous driving. arXiv preprint arXiv:1612.07695, 2016.
  • [35] J. Varadarajan and J.-M. Odobez. Topic models for scene analysis and abnormality detection. In Computer Vision Workshops (ICCV Workshops), 2009 IEEE 12th International Conference on, pages 1338–1345. IEEE, 2009.
  • [36] D. Xu, E. Ricci, Y. Yan, J. Song, and N. Sebe. Learning deep representations of appearance and motion for anomalous event detection. arXiv preprint arXiv:1510.01553, 2015.
  • [37] T. Zhang, S. Liu, C. Xu, and H. Lu. Mining semantic context information for intelligent video surveillance of traffic scenes. IEEE transactions on industrial informatics, 9(1):149–160, 2013.
  • [38] B. Zhao, L. Fei-Fei, and E. P. Xing. Online detection of unusual events in videos via dynamic sparse coding. In Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on, pages 3313–3320. IEEE, 2011.