The challenge is proposed by Siemens Mobility. We accepted the challenge because we believe that a day with bad weather is not a bad day and we really want to help train drivers who can't see tracks clearly, this often leads to slowing down and time delays in the railway's schedule. so we decided to try to address that interesting problem with the magic of Deep Learning and Computer Vision technology. We are here to help them see through the unclear!

What it does

it removes fog and rain effects from the driver track to let the driver see clearly using Deep Learning and Computer Vision.

How we built it

Having previous experience in similar DL problems, we went to the awesome DL literature, we tried to employ any of the open-source available solutions to our problem. we combined 2 different DL models together to solve our problem the first is: Deraindrop (Attentive Generative Adversarial Network for Raindrop Removal from A Single Image) which a generative model used to remove the raindrop effect on the images the second is unfogging model which is based on AOD-Net (end-to-end dehazing neural network) with the 2 main parts and with preprocessing and tuning, we managed to achieve good results on the provided dataset.

for the web app, we used flask to render our web content and simple but pretty UI (html/css/bootstrap)

Challenges we ran into'

The most important challenge we faced was how to address the bad weather effects removal problem, which approaches we should take? and is there publicly available data for this purpose?

also choosing a backend framework and implement it was too important to provide easy access to our solution. Finally, we tried to choose a clear and simple graphical user interface to provide a great experience to the driver.

Accomplishments that we're proud of

We are proud that we could reach such good results for the vision problem that was proposed in the challenge and that our solution, that has very good accuracy for a prototype developed in 40 hrs, our solution has the capacity to be improved and developed to be scalable and deployed in a real-life project at which AI algorithms help people and solving a real issue. we are also proud of our attempt to build a complete system ( frontend-backend-AI solution ) to solve one of the important railway problems. we tried through less than 3 days.

What we learned

We learned a lot about models that can be used to remove complex features from images, a ton of them were GANs and autoencoders, which was a good opportunity to work close to them. also, we became better at deploying DL algorithms to bigger real projects from scratch in such short time.

What's next for FogProofg

we would be happy to collaborate with Siemens to improve our solution to level up and can be a really good tool to solve this challenge. we will try to get more data and to train our model with more examples to be able to generalize well at our deployment environment. also, we would like to investigate and look around to see if any other people other than train drivers are having the same issue and maybe we can help :)

Share this project: