Video Streaming Analytics for Traffic Monitoring Systems

It is considered a difficult task to have check on traffic during rush hours. Traditional applications are manual, costly, time consuming, and the human factors involved. Large scale data is being generated from different resources. Advancement in technology make it possible to store, process, analyze, and communicate with large scale of video data. The manual applications are wiped out with the invention of automatic applications. Automatic video streaming analytics applications helps to reduce computational resources. The reason is cost efficient and accurate predictions while monitoring traffic on roads. This study reviews previously developed application of video streaming analytics for traffic monitoring systems using Hadoop that are able to efficiently analyze video streams. Keywords—Video streaming analytics; Traffic monitoring system; Video streams; Hadoop; GPU; CNN; Deep learning


I. INTRODUCTION
Traffic monitoring is considered a complicated task on heavy roads.In traditional traffic monitoring systems, traffic control rooms monitor the live video streams obtained from live-feed cameras or stored on a bank of digital video recorders or computer hard disk drives.Manual registration of auto mobiles, counting of vehicles by magnetic loops and road side movement cameras are commonly used approaches by traffic police for traffic monitoring.If the video analysis are not done automatically then it requires a number of human operators and a control room with resources to analyze the footage manually.These approaches are costly, time consuming, and inaccurate.The most frequently asked questions during occurrence of an event are about color, size, and type of vehicle.It is difficult to accurately detect, classify, and track objects.
Video analytics is also known as video content analysis.It involves different techniques to analyze, monitor and fetch meaningful information from video streams.There exists different techniques for the analysis of real-time and pre-recorded videos.One of the major applications of video stream analysis is automated security and surveillance systems.Video analytic techniques can be used for public safety and security by law enforcement agencies, work stations, and organizations.Automatic video analysis requires less cost and human efforts to analyze video stream than manual applications [1].
Video analytics are helpful in different fields like business intelligence, healthcare, law enforcement, industries, and traffic monitoring systems.The study discusses application of video analytics for traffic monitoring system.Automated video analytics can help to reduce the human efforts and computational cost [1].Video analytics can help to detect objects like face, vehicle color and vehicle number plate.Object detection is a process to recognize real-world objects and object classification is to categorize or classify the realworld objects such as determining that an object is a person, vehicle or animal.Classification is different from detection or recognition.The reason is object classification is unable to identify objects.Object classification and detection can be used in simple and complicated applications.Object classification can classify the vehicle into car, bus, van and truck by their size, detected as they pass through the region of interest and represented in a square rectangle [2].
Object detection is a useful technique for traffic monitoring systems and law enforcement agencies.Object detection can be done using different algorithms.The most common algorithms are template matching [3], background separation using Gaussian Mixture Models (GMM) [4], and cascade classifiers [5].Template matching is suitable only for objects defined in templates.This approach will not work for the new objects.Background frame differencing approach only detects the objects which are moving in background [4].Background separation and frame differencing are expensive techniques for performing computations [2], [6].A cascade classifier is an object detection approach which uses a real AdaBoost algorithm [5].Cascade classifier increases the detection performance and it is comparatively affordable and useful [2], [6].
The displacement of centroids can help to calculate the speed of a moving object.The camera calibration parameters helps in the problem of perspective distortion that utilizes to transform the pixel distance measured from the video frames into real world distance.The accuracy of the estimated speed is calculated by comparing with average traffic speed.The reference background image is updated when there is a change in the illumination.Traffic congestion can be detected when vehicles are traveling below the average speed for a period of time.Similarly, road accidents were detected when there is a difference between centroids of vehicles and the speed falls close to zero.It may not give an accurate results for road accidents.The collision can be detected when the centroid of the vehicles collides with another.For producing rerouting messages to subscribers if there is an occurrence of congestion, current places of clients are computed utilizing the geolocation API and an alternate route estimation is given utilizing Google Maps API [7].

II. VIDEO STREAMING ANALYTICS USING HADOOP
Cloud computing can be used for automatic video stream analysis.This section discusses different techniques for video stream analysis.

