A Distributed System for Supporting Spatio-temporal Analysis on Large-scale Camera Networks
MetadataShow full item record
Cameras are becoming ubiquitous. Technological advances and the low cost of such sensors enable deployment of large-scale camera networks in metropolises such as London and New York. Applications such as video-base surveillance and emergency response that exploit such camera networks are continuous, data intensive, and dynamic in terms of resource requirements. Common anomalies in such application spaces include authorized personnel moving into unauthorized spaces and checking the movement of suspicious individuals as they move through the spaces. High level goal in such applications include catching such anomalies in real time and reducing collateral damage. A well-known technique for meeting this high level goal is spatio-temporal analysis. This is an inferencing technique employed by domain experts (e.g., vision researchers) to answer queries such as show the track of person A in the last 30 minutes. Performing spatio-temporal analysis in real-time for a large-scale camera network is challenging. It involves continuously capturing images from distributed cameras, analyzing the images to detect and track objects of interest in the field of view of the cameras, generating an event by comparing the signature of a detected object against a database of known signatures, and maintaining a state transition table indexed by time that shows the spatio-temporal evolution of people movement through the distributed spaces. In this paper, we propose a distributed system architecture to address these challenges. We make the following contributions: (a) present the design choices for real-time spatio-temporal analysis with a view to supporting scalability (in terms of number of cameras, event rate, and known targets), (b) develop heuristics for pruning the event generation phase of spatio-temporal analysis, and (c) implement and evaluate the different design choices in a distributed system to show the scalability of our distributed system architecture.