Day and day again, we all experience traffic jams whenever we have to head out somewhere important. Even with all the manpower devoted to sharing information about these traffic jams, information often isn't released quickly enough and it ends up worsening the situation. With the help of Traffic Meter, one can automate the task of recognizing congestion in traffic using video sources and have it reported instantly!
What it does
Traffic Meter takes as input a video clip, performs object detection and traditional image processing techniques, and finally categorizes the scene as one with high or low traffic congestion. With the help of a video source, the application not only utilizes spatial but also temporal information to make a decision.
How I built it
The application was built using Python 3 and the Tensorflow library for Python. Mask R-CNN was used for more accurate object detection and OpenCV was used for the image processing side. Google Cloud Vision was also used for image segmentation to complement the object detection performed using Mask R-CNN.
Challenges I faced
To actually perform the recognition of traffic, the video had to be cropped in such a way that it isolated the traffic and did not include the surroundings. This was a relatively difficult task to do but I managed to come up with a solution that output decent results. I also read multiple research papers on recognizing traffic congestion and while I wasn't able to implement them due to the limited time, they were certainly fun to read!
What's next for Traffic Meter
Using more elaborate spatial algorithms such as those presented in the research papers I came across would certainly improve the accuracy of the application!