Anita's Moonshot Codeathon


Winners announced


Thanks to all Participants!


Anita's Moonshot Codeathon


Lane Changer

Project description

GPS based data from taxi and bus services in Delhi have shown a sharp increase in traffic congestion in the last decade. This has led to dangerous levels of pollution and ever increasing productivity and fuel losses. The ever increasing stress due to driving is gradually becoming a prominent contributor to health problems faced by the population of Metropolitans.

Studies suggest that vehicles moving at speeds close to the max fuel efficiency level can result in huge savings in fuel costs. Vehicles with similar fuel efficiencies moving in a single lane naturally improves the flow. This has been one of the main reasons for the development of separate lanes for different vehicles. However, this method is not extremely accurate or economical as the related infrastructure costs are quite high. Thus, a software based recommender system with minimal hardware can be used for improved lane driving and better traffic flow.The system consists of three major components:

  • Object identification and speed measurement system
  • Vehicle category classification and optimum lane computation system
  • User interface and data storage

Github Repository:

Object identification and speed measurement

A system connected with Microsoft Kinect based sensors will identify the objects moving in its frame and also compute the speed of the vehicle. The objects will be identified using state-of-the-art real time deep learning algorithms like You Only Look Once (YOLO) and masked Regional- Convolutional Neural Network (RCNN). You Only Look Once (YOLO) algorithm

Prior object detection algorithms have modelled the problem as a classification problem. YOLO models it as a regression problem in spatially segregated boxes and class(vehicle type) probabilities. The algorithm divides the image into regions and learns to assign probabilities to the region based on the various features of the region.
The name suggests that the algorithm looks at the entire image once instead of using a sliding window which is used by older algorithms.Masked Regional- Convolutional Neural Network (RCNN)

A masked RCNN is an extended version of the Faster-RCNN algorithm. Along with identifying boxes for objects, it simultaneously attempts to create a segmentation map which effectively assigns a class probability to the box or further classifies if the box contains more objects.
Each camera is able to monitor a specific distance depending on its placement. By calculating the time for which the object was present in its frame, the average speed of the vehicle in the frame can be calculated.
Vehicle category classification and optimum lane computation system
After identifying the primary class of the vehicles, the video is passed to another network which is trained with more detailed labels (geared/non-geared vehicles, sedan/SUV/sports etc.) which assigns a secondary label (if it exists) and an associated probability to the objects.

These two class labels and probabilities are used to determine the max fuel efficiency speeds by comparing with the models present in the database.
By comparing the calculated speeds with the max fuel efficiency speeds and the lane speed, a softmax regression model is used to determine the lane change. The change also depends on the route obtained from the routing algorithms used by maps. For example, an upcoming left turn for a vehicle in the left most lane reduces the probability associated with a lane change recommendation. Other factors like distance from traffic signal and state of traffic signal also affect the lane recommendation.
The lane change recommendation and associated probability are sent to the interface.

User interface and data storage

The lane change recommendation probability is converted into a gradient and the lanes are assigned a base colour (red, green, yellow) based on traffic flow in the lane. The time and fuel consumed (calculated on the basis of the speed and associated fuel consumption) are recorded to calculate total savings at the end of the trip. Interactive dashboards display savings over time.

Flow of Control

After a user enters the destination, a suitable route is calculated based on existing map routing algorithms.
The first camera in the route identifies vehicle type, computes speed and sends it to the server. Based on the mileage database and other factors, the optimum lane for each part of the route (each dependent on one camera) is calculated and is updated within a few seconds based on the moving traffic.
As the vehicle moves from the frame of one camera to the next, the suggestions based on the data from the new camera are sent. This is done repeatedly until the vehicle reaches its destination.
Whenever a vehicle changes a lane based on the recommendations, the difference in estimated time and fuel used in the non-optimum lane and the optimum lane is calculated and stored on the device and a copy is sent to the server.

Thus, the system improves the quality of a vehicle’s commute and the overall flow.