A. Video Streaming Analytic using Hadoop based GPU Cluster
A large scale of data is being generated from different resources like GPS, social media, internet of things, tablets, web services and videos.It is difficult task to analyze, process, and store video data.To handle large scale of video data, processing can be distributed among different nodes.There can be hundreds or even more cameras over a wide area that captures the stream and process at the local server.For such a large scale, the cloud based storage can be used [6].
Video streaming analytics requires computations at a very large scale.This can be done using cloud computing.Cloud computing provides high scale computing and efficiency in real time monitoring of traffic video data.Commercial vendors also provide applications of video analytics.In Vi-System1 , there is an intelligent surveillance system which tracks and monitor objects with the help of analytical protocols.It provides updates to different users based on defined parameters.The Vi-System does not work well for recorded videos and limited rules of analysis that needs to be defined in advance.Another project BESAFE2 can helps to automatic surveillance and tracks the abnormal behavior.The downside of BESAFE project is scalability.An intelligent vision tool3 can be used to perform video analysis intelligently with the help of automatic video monitoring.However, this tool is also less scalable and sometimes does not fulfill the requirements.
Abdullah et al., proposed a framework which utilizes a cloud based storage to store and capture video streams and a GPU cluster for video stream analysis (Figure 1).Stream acquisition component gets the videos from surveillance cameras and forward it to the requesting client in traffic control room to store these streams.These video streams are stored on cloud server as mp4 files.APS server is responsible for video streaming analytics.APS server contains cloud storage to store recorded video streams and a processing server having compute nodes based GPU cluster.The analysis is started after client submits job.Then video streams are downloads from cloud storage.The meta-data of video stream is stored on the analytical database.APS client is responsible for interaction between end-user and APS server.The user can specify the duration of video, criteria for analysis, i.e., vehicle detection, classification etc.These video streams are fetched automatically from Hadoop based cloud storage, decoded and analyzed on Hadoop based GPU cluster without intervention of operator.The user is notified after completion of analysis [6].This work was extended by incorporation of features like face and vehical detecion [2].GPU enabled video analytics process can perform faster than the CPU and human operators.

B. Video streaming analytics using Hadoop MapReduce
The previous framework of video streaming analytics in clouds using Hadoop based GPU cluster is not appropriate for live video data analysis, e.g., detection of road accidents and congestion etc. Public safety on roads and helping them in crowded situations is a very difficult and demanding task for traffic monitoring systems in developing countries.Natarajan et al., presented a video analytics framework using Hadoop MapReduce that can work better for live video data analysis.This framework uses video processing based on MapReduce.Hadoop is used to split video frames into smaller unit and convert them in a sequence of image frames in parallel mode.HDFS stores large amount of data over a number of physical disk clusters.The sequence file after splitting into smaller units is distributed over the nodes of HDFS to increase the processing speed.Raw video stream is split into 64 MB (default) size blocks [7].
This framework is divided into two phases.First, mapping phase assigns the data to a cluster node from the single video frames.Every frame processed in map phase produces a corresponding output which is indexed for better access.The index consists of a key-value pairs which connects a frame identifier with corresponding data.In second phase, index maps are reduced into a single result.The information about vehicle accidents, speed and congestion are kept in Hive for further analysis.The system architecture consists of media server, IP wireless transmission, video streams, and supervising/control station (Figure 2).Video recording module streams the video to supervising station and stores the video in its local storage.The video streams are captured from different places and transferred by IP wireless transmission module to the supervising station via media server.The live video streams are processed by supervising station and results are stored for further analysis.The information about vehicle speed, accident and congestion are stored in Hive.When road congestion occurs, Hive tables can suggest the alternative routes to the travelers.The important places around the city are stored in Hive tables.When road accidents is detected, the system sent alerts to the nearby hospitals and highway rescue teams [7].

C. Video Analytics Using Hadoop Video Processing Interface
Hadoop does not provide video read/write interface.Moreover, Hadoop framework is implemented in java.However, many video analysis applications are implemented in C/C++.In these situations, Hadoop framework is not compatible.
To overcome these issues, Zhao et al., have design Hadoop Video Processing Interface (HVPI) (Figure 3).HVPI helps to port existing video analytic applications into Hadoop platform written in C or C++ and make easy use of video read/write interface.Video read/write interface is responsible to read video input and convert it into key-value pair for mapper to process.After completing the process on video read/write interface, we can analyze the frame sequence by implementing video analytics applications [8].that their method is less time-consuming and provides an high accuracy for detection.This method can process large scale video data [10].

III. CONCLUSION
Video analytics in traffic monitoring system can help in different forms like public safety on roads and violation of traffic rules.Video analytics is an analysis of video streams by using computational resources.Video streaming analytics can works efficiently with the help of automatic systems.The video analytics in traffic monitoring systems can provide information of object detection and object classification.The framework for video streaming analytics in clouds using Hadoop based GPU cluster is capable to analyze recorded video streams.This study discussed different Hadoop based techniques for automatic traffic video analysis.However, Hadoop does not provide video read/write interface and many analytical applications does not work well with Hadoop framework.There exists some frameworks like HVPI which can overcome these issues.
Chen et al., have presented convolutional neural network (CNN) and MapReduce technique for video vehicle recognition and detection.They have utilized an efficient deep learning www.ijacsa.thesai.org