Traffic management is a major issue throughout the world and improper management only leads to longer hours spent in travel which indirectly leads to decreased productivity and harms the country`s economy in the long run. There are dedicated traffic police personnel deployed at major junctions who do manage traffic jams but that proves to be insufficient in most cases. There are traffic monitoring cameras deployed in cities in developed nations. However, most of the systems require manual monitoring which makes it tedious and prone to error. There is no automatic widely deployed, low-cost vehicle counter that can be used for managing traffic automatically. Another issue prevalent in cities is that the time a vehicle has to wait at a traffic signal is fixed and not changed according to the traffic in a particular direction or the number of pedestrians waiting to cross the road. This further creates delays and is something that should be avoided
To tackle this issue, I plan to build a vehicle detector system that can be stationed at road junctions and hence keep a track on the traffic through that junction. This information can then be pushed to the cloud through a web service to create a live map of the city or shared with similar apps like Google Maps. The benefits of this system are that it would help individuals better plan commutes, leading to lesser congestion and also help public officials make better administrative decisions.
The detector system would also be able to keep track of the number of pedestrians waiting to cross the road and the traffic in a particular direction which would then be used to automatically adjust wait times at traffic signals.
My solution is different from existing solutions in that it is low-cost, low-power, automatic and generates a live traffic map of the city. Dynamic updation of traffic signals is a concept that has not been implemented widely but with this setup, it is very much possible.
The camera data from road junctions would be taken through a USB camera and sent to the Ultra96V2 board. After conventional filtering and enhancements(histogram equalisation, erosion, dilation etc), accelerated DNNs deployed on the Programmable logic on the board using Vitis would be used for pedestrian and vehicle detection. These models would be lifted directly from trained models on the Xilinx Model Zoo for person detection and vehicle detection. Once, the traffic has been detected, if the traffic seeking to go in a particular direction is not found to be significant, the other direction traffic would be allowed to move disregarding the timer at the signal. This would be done by controlling LED lights through a power stage operated by an IO pin on the board. A similar mechanism would be used to track pedestrians and open corresponding road paths by changing traffic light configurations.
For the backend, Wifi connectivity to the board would be established and it would upload collected data to AWS DynamoDB through a webservice. An API would be created that links with Google maps to display traffic congestion as an overlay on the app. Also, a machine learning model built on the Ultra96 would analyse the traffic data obtained locally and correspondingly update the time taken to travel from point A to point B in a similar way as Google Maps.
For demonstration purposes, the traffic lights would be replaced by LED lights and toy cars and lego figures would be used for obvious reasons.
Comments