Problem/Inspiration
Mostly drivers associate accident because of other drivers behaviors. However, a lot of factors can affect the likelihood of an accident being made, is the road structure one of them? The evaluation and the detection of the road problems in these days usually come after an occurrence of an accident is there a better way to detect these roads without waiting for accidents?
Aim/The Goal
So in order check, if there is a relationship or not, a machine learning model will be trained on a satellite imagery of roads to predict if a road has more accident of a certain type by binary classification approach. then extracting the information about how the model predicts that label. Also, creating a human interface for government officials and engineers to use it.
Methodology/How the developer built it
Data
The developer was not able to get data about Makkah accident from the government sources, so the data obtained from KACST at The Center for Complex Engineering Systems (CCES), that address Riyadh accidents from 2012 to 2015 since both cites have similar roads , the permissions have been obtained to use this data in the hackathon. the dataset contains a lot of features, the features that the developer used in this project are (latitude, longitude, Deaths, InjurMajor, PublicDamage, PrivateDamages). Google Static API was used to get the satellite imagery for our data by the latitude and longitude. Modeling
Deep Conventional Neural Network (CNN) was created to classify the images since it can deal with multiple complex geometrical patterns. Three models were created:
Model-1 Predict if this road is more likely to have Deaths or InjurMajor or PublicDamage or PrivateDamages
Model-2 Predict if the road is more likely to have Deaths
Model-3 Predict if the road is more likely to have PublicDamage b Then to highlight the part of the image or the road that let the model predict the label is by using Class Activation Map (CAM) algorithm.
Challenges The developer ran into
The developer has no experience in creating a human interface and thus forced to learn some JS and CSS concept and making the website communicate to python Time was very limited and the problems were hard to solve which created a depression feeling for the developer that he will not complete his work. Finally, didn't find a team so he went solo :)
Result/Accomplishments that the developer is proud of
The accuracy of the models are:
Model-1: 74%
Model-2: 80%
Model-3: 78%
Important notes to take: -The accuracy does not reflect the model predicting capabilities but reflect what is the minimum relationship and association between the road structure and the label
- The goal of this project is to highlight the road structure and identifying the parts that need to be fixed or studied more.
- Each data point or image is completely separated from the others without any pixels that are shared to avoid any overfitting
- Classes were balanced by minimizing the bigger class so each class will be equal, this step reduced a lot of data which changed the testing data, the accuracy for each model cannot be compared with the other since no model tested on the same testing data
- The accuracy reflect the model performance for roads that are similar to Riyadh roads and its region so Jeddah, Makkah and, Saudi Arabia cites in general ## Application to Hajj In the time of Hajj, a lot of traffic can happen because of the need for food, human and tools transportation and studying the roads is very important to improve the roads with new easy accessible technologies and replacing the old infrastructure with new significantly optimized
What I learned
how to create a human interface website and controlling it with python staying awake for more than 50 hours without dying
Future Work / What's next for M-017 DeepRoads
- Gaining more attention to have access for more data so more models can be created
- Scale it from a local application to more generalize model with the capabilities to create suggestions for new best roads using reinforcement learning
- Using more accurate satellite imagery with higher quality
- Taking day and night into account while modeling and training
Built With
- cnn
- google-static-api
- html
- javascript
- keras
- machine-learning
- python
Log in or sign up for Devpost to join the conversation.